Среди, лимити и версии
Един базов URL за sandbox и production; ключът, с който подписвате, избира средата.
- Sandbox и production, един базов URL
- Лимити на заявките и квоти
- Ограничение гледания/резервации
- Идемпотентност
- Версии
Sandbox и production, един базов URL
Базов URL: https://api.dubaitrip.com/v1. Sandbox и production го споделят; ключът, с който подписвате, избира средата. Ключ dt_sbx_ работи срещу тестовите среди на нашите доставчици — търсенията, ценообразуването, проверките на тарифи, поръчките, резервациите, издаването на билети и анулиранията работят от край до край върху тестов инвентар, без истински билет или ваучер и без таксуване. Ключ dt_live_, издаден след прегледа за production, достига реалния инвентар и се урежда от депозита ви.
Резервациите в sandbox и в production се държат отделно в портала ви за разработчици (всяка резервация е маркирана), а обхватите, лимитите и IP правилата се управляват за всяка среда поотделно.
Лимити на заявките и квоти
Всеки ключ се ограничава чрез token bucket (устойчиви заявки в секунда плюс пиков обем) и дневна квота. Стойности по подразбиране за sandbox: 2 заявки/секунда, пиков обем 5, 2000 заявки/ден. Лимитите за production се договарят за всеки акаунт. При превишаване на bucket се връща 429 api_rate_limited със заглавка Retry-After; при изчерпване на квотата се връща 429 api_quota_exceeded до полунощ UTC.
Тежките търсения са асинхронни по замисъл: подайте wait=false, за да получите веднага searchId и да проверявате периодично крайната точка за търсене, или wait=true, за да получите пълния резултат с едно извикване. Периодичните проверки (polling) се броят към лимитите ви като всяка друга заявка.
Ограничение гледания/резервации
Търсенията се дозират и спрямо резервациите, които правите. Всеки ден от плъзгащ се период (по подразбиране 7 дни) дава безплатен лимит търсения, а всяка резервация, направена в този период, добавя още cap търсения — cap е броят търсения на резервация, договорен за вашия акаунт и показан в портала за разработчици. Периодичните проверки, ценообразуването, тарифните правила и четенето на съдържание никога не се броят; броят се само извикванията за търсене на полети и хотели.
Щом лимитът се изчерпи, търсенията връщат 429 look_to_book_exceeded със заглавка Retry-After, сочеща следващата полунощ UTC, когато най-старият ден от периода отпада. Една резервация незабавно отваря лимита отново. Картата Гледания/резервации в портала за разработчици показва броячите в реално време, cap и оставащото; ако интеграцията ви законно търси много повече, отколкото резервира, помолете ни да увеличим cap, вместо да опитвате отново въпреки отказа.
Идемпотентност
Крайните точки, които ангажират пари или инвентар — създаване на поръчка или резервация, издаване, анулиране — изискват заглавка Idempotency-Key (произволен уникален низ до 128 знака, UUID е идеален). Повторен опит със същия ключ връща първоначалния отговор, вместо да създаде дубликат; различно тяло с повторно използван ключ получава 409.
Версии
Версията е в пътя (/v1). Добавящите промени — нови незадължителни полета, нови enum стойности, нови крайни точки — излизат без смяна на версията, затова парсвайте предпазливо и игнорирайте непознатите полета. Несъвместимите промени получават нова основна версия с период за миграция; ръководството Дневник на промените изброява всяка промяна.