Fel
Varje fel är ett problemdokument enligt RFC 7807 med en stabil, maskinläsbar kod.
Problemdetaljer
Svar utanför 2xx har application/problem+json med status, title, detail, en stabil code (snake_case), ett valfritt field som namnger den felaktiga egenskapen i anropet, och ett traceId att uppge när du kontaktar supporten.
{
"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…"
}Koder du kommer att stöta på
401 api_key_invalid, api_signature_invalid, api_timestamp_skew, api_nonce_reused, api_token_invalid – autentiseringsproblem. 403 api_scope_missing (din nyckel saknar behörigheten), api_ip_not_allowed, api_partner_suspended. 429 api_rate_limited, api_quota_exceeded. 400 validation_failed (med field). 404 search_session_not_found, order_not_found, booking_not_found. 409 offer_expired, rate_expired, price_changed. 402 insufficient_credit (endast produktion – fyll på din deposition). 502 supplier_error – flygbolaget eller hotelleverantören svarade med fel; gör om sökningen.
Försök igen på ett säkert sätt
Försök igen efter 429 när Retry-After har passerat, och efter 502/503/504 med exponentiell backoff. Försök aldrig igen efter en 4xx annan än 429. Gör om bindande åtgärder (ordrar, bokningar, utfärdande, avbokning) bara med samma Idempotency-Key. Om en söksession går ut (404) startar du en ny sökning – erbjudande-id:n och prisnycklar gäller inte mellan sessioner.