Coverage API
The coverage REST API is on the endpoint: https://api.involi.live/coverage/geojson
Authorization is granted via a bearer token in the HTTP header.
Example: Authorization: bearer <token>
The token must be requested from the authenticationserver with your client id and client secret.
Request
A HTTP POST request on the endpoint returns the current coverage.
Example request body:
{ "boundingBox": { "southLatitude": 46.22651399813753, "westLongitude": 6.35492729499469, "northLatitude": 46.81144910180176, "eastLongitude": 6.7607347901118775 } }
Field | Type | Unit | Description |
---|---|---|---|
boundingBox.southLatitude (mandatory) |
float |
Β° |
South latitude limit |
boundingBox.westLongitude (mandatory) | float | Β° | West longitude limit |
boundingBox.northLatitude (mandatory) | float | Β° | North latitude limit |
boundingBox.eastLongitude (mandatory) | float | Β° | East longitude limit |
The area of the bounding box must be smaller than 10,000 square kilometers. |
Data format
The API returns the coverage as GeoJSON data. The GeoJSON data contains a list of Polygon geometries where lower and upper coverage altitude limits are provided for each polygon.
Example response:
{ "type": "FeatureCollection", "title": "INVOLI Coverage Map", "features": [ { "type": "Feature", "geometry": { "type": "GeometryCollection", "geometries": [ { "type": "Polygon", "coordinates": [ [ [ 6.707598, 46.497475 ], [ 6.702653, 46.487201 ], [ 6.709406, 46.476685 ], [ 6.721103, 46.476443 ], [ 6.726046, 46.486717 ], [ 6.719294, 46.497233 ], [ 6.707598, 46.497475 ] ] ], "h3_cell_index": "877a8c6e8ffffff" "layer": { "upper": 20000, "upperReference": "AGL", "lower": 122.6, "lowerReference": "AGL", "uom": "m" } }, ... ] }, "properties": { "coverage_timestamp": 1707983236 } } ] }
Geometry Fields Description:
Field | Type | Unit | Description |
---|---|---|---|
coordinates | floats array | Β° | List of polygon vertices defined by its longitude and latitude |
h3_cell_index | string | The H3 cell index that corresponds to the polygon (see https://h3geo.org/) | |
layer.upper | float | m or ft see layer.uom |
The value of the upper limit of the coverage expressed in metres (m) or feet (ft), in relation with the vertical datum specified in the upperReference property. |
layer.upperReference | string | enum | - "AGL" (above ground level) - "WGS84" (above WGS84 ellipsoid) |
layer.lower | float | m or ft see layer.uom |
The value of the lower limit of the coverage expressed in metres (m) or feet (ft), in relation with the vertical datum specified in the lowerReference property. |
layer.lowerReference | string | enum | - "AGL" (above ground level) - "WGS84" (above WGS84 ellipsoid) |
layer.uom | string | Unit of measurement ("m" for meters) | |
properties.coverage_timestamp | float | s | Unix timestamp of the last coverage data update |
Restrictions
The INVOLI server can respond to 5 requests per 1 sec using one token. The recommended rate is 2 requests per 1 second. If the number of requests increases, the server will reply with status code 429 ("too many requests"). If multiple servers or clients need to access an API, each one should have its unique token.