Shopping endpoints in development
The Shopping API endpoints are currently under active development. Request/response shapes may change.
Shopping
Price offer
Lock in a price before booking — essential step between search and purchase.
POST
/v1/shopping/offers/priceRequires X-API-KeyAirline prices fluctuate constantly. Before you present a final price to your customer and collect payment, call this endpoint to lock the offer.It confirms the current price directly with the airline and returns a
- Search offers → Price-lock → Create order
- You must create the order (
- If the window expires, call this endpoint again for a fresh price lockThis two-step flow protects both you and your customer from surprise price changes at checkout.
price_guaranteed_until timestamp — typically 5 to 15 minutes into the future.The booking flow:- Search offers → Price-lock → Create order
- You must create the order (
POST /v1/orders) before the lock window closes- If the window expires, call this endpoint again for a fresh price lockThis two-step flow protects both you and your customer from surprise price changes at checkout.
Request example
curl --request POST \
--url https://api.norba.io/v1/shopping/offers/price \
--header "X-API-Key: $NORBA_KEY" \
--header "Content-Type: application/json" \
--data '{ "offer_ids": ["aa_offer-abc123"] }'Response example
Response example
{
"offer_id": "aa_offer-abc123",
"airline": "AA",
"currency": "EUR",
"total_amount": 249,
"base_fare": 199,
"taxes_fees": 50,
"cabin_class": "economy",
"price_guaranteed_until": "2026-06-20T14:45:00Z"
}Authorization
X-API-KeystringRequiredOpaque 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.Request body
offer_idsarray<string>RequiredOffer IDs from a shopping response.
Example:
["aa_offer-abc123"]Error codes
offer_expiredThe offer is no longer available.
price_changedThe price has changed since the shopping response.