Paneli aç

API Dokümantasyonu ve Playground

Giriş

OSRMRoute Directions API, uygulamalarınıza hızlı, yüksek performanslı coğrafi rotalama, seyahat matrisleri, adres arama (geocoding) ve rota optimizasyonu entegre etmek için oluşturulmuş RESTful bir web hizmetidir. Bu dokümantasyonda API'nin tüm yetenekleri, parametreleri ve entegrasyon adımları ayrıntılı olarak açıklanmıştır.

Kimlik Doğrulama

OSRMRoute API istekleri kimlik doğrulama için benzersiz bir API anahtarı kullanır. API anahtarınızı her isteğe sorgu parametresi olarak (?key=YOUR_KEY) veya HTTP Authorization başlığı aracılığıyla (Bearer token olarak) ekleyebilirsiniz.

GETAny endpoint

Parametreler (Query Params)

ParametreTürDurumVarsayılanAçıklama
keystringZorunlu-Kişisel panelinizden edindiğiniz benzersiz API anahtarı. Bu anahtar isteklerinizin limitlerini belirler.

Hata Kodları

OSRMRoute, bir isteğin durumunu belirtmek için standart HTTP durum kodları ve ayrıntılı JSON hata mesajları kullanır.

Yanıt Yapısının Açıklaması

Başlıca durum kodları ve anlamları: - **200 OK**: İstek başarıyla tamamlandı. - **400 Bad Request**: Parametreler geçersiz veya eksik. - **401 Unauthorized**: API anahtarı sağlanmadı veya geçersiz. - **403 Forbidden**: API anahtarı engellenmiş veya etkin değil. - **429 Too Many Requests**: Günlük kredi limiti aşıldı. - **500 Internal Error**: Dahili bir sistem hatası oluştu.

Routing API

A noktasından B noktasına (ve ara via-noktalarıyla) en hızlı ve en kısa rotayı hesaplar. Farklı ulaşım profilleri (driving, cycling, walking) için adım adım (turn-by-turn) talimatlar ve GeoJSON geometrisi döndürür.

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

Parametreler (Query Params)

ParametreTürDurumVarsayılanAçıklama
profilestringZorunludrivingUlaşım türü profili. Desteklenen değerler: driving (otomobil), cycling (bisiklet), walking (yaya).
coordinatesstringZorunlu-Noktaların koordinatları. Biçim: lon,lat;lon,lat;lon,lat... (en az 2 nokta).
overviewstringİsteğe bağlıfullDöndürülen rota geometrisinin ayrıntı düzeyi: simplified (sadeleştirilmiş), full (tam geometri), false (geometrisiz).
geometriesstringİsteğe bağlıgeojsonGeometri biçimi: geojson (GeoJSON nesnesi), polyline (kodlanmış dize).
stepsbooleanİsteğe bağlıtrueHer dönüş için adım adım talimatların döndürülüp döndürülmeyeceği.

Yanıt Yapısının Açıklaması

Başarılı yanıt; rotanın toplam mesafesini (metre cinsinden), seyahat süresini (saniye cinsinden), geçiş noktalarını ve GeoJSON rota çizgisini içerir.

Matrix API

Birden fazla nokta arasında hızlı bir mesafe ve seyahat süresi matrisi hesaplar (NxM tablosu). Lojistik rotalarını optimize etmek için ideal bir araçtır.

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

Parametreler (Query Params)

ParametreTürDurumVarsayılanAçıklama
profilestringZorunludrivingUlaşım profili (driving, cycling, walking).
coordinatesstringZorunlu-Matris noktaları. Biçim: lon,lat;lon,lat;lon,lat...
annotationsstringİsteğe bağlıduration,distanceHesaplanacak veri: duration (süre), distance (mesafe) veya her ikisi.

Yanıt Yapısının Açıklaması

Başarılı yanıt, her başlangıç ve bitiş noktası kombinasyonu için iki boyutlu bir distances (mesafeler) ve durations (süreler) matris tablosu döndürür.

Map Matching API

Hatalı GPS izlerini gerçek yol ağına hizalar (snap to road). GPS sinyallerindeki gürültüyü temizlemek için kullanılır.

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

Parametreler (Query Params)

ParametreTürDurumVarsayılanAçıklama
profilestringZorunludrivingUlaşım profili.
coordinatesstringZorunlu-Hizalanacak GPS koordinatları dizisi (lon,lat;lon,lat...)
overviewstringİsteğe bağlıfullHizalanan rotanın geometri hassasiyeti.

Nearest API

Herhangi bir koordinatı en yakın gerçek yol segmentine hizalar (snap) ve yol adı hakkında bilgi döndürür.

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

Parametreler (Query Params)

ParametreTürDurumVarsayılanAçıklama
profilestringZorunludrivingUlaşım profili.
coordinatesstringZorunlu-Yakınında arama yapılacak nokta. Biçim: lon,lat (tek çift).
numberintegerİsteğe bağlı3Bulunacak en yakın yol adaylarının sayısı.

Trip API

Gezgin Satıcı Problemini (TSP) çözer: Verilen nokta kümesini ziyaret etmek için en optimal döngüsel (veya açık) rotayı bulur ve noktaları sıralar.

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

Parametreler (Query Params)

ParametreTürDurumVarsayılanAçıklama
profilestringZorunludrivingUlaşım profili.
coordinatesstringZorunlu-Ziyaret edilecek noktalar. Biçim: lon,lat;lon,lat...
sourcestringİsteğe bağlıanyRotanın başlayabileceği nokta (any veya ilk nokta).
destinationstringİsteğe bağlıanyRotanın biteceği nokta (any veya son nokta).

Geocoding API

Adresleri coğrafi koordinatlara (veya tersine) dönüştürür. Entegre arama sistemleri için idealdir.

GET/api/1/geocode

Parametreler (Query Params)

ParametreTürDurumVarsayılanAçıklama
qstringZorunlu-Aranacak adres (örn: "Nizami Caddesi, Bakü").
reversebooleanİsteğe bağlıfalseTers geocoding (koordinattan adrese arama) yapmak için true olmalıdır.

Isochrone API

Belirli bir noktadan belirli bir süre veya mesafede ulaşılabilen coğrafi bölgelerin poligonlarını döndürür.

GET/api/1/isochrone

Parametreler (Query Params)

ParametreTürDurumVarsayılanAçıklama
pointstringZorunlu-Merkez nokta. Biçim: lat,lon.
time_limitintegerİsteğe bağlı600Seyahat süresi limiti (saniye cinsinden).

Route Optimization API

Bir araç filosunun rotalarını optimize eder (Vehicle Routing Problem). Araçların teslimat ve taşıma planını en düşük maliyetle hesaplar.

POST/api/1/vrp

Parametreler (Query Params)

ParametreTürDurumVarsayılanAçıklama
vehiclesarrayZorunlu[]Araçların listesi (id, kapasite, başlangıç adresi vb.).
servicesarrayZorunlu[]Hizmet verilecek adresler (id, koordinatlar, hizmet süresi vb.).

Location Clustering API

Verilen koordinatları coğrafi yakınlıklarına ve yoğunluklarına göre gruplar (kümelere ayırır).

POST/api/1/cluster

Parametreler (Query Params)

ParametreTürDurumVarsayılanAçıklama
customersarrayZorunlu[]Kümelenecek müşteri koordinatları ve ağırlıkları.