API reference
Quick start
Six calls take a customer from email to a ticketed booking. Follow them in order.
This is the spine every Trip963 API storefront implements. Each step is a real endpoint in the left menu — open it when you want the full contract.
1. Log the customer in
POST /v2/auth/login with the storefront Origin header and an appKey + secret body. You receive an accessToken. A refreshToken cookie is set for you. Send the bearer token on every later call.
2. Start a search, then poll
POST /v2/flight/init-search returns a searchId immediately — that means the search started, not that fares exist. GET /v2/flight/search-result/{id} until meta.completionPercent is 100. COMPLETED, PARTIAL and FAILED all mean stop polling.
3. Open a flight
GET /v2/flight/detail/{flightId}?searchId=… returns branded fare groups, baggage and a passenger-level split of the marked-up total.
4. Cart, then passengers
POST /v2/cart with the itinerary id. PUT /v2/cart/{id} with the full passenger list. Ages are measured at departure, not today.
5. Revalidate, then create the PNR
POST /v2/cart/validate-fare asks the provider if the fare moved. Then POST /v2/cart/create-pnr. Customers always pay in full — partial payment is forced off server-side.
6. Issue the ticket
POST /v2/order/issue tickets the owned order. Later, list history with /v2/order/search and reopen one with /v2/order/show/{id}. Saved travellers live at /v2/travelers/search.