NAV
http

Introduction

Welcome to the Magpie API, which provides programmatic access to the Magpie platform.

For our V1 API Docs, please visit this page.

Authentication

Provide X-Api-Key header:

GET /api HTTP/1.1
Host: magpie.travel
Accept: application/json
X-Api-Key: 58c068808359e091c310054e43c3c27a

or api_key query parameter:

GET /api?api_key=58c068808359e091c310054e43c3c27a HTTP/1.1
Host: magpie.travel
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json

{ "documentation": "https://docs.magpie.travel" }

Magpie API requires the X-Api-Key header containing your API key to be included for all requests:

X-Api-Key: <Your API Key>

Alternatively, the API key can be provided via the api_key query parameter:

https://magpie.travel/api?api_key=<Your API Key>

If an API key was not given or it doesn't belong to an existing account, a 401 Unauthorized response status is returned.

You can find the API key for your Magpie account on Profile -> Settings tab.

OCTO

OCTO API standard specification

Account

GET /api/accounts/getAccount/{accountId} HTTP/1.1
Host: magpie.travel
Accept: application/json
X-Api-Key: 58c068808359e091c310054e43c3c27a
HTTP/1.1 200 OK
Content-Type: application/json
{
    "account": {
        "id": "d7a11efb-da83-4715-b8b3-f2c2ce74f81e",
        "name": "Skyline Sightseeing",
        "telephone": "+1-555-123-4567",
        "website": "https://www.skylinesightseeing.com",
        "description": "Skyline Sightseeing is a renowned sightseeing tour agency located at Fisherman's Wharf in San Francisco, California. They offer comprehensive city tours using hop-on, hop-off double-decker buses and have packages covering major sites including Muir Woods, Alcatraz, and Wine Country. Known for high-quality service and diverse tour options, they ensure a memorable experience for every visitor. With tours available for 1-day and 2-day passes, as well as specialized night tours, they provide flexibility and convenience in exploring San Francisco's iconic landmarks.",
        "category": "Tour Operator",
        "secondary_category": "Transportation",
        "logo": "https://assets.magpie.travel/accounts/logos/skyline.png",
        "timeZone": "America/Los_Angeles",
        "banner": "https://assets.magpie.travel/accounts/banners/skyline-banner.jpg",
        "email": "[email protected]",
        "locale": "en-US",
        "linkedinHandle": "skylinesightseeing",
        "facebookHandle": "Skyline",
        "instagram_handle": "skysightseeing",
        "twitterHandle": "skylinetours",
        "youtubeHandle": "skylinechannel",
        "tiktokHandle": "skylinetours",
        "tripadvisorHandle": "skyline-sightseeing",
        "googleHandle": "skylinesightseeing",
        "tradeUrl": "https://trade.skylinesightseeing.com",
        "tradeEmail": "[email protected]",
        "requirements": "Having the tourists, investing in our company and leading to group of tourists.",
        "productDescription": "Travel Guides, Tours, Escorted tours and more",
        "bookingSystemsId": [
            "Daniel test",
            "TourOpp",
            "Tripnect",
            "NUITEE TRAVEL"
        ],
        "faqs": [
            {
                "question": "What time do buses start in the morning",
                "answer": "Buses start at 9am and stop at 5pm during the week, and 6pm on weekends."
            },
            {
                "question": "How often do buses run",
                "answer": "Buses run every 15-30 mins."
            }
            {
                "question": "Are tickets to attractions included in the tour",
                "answer": "No, the tour does not include entrance fees to attractions that we stop at. Always check ahead for availability of attractions, especially Alcatraz. "
            }
        ],
        "media": [
            {
                "src": "https://res.cloudinary.com/example/image/logo.png",
                "type": "image/png",
                "rel": "LOGO",
                "title": "Company Logo",
                "caption": "Official logo of the tour company",
                "copyright": "© 2025 Tour Company"
            },
            {
                "src": "https://res.cloudinary.com/example/image/cover.jpg",
                "type": "image/jpeg",
                "rel": "COVER",
                "title": "Tour Cover Image",
                "caption": "San Francisco Bus Tour panoramic view",
                "copyright": "© 2025 Tour Company"
            }
        ],
        "locations": [
            {
                "title": "99 Jefferson Street, San Francisco, CA 94133, USA",
                "shortDescription": null,
                "types": "Business Address",
                "place": {
                    "latitude": 37.807863999999995,
                    "longitude": -122.4139391,
                    "streetAddress": "99 Jefferson Street",
                    "addressLocality": "San Francisco County",
                    "addressRegion": "California",
                    "postalCode": "94133",
                    "addressCountry": "United States",
                    "postOfficeBoxNumber": "San Francisco County",
                    "identifiers": [],
                    "sameAs": []
                }
            },
            {
                "title": "99 Jefferson Street, San Francisco, CA 94133, USA",
                "shortDescription": null,
                "types": "Google Business Profile",
                "place": {
                    "latitude": 37.807863999999995,
                    "longitude": -122.4139391,
                    "streetAddress": "99 Jefferson Street",
                    "addressLocality": "San Francisco County",
                    "addressRegion": "California",
                    "postalCode": "94133",
                    "addressCountry": "United States",
                    "postOfficeBoxNumber": "San Francisco County",
                    "identifiers": [],
                    "sameAs": []
                }
            }
        ]
    }
}

