Sandbox: real offers, real PNRs, no tickets

In the sandbox these endpoints work against real carrier test inventory: a search returns real offers and you can create a real booking with a carrier PNR. Two things are worth knowing before you build against them.

  • Sandbox orders are test reservations. Nobody flies on them, and they raise no fee. Cancel what you create; anything left over expires on its own payment time limit.
  • Sandbox orders are never ticketed. A paid order comes back confirmed with an empty tickets[] and a warning saying why. Read status and tickets[], not the HTTP code — that is the check production relies on too.
Orders

Cancel order

Cancel an order at the airline. Verified, not merely accepted.

DELETE/v1/orders/{orderID}Requires X-API-Key
Cancels the order with the carrier and returns **204 No Content** — no body.The cancellation is verified. Norba re-reads the order afterwards and fails the call if it is still open at the airline, so a 204 means the carrier actually closed it rather than merely acknowledging the message. A follow-up GET /v1/orders/{orderID} reports status: cancelled.Norba's stored copy is updated to cancelled in the same call, so order history stops reporting the old status.This releases the reservation; it does not compute a refund. To see the money first, call GET /v1/orders/{orderID}/refund-eligibility or POST /v1/orders/{orderID}/cancel for a quote, then cancel.?airline= is optional: the airline comes from your stored order, not from this parameter. A value that disagrees with the persisted carrier is refused with 400 airline does not match the order.

Request example

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

Response example

Response example
(no content)

Authorization

X-API-KeystringRequired
Opaque API key issued from the Norba dashboard. Sent on every request as the X-API-Key HTTP header. Missing or invalid keys are rejected with 401 Unauthorized.

Path parameters

orderIDstringRequired
Canonical order ID.
Example: AA001Y1XD7ZA6

Query parameters

airlinestring
IATA code. Optional — inferred from your stored order. A value that disagrees with the persisted carrier is refused with 400 airline does not match the order.
Example: AA

Error codes

400
airline does not match the order — only returned when a supplied ?airline= disagrees with the persisted carrier; omitting it is fine.
502
The airline rejected the cancel, or the order was still open afterwards.
503
coming_soon — order writes disabled in this environment.
DELETE /v1/orders/{orderID} — Cancel order | Norba API