Utile v1 / Aeroporturi
Distanța între două aeroporturi
Distanţa ortodromică între două aeroporturi, în kilometri şi în mile nautice, pornind de la codurile IATA ori ICAO. E distanţa pe cerc mare, nu lungimea rutei zburate.
GET
https://oneapi.ro/api/utile/v1/aeroporturi/distanta
Parametri de interogare
NumeTipDescriereValori acceptate
deobligatoriu
string
OBLIGATORIU. Codul aeroportului de plecare (IATA, ICAO sau ident).
max 16 car.
laobligatoriu
string
OBLIGATORIU. Codul aeroportului de destinație, diferit de primul.
max 16 car.
Cum se comportă
- E distanță ortodromică — pe cercul mare, adică cea mai scurtă pe suprafața Pământului. NU e distanța de zbor reală: rutele ocolesc spații aeriene închise și urmează culoare, iar vântul schimbă timpul, nu distanța.
- Se dă și în mile nautice, fiindcă asta e unitatea în care se exprimă distanțele în aviație.
- Calculul folosește o sferă de rază medie, nu elipsoidul. Eroarea e sub 0,5% pe distanțe intercontinentale — irelevantă pentru estimări, dar de știut dacă ai nevoie de precizie geodezică.
La ce folosește
- Estimezi durata sau costul unui zbor pornind de la distanță.
- Calculezi amprenta de carbon a unei deplasări, care se raportează la kilometri.
- Compari două rute alternative către aceeași destinație.
Structura răspunsului
CâmpTipDescriere
data.de
object
Aeroportul de plecare, cu toate câmpurile lui.
data.de.ident
string
data.de.iata
string
data.de.icao
string
data.de.nume
string
Numele, aşa cum îl publică sursa.
data.de.tip
string
data.de.municipiu
string
Municipiul deservit.
data.de.tara.cod
string
Codul din nomenclatorul sursei — cheia pe care se filtrează.
data.de.tara.nume
string
Numele, aşa cum îl publică sursa.
data.de.regiune.cod
string
Codul din nomenclatorul sursei — cheia pe care se filtrează.
data.de.regiune.nume
string
Numele, aşa cum îl publică sursa.
data.de.continent
string
Continentul pe care se află.
data.de.latitudine
number
Latitudinea, în grade zecimale (WGS 84).
data.de.longitudine
number
Longitudinea, în grade zecimale (WGS 84).
data.de.altitudine_ft
integer
data.de.altitudine_m
integer
data.de.curse_regulate
boolean
data.de.wikipedia
string
Adresa articolului de Wikipedia.
data.de.site
string
Adresa sitului oficial.
data.la
object
Aeroportul de destinație.
data.la.ident
string
data.la.iata
string
data.la.icao
string
data.la.nume
string
Numele, aşa cum îl publică sursa.
data.la.tip
string
data.la.municipiu
string
Municipiul deservit.
data.la.tara.cod
string
Codul din nomenclatorul sursei — cheia pe care se filtrează.
data.la.tara.nume
string
Numele, aşa cum îl publică sursa.
data.la.regiune.cod
string
Codul din nomenclatorul sursei — cheia pe care se filtrează.
data.la.regiune.nume
string
Numele, aşa cum îl publică sursa.
data.la.continent
string
Continentul pe care se află.
data.la.latitudine
number
Latitudinea, în grade zecimale (WGS 84).
data.la.longitudine
number
Longitudinea, în grade zecimale (WGS 84).
data.la.altitudine_ft
integer
data.la.altitudine_m
integer
data.la.curse_regulate
boolean
data.la.wikipedia
string
Adresa articolului de Wikipedia.
data.la.site
string
Adresa sitului oficial.
data.distanta_km
number
Distanța pe cercul mare, în kilometri.
data.distanta_mile_nautice
number
Aceeași distanță, în mile nautice.
data.observatie
string
Precizare despre cum se citeşte răspunsul: o convenţie de calcul sau o limită a datelor.
data.sursa.nume
string
Denumirea sursei oficiale.
data.sursa.url
string
Adresa publică a sursei.
data.sursa.licenta
string
Licenţa sub care sursa permite reutilizarea.
meta.distanta.metoda
string
Mereu
linie_dreapta: distanţa geodezică pe suprafaţa Pământului, nu pe drum.
meta.distanta.detaliu
string
Aceeaşi informaţie, în cuvinte.
Exemple de răspuns
GEThttps://oneapi.ro/api/utile/v1/aeroporturi/distanta?de=CLJ&la=OTP
{
"data": {
"de": {
"ident": "LRCL",
"iata": "CLJ",
"icao": "LRCL",
"nume": "Avram Iancu Cluj International Airport",
"tip": "large_airport",
"municipiu": "Cluj-Napoca",
"tara": {
"cod": "RO",
"nume": "România"
},
"regiune": {
"cod": "RO-CJ",
"nume": "Cluj County"
},
"continent": "EU",
"latitudine": 46.786042,
"longitudine": 23.685733,
"altitudine_ft": 1039,
"altitudine_m": 317,
"curse_regulate": true,
"wikipedia": "https://en.wikipedia.org/wiki/Cluj_International_Airport",
"site": "http://www.airportcluj.ro/"
},
"la": {
"ident": "LROP",
"iata": "OTP",
"icao": "LROP",
"nume": "Bucharest Henri Coandă International Airport",
"tip": "large_airport",
"municipiu": "Otopeni",
"tara": {
"cod": "RO",
"nume": "România"
},
"regiune": {
"cod": "RO-IF",
"nume": "Ilfov County"
},
"continent": "EU",
"latitudine": 44.571792,
"longitudine": 26.103285,
"altitudine_ft": 314,
"altitudine_m": 96,
"curse_regulate": true,
"wikipedia": "https://en.wikipedia.org/wiki/Henri_Coand%C4%83_International_Airport",
"site": "http://www.bucharestairports.ro/en/"
},
"distanta_km": 309.6,
"distanta_mile_nautice": 167.2,
"observatie": "Distanță ortodromică (cerc mare) între cele două puncte. NU e distanța de zbor reală: rutele ocolesc spații aeriene, iar vântul schimbă timpul, nu distanța.",
"sursa": {
"nume": "OurAirports — export public zilnic",
"url": "https://ourairports.com/data/",
"licenta": "Domeniu public („All data is released to the Public Domain\"), fără obligație de atribuire."
}
},
"meta": {
"distanta": {
"metoda": "linie_dreapta",
"detaliu": "Distanţele sunt geodezice, în linie dreaptă pe suprafaţa Pământului (WGS84) — nu pe drum."
}
}
}
GEThttps://oneapi.ro/api/utile/v1/aeroporturi/distanta?de=LRCL&la=LROP
{
"data": {
"de": {
"ident": "LRCL",
"iata": "CLJ",
"icao": "LRCL",
"nume": "Avram Iancu Cluj International Airport",
"tip": "large_airport",
"municipiu": "Cluj-Napoca",
"tara": {
"cod": "RO",
"nume": "România"
},
"regiune": {
"cod": "RO-CJ",
"nume": "Cluj County"
},
"continent": "EU",
"latitudine": 46.786042,
"longitudine": 23.685733,
"altitudine_ft": 1039,
"altitudine_m": 317,
"curse_regulate": true,
"wikipedia": "https://en.wikipedia.org/wiki/Cluj_International_Airport",
"site": "http://www.airportcluj.ro/"
},
"la": {
"ident": "LROP",
"iata": "OTP",
"icao": "LROP",
"nume": "Bucharest Henri Coandă International Airport",
"tip": "large_airport",
"municipiu": "Otopeni",
"tara": {
"cod": "RO",
"nume": "România"
},
"regiune": {
"cod": "RO-IF",
"nume": "Ilfov County"
},
"continent": "EU",
"latitudine": 44.571792,
"longitudine": 26.103285,
"altitudine_ft": 314,
"altitudine_m": 96,
"curse_regulate": true,
"wikipedia": "https://en.wikipedia.org/wiki/Henri_Coand%C4%83_International_Airport",
"site": "http://www.bucharestairports.ro/en/"
},
"distanta_km": 309.6,
"distanta_mile_nautice": 167.2,
"observatie": "Distanță ortodromică (cerc mare) între cele două puncte. NU e distanța de zbor reală: rutele ocolesc spații aeriene, iar vântul schimbă timpul, nu distanța.",
"sursa": {
"nume": "OurAirports — export public zilnic",
"url": "https://ourairports.com/data/",
"licenta": "Domeniu public („All data is released to the Public Domain\"), fără obligație de atribuire."
}
},
"meta": {
"distanta": {
"metoda": "linie_dreapta",
"detaliu": "Distanţele sunt geodezice, în linie dreaptă pe suprafaţa Pământului (WGS84) — nu pe drum."
}
}
}
GEThttps://oneapi.ro/api/utile/v1/aeroporturi/distanta?de=TSR&la=IAS
{
"data": {
"de": {
"ident": "LRTR",
"iata": "TSR",
"icao": "LRTR",
"nume": "Timișoara Traian Vuia International Airport",
"tip": "large_airport",
"municipiu": "Timişoara",
"tara": {
"cod": "RO",
"nume": "România"
},
"regiune": {
"cod": "RO-TM",
"nume": "Timiş County"
},
"continent": "EU",
"latitudine": 45.809898,
"longitudine": 21.3379,
"altitudine_ft": 348,
"altitudine_m": 106,
"curse_regulate": true,
"wikipedia": "https://en.wikipedia.org/wiki/Traian_Vuia_International_Airport",
"site": "http://www.aerotim.ro/"
},
"la": {
"ident": "LRIA",
"iata": "IAS",
"icao": "LRIA",
"nume": "Iaşi International Airport",
"tip": "large_airport",
"municipiu": "Iaşi",
"tara": {
"cod": "RO",
"nume": "România"
},
"regiune": {
"cod": "RO-IS",
"nume": "Iaşi County"
},
"continent": "EU",
"latitudine": 47.179633,
"longitudine": 27.621431,
"altitudine_ft": 411,
"altitudine_m": 125,
"curse_regulate": true,
"wikipedia": "https://en.wikipedia.org/wiki/Ia%C5%9Fi_International_Airport",
"site": "https://www.aeroport-iasi.ro/"
},
"distanta_km": 504.4,
"distanta_mile_nautice": 272.3,
"observatie": "Distanță ortodromică (cerc mare) între cele două puncte. NU e distanța de zbor reală: rutele ocolesc spații aeriene, iar vântul schimbă timpul, nu distanța.",
"sursa": {
"nume": "OurAirports — export public zilnic",
"url": "https://ourairports.com/data/",
"licenta": "Domeniu public („All data is released to the Public Domain\"), fără obligație de atribuire."
}
},
"meta": {
"distanta": {
"metoda": "linie_dreapta",
"detaliu": "Distanţele sunt geodezice, în linie dreaptă pe suprafaţa Pământului (WGS84) — nu pe drum."
}
}
}
GEThttps://oneapi.ro/api/utile/v1/aeroporturi/distanta?de=OTP&la=CDG
{
"data": {
"de": {
"ident": "LROP",
"iata": "OTP",
"icao": "LROP",
"nume": "Bucharest Henri Coandă International Airport",
"tip": "large_airport",
"municipiu": "Otopeni",
"tara": {
"cod": "RO",
"nume": "România"
},
"regiune": {
"cod": "RO-IF",
"nume": "Ilfov County"
},
"continent": "EU",
"latitudine": 44.571792,
"longitudine": 26.103285,
"altitudine_ft": 314,
"altitudine_m": 96,
"curse_regulate": true,
"wikipedia": "https://en.wikipedia.org/wiki/Henri_Coand%C4%83_International_Airport",
"site": "http://www.bucharestairports.ro/en/"
},
"la": {
"ident": "LFPG",
"iata": "CDG",
"icao": "LFPG",
"nume": "Charles de Gaulle International Airport",
"tip": "large_airport",
"municipiu": "Paris (Roissy-en-France, Val-d'Oise)",
"tara": {
"cod": "FR",
"nume": "Franța"
},
"regiune": {
"cod": "FR-IDF",
"nume": "Île-de-France"
},
"continent": "EU",
"latitudine": 49.00896,
"longitudine": 2.554117,
"altitudine_ft": 392,
"altitudine_m": 119,
"curse_regulate": true,
"wikipedia": "https://en.wikipedia.org/wiki/Charles_de_Gaulle_Airport",
"site": "http://www.aeroportsdeparis.fr/"
},
"distanta_km": 1851.1,
"distanta_mile_nautice": 999.5,
"observatie": "Distanță ortodromică (cerc mare) între cele două puncte. NU e distanța de zbor reală: rutele ocolesc spații aeriene, iar vântul schimbă timpul, nu distanța.",
"sursa": {
"nume": "OurAirports — export public zilnic",
"url": "https://ourairports.com/data/",
"licenta": "Domeniu public („All data is released to the Public Domain\"), fără obligație de atribuire."
}
},
"meta": {
"distanta": {
"metoda": "linie_dreapta",
"detaliu": "Distanţele sunt geodezice, în linie dreaptă pe suprafaţa Pământului (WGS84) — nu pe drum."
}
}
}
Coduri de eroare
| Cod | Slug | Când apare |
|---|---|---|
| 401 | neautentificat | Token lipsă, invalid, expirat sau revocat. |
| 403 | feature_indisponibil | Planul curent nu include funcţia de care ţine ruta. |
| 404 | negasit | Unul dintre coduri nu există, sau aeroportul n-are coordonate în sursă. |
| 422 | validare | Un parametru nu a trecut validarea (de, la); detalii spune care şi de ce. |
| 429 | cota_depasita | Cota lunară a planului a fost depăşită (vezi Retry-After). |
Toate erorile au aceeași formă. eroare.cod e stabil și e cel după care trebuie să ramifici în cod — nu după textul din mesaj, care se poate schimba.
{
"eroare": {
"cod": "validare",
"mesaj": "Un parametru nu a trecut validarea (de, la); detalii spune care şi de ce.",
"detalii": {
"de": [
"Valoarea trimisă nu respectă regula parametrului."
]
}
}
}