Packages
List item choices on a package
Returns every PackageItemChoice configured on the given Package. Item choices are the building blocks of a package — each one defines a set of options the customer picks from (e.g. "Pick a 60-minute treatment", "Pick lunch or afternoon tea"). The package's overall price is the sum of the chosen options, with optional option_budget and price_change overrides per choice / option.
Order is preserved across reads — it reflects the customer-facing order in the booking flow, and can be modified through the reorder endpoint on the parent package.
get/shop/packages/{packageId}/item-choices
Response
A list of PackageItemChoices configured on a Package.
Example response
{
"data": [
{
"id": "5dcb47800000000000000025",
"allow_overlaps": true,
"auto_select_timeslot": true,
"description": "Choose your type of massage.",
"hide_times": true,
"name": "Massage",
"max_options": 2,
"min_options": 1,
"option_budget": 2000,
"optional": true,
"options": [
{
"id": "5dcb47800000000000000026",
"item_type": "appointment",
"offering": {
"id": "5e932c0901d210625e3a8766",
"categories": [
{
"id": "5e932c0901d210625e3a8766",
"name": "Massage"
}
],
"currency": "gbp",
"description": "Choose from classic, deep tissue and Swedish massage",
"discounted_price_from": 4500,
"duration": 30,
"durations": [
30
],
"has_availability": true,
"image": {
"file_name": "super-cool-photo.jpg",
"mime_type": "image/jpeg",
"original_url": "https://example.com/media/super-cool-photo.jpg",
"size": 84256,
"url": "https://example.com/media/super-cool-photo-thumbnail@2x.jpg"
},
"max_guests": 2,
"min_guests": 2,
"name": "60 minute massage",
"price_from": 5000,
"price_to": 6500,
"type": "appointment"
},
"price_change": 2000
}
],
"start_time_rules": [
{
"absolute_time_from": "12:00",
"absolute_time_to": "12:30",
"relative_mins_to": 30
}
],
"visible": true
}
]
}Changes
No recorded changes to this endpoint across all 1 revision of this API.