Genel kurallar
Tarih, para, sayfalama, idempotency, hız sınırı, hatalar ve sürümleme.
Tarih ve para
- Tarihler
YYYY-MM-DD. Konaklama [giriş, çıkış) aralığıdır; çıkış günü dahil değildir. Takvimdeki bir gün bir geceyi anlatır. - Tutarlar küçük para biriminde tam sayı (
totalMinor: 105000= 1.050,00 EUR) ve ISO 4217 kodu (currency) ile gelir. Mülkün fiyatı sahibinin para biriminde kalır; dönüştürme yapmayız. - Saat dilimi mülke aittir (
timezone); gün sınırları mülkün yerel gününe göredir.
Dil
Ad ve katalog alanları için locale=tr|en verin. Kataloğun anahtarları (pool.private gibi) dile bağlı değildir ve asla yeniden adlandırılmaz.
Sayfalama
Mülk listesi imleçle sayfalanır: cevaptaki nextCursor değerini bir sonraki istekte cursor olarak verin; null ise son sayfadasınız. Olay günlüğü after ile ilerler (next_after).
Idempotency
Opsiyon ve rezervasyon isteklerine Idempotency-Key başlığı ekleyin (bir UUID yeterli). Ağ koptuğunda isteği aynı anahtarla tekrarlarsanız ikinci bir kayıt oluşmaz, ilk cevap döner.
Hız sınırı
Canlı anahtar dakikada 600, test anahtarı 120 istek yapabilir. Her cevapta durum başlıkları vardır:
RateLimit-Limit: 600
RateLimit-Remaining: 587
RateLimit-Reset: 41Sınırı aşarsanız 429 rate_limited döner; RateLimit-Reset saniye sonra tekrar deneyin. Sürekli yoklama yerine webhook kullanın.
Hatalar
Hatalar RFC 9457 application/problem+json biçimindedir. Programınız code alanına göre karar vermelidir; detail insan içindir ve değişebilir.
{
"type": "about:blank",
"title": "Conflict",
"status": 409,
"code": "dates_unavailable",
"detail": "dates_unavailable"
}Tüm hata kodlarının listesi Hata kodları sayfasındadır.
Sürümleme
Adresler /v1 ile başlar. Geriye uyumlu eklemeler (yeni alan, yeni uç, yeni olay türü) sürümü değiştirmez; alıcılarınız bilmediği alanları ve olay türlerini yok saymalıdır. Kırıcı bir değişiklik yeni bir ana sürümle gelir ve Sürüm notlarında duyurulur. Webhook yüklerindeki api_version yayımlanma tarihini gösterir.