Paneli aç

API Sənədləri və Playground

Giriş

OSRMRoute Directions API, tətbiqlərinizə sürətli, yüksək performanslı coğrafi marşrutlaşdırma, səyahət matrisləri, ünvan axtarışı (geocoding) və marşrut optimallaşdırma imkanları inteqrasiya etmək üçün yaradılmış RESTful veb xidmətidir. Bu sənədlərdə API-nin bütün imkanları, parametrləri və inteqrasiya addımları detallı şəkildə izah edilmişdir.

Autentifikasiya

OSRMRoute API sorğuları autentifikasiya üçün unikal API Açarından istifadə edir. API açarınızı hər bir sorğuya query parametri kimi (?key=YOUR_KEY) və ya HTTP Authorization başlığı vasitəsilə (Bearer token kimi) əlavə edə bilərsiniz.

GETAny endpoint

Parametrlər (Query Params)

ParametrTipStatusDefaultTəsvir
keystringMəcburi-Şəxsi idarəetmə panelinizdən əldə etdiyiniz unikal API açarı. Bu açar sorğularınızın limitini müəyyən edir.

Xəta Kodları

OSRMRoute, sorğunun vəziyyətini bildirmək üçün standart HTTP status kodlarından və ətraflı JSON xəta mesajlarından istifadə edir.

Cavab Strukturunun Şərhi

Əsas status kodları və onların şərhi: - **200 OK**: Sorğu uğurla yerinə yetirildi. - **400 Bad Request**: Parametrlər yanlışdır və ya çatışmır. - **401 Unauthorized**: API açarı təqdim olunmayıb və ya etibarsızdır. - **403 Forbidden**: API açarı bloklanıb və ya aktiv deyil. - **429 Too Many Requests**: Günlük kredit limiti aşıldı. - **500 Internal Error**: Sistem daxili xəta baş verdi.

Routing API

A nöqtəsindən B nöqtəsinə (və aralıq via-nöqtələrlə) ən sürətli və ən qısa marşrutu hesablayır. Fərqli nəqliyyat profilləri (driving, cycling, walking) üçün dönmə təlimatları (turn-by-turn) və GeoJSON həndəsəsini qaytarır.

GET/api/v1/osrm/route/v1/{profile}/{coordinates}

Parametrlər (Query Params)

ParametrTipStatusDefaultTəsvir
profilestringMəcburidrivingNəqliyyat növü profili. Dəstəklənən dəyərlər: driving (avtomobil), cycling (velosiped), walking (piyada).
coordinatesstringMəcburi-Nöqtələrin koordinatları. Format: lon,lat;lon,lat;lon,lat... (ən azı 2 nöqtə).
overviewstringKönüllüfullQayıdan marşrut həndəsəsinin detalı: simplified (sadələşdirilmiş), full (tam həndəsə), false (həndəsəsiz).
geometriesstringKönüllügeojsonHəndəsə formatı: geojson (GeoJSON obyekt), polyline (kodlaşdırılmış sətir).
stepsbooleanKönüllütrueHər dönmə nöqtəsi üçün addım-addım təlimatların qaytarılıb-qaytarılmaması.

Cavab Strukturunun Şərhi

Uğurlu cavab marşrutun ümumi məsafəsini (metrlə), səyahət müddətini (saniyə ilə), keçid nöqtələrini və GeoJSON marşrut xəttini ehtiva edir.

Matrix API

Çoxlu nöqtələr arasında sürətli məsafə və səyahət müddəti matrisi hesablayır (NxM cədvəl). Logistika marşrutlarının optimallaşdırılması üçün ideal alətdir.

GET/api/v1/osrm/table/v1/{profile}/{coordinates}

Parametrlər (Query Params)

ParametrTipStatusDefaultTəsvir
profilestringMəcburidrivingNəqliyyat profili (driving, cycling, walking).
coordinatesstringMəcburi-Matris nöqtələri. Format: lon,lat;lon,lat;lon,lat...
annotationsstringKönüllüduration,distanceHesablanacaq məlumat: duration (vaxt), distance (məsafə) və ya hər ikisi.

Cavab Strukturunun Şərhi

