Locations v1 / Străzi
Segmentul unei străzi între două transversale
⭐ Porțiunea străzii dintre intersecțiile cu străzile de și la (fiecare id sau nume),
cu cele două capete și lungimea segmentului — „de la Unirii la Napoca". Fapt OSM.
GET
https://oneapi.ro/api/locations/v1/strazi/{id}/segment
Parametri de cale
NumeTipDescriereExemplu
idobligatoriu
string
Identificatorul intern al străzii — se obţine din căutarea de străzi.
Parametri de interogare
NumeTipDescriereValori acceptate
deobligatoriu
string
Prima transversală (id sau nume).
max 200 car.
laobligatoriu
string
A doua transversală (id sau nume).
max 200 car.
Cum se comportă
- Porțiunea străzii între intersecțiile cu două transversale — „de la Unirii la Napoca".
- Calculat pe geometria OSM: pozițiile intersecțiilor pe linie (ST_LineLocatePoint) + sub-linia dintre ele (ST_LineSubstring).
- Ordinea
de/lanu contează. Fiecare poate fi id intern sau nume.
La ce folosește
- Estimarea lungimii unui tronson de stradă pentru delimitarea zonelor de livrare.
- Descrierea unei porțiuni „de la X la Y" în instrucțiunile către curier.
- Delimitarea unei zone de parcare sau lucrări între două intersecții.
Structura răspunsului
CâmpTipDescriere
data.strada.id
integer
Id-ul străzii din care s-a tăiat segmentul.
data.strada.nume
string
Denumirea străzii.
data.de
object
Capătul dinspre prima transversală: strada transversală + coordonata intersecției.
data.de.strada
string
Strada de la care începe segmentul.
data.de.lat
number
Latitudine (WGS84).
data.de.lng
number
Longitudine (WGS84).
data.la
object
Capătul dinspre a doua transversală.
data.la.strada
string
Strada la care se termină segmentul.
data.la.lat
number
Latitudine (WGS84).
data.la.lng
number
Longitudine (WGS84).
data.lungime_m
integer
Lungimea porțiunii, în metri (fapt calculat din geometria OSM).
meta.actualizat
object
Prospețimea datelor pe domenii (dată ISO 8601).
Exemple de răspuns
GEThttps://oneapi.ro/api/locations/v1/strazi/7/segment?de=Constantin%20Tănase&la=Teiului
{
"data": {
"strada": {
"id": 7,
"nume": "Albacului"
},
"de": {
"strada": "Constantin Tănase",
"lat": 47.0470246,
"lng": 21.9328958
},
"la": {
"strada": "Teiului",
"lat": 47.04508,
"lng": 21.9381973
},
"lungime_m": 460
},
"meta": {
"actualizat": {
"administrativ": "2026-08-15T16: 39: 14+03: 00",
"strazi": "2026-10-04T19: 50: 09+03: 00",
"geo": "2026-10-06T16: 33: 40+03: 00"
},
"atribuire": "© OpenStreetMap contributors"
}
}
GEThttps://oneapi.ro/api/locations/v1/strazi/1/segment?de=Arinului&la=Livezilor
{
"data": {
"strada": {
"id": 1,
"nume": "Adevărului"
},
"de": {
"strada": "Arinului",
"lat": 47.06432744830709,
"lng": 21.963953163962508
},
"la": {
"strada": "Livezilor",
"lat": 47.0684152,
"lng": 21.9784091
},
"lungime_m": 1277
},
"meta": {
"actualizat": {
"administrativ": "2026-08-15T16: 39: 14+03: 00",
"strazi": "2026-10-04T19: 50: 09+03: 00",
"geo": "2026-10-06T16: 33: 40+03: 00"
},
"atribuire": "© OpenStreetMap contributors"
}
}
GEThttps://oneapi.ro/api/locations/v1/strazi/14612/segment?de=Romulus%20Vuia&la=Gruia
{
"data": {
"strada": {
"id": 14612,
"nume": "11 Octombrie"
},
"de": {
"strada": "Romulus Vuia",
"lat": 46.7803502,
"lng": 23.5765667
},
"la": {
"strada": "Gruia",
"lat": 46.777611,
"lng": 23.5768591
},
"lungime_m": 310
},
"meta": {
"actualizat": {
"administrativ": "2026-08-15T16: 39: 14+03: 00",
"strazi": "2026-10-04T19: 50: 09+03: 00",
"geo": "2026-10-06T16: 33: 40+03: 00"
},
"atribuire": "© OpenStreetMap contributors"
}
}
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 | Strada sau o transversală nu există. |
| 422 | fara_intersectie | O transversală nu intersectează strada. |
| 422 | geometrie_discontinua | Geometria străzii e discontinuă. |
| 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": "fara_intersectie",
"mesaj": "O transversală nu intersectează strada.",
"detalii": {
"id": [
"Valoarea trimisă nu respectă regula parametrului."
]
}
}
}