Sari la conținutul principal
GeoPilot

API pentru zonele de zbor ale dronelor: primii pași

Actualizat

API-ul public GeoPilot servește datele hărții despre zonele pentru drone pentru fiecare sursă a cărei licență permite redistribuirea, ca GeoJSON prin HTTPS. Trimite cheia API ca bearer token la /api/v1/public și poți lista zone după țară sau suprafață, afla ce zone se aplică într-un punct sau pe o rază, verifica o zonă ori un traseu de zbor și converti între ED-269, ED-318, KML și GeoJSON. Accesul API este un produs separat de planurile hărții.

Obține o cheie

  1. Abonează-te din pagina acces API — sau, ca să-l încerci întâi ori să ceri o limită mai mare, aplică pentru acces.
  2. În profil, deschide fila Acces API și creează o cheie: dă-i un nume și alege doar scopurile de care are nevoie.
  3. Copiază cheia când e afișată. Apare o singură dată; dacă o pierzi, revoc-o și creează alta.
ScopPermite
RESTRICTIONS_READListarea zonelor, căutări în punct și pe rază, o zonă după id
CONFLICT_CHECKVerificarea unei zone sau a unui traseu față de zonele active
CONVERT_ED269Conversia din sau în ED-269
CONVERT_ED318Conversia din sau în ED-318
CONVERT_KMLConversia din sau în KML

Prima cerere: ce se aplică aici?

Păstrează cheia într-o variabilă de mediu și cere toate zonele dintr-un punct:

curl "https://geopilot.space/api/v1/public/restrictions/at?lat=44.43&lon=26.10" \
  -H "Authorization: Bearer $GEOPILOT_API_KEY"

Răspunsul este un FeatureCollection GeoJSON cu un bloc meta alături. Fiecare element are effect al zonei (PROHIBITED, AUTHORIZATION_REQUIRED, COORDINATION_REQUIRED, INFORMATION_ONLY sau UNKNOWN), type, dacă e activeNow și identificatorii sursei și autorității — aceleași informații pe care le arată panoul de pe hartă.

Endpointurile

CerereÎntoarceScop
GET /restrictionsZone filtrate după țară, dreptunghi, tip, efect…RESTRICTIONS_READ
GET /restrictions/atToate zonele suprapuse într-un punctRESTRICTIONS_READ
GET /restrictions/nearZone pe o rază, cele mai apropiate primeleRESTRICTIONS_READ
GET /restrictions/:idO zonăRESTRICTIONS_READ
POST /restrictions/intersectCe atinge o zonă sau un traseuCONFLICT_CHECK
POST /convert/:from-:toUn document în alt formatVezi ghidul de conversie

Verifică o zonă de zbor

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]]]}}'

Răspunsul listează fiecare zonă atinsă de formă cu efectul ei, dacă e activă la momentul evaluat, intersectionAreaM2 și intersectionRatio (partea din zona ta pe care o acoperă; null pentru un traseu), plus un summary cu numărul pe efecte. Trimite activeAt ca să evaluezi un moment viitor. Ca harta, listează și nu trage concluzii — nu există un câmp „permis”, intenționat.

Erori, limite și licențe

  • 401 — cheia lipsește, e greșită, necunoscută, revocată sau expirată. 403 — cheia e validă, dar accesul API al proprietarului a expirat sau îi lipsește scopul cerut de endpoint (răspunsul îl numește).
  • Fiecare eroare, de la orice endpoint, are aceeași formă JSON: problem details RFC 9457, cu errors pe câmpuri la un 400 sau 422.
  • Limitele se numără pe cheie, pe un minut glisant — implicit 60 de cereri pentru fiecare dintre citiri, verificări de conflicte și conversii. Fiecare răspuns are X-RateLimit-Limit și X-RateLimit-Remaining; un 429 adaugă Retry-After.
  • Citirile de restricții întorc doar date din surse a căror licență permite utilizarea comercială și redistribuirea. O sursă exclusă se comportă ca și cum n-ar exista.

Descriere pentru mașini

API-ul e descris în OpenAPI 3.1, generat din aceleași scheme cu care API-ul validează cererile, așa că un generator de clienți rămâne sincronizat. Un endpoint de stare răspunde fără cheie, iar ambele sunt listate într-un catalog 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

API-ul raportează ce publică autoritățile naționale, cu date. Nu autorizează un zbor, iar utilizatorii tăi trebuie să afle asta.

Întrebări frecvente

Există un nivel gratuit?
Nu, dar poți aplica pentru acces ca să-l încerci înainte de abonare sau ca să ceri o limită personalizată.
API-ul acoperă toate țările de pe hartă?
Acoperă sursele a căror licență permite utilizarea comercială și redistribuirea. Zonele din alte surse rămân pe hartă, dar nu sunt servite prin API.
Am nevoie și de un plan pentru hartă?
Nu. Accesul API se facturează separat; un cont are nevoie doar de acces API ca să creeze chei.

Ghiduri înrudite

Surse

GeoPilot

Un instrument independent de planificare pentru drone, construit pe restricțiile de spațiu aerian publicate de autoritățile naționale, pentru țările europene acoperite și pentru Statele Unite.

Date

  • Datele de spațiu aerian sunt publicate de autoritățile naționale ale fiecărei țări acoperite. GeoPilot nu este afiliat cu niciuna dintre ele și nici susținut de vreuna.
  • Vezi sursele și actualitatea

GeoPilot este un instrument independent de planificare, neafiliat cu nicio autoritate aeronautică și nesusținut de vreuna. Afișează date publicate de autoritățile naționale, care pot fi incomplete, depășite sau simplificate la procesare, și nu autorizează niciun zbor. Verifică întotdeauna publicația autorității și NOTAM-urile în vigoare înainte de zbor.