Account Fields

The Account resource contains details about suppliers of Experiences (operators) in the Magpie platform.

Field Type Description
id uuid Unique identifier for the account
name string Company name
telephone string Primary contact telephone number
website string Company website URL
description text Detailed description of the company
category string Primary business category
secondaryCategory string Secondary business category
timeZone string Company's primary time zone (IANA format)
banner string URL to company banner image
email string Primary contact email address
locale string Default locale for the account (IETF BCP 47 tag)
linkedinHandle string LinkedIn profile name
facebookHandle string Facebook profile name
instagramHandle string Instagram profile name
xHandle string X profile name
youtubeHandle string YouTube channel name
tiktokHandle string TikTok profile name
tripadvisorHandle string TripAdvisor listing name
googleHandle string Google Business Profile name
tradeUrl string URL for trade/B2B portal
tradeEmail string Contact email for trade partners
requirements string Requirements to work with us
productDescription string Product Description
faqs[] array Array of frequently asked questions related to the account
faqs[].question string The text of the frequently asked question
faqs[].answer string The detailed response to the corresponding question
media[] array List of media files hosted at stable URLs
media[].src string The URL of the media file. Must be stable and publicly accessible
media[].type string Specifies the type of the media file, which indicates its format and intended usage (e.g., image/jpeg, image/png, video/mp4, video/avi, external/youtube, external/vimeo)
media[].rel string Relationship of the media to the content (e.g., "LOGO", "COVER")
media[].title string/null Title or name of the media
media[].caption string/null Caption providing context about the media
media[].copyright string/null Copyright status or usage restrictions
locations[] array List of geographical locations associated with the account
locations[].title string/null Name of the location
locations[].shortDescription string/null Brief description of the location
locations[].type string Role of the location. (e.g., Business Address, GBP )
locations[].place array Geospatial and postal address data for the location
locations[].place.latitude float Latitude of the location in decimal degrees
locations[].place.longitude float Longitude of the location in decimal degrees
locations[].place.streetAddress string/null Street address
locations[].place.addressLocality string/null City or locality
locations[].place.addressRegion string/null State or region
locations[].place.postalCode string/null Postal or ZIP code
locations[].place.addressCountry string/null Country
bookingSystemsId[] array External booking system identifier

Products

