oneapi
Autentificare
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."
        }
    }
}

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă, invalid, expirat sau revocat.
403feature_indisponibilPlanul curent nu include funcţia de care ţine ruta.
404negasitUnul dintre coduri nu există, sau aeroportul n-are coordonate în sursă.
422validareUn parametru nu a trecut validarea (de, la); detalii spune care şi de ce.
429cota_depasitaCota 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."
            ]
        }
    }
}