Sandbox orders are test bookings

Sandbox keys reach the airlines’ test systems: nobody flies on these orders and no booking fee is charged. Check status and tickets[], not the HTTP code.

Orders

Retrieve order

Full current state of an order — passengers, itinerary, seats, tickets, payments and audit history.

GET/v1/orders/{orderID}Requires X-API-Key

Returns your order from Norba's copy, without calling the airline, so it is safe to poll.

  • ?refresh=true reads the order from the airline, stores it and returns it (a metered airline call).
  • An unpaid hold past its expires_at is re-read from the airline (at most every ten minutes), so a released hold comes back cancelled.
  • An order of another account or the other environment is 404 order_not_found. When one of your orders is one character away from the id you sent, the 404 carries did_you_mean.

The response is the Order, as from POST /v1/orders, plus history[].

Request example

curl --request GET \
  --url https://api.norba.io/v1/orders/{orderID} \
  --header "X-API-Key: $NORBA_KEY"

Response example

Response example
{
  "order_id": "AA001Y1XD7ZA6",
  "airline_order_id": "AA001Y1XD7ZA6",
  "pnr": "JBQGEY",
  "airline": "AA",
  "environment": "sandbox",
  "channel": "api",
  "status": "confirmed",
  "created_at": "2026-08-14T09:15:00Z",
  "expires_at": "2026-08-17T21:59:00Z",
  "currency": "EUR",
  "total_amount": 380.62,
  "passengers": [
    {
      "id": "PAX96101",
      "type": "ADT",
      "first_name": "MARIA",
      "last_name": "GARCIA"
    }
  ],
  "slices": [
    {
      "origin": "BCN",
      "destination": "JFK",
      "stops": 0,
      "segments": [
        {
          "flight_number": "AA67"
        }
      ]
    }
  ],
  "history": [
    {
      "event_type": "created",
      "occurred_at": "2026-08-14T09:15:00Z",
      "actor": "agency",
      "payload": {
        "to_status": "confirmed"
      }
    }
  ]
}

Authorization

X-API-KeystringRequired

Your API key from the dashboard. A missing or invalid key answers 401; see Authentication.

Path parameters

orderIDstringRequired

Canonical order ID, e.g. AA001Y1XD7ZA6.

Example: AA001Y1XD7ZA6

Query parameters

refreshboolean

true reads the order from the airline before answering.

Example: true

Error codes

404

order_not_found, with did_you_mean when one of your orders is one character away.

502

Only with ?refresh=true: the airline could not be read, or answered about a different order.

GET /v1/orders/{orderID} — Retrieve order | Norba API