Sipariş durumu
GET /api/vendor/v1/orders/{orderId}Bir teslimatın güncel durumunu ve geçmişini birlikte döndürür. Toplu sorgulama ya da "belirli bir tarihten sonra değişenler" biçiminde bir uç nokta bulunmaz. Durum bilgisi bildirimlerle iletilir; bu uç nokta, bildirim adresinizin erişilemez kaldığı dönemlerde aradaki farkı kapatmak içindir.
İstek
GET /api/vendor/v1/orders/e5a9f0d3-7c21-4b88-a06e-3f9182bd4471
Authorization: Bearer <token>Sipariş oluşturulurken döndürülen orderId değerini kullanın. Kendi externalOrderId numaranız yanıtta yer alır, ancak sorgulama bu değerle yapılamaz.
Yanıt
{
"success": true,
"data": {
"orderId": "e5a9f0d3-7c21-4b88-a06e-3f9182bd4471",
"externalOrderId": "ADS-ORD-99213",
"status": "Delivering",
"courier": {
"name": "Emre K.",
"phone": "5307654321",
"vehicleType": "Motosiklet"
},
"etaDropoffAt": "2026-08-04T19:14:00+03:00",
"updatedAt": "2026-08-04T19:06:40+03:00",
"events": [
{ "status": "Searching", "at": "2026-08-04T18:42:14+03:00" },
{ "status": "Assigned", "at": "2026-08-04T18:44:02+03:00" },
{ "status": "PickingUp", "at": "2026-08-04T18:51:30+03:00" },
{ "status": "PickedUp", "at": "2026-08-04T19:03:22+03:00" },
{ "status": "Delivering", "at": "2026-08-04T19:04:10+03:00" }
]
}
}events dışındaki alanlar, delivery.status_changed bildiriminin data bölümüyle aynı yapıdadır. Tek bir okuyucu her iki kaynağı da karşılar.
events alanı siparişin baştan sona durum geçmişini içerir. Restorandan gelen geçmişe yönelik soruların Hızlıyo'ya iletilmesine gerek kalmaması için eklenmiştir.
İstek limiti
Sipariş başına 10 saniyede bir istek
Limit sipariş bazındadır, hesap bazında değil. Aynı teslimatın arka arkaya sorgulanması, hesabınızda kalan hak ne olursa olsun 429 ile sonuçlanır.
Durum bilgisi bildirimlerle iletilir. Sorgulamayı yalnızca gerekçe oluştuğunda kullanın: destek talebi geldiğinde ya da kesinti sonrası aradaki farkı kapatırken. Zamanlayıcıya bağlamayın.
HTTP/1.1 429 Too Many Requests
Retry-After: 7{
"success": false,
"message": "Bu sipariş için sorgu sıklığını aştınız. Durum değişikliklerini bildirimlerden takip edin.",
"data": { "errorCode": "RATE_LIMITED", "retryAfterSeconds": 7 }
}Durumlar
| Durum | Nihai durum | Açıklama |
|---|---|---|
Searching | hayır | Kurye aranıyor |
Assigned | hayır | Kurye görevi üstlendi |
PickingUp | hayır | Kurye restorana yöneldi |
PickedUp | hayır | Paket teslim alındı, bu aşamadan sonra iptal edilemez |
Delivering | hayır | Kurye müşteriye yöneldi |
Delivered | evet | Teslimat tamamlandı |
Failed | evet | Teslimat gerçekleşmedi, nedeni failureReason alanında yer alır |
Cancelled | evet | Paket teslim alınmadan iptal edildi |
Nihai duruma ulaşan sipariş için başka bildirim iletilmez.
Kesinti sonrası uygulama
Bildirim adresiniz erişilemez kaldıysa geçmiş siparişlerin tamamını taramayın. Yalnızca sizin kayıtlarınızda hâlâ nihai duruma ulaşmamış olanları sorgulayın. Bir siparişin yaşam süresi bir saatten kısa olduğu için bu kayıtların sayısı düşüktür ve her biri tek istek gerektirir.