GET /api/products/getProduct/{productId} HTTP/1.1
Host: magpie.travel
Accept: application/json
X-Api-Key: 58c068808359e091c310054e43c3c27a
HTTP/1.1 200 OK
Content-Type: application/json
{
    "product": {
        "id": "1fb7a9bc-3479-43a3-afe3-a788e508feba",
        "internalName": "Hop-On Hop-Off of San Francisco",
        "reference": "HoHo-SF1",
        "locale": "en",
        "timeZone": "Europe/Madrid",
        "allowFreesale": false,
        "availabilityRequired": true,
        "instantConfirmation": true,
        "instantDelivery": true,
        "availabilityType": ["OPENING_HOURS", "START_TIME"],
        "deliveryMethods": ["TICKET", "VOUCHER"],
        "deliveryFormats": ["QRCODE", "CODE128", "AZTECCODE", "PDF_URL", "PKPASS_URL"],
        "redemptionMethod": ["DIGITAL", "MANIFEST", "PRINT"],
        "title": "San Francisco Bus Tour - 2 Day Hop-On Hop-Off",
        "shortDescription": "Discover San Francisco with our Hop On - Hop Off Bus Tour. Explore iconic sights, neighborhoods, and landmarks at your own pace.",
        "description": "Get ready for an unforgettable journey as our open-top buses take you on a city tour of San Francisco. Immerse yourself in the energy of Chinatown, savor the coastal charm of Fisherman's Wharf, and admire the breathtaking Golden Gate Bridge. With live commentary from knowledgeable guides, you'll learn fascinating facts and stories about the city's history and culture. Visit North Beach, the cultural hub, and explore Union Square, filled with shopping and dining options. Get a taste of history and culture at Civic Center and soak in the bohemian vibes of Haight Ashbury. The 2-day ticket gives you the freedom to hop on and off as you please, allowing you to truly customize your San Francisco experience. Whether you're a solo traveler, a couple, or a family, our Hop On - Hop Off Bus Tour is the perfect way to discover the beauty and charm of San Francisco.",
        "features": [
            {
                "type": "INCLUSION",
                "shortDescription": "2 Day Ticket"
            },
            {
                "type": "INCLUSION",
                "shortDescription": "Multilingual audio commentary"
            },
            {
                "type": "EXCLUSION",
                "shortDescription": "Tips & gratuities"
            },
            {
                "type": "EXCLUSION",
                "shortDescription": "Souvenirs & attraction tickets"
            },
            {
                "type": "HIGHLIGHT",
                "shortDescription": "Explore iconic sights and neighborhoods"
            },
            {
                "type": "HIGHLIGHT",
                "shortDescription": "Multilingual audio commentary for a personalized experience"
            },
            {
                "type": "HIGHLIGHT",
                "shortDescription": "Best of of San Francisco from the top deck of an open-top bus"
            },
            {
                "type": "PREBOOKING_INFORMATION",
                "shortDescription": "You can redeem your ticket anyime, and Hop On and Off for the next 48 hrs"
            },
            {
                "type": "PREBOOKING_INFORMATION",
                "shortDescription": "Children under 2 years are free - no need to book a ticket for them"
            },
            {
                "type": "PREARRIVAL_INFORMATION",
                "shortDescription": "Carry a jacket as it can get cold on the bus - especially on the bridge."
            },
            {
                "type": "PREARRIVAL_INFORMATION",
                "shortDescription": "Redeem your tickets and start your tour at any time on the date you booked"
            },
            {
                "type": "REDEMPTION_INSTRUCTION",
                "shortDescription": "Present your mobile voucher at 2800 Leavenworth Street. Your voucher will be exchanged for your actual ticket to scan on the bus. Once we scan your voucher, each person in your party will have a ticket so you are free travel independently if you like. Tickets are valid for 48 hours from the time of redemption"
            },
            {
                "type": "ACCESSIBILITY_INFORMATION",
                "shortDescription": "The vehicles are Wheelchair accessible with ramp, which our staff will take care of. Please note that conditions around all of our Hop-On Hop-Off stops have varying levels of access. Please ask our staff if we can help with further guideance around the city."
            },
            {
                "type": "BOOKING_TERM",
                "shortDescription": "Your ticket is valid for the duration specified and allows travel on designated routes during operating hours, boarding only at official stops. Passengers are responsible for their personal belongings and must adhere to safety instructions while onboard. The company is not liable for delays caused by traffic, weather, or unforeseen events."
            },
            {
                "type": "CANCELLATION_TERM",
                "shortDescription": "Up to 24 hours before the beginning of the activity: full refund. Less than 24 hours before the beginning of the activity or no-show: no refund"
            },
            {
                "type": "RESTRICTIONS",
                "shortDescription": "Minimum age: 3. Maximum age: 99. Minimum Height: 60 inch. Maximum Height: 300 cm. Minimum weight: 15 kg. Not recommended for: People with heart ailments, people who suffer from neck pain. Dress Code: no shorts"
            },
            {
                "type": "REQUIREMENTS",
                "shortDescription": "License or certification required: C-class drivers license. Required to bring: Valid Passport. Required Information for Booking: Heights & Weights, Dates of Birth"
            },
            {
                "type": "ADDITIONAL_INFORMATION",
                "shortDescription": "Food and drinks are not included, but stops are mostly close to shops and restaurants. Travel dates are flexible, so no need to notify us if you want to use your tickets a day or two earlier of later"
            }
        ],
        "faqs": [
            {
                "question": "What time do buses start in the morning",
                "answer": "Buses start at 9am and stop at 5pm during the week, and 6pm on weekends."
            },
            {
                "question": "How often do buses run",
                "answer": "Buses run every 15-30 mins."
            }
            {
                "question": "Are tickets to attractions included in the tour",
                "answer": "No, the tour does not include entrance fees to attractions that we stop at. Always check ahead for availability of attractions, especially Alcatraz. "
            }
        ],
        "media": [
            {
                "src": "https://res.cloudinary.com/example/image/logo.png",
                "type": "image/png",
                "rel": "LOGO",
                "title": "Company Logo",
                "caption": "Official logo of the tour company",
                "copyright": "© 2025 Tour Company"
            },
            {
                "src": "https://res.cloudinary.com/example/image/cover.jpg",
                "type": "image/jpeg",
                "rel": "COVER",
                "title": "Tour Cover Image",
                "caption": "San Francisco Bus Tour panoramic view",
                "copyright": "© 2025 Tour Company"
            },
            {
                "src": "https://res.cloudinary.com/example/image/gallery/image1.jpg",
                "type": "image/jpeg",
                "rel": "GALLERY",
                "title": "Golden Gate Bridge",
                "caption": "Iconic Golden Gate Bridge view from the tour bus",
                "copyright": "© 2025 Tour Company"
            },
            {
                "src": "https://res.cloudinary.com/example/image/gallery/image2.jpg",
                "type": "image/jpeg",
                "rel": "GALLERY",
                "title": "Fisherman's Wharf",
                "caption": "Bustling scene at Fisherman's Wharf",
                "copyright": "© 2025 Tour Company"
            }
        ],    
        "locations": [
            {
                "title": "99 Jefferson Street, San Francisco, CA 94133, USA",
                "shortDescription": null,
                "types": "Business Address",
                "place": {
                    "latitude": 37.807863999999995,
                    "longitude": -122.4139391,
                    "streetAddress": "99 Jefferson Street",
                    "addressLocality": "San Francisco County",
                    "addressRegion": "California",
                    "postalCode": "94133",
                    "addressCountry": "United States",
                    "postOfficeBoxNumber": "San Francisco County",
                    "identifiers": [],
                    "sameAs": []
                }
            },
            {
                "title": "2800 Leavenworth St, 2800 Leavenworth St, San Francisco, CA 94133, USA",
                "shortDescription": null,
                "types": "Starts",
                "place": {
                    "latitude": 37.8070176,
                    "longitude": -122.41875599999999,
                    "streetAddress": "2800 Leavenworth Street",
                    "addressLocality": "San Francisco County",
                    "addressRegion": "California",
                    "postalCode": "94133",
                    "addressCountry": "United States",
                    "postOfficeBoxNumber": "San Francisco County",
                    "identifiers": [],
                    "sameAs": []
                }
            },
            {
                "title": "99 Jefferson Street, San Francisco, CA 94133, USA",
                "shortDescription": null,
                "types": "Google Business Profile",
                "place": {
                    "latitude": 37.807863999999995,
                    "longitude": -122.4139391,
                    "streetAddress": "99 Jefferson Street",
                    "addressLocality": "San Francisco County",
                    "addressRegion": "California",
                    "postalCode": "94133",
                    "addressCountry": "United States",
                    "postOfficeBoxNumber": "San Francisco County",
                    "identifiers": [],
                    "sameAs": []
                }
            }
        ],
        "categoryLabels": [
            "private-tours",
            "multi-day",
            "wheelchair-accessible",
            "accommodation-included",
            "food-included",
            "drinks-included",
            "skip-the-line"
        ],
        "durationMinutesFrom": 2880,
        "durationMinutesTo": null,
        "commentary": [
            {
                "format": "IN_PERSON",
                "language": "en"
            },
            {
                "format": "RECORDED_AUDIO",
                "language": "es"
            },
            {
                "format": "WRITTEN",
                "language": "de"
            }
        ],
        "defaultCurrency": "USD",
        "availableCurrencies": [],
        "pricingPer": [],
        "options": [
            {
                "name": "Option Name",
                "code": "Option Code",
                "description": "Option Description",
                "units": [
                    {
                        "id": "adult",
                        "type": "ADULT",
                        "option_id": "1fb7a9bc-3479-43a3-afe3-a788e508feba",
                        "pricingFrom": [
                            {
                                "original": 5999,
                                "retail": 5999,
                                "net": 4999,
                                "currency": "USD",
                                "currencyPrecision": 2
                            }
                        ]
                    },
                    {
                        "id": "child",
                        "type": "CHILD",
                        "option_id": "1fb7a9bc-3479-43a3-afe3-a788e508feba",
                        "pricingFrom": [
                            {
                                "original": 3999,
                                "retail": 3999,
                                "net": 2999,
                                "currency": "USD",
                                "currencyPrecision": 2
                            }
                        ]
                    }
                ]
            }
        ]
    }
}
Example for MP+ fields
{
    "account": {
        "id": "d7a11efb-da83-4715-b8b3-f2c2ce74f81e",
        "name": "Skyline Sightseeing"
    },
    "timeZone": "Europe/Madrid",
    "confirmationNecessary": false,
    "startDate": "2021-05-27",
    "endDate": "2028-05-26",
    "category": "Tours & Sightseeing",
    "redemptionType": "voucher",
    "guideType": "Instructor",
    "tripDifficulty": "Easy",
    "emergencyPhone": "+7 8666066700",
    "bookingMinPax": 5,
    "bookingMaxPax": 15,
    "maxGroupSize": 15,
    "ageRestrictionType": "MinAge",
    "ageRestrictionValue": 12,
    "heightRestrictionType": "MaxHeight",
    "heightRestrictionValue": 120,
    "heightRestrictionUnit": "cm",
    "weightRestrictionType": "MaxWeight",
    "weightRestrictionValue": 120,
    "weightRestrictionUnit": "Kg",
    "dressCode": "Comfortable shoes and clothes",
    "foodIncluded": "Snacks are available for purchase. Breakfast is included",
    "drinksIncluded": "Soft drinks or tea. Alcoholic drinks available for purchase - must be 21 years of age."
}

