Xəritə, axtarış və Studio API-ləri
Xəritə və məkan məlumatları ilə yaradın
Autentifikasiya və xətalar
Açarı Authorization: Bearer başlığında göndərin. Koordinatlar [uzunluq, enlik] formatındadır. OSRMROUTE_API_KEY dəyişənini lokal təyin edin; dataset sorğusu üçün DATASET_ID sahib olduğunuz datasetin UUID-si olmalıdır. Studio açarını brauzer kodunda göstərməyin.
401: açar yoxdur və ya yanlışdır · 403: icazə yoxdur · 402: kredit çatmır · 429: sorğu limiti · 502/503: mənbə xidməti əlçatmazdır. Cavabı istifadə etməzdən əvvəl HTTP statusunu yoxlayın; uğursuz ödənişli əməliyyatın rezerv krediti azad edilir.
409: revision ziddiyyəti. Yenidən cəhd etməzdən əvvəl son resursu oxuyun və dəyişiklikləri uyğunlaşdırın.
Təbii dil axtarışı
Qısa ingilis sorğusu ilə məkanları tapın.
- Sorğu kreditləri
- 2
- Tələb olunan icazələr
geocode + places
İngiliscə kateqoriya + near/in + yer; 100–5000 m radius. Altı kateqoriya, ən çox on namizəd. Reytinq, qiymət və canlı mövcudluq yoxdur. Uğurlu boş nəticə də daxil olmaqla iki kredit.
POST /api/v1/search/natural
q * | string | maxLength: 1000 |
|---|---|---|
ai | boolean | default: false |
center | array | |
curl --fail-with-body -X POST "https://osrmroute.com/api/v1/search/natural" \
-H "Authorization: Bearer $OSRMROUTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"q":"cafes near Berlin within 2 km"}'intent
places[].distance_meters
places[].details
interpretation: constrained_english_grammar
exhaustive: falseMəkan detalları
Axtarış nəticəsindəki mənbə atributlarını oxuyun.
- Sorğu kreditləri
- 1
- Tələb olunan icazələr
places
places icazəsi ilə 1 kredit. Axtarış nəticəsinin ID-si üzrə OpenStreetMap obyektini oxuyur; mənbə keşi 1 saatdır. Telefon, sayt, iş saatları və əlçatanlıq yoxdursa null qalır. Mənbə vaxtı obyektin redaktə tarixidir, biznesin təsdiqi deyil. Canlı açıq/bağlı statusu yoxdur. Açar üçün 20 sorğu/dəq; keşdə olmayan mənbə sorğuları ümumi 30/dəq.
POST /api/v1/places/details
id * | string | maxLength: 24 |
|---|
curl --fail-with-body -X POST "https://osrmroute.com/api/v1/places/details" \
-H "Authorization: Bearer $OSRMROUTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"id":"osm:N:123"}'place.details.phone
place.details.website
place.details.opening_hours
place.details.wheelchair
place.details.observed_at
place.details.source_updated_at
place.details.open_now: nullMətnlə stil önizləməsi
Rəng və qat dəyişikliklərini yazın, xəritəyə baxıb tətbiq edin.
- Sorğu kreditləri
- 0
- Tələb olunan icazələr
studio
Nöqtəli vergüllə ayrılmış ingilis əmrləri: hazır stil, hex rəng və qat görünməsi. Önizləmə saxlamır və yayımlamır; Tətbiq et mövcud qaralama və avtomatik saxlama axınına keçir.
POST /api/v1/studio/preview
prompt * | string | maxLength: 1000 |
|---|---|---|
ai | boolean | default: false |
design | object | |
curl --fail-with-body -X POST "https://osrmroute.com/api/v1/studio/preview" \
-H "Authorization: Bearer $OSRMROUTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"prompt":"dark; water #123456; hide buildings"}'design
changes[]
saved: false
method: explicit_style_commandsStatic Maps API
Hesabat və tətbiqlər üçün üslublu xəritələri PNG kimi ixrac edin.
- Sorğu kreditləri
- 4
- Tələb olunan icazələr
maps
Dörd palitra: light, dark, navigation və minimal. Şəkil ölçüsü 128–512 px, zoom 1–14. Sadələşdirilmiş render mənbə qeydini saxlayır; xüsusi Studio qatları və effektləri göstərilmir.
POST /api/v1/maps/static
center * | array | |
|---|---|---|
zoom | integer | min: 1 · max: 14 · default: 12 |
width | integer | min: 128 · max: 512 · default: 512 |
height | integer | min: 128 · max: 512 · default: 512 |
style | string | light | dark | navigation | minimal |
curl --fail-with-body -X POST "https://osrmroute.com/api/v1/maps/static" \
-H "Authorization: Bearer $OSRMROUTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"center":[13.405,52.52],"zoom":12,"width":512,"height":512,"style":"light"}' \
--output map.pngContent-Type: image/pngDataset Query API
Yüklədiyiniz coğrafi datasetlərdə yaxın obyektləri tapın.
- Sorğu kreditləri
- 1
- Tələb olunan icazələr
maps
Yalnız açar sahibinin datasetləri əlçatandır. Radius 0–50 000 m, limit 1–50. Nəticə yaxın nöqtələr və təxmini lokal məsafədir; yol məsafəsi və tam ilkin həndəsə deyil. Boş uğurlu nəticə də 1 kreditdir.
POST /api/v1/maps/datasets/{id}/query
point * | array | |
|---|---|---|
radius | number | min: 0 · max: 50000 · default: 0 |
limit | integer | min: 1 · max: 50 · default: 10 |
curl --fail-with-body -X POST "https://osrmroute.com/api/v1/maps/datasets/$DATASET_ID/query" \
-H "Authorization: Bearer $OSRMROUTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"point":[2.3522,48.8566],"radius":1000,"limit":10}'type: FeatureCollection
features[].geometry.type: Point
features[].properties
returnedSearch Along Route API
Marşrut boyunca dayanacaqları və əlavə sürüş vaxtını müqayisə edin.
- Sorğu kreditləri
- 14
- Tələb olunan icazələr
places + route
200 km-dək avtomobil marşrutları. Beş nöqtədə axtarış və ən çox səkkiz əlavə yol hesablanır; axtarış tam əhatəli deyil. Kateqoriyalar: fuel, charging_station, restaurant, cafe, parking, pharmacy. Canlı trafik və şarj mövcudluğu yoxdur.
POST /api/v1/places/along-route
start * | array | |
|---|---|---|
end * | array | |
category * | string | fuel | charging_station | restaurant | cafe | parking | pharmacy |
max_detour_seconds | number | min: 0 · max: 1800 · default: 600 |
limit | integer | min: 1 · max: 8 · default: 5 |
curl --fail-with-body -X POST "https://osrmroute.com/api/v1/places/along-route" \
-H "Authorization: Bearer $OSRMROUTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"start":[13.405,52.52],"end":[13.3777,52.5163],"category":"cafe","max_detour_seconds":600,"limit":5}'places[]
baseline.duration_seconds
baseline.distance_meters
discovery
duration_modelStructured Geocoding API
Küçə, şəhər, poçt indeksi və ölkə ilə ünvan axtarın.
- Sorğu kreditləri
- 1
- Tələb olunan icazələr
geocode
street, city və ya postcode verin. Ölkə kodu iki hərf, digər sahələr ən çox 100 simvoldur. Sahələr mətn axtarışına çevrilir. matched/different/missing müqayisəsi və mənbə dəqiqliyi ünvanın təsdiqi deyil.
POST /api/v1/search/structured
housenumber | string | maxLength: 100 |
|---|---|---|
street | string | maxLength: 100 |
city | string | maxLength: 100 |
state | string | maxLength: 100 |
postcode | string | maxLength: 100 |
countrycode | string | maxLength: 2 |
curl --fail-with-body -X POST "https://osrmroute.com/api/v1/search/structured" \
-H "Authorization: Bearer $OSRMROUTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"street":"Friedrichstraße","city":"Berlin","countrycode":"DE"}'features[].id
features[].address
features[].precision
features[].match.components
features[].precision_basis
search_method: composed_address_querySuggest & Retrieve API
Təkliflər və təhlükəsiz nəticə əldəetmə ilə məkan axtarışı yaradın.
- Sorğu kreditləri
- 1 + 1
- Tələb olunan icazələr
geocode
Hər suggest və retrieve sorğusu 1 kreditdir. Sorğu 1–200 simvol. Token 10 dəqiqəyə bitir və açar sahibinə bağlıdır. Retrieve yeni axtarış deyil, imzalanmış təklifin saxlanmış nəticəsini qaytarır.
POST /api/v1/search/suggest
q * | string | maxLength: 200 |
|---|
POST /api/v1/search/retrieve
token * | string | maxLength: 16384 |
|---|
curl --fail-with-body -X POST "https://osrmroute.com/api/v1/search/suggest" \
-H "Authorization: Bearer $OSRMROUTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"q":"Paris"}'suggestions[].id
suggestions[].name
suggestions[].address
suggestions[].token
expires_in_seconds: 600
retrieve → place, retrieval: signed_suggestion_snapshotcurl --fail-with-body -X POST "https://osrmroute.com/api/v1/search/retrieve" \
-H "Authorization: Bearer $OSRMROUTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"token":"TOKEN_FROM_SUGGEST"}'Studio API
Tətbiqinizdən xəritə stillərini, datasetləri və nəşri idarə edin.
- Sorğu kreditləri
- 0
- Tələb olunan icazələr
studio
Limitsiz açarlarda da ayrıca studio icazəsi tələb olunur. GET stilləri və ya dataset metadatasını siyahılayır; POST idarə edir. Stillərdə revision və nəşr təsdiqi var. Dataset yaratmaq/silmək olar, yerində redaktə edilmir. Limit: açar başına dəqiqədə 30 oxuma və ya 5 yazma; iş sahəsi kvotaları tətbiq olunur.
GET / POST /api/v1/studio/{resource}
action * | string | |
|---|---|---|
id | string | |
revision | integer | |
name | string | maxLength: 80 |
design | object | |
data | object | |
confirmPublic | boolean | |
confirmDelete | boolean | |
version | integer | |
curl --fail-with-body "https://osrmroute.com/api/v1/studio/styles" \
-H "Authorization: Bearer $OSRMROUTE_API_KEY"GET styles → styles[]
GET datasets → datasets[]styles · create | name, design |
|---|---|
styles · save / autosave | id, revision, name, design |
styles · duplicate | id, revision, name |
styles · restore | id, revision, version |
styles · publish | id, revision, confirmPublic: true |
styles · unpublish / delete | id, revision |
datasets · create | name, data: GeoJSON FeatureCollection |
datasets · delete | id, confirmDelete: true |
{
"action": "create",
"name": "Berlin",
"design": {
"preset": "light",
"colors": {
"land": "#f1f3f5",
"water": "#a9d8ed",
"park": "#c9dfc6",
"road": "#ffffff",
"highway": "#edc779",
"building": "#d9dee3",
"label": "#334155"
},
"visible": {
"roads": true,
"buildings": true,
"parks": true,
"labels": true,
"pois": true,
"boundaries": true
},
"center": [
13.405,
52.52
],
"zoom": 11,
"overlays": []
}
}{
"action": "create",
"name": "Paris places",
"data": {
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {
"name": "Paris"
},
"geometry": {
"type": "Point",
"coordinates": [
2.3522,
48.8566
]
}
}
]
}
}