VANITYPASS
White-label APITravel Services

Travel Bookings & Redemption

Create bookings, retrieve vouchers, and redeem travel services as an end user.

Travel Bookings & Redemption

Users book and redeem travel services (lounge, fast-track, dining, fitness) through a single bookings endpoint. Vouchers are retrieved via the redemption endpoint and presented at the venue.

Create Booking

POST /v1/travel/bookings

FieldTypeRequiredDescription
product_typestringyeslounge | fast_track | dining | fitness
product_idstringyesService ID from search/availability
datestringyesISO-8601 date (YYYY-MM-DD)
timestringyesSlot time (HH:MM)
passenger_countintegeryesNumber of passengers
lead_passengerobjectyes{ first_name, last_name, email, calling_code?, phone?, country_code? }. calling_code + phone are required for fast-track bookings.
passenger_detailsarrayno[{ first_name, last_name, title?, date_of_birth?, nationality?, passport_number? }]
booking_typestringnoBooking intent — see below. Defaults to prebook.
flight_numberstringnoFlight number, where the service requires it
special_requestsstringnoFree-text notes forwarded to the venue
circle_idstringnoAttribute the booking to a travel circle (group bookings)
prebooking_idstring (uuid)noHydrate a previously held slot in held state
perk_paymentobjectno{ item_ids: [...] } — redeem perk items instead of paying cash

Booking intent — prebook vs walk_in

booking_type controls how the slot is fulfilled. Both intents share the identical create → pay → confirm pipeline and hit the same VanityPass Travel Network order endpoint — only the persisted intent differs:

ValueBehaviour
prebook (default)Reserves a specific slot and guarantees entry at the booked time.
walk_inPay-first, immediate booking with no slot guarantee — entry is subject to venue availability at the door.

Accepted aliases (case-insensitive): walk_in / walkin, prebook / pre_book / instant. Absent or unrecognised values fall back to prebook.

Sandbox-only. Try-it requests target https://cloud.vanitypass.com with X-Environment: Sandbox. No real bookings or charges. Production access: contact us.
POST/v1/travel/bookings

Sandbox credentials

Keys never leave your browser — they are sent only to cloud.vanitypass.com with X-Environment: Sandbox.

curl -X POST 'https://cloud.vanitypass.com/v1/travel/bookings' \
  -H 'Content-Type: application/json' \
  -H 'X-Environment: Sandbox' \
  -d '{"product_type":"lounge","product_id":"lounge_example_id","date":"2026-07-01","time":"14:30","passenger_count":1,"booking_type":"prebook","lead_passenger":{"first_name":"Jane","last_name":"Doe","email":"jane@example.com"}}'

Get Redemption Voucher

GET /v1/travel/bookings/{booking_id}/redemption

Returns the e-voucher, QR code, or access code. Show this to the staff at the venue.

Sandbox-only. Try-it requests target https://cloud.vanitypass.com with X-Environment: Sandbox. No real bookings or charges. Production access: contact us.
GET/v1/travel/bookings/{booking_id}/redemption

Sandbox credentials

Keys never leave your browser — they are sent only to cloud.vanitypass.com with X-Environment: Sandbox.

curl -X GET 'https://cloud.vanitypass.com/v1/travel/bookings/{booking_id}/redemption' \
  -H 'Content-Type: application/json' \
  -H 'X-Environment: Sandbox' \

List My Bookings

GET /v1/travel/bookings

Sandbox-only. Try-it requests target https://cloud.vanitypass.com with X-Environment: Sandbox. No real bookings or charges. Production access: contact us.
GET/v1/travel/bookings

Sandbox credentials

Keys never leave your browser — they are sent only to cloud.vanitypass.com with X-Environment: Sandbox.

curl -X GET 'https://cloud.vanitypass.com/v1/travel/bookings' \
  -H 'Content-Type: application/json' \
  -H 'X-Environment: Sandbox' \

Get Booking Details

GET /v1/travel/bookings/{booking_id}

Sandbox-only. Try-it requests target https://cloud.vanitypass.com with X-Environment: Sandbox. No real bookings or charges. Production access: contact us.
GET/v1/travel/bookings/{booking_id}

Sandbox credentials

Keys never leave your browser — they are sent only to cloud.vanitypass.com with X-Environment: Sandbox.

curl -X GET 'https://cloud.vanitypass.com/v1/travel/bookings/{booking_id}' \
  -H 'Content-Type: application/json' \
  -H 'X-Environment: Sandbox' \

Cancel Booking

POST /v1/travel/bookings/{booking_id}/cancel

Sandbox-only. Try-it requests target https://cloud.vanitypass.com with X-Environment: Sandbox. No real bookings or charges. Production access: contact us.
POST/v1/travel/bookings/{booking_id}/cancel

Sandbox credentials

Keys never leave your browser — they are sent only to cloud.vanitypass.com with X-Environment: Sandbox.

curl -X POST 'https://cloud.vanitypass.com/v1/travel/bookings/{booking_id}/cancel' \
  -H 'Content-Type: application/json' \
  -H 'X-Environment: Sandbox' \

Initiate Payment

POST /v1/travel/bookings/{booking_id}/initiate-payment

For bookings requiring upfront payment rather than perk redemption.

Sandbox-only. Try-it requests target https://cloud.vanitypass.com with X-Environment: Sandbox. No real bookings or charges. Production access: contact us.
POST/v1/travel/bookings/{booking_id}/initiate-payment

Sandbox credentials

Keys never leave your browser — they are sent only to cloud.vanitypass.com with X-Environment: Sandbox.

curl -X POST 'https://cloud.vanitypass.com/v1/travel/bookings/{booking_id}/initiate-payment' \
  -H 'Content-Type: application/json' \
  -H 'X-Environment: Sandbox' \