getExperienceTourBookingOptions
Retrieve priced tour booking options, available time slots, and required guest inputs for a selected tour date and participant mix, so you can display live prices and prepare checkout.
Instructions
Overview
Resolve priced booking options, time slots, and required guest inputs for a selected tour date and participant mix.
When to Use
Option/slot pickers - Show available variants and start times for a date
Live pricing - Display authoritative slot sell totals (
pricing.totals.net/priceSummary.netPrice)Checkout forms - Collect
bookingQuestionSchemabefore proceeding to payment
What You Get
Booking options -
optionId, title, andbookingQuestionSchemaTime slots -
dateTime,isAvailable, and slot-level pricing (unitNet/totalNet/totals.net/priceSummary.netPrice, plustotals.commissionwhen markup applies)Participant mapping - Uses
ticketCategorykeys from availability (e.g.adult,child)
Money semantics
Field names keep *Net from experiences-api; dispatcher marks commercial net up in place to partner sell. Use slots[].pricing.totals.net as selection.price.amount on prebook.
Quick Start
POST a body with language, currency, date (YYYY-MM-DD), and participants to /experiences/tours/{id}/booking-options. Use slot pricing.totals.net for display and checkout handoff.
Option-level price
options[].price.amount is overwritten from the lowest available slot pricing.totals.net for the requested mix (after markup). It is not the GYG catalog from-price. Checkout still uses the chosen slot pricing.totals.net.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | Dispatcher-standard envelope. Mirrors the normalized experiences-api payload: an object for single-resource responses (e.g. tour detail, availability) or an array when the provider returns a JSON array. |