Siirry sisältöön

Virheet

Jokainen virhe on RFC 7807 -ongelmadokumentti, jossa on vakaa, koneluettava koodi.

  1. Ongelmatiedot
  2. Koodit, joihin törmäät
  3. Turvallinen uudelleenyritys

Ongelmatiedot

Muut kuin 2xx-vastaukset palautetaan muodossa application/problem+json, ja niissä on status, title, detail, vakaa code (snake_case), valinnainen field, joka nimeää virheellisen pyyntöominaisuuden, sekä traceId, jonka mainitset ottaessasi yhteyttä tukeen.

Esimerkki
{
  "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…"
}

Koodit, joihin törmäät

401 api_key_invalid, api_signature_invalid, api_timestamp_skew, api_nonce_reused, api_token_invalid – tunnistautumisongelmat. 403 api_scope_missing (avaimeltasi puuttuu käyttöoikeus), api_ip_not_allowed, api_partner_suspended. 429 api_rate_limited, api_quota_exceeded. 400 validation_failed (field-kentän kera). 404 search_session_not_found, order_not_found, booking_not_found. 409 offer_expired, rate_expired, price_changed. 402 insufficient_credit (vain tuotannossa – kasvata talletustasi). 502 supplier_error – lentoyhtiö- tai hotellitoimittaja epäonnistui; yritä hakua uudelleen.

Turvallinen uudelleenyritys

Yritä 429 uudelleen Retry-After-ajan jälkeen ja 502/503/504 eksponentiaalisella viiveellä. Älä koskaan yritä uudelleen muuta 4xx-virhettä kuin 429. Yritä sitovia toimintoja (tilaukset, varaukset, lipunkirjoitus, peruutus) uudelleen vain samalla Idempotency-Key-arvolla. Jos hakuistunto vanhenee (404), aloita uusi haku – tarjoustunnisteet ja hinta-avaimet eivät ole voimassa istuntojen välillä.