The Product resource consists of the following fields:

OCTO Fields

Attribute Type Description
id string The unique identifier of the product in Magpie
internalName string The name this suppliers calls the product
reference string/null An optional code this supplier might use to identify the product
locale string (IETF BCP 47 tag) A language code indicating what language this product content is in
timeZone string (IANA tz identifier) The IANA TimeZone name this product is located in
allowFreesale boolean Whether a booking can be made for this product without having to query availability first
availabilityRequired boolean Whether an availabilityId is required when creating a booking. Without this the booking will be open-dated and not have a specified travel date
instantConfirmation boolean Whether bookings will be immediately confirmed when a sale is made, otherwise the supplier will later either accept or reject the booking
instantDelivery boolean Whether tickets will be delivered immediately upon booking confirmation
availabilityType[] array What type of availability this product has. Values include: START_TIME for fixed departure times (e.g., tours), OPENING_HOURS for venues with operating hours where guests can visit anytime
deliveryMethods[] array How tickets will be delivered. Values include: TICKET (individually per unit), VOUCHER (one for the whole booking)
deliveryFormats[] array Formats for ticket delivery. Values include: QRCODE, CODE128, AZTECCODE, PDF_URL, PKPASS_URL
redemptionMethod[] array How guests present tickets upon arrival. Values include: MANIFEST (name on list), DIGITAL (scan on mobile), PRINT (physical printout required)
title string The public, customer-facing name of the product. This name is displayed to end customers and should accurately represent the product for marketing and sales purposes
shortDescription string/null A brief, customer-facing description of the product. This field provides a concise overview of the product and can be null if no description is available
description string/null A detailed description of the product, offering in-depth information about it and relevant details. This field can be null if extended details are not provided
features[] array Array of feature objects with different types (INCLUSION, EXCLUSION, HIGHLIGHT, etc.)
features[].type string Type of feature (INCLUSION, EXCLUSION, HIGHLIGHT, REDEMPTION_INSTRUCTION, PREBOOKING_INFORMATION, PREARRIVAL_INFORMATION, ADDITIONAL_INFORMATION, BOOKING_TERM, CANCELLATION_TERM, ACCESSIBILITY_INFORMATION, RESTRICTIONS, REQUIREMENTS)
features[].shortDescription string/null Description of the feature
faqs[] array Array of frequently asked questions related to the product
faqs[].question string The text of the frequently asked question
faqs[].answer string The detailed response to the corresponding question
media[] array List of media files hosted at stable URLs. You can pass additional parameters (media_limit: to specify the number of images, media_offset: to skip a certain number of records such as logos or covers).
media[].src string The URL of the media file. Must be stable and publicly accessible
media[].type string Specifies the type of the media file, which indicates its format and intended usage (e.g., image/jpeg, image/png, video/mp4, video/avi, external/youtube, external/vimeo)
media[].rel string Relationship of the media to the content (e.g., "LOGO", "COVER", "GALLERY")
media[].title string/null Title or name of the media
media[].caption string/null Caption providing context about the media
media[].copyright string/null Copyright status or usage restrictions
locations[] array List of geographical locations associated with the product
locations[].title string/null Name of the location
locations[].shortDescription string/null Brief description of the location
locations[].type string Role of the location. (e.g., START, POINT_OF_INTEREST, END, REDEMPTION)
locations[].place array Geospatial and postal address data for the location
locations[].place.latitude float Latitude of the location in decimal degrees
locations[].place.longitude float Longitude of the location in decimal degrees
locations[].place.streetAddress string/null Street address
locations[].place.addressLocality string/null City or locality
locations[].place.addressRegion string/null State or region
locations[].place.postalCode string/null Postal or ZIP code
locations[].place.addressCountry string/null Country
categoryLabels[] array Labels representing categories applicable to the product (e.g., "private-tours", "wheelchair-accessible")
durationMinutesFrom integer Duration of the product in minutes. Minimum if flexible
durationMinutesTo integer/null Maximum duration if flexible, null if fixed duration
commentary[] array List of commentary options available
commentary[].format string Enum: IN_PERSON, RECORDED_AUDIO, WRITTEN, OTHER. Format of commentary
commentary[].language string IETF BCP 47 tag of language for commentary
defaultCurrency string ISO 4217 currency code for default pricing
availableCurrencies[] array List of ISO 4217 currency codes supported
pricingPer[] array Enum: UNIT, BOOKING. How pricing is applied
options[] array List of all options (variations of the product). Each product must have at least one option

