API delle zone vietate ai droni: primi passi
Aggiornata
L’API pubblica di GeoPilot fornisce i dati sulle zone per droni della mappa per ogni fonte la cui licenza consente la ridistribuzione, in GeoJSON su HTTPS. Invia la tua chiave API come token bearer a /api/v1/public e potrai elencare le zone per paese o per area, chiedere quali zone valgono in un punto o entro un raggio, verificare un’area o una rotta di volo e convertire tra ED-269, ED-318, KML e GeoJSON. L’accesso API è un prodotto separato dai piani della mappa.
Ottenere una chiave
- Abbonati nella pagina Accesso API oppure, per provarla prima o chiedere un limite più alto, richiedi l’accesso.
- Nel tuo profilo, apri la scheda Accesso API e crea una chiave: dalle un nome e scegli solo gli ambiti di cui ha bisogno.
- Copia la chiave quando viene mostrata. Viene mostrata una sola volta; se la perdi, revocala e creane un’altra.
| Ambito | Consente |
|---|---|
RESTRICTIONS_READ | Elencare le zone, ricerche per punto e per raggio, una zona per id |
CONFLICT_CHECK | Verificare un’area o una rotta rispetto alle zone attive |
CONVERT_ED269 | Convertire da o verso ED-269 |
CONVERT_ED318 | Convertire da o verso ED-318 |
CONVERT_KML | Convertire da o verso KML |
La tua prima richiesta: cosa vale qui?
Tieni la chiave in una variabile d’ambiente e chiedi tutte le zone presenti in un punto:
curl "https://geopilot.space/api/v1/public/restrictions/at?lat=44.43&lon=26.10" \ -H "Authorization: Bearer $GEOPILOT_API_KEY"
La risposta è una FeatureCollection GeoJSON accompagnata da un blocco meta. Ogni feature riporta l’effect della zona (PROHIBITED, AUTHORIZATION_REQUIRED, COORDINATION_REQUIRED, INFORMATION_ONLY o UNKNOWN), il suo type, se è activeNow e gli id della sua fonte e della sua autorità: gli stessi dati mostrati dal pannello che si apre con un clic sulla mappa.
Gli endpoint
| Richiesta | Restituisce | Ambito |
|---|---|---|
GET /restrictions | Zone filtrate per paese, riquadro di delimitazione, tipo, effetto… | RESTRICTIONS_READ |
GET /restrictions/at | Tutte le zone sovrapposte in un punto | RESTRICTIONS_READ |
GET /restrictions/near | Zone entro un raggio, dalla più vicina | RESTRICTIONS_READ |
GET /restrictions/:id | Una zona | RESTRICTIONS_READ |
POST /restrictions/intersect | Ciò che un’area o una rotta interseca | CONFLICT_CHECK |
POST /convert/:from-:to | Un documento in un altro formato | Vedi la guida alla conversione |
Verificare un’area di volo
curl -X POST "https://geopilot.space/api/v1/public/restrictions/intersect" \
-H "Authorization: Bearer $GEOPILOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"geometry":{"type":"Polygon","coordinates":[[[26.05,44.40],[26.15,44.40],[26.15,44.47],[26.05,44.47],[26.05,44.40]]]}}'La risposta elenca ogni zona intersecata dalla forma con il suo effetto, se è attiva nel momento valutato, intersectionAreaM2 e intersectionRatio (la quota della tua area che copre; null per una rotta), più un summary con i conteggi per effetto. Passa activeAt per valutare un momento futuro. Come la mappa, elenca e non trae conclusioni: per scelta, non esiste un campo “consentito”.
Errori, limiti e licenze
- 401: la chiave è mancante, malformata, sconosciuta, revocata o scaduta. 403: la chiave è valida ma l’accesso API del suo titolare è scaduto, oppure non ha l’ambito richiesto dall’endpoint (la risposta lo indica).
- Ogni errore, da qualsiasi endpoint, ha un’unica forma JSON: i problem details RFC 9457, con gli
errorsa livello di campo in caso di 400 o 422. - I limiti sono conteggiati per chiave su un minuto mobile: 60 richieste per impostazione predefinita per ciascuna categoria tra letture, verifiche dei conflitti e conversioni. Ogni risposta include
X-RateLimit-LimiteX-RateLimit-Remaining; una risposta 429 aggiungeRetry-After. - Le letture delle restrizioni restituiscono solo dati provenienti da fonti la cui licenza consente l’uso commerciale e la ridistribuzione. Una fonte esclusa si comporta come se non esistesse.
Descrizione leggibile dalle macchine
L’API è descritta in OpenAPI 3.1, generata dagli stessi schemi con cui l’API convalida le richieste, così un generatore di client resta allineato. Un endpoint di verifica dello stato risponde senza chiave, ed entrambi sono elencati in un catalogo API RFC 9727:
GET https://geopilot.space/api/v1/public/openapi.json GET https://geopilot.space/api/v1/public/health GET https://geopilot.space/.well-known/api-catalog
L’API riporta ciò che pubblicano le autorità nazionali, con le relative date. Non autorizza alcun volo, e i tuoi utenti devono esserne informati.
Domande frequenti
- Esiste un livello gratuito?
- No, ma puoi richiedere l’accesso per provarla prima di abbonarti, oppure per chiedere un limite personalizzato.
- L’API copre tutti i paesi della mappa?
- Copre le fonti la cui licenza consente l’uso commerciale e la ridistribuzione. Le zone di altre fonti restano sulla mappa ma non vengono fornite tramite l’API.
- Mi serve anche un piano per la mappa?
- No. L’accesso API è fatturato a parte; per creare chiavi un account ha bisogno solo dell’accesso API.
Guide correlate
- Come convertire le geozone ED-269 ed ED-318 in GeoJSON o KMLConverti le geozone UAS tra ED-269, ED-318, KML e GeoJSON con una chiamata API: ambiti necessari, richiesta, come leggere errori e avvisi.
- ED-269 ed ED-318: i due formati di geozone UAS a confronto, campo per campoIn cosa differiscono i formati di zone geografiche UAS ED-269 ed ED-318, campo per campo, con le insidie dei feed nazionali reali e come convertirli.
- Zone vietate ai droni: come funzionano le zone geografiche UASCosa sono le zone geografiche UAS, chi le pubblica e come leggerle: zone vietate, soggette ad autorizzazione o condizionate, limiti di altezza e orari.