Suppliers can store content in multiple languages in Ventrata. Requests should include the Accept-Languageheader, ideally matching the language preferences sent by the client browser or user agent.
More information about the structure of that header is available on MDN.
The API attempts to match the preferred languages against languages already translated by the supplier. The response includes a Content-Language header indicating the language returned, consistent with the HTTP standard.
Use the product operation below with the Accept-Language header to request localized content:
Get Product
get
Get details on a specific product.
Path parameters
productIdstringRequired
Product ID, for example: 94cdd032-3d32-416d-b0a4-abf8b7495b8b.
Example: e7cc8bb4-8d1c-4848-8824-5dbedb718681
Query parameters
currencystringOptional
Optional currency override. Use an ISO-4217 currency code from availableCurrencies or default.
Example: USD
offerCodestringOptional
Offer code or combination context.
Example: SUMMER25
membership[id]string · uuidOptional
Membership identifier returned by /memberships/lookup. When set, also include membership[verification] and one of membership[email], membership[mobile], or membership[reference].
ISO 3166-1 alpha-2 country code used to parse membership[mobile].
Example: US
membership[reference]stringOptional
Membership reference used during lookup. Use with membership[id] and membership[verification] as one of the allowed lookup identifiers.
Example: REF-2026-001
membership[verification]stringOptional
Verification token from lookup (OTP for email/mobile, or guest name for reference). Required when membership[id] is provided.
Example: 123456
Header parameters
Accept-LanguagestringRequired
fr-CH, fr;q=0.9, en;q=0.8, de;q=0.7, *;q=0.5
Example: en-US
Octo-CapabilitiesstringOptional
Optional comma-separated capability IDs.
Example: octo/pricing,octo/offers
Responses
200
Successful response
application/json
allowFreesalebooleanOptional
Whether allow freesale is enabled.
Example: true
availabilityRequiredbooleanOptional
Whether availability required is enabled.
Example: true
availabilityTypestring · enumOptional
Availability type value.
Example: START_TIMEPossible values:
deliveryFormatsstring[]Optional
List of delivery format values.
Example: ["PDF_URL","QRCODE"]
deliveryMethodsstring[]Optional
List of delivery methods available for this product. VOUCHER means one ticket media object per booking (booking.voucher); TICKET means one ticket media object per unit item (booking.unitItems[].ticket).
Example: ["VOUCHER","TICKET"]
fixedWeightbooleanOptional
Whether fixed weight is enabled.
Example: true
freesaleDurationAmountnumberOptional
Freesale duration amount numeric value.
Example: 220
freesaleDurationRoundupbooleanOptional
Whether freesale duration roundup is enabled.
Example: true
freesaleDurationRoundupUnitstringOptional
Freesale duration roundup unit value.
Example: HOUR
freesaleDurationUnitstringOptional
Freesale duration unit value.
Example: HOUR
idstring · uuidRequired
Unique identifier for this resource.
Example: e7cc8bb4-8d1c-4848-8824-5dbedb718681
instantConfirmationbooleanOptional
Whether instant confirmation is enabled.
Example: true
instantDeliverybooleanOptional
Whether instant delivery is enabled.
Example: true
internalNamestringRequired
Internal name value.
Example: Walking Tour of Barcelona
localestringOptional
Locale code (BCP 47).
Example: en
redemptionMethodstringOptional
Redemption method value.
Example: DIGITAL
referencestringOptional
Reference value.
Example: BRC-WALK
settlementMethodsstring[]Optional
List of settlement method values.
Example: ["DIRECT","DEFERRED"]
tagsstring[]Optional
List of tag values.
Example: ["vip","partner"]
timeZonestringOptional
IANA timezone identifier.
Example: Europe/Madrid
weightUnitstringOptional
Weight unit for the weight value.
Example: kg
availableCurrenciesstring[]Optional
From capability octo/pricing.
Example: ["USD","EUR"]
defaultCurrencystringOptional
From capability octo/pricing.
Example: USD
hidePricingFrombooleanOptional
From capability octo/pricing.
Example: true
includeTaxbooleanOptional
From capability octo/pricing.
Example: true
pricingMultipliernumberOptional
From capability octo/pricing.
Example: 10
pricingPerstring · enumOptional
From capability octo/pricing.
Example: UNITPossible values:
isPackagebooleanOptional
From capability octo/packages.
Example: true
isPackagePassbooleanOptional
From capability octo/packages.
Example: true
packageProductbooleanOptional
From capability octo/packages.
Example: true
waiverPerstring · enumOptional
From capability octo/waivers. Whether waivers are collected per booking or per unit item.
Example: UNITPossible values:
waiverRequiredbooleanOptional
From capability octo/waivers. Whether waiver completion is required before the booking can be used.
Example: true
isRentalbooleanOptional
From capability octo/rentals.
Example: true
isMembershipbooleanOptional
From capability octo/memberships.
Example: true
membershipAutoRenewbooleanOptional
From capability octo/memberships.
Example: true
get
/products/{productId}
200
Successful response
The response Content-Language reflects the resolved language (for example English when no other translation exists):
If you cache content locally, use the Octo-Available-Languages header, which lists languages translated by the supplier.
You can repeat the request with each available language to retrieve localized content.