Uğurlu cavab hər bir başlanğıc və son nöqtə kombinasiyası üçün ikiölçülü distances (məsafələr) və durations (müddətlər) matris cədvəlini qaytarır.

Map Matching API

Dəqiq olmayan GPS izlərini real yol şəbəkəsinə uyğunlaşdırır (snap to road). GPS siqnallarındakı yayınmaları təmizləmək üçün istifadə olunur.

GET/api/v1/osrm/match/v1/{profile}/{coordinates}

Parametrlər (Query Params)

ParametrTipStatusDefaultTəsvir
profilestringMəcburidrivingNəqliyyat profili.
coordinatesstringMəcburi-Sıxılacaq GPS koordinatlarının ardıcıllığı (lon,lat;lon,lat...)
overviewstringKönüllüfullUyğunlaşdırılmış marşrutun həndəsə dəqiqliyi.

Nearest API

İstənilən koordinatı ona ən yaxın olan real yol seqmentinə bağlayır (snap) və yolun adı haqqında məlumat qaytarır.

GET/api/v1/osrm/nearest/v1/{profile}/{coordinates}

Parametrlər (Query Params)

ParametrTipStatusDefaultTəsvir
profilestringMəcburidrivingNəqliyyat profili.
coordinatesstringMəcburi-Yaxınlığı axtarılan nöqtə. Format: lon,lat (tək cüt).
numberintegerKönüllü3Tapılacaq ən yaxın yol namizədlərinin sayı.

Trip API

Səyyah Satıcı Problemini (TSP) həll edir: Verilmiş nöqtələr ardıcıllığını gəzmək üçün ən optimal dairəvi (və ya açıq) marşrutu tapır və nöqtələri sıralayır.

GET/api/v1/osrm/trip/v1/{profile}/{coordinates}

Parametrlər (Query Params)

ParametrTipStatusDefaultTəsvir
profilestringMəcburidrivingNəqliyyat profili.
coordinatesstringMəcburi-Gəziləcək nöqtələr. Format: lon,lat;lon,lat...
sourcestringKönüllüanyMarşrutun başlaya biləcəyi nöqtə (any və ya birinci nöqtə).
destinationstringKönüllüanyMarşrutun bitəcəyi nöqtə (any və ya sonuncu nöqtə).

Geocoding API

Ünvanların coğrafi koordinatlara (və ya əksinə) çevrilməsini həyata keçirir. İnteqrasiya edilmiş axtarış sistemləri üçün idealdır.

GET/api/1/geocode

Parametrlər (Query Params)

ParametrTipStatusDefaultTəsvir
qstringMəcburi-Axtarılan ünvan (məs: "Nizami küçəsi, Bakı").
reversebooleanKönüllüfalseƏks geocoding (koordinatdan ünvana axtarış) etmək üçün true olmalıdır.

Isochrone API

Müəyyən edilmiş nöqtədən müəyyən edilmiş vaxt və ya məsafədə çatılması mümkün olan coğrafi zonaların poliqonlarını qaytarır.

GET/api/1/isochrone

Parametrlər (Query Params)

ParametrTipStatusDefaultTəsvir
pointstringMəcburi-Mərkəz nöqtə. Format: lat,lon.
time_limitintegerKönüllü600Səyahət vaxt limiti (saniyə ilə).

Route Optimization API

Nəqliyyat donanmasının marşrutlarını optimallaşdırır (Vehicle Routing Problem). Avtomobillərin yükdaşıma, çatdırılma planını ən az xərclə hesablayır.

POST/api/1/vrp

Parametrlər (Query Params)

ParametrTipStatusDefaultTəsvir
vehiclesarrayMəcburi[]Nəqliyyat vasitələrinin siyahısı (id, tutum, başlanğıc ünvanı və s.).
servicesarrayMəcburi[]Xidmət göstəriləcək ünvanlar (id, koordinatlar, xidmət vaxtı və s.).

Location Clustering API

Verilmiş koordinatları coğrafi yaxınlıqlarına və sıxlıqlarına görə qruplaşdırır (klasterlərə ayırır).

POST/api/1/cluster

Parametrlər (Query Params)

ParametrTipStatusDefaultTəsvir
customersarrayMəcburi[]Klasterləşdiriləcək müştəri koordinatları və çəkiləri.