oneapi
Autentificare
Locations v1 / Geo & reverse

Strada cea mai apropiată

Dintr-un punct (lat/lng) → strada cea mai apropiată + distanța. Fapt OSM.

GET
https://oneapi.ro/api/locations/v1/strada-apropiata

Parametri de interogare

NumeTipDescriereValori acceptate
latobligatoriu number Latitudine WGS84. -90 – 90
lngobligatoriu number Longitudine WGS84. -180 – 180

Cum se comportă

  • Cea mai apropiată stradă de un punct (KNN peste geometria OSM) + distanța.

La ce folosește

  • Snap al poziției GPS a curierului la strada cea mai apropiată în tracking.
  • Identificarea străzii dintr-un punct imprecis înainte de a cere adresa completă.
  • Validarea că un pin plasat de utilizator corespunde unei străzi reale.

Structura răspunsului

CâmpTipDescriere
data.id integer Id-ul intern al străzii — cheia pentru /strazi/{id}.
data.nume string Denumirea celei mai apropiate străzi.
data.tip string Cod tip arteră (denumiri în /nomenclatoare/tipuri).
data.localitate.cod_siruta integer Codul SIRUTA al localității — chainable spre /localitati/{cod}.
data.localitate.nume string Denumirea localității.
data.distanta_m integer Distanța (metri) de la punctul interogat la stradă.
meta.actualizat object Prospețimea datelor pe domenii (dată ISO 8601).
meta.distanta object Cum sunt măsurate distanţele din răspuns. Apare pe orice răspuns care conţine o distanţă.
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/locations/v1/strada-apropiata?lat=46.77&lng=23.59
{
    "data": {
        "id": 14994,
        "nume": "Unirii",
        "tip": "piata",
        "localitate": {
            "cod_siruta": 54984,
            "nume": "Cluj-Napoca"
        },
        "distanta_m": 25
    },
    "meta": {
        "actualizat": {
            "administrativ": "2026-08-15T16: 39: 14+03: 00",
            "geo": "2026-09-04T21: 24: 20+03: 00"
        },
        "atribuire": "© OpenStreetMap contributors",
        "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.
422parametri_invalizilat/lng lipsă/invalid.
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": "parametri_invalizi",
        "mesaj": "lat/lng lipsă/invalid.",
        "detalii": {
            "lat": [
                "Valoarea trimisă nu respectă regula parametrului."
            ]
        }
    }
}