MP+ Fields

Attribute Type Description
account object Contains ID and name of the company account that owns the product
confirmationNecessary boolean Customer is required to confirm before travel
startDate date The date when the product starts operating (optional)
endDate date The date when the product stops operating (optional)
category string The product category
redemptionType string Tickets help at office, or Voucher scanned / collected
guideType string Tour Guide, Host, Greeter, Instructor or Driver
tripDifficulty string Easy, Moderate or Challenging
emergencyPhone string Emergency Phone Number for guests
bookingMinPax integer Minimum guests per booking
bookingMaxPax integer Maximum guests per booking
maxGroupSize integer Maximum group size on the product
ageRestrictionType string Age restrictions for guests
ageRestrictionValue integer Age in years
heightRestrictionType string Height restrictions: Minimum or Maximum
heightRestrictionValue integer Height restriction value
heightRestrictionUnit string Height Unit: cm or inches
weightRestrictionType string Weight restrictions: Minimum or Maximum
weightRestrictionValue integer Weight restriction value
weightRestrictionUnit string Weight Unit: Kg or Lbs
dressCode string Dress code requirements for guests
foodIncluded string Food included in the product
drinksIncluded string Drink(s) included in the product

Enum definition

Feature Types

Value Description
INCLUSION Clearly lists what is included in the experience, emphasizing completeness and value. Examples: "Hotel pickup included," "Lunch provided," "All safety equipment supplied." This field is intended to be informational but can also be used as promotional, as inclusions can be unique features of products.
EXCLUSION Specifies what is NOT included in the experience, helping manage expectations and reducing uncertainty. Examples: "Gratuities not included," "Admission tickets must be purchased separately." Typically, add items here that the guest might expect to be included, but is not.
HIGHLIGHT Showcases key selling points or unique aspects to attract customers. Typically includes 3-5 distinct features. Examples: "Skip-the-line access to the Eiffel Tower," "Small-group expert-guided tour," "Private wine tasting."
PREBOOKING_INFORMATION Highlights critical information customers must know before booking, to prevent cancellations or negative experiences. Examples: "Strict minimum age of 12 years," "Moderate fitness level necessary," "Participants must weigh under 220 lbs."
PREARRIVAL_INFORMATION Provides essential instructions and tips for customers before arrival to ensure a smooth experience. Examples: "Lunch is not provided; please eat beforehand," "Bring photo ID for check-in," "Boat can be cold and windy - wear warm clothing."
REDEMPTION_INSTRUCTION Gives clear, detailed instructions on how to redeem the booking. Includes information such as voucher presentation method, identification needed, and detailed directions. Examples: "Present mobile voucher at entrance," "Check-in at kiosk near gate 3," "Bring valid government-issued ID."
ACCESSIBILITY_INFORMATION Describes the accessibility features or limitations, helping guests with specific needs understand suitability. Examples: "Wheelchair accessible throughout," "Service animals permitted," "Not suitable for guests with mobility impairments."
BOOKING_TERM Defines the terms related to booking, payment, and reservation modifications. Examples: "Full payment required at booking," "Confirmation sent within 24 hours," "Changes permitted up to 48 hours in advance."
CANCELLATION_TERM Outlines policies regarding cancellations, refunds, and penalties. Examples: "Full refund if cancelled 72 hours before," "No refunds within 24 hours of departure," "Flexible rescheduling allowed."
RESTRICTIONS Lists conditions or limitations that customers must adhere to, sunch as height, weight and age restrictions. Examples: "Maximum weight limit of 250 lbs," "No pets allowed," "Alcohol consumption prohibited before activity."
REQUIREMENTS Specifies mandatory conditions or documentation customers must meet or present. Examples: "Valid driver's license required," "Signed liability waiver needed," "Closed-toe shoes mandatory."
ADDITIONAL_INFORMATION Acts as a catch-all category for supplementary details enhancing customer experience. Examples: "Bring sunscreen and sunglasses," "Weather conditions may affect itinerary," "Optional upgrades available upon request."

