Advisory UAV operations
The SafeSky API enables the management of advisory information for UAV operations, allowing for the publication of UAV activity areas and retrieval of active advisories within specified parameters
The SafeSky API utilizes GeoJSON, a widely adopted format for encoding geographic data structures. GeoJSON allows UAV operators to define activity areas using points, lines, polygons, and multi-geometries, making it an ideal standard for representing advisory areas in aviation. To learn more about GeoJSON and its structure, visit the Wikipedia page on GeoJSON.
1. Publish Advisory Information
Endpoint: POST /v1/advisory
Description: Publish one or more UAV activity areas to the SafeSky platform.
Request Headers:
Content-Type
:application/json
x-api-key
:<your_api_key>
Request Body:
The request body should be a JSON string representing the GeoJSON of the advisory area(s).
The GeoJSON must include inside the properties
element of the GeoJSON the following parameter:
Parameter | Type | Required | Description |
---|---|---|---|
id |
string |
Yes | A unique identifier for the advisory message. This helps in tracking and managing advisories. |
call_sign |
string |
No | The call sign associated with the UAV operation. It can be used for easy identification. |
last_update |
long |
Yes | The timestamp of the last update in seconds since epoch (UTC-0), ensuring the advisory's relevance. |
max_altitude |
int |
Yes | The maximum altitude (in meters AMSL) at which UAV operations are expected to take place. |
remarks |
string |
No | Free text comments providing additional information about the advisory (e.g., purpose of operation). |
Example Request:
POST /advisory
Content-Type: application/json
x-api-key: your_api_key
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {
"id": "Advisory123",
"call_sign": "UAV_Alpha",
"last_update": 1738142598,
"max_altitude": 150,
"remarks": "Surveying area"
},
"geometry": {
"type": "Polygon",
"coordinates": [
[
[4.39201, 50.69378],
[4.39300, 50.69400],
[4.39400, 50.69500],
[4.39201, 50.69378]
]
]
}
}
]
}
Response:
- 201 Created: Advisory information published successfully.
- 400 Bad Request: Invalid parameters or failed authentication.
Notes:
- Ensure that the
coordinates
for a polygon form a closed loop by repeating the first coordinate at the end of the array.
2. Retrieve Active Advisories
Endpoint: GET /v1/advisory
Description: Retrieve a list of active advisories within a specified viewport and altitude range.
Query Parameters:
Parameter | Type | Required | Description | Default |
---|---|---|---|---|
viewport |
string |
Yes | Bounding box for retrieving advisories, formatted as southwest_lat,southwest_lng,northeast_lat,northeast_lng . |
N/A |
altitude_min |
int |
No | Filter advisories below the given altitude in AMSL meters. Zero means 'unused'. | 0 |
altitude_max |
int |
No | Filter advisories above the given altitude in AMSL meters. Zero means 'unused'. | 0 |
Example Request:
GET /v1/advisory?viewport=43.1035,-2.0821,47.9943,15.3216&altitude_min=100&altitude_max=500
x-api-key: your_api_key
Response:
- 200 OK: Returns a list of active advisories within the specified parameters.
- 400 Bad Request: Invalid parameters or failed authentication.
Example Response:
[
{
"id": "Advisory123",
"call_sign": "UAV_Alpha",
"aircraft_type": "Quadcopter",
"lastUpdate": 1738142598,
"latitude": 50.69378,
"longitude": 4.39201,
"max_altitude": 150,
"remarks": "Surveying area",
"operationArea": {
"type": "Polygon",
"coordinates": [
[
[4.39201, 50.69378],
[4.39300, 50.69400],
[4.39400, 50.69500],
[4.39201, 50.69378]
]
]
}
}
]
Notes:
- The
viewport
parameter defines the geographical area to search for active advisories. - Altitude filters (
altitude_min
andaltitude_max
) help narrow down advisories to specific altitude ranges.