Yol Uzunluğu
Harita Hesaplama Kredi / istek: 1Nokta listesindeki ardışık kenarların toplam jeodezik uzunluğunu metre olarak döner.
POST
https://api.apikodu.com/api/v1/maps/pathlength
Dokümantasyon
Genel bakış
Rota (nokta dizisi) uzunluğu.
Kimlik doğrulama
Her istekte x-api-key başlığı zorunludur. Kullanılan kredi ve kalan kota yanıt başlıklarında (x-api-credits-used, x-api-remaining-credits, x-rate-limit-*) döner.
İstek
POST
https://api.apikodu.com/api/v1/maps/pathlength
JSON gövde.
Parametreler
| Ad | Tip | Zorunlu | Varsayılan | Seçenekler | Açıklama |
|---|---|---|---|---|---|
path |
json | * Zorunlu | — | — | En az 2 nokta. |
includeSegments |
boolean | Opsiyonel | true |
true false |
Parça dökümü. |
Yanıt
| Ad | Tip | Açıklama |
|---|---|---|
lengthMeters |
number | Tüm parçaların haversine toplamı metre. |
lengthKilometers |
number | Toplam uzunluk km. lengthMeters / 1000. |
pointCount |
integer | path içindeki nokta sayısı. |
segmentCount |
integer | Parça sayısı = pointCount - 1. |
segments |
array | includeSegments=true ise her parça. false ise boş dizi. |
segments[].index |
integer | Parça sıra no (1'den başlar). |
segments[].from |
object | Parça başlangıç {latitude, longitude}. |
segments[].to |
object | Parça bitiş {latitude, longitude}. |
segments[].distanceMeters |
number | Bu parçanın mesafesi metre. |
segments[].distanceKilometers |
number | Bu parçanın mesafesi km. |
Hatalar
| HTTP | code | Açıklama |
|---|---|---|
400 |
-234 |
path yok veya boş. |
400 |
-239 |
path 2–500 nokta olmalı. |
400 |
-236 |
Bir path noktasının latitude/longitude değeri geçersiz. |
401 |
-100 |
x-api-key yok, boş, prefix/uzunluk hatalı, pasif, yasaklı, süresi dolmuş, IP kısıtına takıldı veya bu API anahtara izinli değil. |
429 |
-221 |
Dakikalık istek limiti aşıldı. Yanıt başlıkları: x-rate-limit-limit, x-rate-limit-remaining, x-rate-limit-reset. |
429 |
— | Paket kredi kotası bu isteğin kredisini karşılamıyor. Gövde { error, limit, currentUsage, requestCost } olabilir (code alanı yok). |
500 |
-1 |
Beklenmeyen sunucu hatası. message genel bir hata metnidir; teknik ayrıntı içermez. |
Notlar
- Başarılı gövde { data: { ... } } şeklindedir. Hata gövdesi { code, message } şeklindedir. code alanı ApiResponseCode enum değeridir (negatif tam sayı).
Örnek yanıt
{
"data": {
"lengthMeters": 3462.21,
"lengthKilometers": 3.46221,
"pointCount": 4,
"segmentCount": 3,
"segments": [
{
"index": 1,
"from": {
"latitude": 41.008,
"longitude": 28.97
},
"to": {
"latitude": 41.008,
"longitude": 28.986
},
"distanceMeters": 1342.1,
"distanceKilometers": 1.3421
},
{
"index": 2,
"from": {
"latitude": 41.008,
"longitude": 28.986
},
"to": {
"latitude": 41.015,
"longitude": 28.986
},
"distanceMeters": 778.01,
"distanceKilometers": 0.77801
},
{
"index": 3,
"from": {
"latitude": 41.015,
"longitude": 28.986
},
"to": {
"latitude": 41.015,
"longitude": 28.97
},
"distanceMeters": 1342.1,
"distanceKilometers": 1.3421
}
]
}
}
Kod örnekleri
const response = await fetch('https://api.apikodu.com/api/v1/maps/pathlength', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'YOUR_API_KEY'
},
body: JSON.stringify({
name: 'example',
value: 123
})
});
const data = await response.json();
console.log(data);
import requests
headers = {
'Content-Type': 'application/json',
'x-api-key': 'YOUR_API_KEY'
}
payload = {
'name': 'example',
'value': 123
}
response = requests.post('https://api.apikodu.com/api/v1/maps/pathlength', headers=headers, json=payload)
data = response.json()
print(data)
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("x-api-key", "YOUR_API_KEY");
var payload = new { name = "example", value = 123 };
var json = JsonSerializer.Serialize(payload);
var content = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.PostAsync("https://api.apikodu.com/api/v1/maps/pathlength", content);
response.EnsureSuccessStatusCode();
var data = await response.Content.ReadAsStringAsync();
Console.WriteLine(data);
$data = [
'name' => 'example',
'value' => 123
];
$response = file_get_contents('https://api.apikodu.com/api/v1/maps/pathlength', false, stream_context_create([
'http' => [
'header' => "x-api-key: YOUR_API_KEY"
],
'method' => 'POST',"
'content' => json_encode($data)
]));
print_r(json_decode($response, true));
curl -X POST 'https://api.apikodu.com/api/v1/maps/pathlength' \
-H 'Content-Type: application/json' \
-H 'x-api-key: YOUR_API_KEY' \
-d '{
"name": "example",
"value": 123
}'
Hemen denemeye başlayın
Ücretsiz hesap açın, API anahtarınızı alın ve ilk isteğinizi dakikalar içinde gönderin.