Search -> Quote -> Book -> Cancel.
Step 0: Prepare Credentials
- Admin creates partner user(s) and connection(s)
- Partner admin creates API key(s)
- Integrator stores:
api-keyconnection code(settings.access.code)
Step 1: Search
optionId=data.accommodations[].options[].id
- Search option payload is cached by backend with ~24 hour TTL
- Option payload includes occupancy and stay snapshot for quote validation
Step 2: Quote
quoteCriteria.optionIdfrom search responseaccommodation,checkIn/checkOut,occupanciesmust match cached search payload
quoteId=data.id
- Quote payload is cached for book flow with ~30 minute TTL
Step 3: Book
bookCriteria.quoteIdfrom quote responsebookCriteria.partnerReferencerequiredbookCriteria.holder.name/surNamerequiredsettings.access.codemust belong to current partner
bookingReference=data.bookingReference
Step 4: Cancel
input.reference.bookingReferencerequired- Booking must be owned by partner
- Booking must be cancellable according to policy and current time
Important Validation Rules
settings.access.codeis mandatory in all core APIs- Quote fails if price changed against search snapshot (
"Price changed") - Book fails when quote reference expired/invalid
- Cancel fails after check-in date or for non-refundable bookings
Rate Limiting
Rate limit is applied on:POST /api/searchPOST /api/quote
X-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-ResetRetry-Afterwhen limited (429)