Chyby
Každé zlyhanie je dokument problému podľa RFC 7807 so stabilným strojovo čitateľným kódom.
Popis problému
Odpovede mimo 2xx majú typ application/problem+json a obsahujú status, title, detail, stabilný code (snake_case), voliteľné field s názvom problémovej vlastnosti požiadavky a traceId, ktorý uveďte pri kontakte s podporou.
{
"type": "https://dubaitrip.com/docs/api/errors#price_changed",
"title": "Price changed",
"status": 409,
"detail": "The fare is now 412.50 USD (was 398.00 USD). Re-price and confirm.",
"code": "price_changed",
"traceId": "00-3f2a…"
}Kódy, s ktorými sa stretnete
401 api_key_invalid, api_signature_invalid, api_timestamp_skew, api_nonce_reused, api_token_invalid — problémy s overením. 403 api_scope_missing (vášmu kľúču chýba rozsah), api_ip_not_allowed, api_partner_suspended. 429 api_rate_limited, api_quota_exceeded. 400 validation_failed (s field). 404 search_session_not_found, order_not_found, booking_not_found. 409 offer_expired, rate_expired, price_changed. 402 insufficient_credit (iba v produkcii — doplňte si zálohu). 502 supplier_error — zlyhala letecká spoločnosť alebo dodávateľ hotela; zopakujte vyhľadávanie.
Bezpečné opakovanie
429 opakujte po Retry-After a 502/503/504 s exponenciálnym odstupom. Nikdy neopakujte 4xx okrem 429. Záväzné operácie (objednávky, rezervácie, vystavenie, zrušenie) opakujte iba s rovnakým Idempotency-Key. Ak relácia vyhľadávania vyprší (404), začnite nové vyhľadávanie — ID ponúk a kľúče sadzieb medzi reláciami neplatia.