Location Types

Value Description
START The starting point or meeting location for the product or experience. This is where customers are expected to gather before the activity begins.
END The final point or drop-off location where the activity concludes.
BUSINESS_ADDRESS The official business address of the service provider or company offering the experience or product.
GOOGLE_BUSINESS_PROFILE The location information associated with the provider's Google Business Profile, which may include contact details, photos, and reviews.
REDEMPTION A location where customers must go to exchange tickets, collect passes, or redeem vouchers before proceeding to the starting point or experience (if applicable).
POINT_OF_INTEREST A notable location or attraction that customers may see or pass by without stopping. Generally used for sightseeing locations.
REDEMPTION A location where customers must go to exchange tickets, collect passes, or redeem vouchers before proceeding to the starting point or experience (if applicable).

Category Label

Value Description
private-tours Indicates tours conducted exclusively for a private group, with no other participants.
multi-day Products that span multiple days, typically requiring overnight accommodations.
wheelchair-accessible Activities or venues that provide accessibility features for wheelchair users.
accommodation-included Products that include lodging as part of the package.
food-included Activities that include meals or food services during the experience.
drinks-included Activities that include beverages (alcoholic or non-alcoholic) during the experience.
skip-the-line Products that offer expedited entry or priority access to attractions.

Options

{
    "options": [
        {   
            "id": "1fb7a9bc-3479-43a3-afe3-a788e508feba",
            "name": "Option Name",
            "reference": "Option Reference",
            "description": "Option Description",
            "units": [
                {
                    "id": "adult",
                    "type": "ADULT",
                    "option_id": "1fb7a9bc-3479-43a3-afe3-a788e508feba",
                    "pricingFrom": [
                        {
                            "original": 5999,
                            "retail": 5999,
                            "net": 4999,
                            "currency": "USD",
                            "currencyPrecision": 2
                        }
                    ]
                },
                {
                    "id": "child",
                    "type": "CHILD",
                    "option_id": "1fb7a9bc-3479-43a3-afe3-a788e508feba",
                    "pricingFrom": [
                        {
                            "original": 3999,
                            "retail": 3999,
                            "net": 2999,
                            "currency": "USD",
                            "currencyPrecision": 2
                        }
                    ]
                }
            ]
        }
    ]
}

Option Fields

Field Type Description
id string Unique identifier for this unit.
name string Customer-facing name of this option (e.g., "2-Day Package").
reference string/null Optional code used to identify this option.
description string/null Detailed description of this option, including any special instructions or requirements.

Units

{
    "units": [
        {
            "id": "adult",
            "type": "ADULT",
            "option_id": "1fb7a9bc-3479-43a3-afe3-a788e508feba",
            "pricingFrom": [
                {
                "original": 5999,
                "retail": 5999,
                "net": 4999,
                "currency": "USD",
                "currencyPrecision": 2
                }
            ]
        },
        {
            "id": "child",
            "type": "CHILD",
            "option_id": "1fb7a9bc-3479-43a3-afe3-a788e508feba",
            "pricingFrom": [
                {
                "original": 3999,
                "retail": 3999,
                "net": 2999,
                "currency": "USD",
                "currencyPrecision": 2
                }
            ]
        }
    ]
}

Unit Fields

Field Type Description
id string Unique identifier for this unit (e.g., "4ba05d14-3c7c-433b-80e1-867e7a665829").
type string The type of unit.
option_id string Identifier of the option this unit belongs to (e.g., "c84b3f76-5fe1-455c-a677-1aa00b17ebd1").
pricingFrom array Contains pricing information for this unit.
pricingFrom[].original integer Original price in the smallest currency unit (e.g., cents).
pricingFrom[].retail integer Customer-facing price in the smallest currency unit.
pricingFrom[].net integer/null Net price (before markup) if available, or null.
pricingFrom[].currency string ISO 4217 currency code for this price.
pricingFrom[].currencyPrecision integer Number of decimal places for the currency (e.g., 2 for USD).

Unit Types

Value Description
ADULT Standard adult pricing category, typically for participants above a certain age threshold.
CHILD Pricing category for younger participants, usually with age restrictions.
YOUTH Category for adolescents/teenagers that falls between child and adult categories.
SENIOR Special pricing category for older participants, typically with age minimums.
STUDENT Special pricing for participants with valid student identification.
FAMILY Package pricing for a defined group of mixed participants (e.g., 2 adults + 2 children).
INFANT Category for very young participants (usually under 2-3 years), often free or heavily discounted.
GROUP Pricing for a specified number of participants booking together.
MILITARY Special pricing for active or retired military personnel with valid identification.
RESIDENT Special pricing for local residents with proof of residency.