API v3 endpoints
bookingkit API (v3)
Download OpenAPI specification:Download
Current version of bookingkit API used by customers and partners to integrate with bookingkit software.
Vendor is a bookingkit customer, a provider of tours, attractions & activities to the end customers.
List vendors
Returns a list of vendors you have access to.
query Parameters
| order | string Value: "name" Example: order=-name Use -/+ in front of the attribute to specify the soriting direction (descending / ascending). If no modifier is provided, default sorting direction is ascending. Multiple comma separated values may be provided. Example: |
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| match | string Example: match=name Searches for the provided value within the following proterties:
|
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "name": "Sample Vendor",
- "service_email": "example@example.com",
- "service_phone": "+49 123 123 1234",
- "terms": "<h1>Terms & Conditions of Sample Vendor</h1><p>Lorem ipsum dolor sit amet.</p>",
- "bill_country": "DE",
- "country_of_residence": "DE",
- "activation_date": "2025-01-24T14:35:41Z",
- "currency": "EUR",
- "legal_company_name": "Sample Vendor GmbH",
- "legal_representative_first_name": "John",
- "legal_representative_last_name": "Smith"
}
]Retrieve a vendor
Retrieve a single vendor by providing the identifier.
path Parameters
| id required | string Example: 3e3edd05ce4362e2d6a8200c37b1b79c Unique identifier of a vendor |
Responses
Response samples
- 200
- 400
- 401
- 404
{- "id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "name": "Sample Vendor",
- "service_email": "example@example.com",
- "service_phone": "+49 123 123 1234",
- "terms": "<h1>Terms & Conditions of Sample Vendor</h1><p>Lorem ipsum dolor sit amet.</p>",
- "bill_country": "DE",
- "country_of_residence": "DE",
- "activation_date": "2025-01-24T14:35:41Z",
- "currency": "EUR",
- "legal_company_name": "Sample Vendor GmbH",
- "legal_representative_first_name": "John",
- "legal_representative_last_name": "Smith"
}Also known as experience. Events are tours, activities and attractions offered by a vendor. Events are the main inventory items of bookingkit. Event object contain event contents, price configuration and booking restrictions.
List events of a vendor
Returns a list of events belonging to a single vendor.
path Parameters
| vendor_id required | string Unique identifier of a vendor |
query Parameters
| order | string Enum: "title" "duration" "max_participants" "vendor_name" "price" "category_id" "first_date" Example: order=-duration,title Use -/+ in front of the attribute to specify the soriting direction (descending / ascending). If no modifier is provided, default sorting direction is ascending. Multiple comma separated values may be provided. Example: |
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| match | string Searches the string within therse proterties:
|
| category | integer Filter by category id, get a complete list of categories from the categories resource |
| categories | string Filter by list of category ids, get a complete list of categories from the categories resource. |
| accept_vendors | string Comma separated list of accepted vendor ids. |
| exclude_vendors | string Comma separated list of rejected vendor ids. |
| preferred_categories | string Comma separated list of preferred categories. Events with these categories are placed at the top of the list. |
| type | string Default: "BOOKING" Enum: "BOOKING" "REQUEST" "ALL" Filter by event type. |
| available_from | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return events with at least one date later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| geolocation | string^([0-9\.]+),([0-9\.]+),([0-9\.]+),([0-9\.]+)$... Example: geolocation=52.069896815019,12.665231159637,52.970116384981,14.144676840363 Comma separated coordinates. Must be exactly 4 coordinates that describe a rectangle. Must respect following order {minLat,minLng,maxLat,maxLng}. |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| with_private_prices | boolean Default: false Return private and public prices. Private prices are not shown to end customers. Private prices can be used by vendors when creating bookings in the admin app. |
| only_root_events | boolean Default: false Return root events only. If events have pricelists defined, these are treated as separate pricelists events of the parent event. If this parameter is set to true, only the root event will be retunred, pricelists will be skipped. |
| only_main_duration | boolean Default: false Return main duration event only. If events have durations defined, these are treated as separate duration events of the parent event. If this parameter is set to true, only the root event will be retunred, other durations will be skipped. |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "active": "1",
- "root_event_id": "45d5133ed696a041f9697233f18942a2",
- "title": "Berlin Tour",
- "description": "<p>Tour around Berlin</p>",
- "type": "BOOKING",
- "duration": 60,
- "pre_time": 30,
- "max_participants": 200,
- "timezone": "Europe/Berlin",
- "location": "Sonnenallee 223, 12059 Berlin",
- "location_place_id": "ChIJVX06QuNRqEcR0coerEj89jo",
- "location_lng": "12.7135121",
- "location_lat": "41.9214534",
- "meeting_location": "Pariser Platz, 10117 Berlin",
- "meeting_location_lng": "13.3785865",
- "meeting_location_lat": "52.5163766",
- "meeting_location_place_id": "EiRQYXJpc2VyIFBsYXR6LCAxMDExNyBCZXJsaW4sIEdlcm1hbnkiLiosChQKEgk_NdX1xlGoRxEIInH3zI6rAhIUChIJAVkDPzdOqEcRcDteW0YgIQQ",
- "vendor_id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "bring": "Driving licence",
- "advice": "Children up to 15 years must be accompanied by at least one adult.",
- "hint": "Liability and comprehensive insurance is included.",
- "participant_hint": "Please inform us of any special dietary requirements or food allergies.",
- "vendor_name": "string",
- "youtubeVideoId": "lcTsn3_IILM",
- "voucher_checkout_url": "https://web.admin-sandbox.bookingkit.com/voucherOrder/index/?id=dc458a4c9fcff0d0eb962c0654ee90f4",
- "highlights": [
- "Guided by a local expert",
- "Includes all entrance fees",
- "Small group size"
], - "categories": [
- {
- "id": 351,
- "title": "Tickets & Entry tickets"
}, - {
- "id": 371,
- "title": "Water parks"
}
], - "prices": [
- {
- "id": 378,
- "title": "Standard",
- "value": 100,
- "currency": "EUR",
- "public": 1,
- "category": "Adult",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "id": 379,
- "title": "Kids",
- "value": 50,
- "currency": "EUR",
- "public": 1,
- "category": "Child",
- "vat": 23,
- "entry_units": [
- {
- "type": "CHILD"
}
]
}, - {
- "id": 380,
- "title": "Family ticket",
- "value": 120,
- "currency": "EUR",
- "public": 1,
- "category": "Group",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}, - {
- "type": "CHILD"
}
]
}
]
}
]Create event of a vendor
Create a new "event" item
path Parameters
| vendor_id required | string Unique identifier of a vendor |
Request Body schema: application/json
| active | integer Enum: "0" "1" Whether an event is active or inactive. Events can be deactivated by a vendor. Inactive events won't be returned. |
| root_event_id | string If an event is a child pricelist event then root_event_id is a parent id of that pricelist event. Parent event of a priclist event can be a duration event. Parent events (main events and duration events) will have root_event_id set to an empty string. |
| title required | string <= 255 characters Event title, descriptive. |
| description required | string <html> Description of the event in HTML format. |
| type | string Enum: "BOOKING" "REQUEST" Event type (bookings or requests). Requests have to be accepted by the vendors to become a booking. |
| duration required | integer Duration of the event in minutes. |
| pre_time | integer Whether and how much time earlier the participants and team need before the event, in minutes. Set to 0 if no extra time is required. |
| max_participants required | integer Maximum number of participants in a single appointment of an event. This can be overriden for each individual apointment. |
| timezone | string Timezone identifier of an event location. |
| location required | string Event location address. |
| location_place_id | string Google Place ID of the event location. |
| location_lng required | number Event location longitude. |
| location_lat required | number Event location latitude. |
| meeting_location required | string Meeting location address, MAY differ from event location. |
| meeting_location_lng required | number Meeting location longitude. |
| meeting_location_lat required | number Meeting location latitude. |
| meeting_location_place_id | string Google Place ID of the meeting location. |
| vendor_id required | string Unique identifier of the vendor that this events belongs to. |
| bring | string What participants need to bring. |
| advice | string Advice note to participants. |
| hint | string Short general hint displayed during the booking process |
| participant_hint | string Short question for participants displayed during the booking process |
| vendor_name | string Vendor company name, doesn't have to be a full legal name |
| youtubeVideoId | string ID of Youtube video, not the whole video URL |
| voucher_checkout_url | string Checkout URL to buy a voucher through the bookingkit system. |
| images required | Array of strings non-empty unique BASE64 encoded image files |
| highlights | Array of strings <= 10 items unique List of main selling points for the event |
required | Array of objects Full ordered category tree. Top level category first. |
required | Array of objects unique Prices for this event. |
Array of objects Optional tags for the event describing the scope of the event. Tags are used only for certain event categories (eg. for cooking classes). | |
| first_date | string <date-time> ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Starting time of the next event. Format: YYYY-MM-DDThh:mm:ssZ, UTC. It's returned only if "available_from" query parameter is set. |
| min_participants | integer Minimum number of participants per booking. Set to 0 if no minimum is required. |
| latest_booking_time | integer How much time (in minutes) the event has to be booked before it starts. Negative value is used for "opening hours" events to indicate that the event can be booked after it has started. |
| commission | integer [ 0 .. 100 ] Percentage of the order value received as commission by the reseller. Greater than 0 only for resellers API clients. |
Responses
Request samples
- Payload
{- "active": "1",
- "root_event_id": "45d5133ed696a041f9697233f18942a2",
- "title": "Berlin Tour",
- "description": "<p>Tour around Berlin</p>",
- "type": "BOOKING",
- "duration": 60,
- "pre_time": 30,
- "max_participants": 200,
- "timezone": "Europe/Berlin",
- "location": "Sonnenallee 223, 12059 Berlin",
- "location_place_id": "ChIJVX06QuNRqEcR0coerEj89jo",
- "location_lng": "12.7135121",
- "location_lat": "41.9214534",
- "meeting_location": "Pariser Platz, 10117 Berlin",
- "meeting_location_lng": "13.3785865",
- "meeting_location_lat": "52.5163766",
- "meeting_location_place_id": "EiRQYXJpc2VyIFBsYXR6LCAxMDExNyBCZXJsaW4sIEdlcm1hbnkiLiosChQKEgk_NdX1xlGoRxEIInH3zI6rAhIUChIJAVkDPzdOqEcRcDteW0YgIQQ",
- "vendor_id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "bring": "Driving licence",
- "advice": "Children up to 15 years must be accompanied by at least one adult.",
- "hint": "Liability and comprehensive insurance is included.",
- "participant_hint": "Please inform us of any special dietary requirements or food allergies.",
- "vendor_name": "string",
- "youtubeVideoId": "lcTsn3_IILM",
- "voucher_checkout_url": "https://web.admin-sandbox.bookingkit.com/voucherOrder/index/?id=dc458a4c9fcff0d0eb962c0654ee90f4",
- "images": [
- "/9j/4AAQSkZJRgABAgEASABIAAD/4QD0RXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUAAAABAAAAYgEbAAUAAAABAAAAagEoAAMAAAABAAIAAAExAAIAAAAdAAAAcgITAAMAAAABAAEAAIdpAAQAAAABAAAAkAAAAAAAAABIAAAAAQAAAEgAAAABQWRvYmUgUGhvdG9zaG9wIDIwMjQgV2luZG93cwAAAAeQAAAHAAAABDAyMjGRAQAHAAAABAECAwCgAAAHAAAABDAxMDCgAQADAAAAAQABAACgAgAEAAAAAQAAAICgAwAEAAAAAQAAAFWkBgADAAAAAQAAAAAAAAAAAAD/wAARCABVAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9sAQwAJCQkJCQkQCQkQFhAQEBYeFhYWFh4mHh4eHh4mLiYmJiYmJi4uLi4uLi4uNzc3Nzc3QEBAQEBISEhISEhISEhI/9sAQwELDAwSERIfEREfSzMqM0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tL/90ABAAI/9oADAMBAAIRAxEAPwD1FYRUohFTK0R/iFSgp6itLnLyIgEQFL5QqzlfUUvHrRzByIq+UKPKFWuDxS7aOYPZoqeUPSk8oVb21HI0cYBdguTgZOMmnzC9mV/KFNMQqpfX/wBj5artrL9oiEg70KaeqJlTs7NERiFMMQq+UphSq5iHSRnmEVGYRWiUphSq5jN0kZTQCqckArcaOqzx1SkZSpI//9D1ZLaMgEd6k+zL2NR2MzTQq3bFaIPWkmZ2RT+zL60vkDON1W8jFRgDec07hyo89uJbm21KeWI4dZCDnuOwPtiujg1O3ubfzllWNuhVjyD/AFrD8QQSHVSIhkOoZvyx1/Cst4QnAZSwYcZ49ecdOlcXtJQk7HoypQqQjc7FNTt0jLzTqfQLyTXPSTT6ndoxOSzqEX+6Mg//AK6zI2WQiRzsALAk8dcnP6frWnpqqNSt5lcMmecEen61lOvKbUZGlLDwpJyW5pazbz3DbFbAJrasYp4YAuc1lalcwI+7d0NQWviO0QGORsMK7Kcoxujy6qvZs6YtOKrvczIcbc1zM/imDdti3GqA8RvuLMpxWntodzLkb2OuW+mZ9uzAqc3Ld1rhT4lZn3IOK3NO121vMqWGR1Bqo1YvREODRtm5/wBmqst7Ghww61eHlOPlIrJv44vNjzjritOYiUHY/9HvLDWLeOIRkjIFLPrqLu2ZP0ryS21GVcGp0v5HJYnrXDOukkkZxkup6MPE4AAKtVO68VNHkohJriXnfYGzTgxuFIasvbyceYcmnojcl1g6mYp5TtAO1gMnlfpUb2Mb3g1MKwkUk7V4VweDnvgjnFX/AA1pkT20xlHDNx68e9dBKgRBGv8AD0zWqi7c19zspzXKotHMTxJewfZWRlQtuyuM4A4HfjNMD+RLFAqsrR/KDjp9Seue9aUEM1tI0qKpLn7qdPz7DPNE0aqxlnbErnnHIHtg9K45ppnoRcWcvdT38ylSGJzWUZGhBEiHdXZy6haMxjC7WAySeh+lVnFrJ8zFRmtoyi1qea8NO5x6zSNyFIojmlL/ALzOK60wW3VcH6VRnto2bbjGa6IpPQ53SlHcxHYkkxtxVCW6MR3xthh3Fa91aeSpMZ61zrxBs5HNEFqQ49DotP8AFl9BzMd4/KpZfEtzfXcTL8ixvubnqK5MwZXA4q/paot3EJPu7xmuhy0M4x1sf//S4pZguFFSpchRjvXXJ4bsj82Ktp4d07qUBNcM6CkYezkji5Ls7AtEV+4+VeTXeHwzZNgmL9KWPw5pyNuWMZHYDmpVBR0K9nJu5Y0O8eKyjWXqxP5Vr3d/FGu4qWbsAK4nUIrr7SqwWj7UIAIIUEeoJI6e9apm2Ji4lVTxwCWwD7ir5uWNjvjT1RLPfzNyoES+9Q+fG/UFsjknqR6ewrnNTikMyLHOcFsZxjn0OeR7VZgS7tpBb3P8Qypzwfqa5KrujvoqwQBZ790P3VBH0pHUbXtyMmPofaptPBjmuB1O85qnc3Rik80D2FZWNrknkwLEskjlc84FaoWKWIGJ92PXrWZKVlsUbA44rMsFeGZiCdpHSrjJpETipblq9nAjKHG7oa56ISk9K7CK2sbubMyNljzWoNFsUPyDiuulJtM8StQqRnd7HnzRvnAFBiaNdw616CdHs+uKqyaNZ556Vo1Nrcjldz//09aB51GNvH1q3DKyMHlHTJxVW2+YZOTWrbhSG8wYzWNx2MebX2GQIpXI64U85qXTdYAhIkWSNmc5JU5Pp+Fahtoc9aFgiAwD0pdbmt1axnXl7DcxEspc5wRtPb8KzBDHd2xgkRlHGD3+la1wyI2zGarMVIrmlSu7nVCrZWRi6pFKzIsURP8ACxOMEVAF1F0VGTIjb5GJ5x6Gt1mXIwKmUq2Pl6UnRRaqsz4opgd5TDH73PWqU1hLKT0HpxmugXaMkij5G5pxopClWbOft9OeOLY5yKsR2ao+4HmtkhSAKYsaKciqVJEuqxkZKdOaRppN33TTmC9abvx3rdKxzydxPObuDUDzfX8RVrdgdjVO4K9SMGmQf//U6C3kIWriyHFZ8HSrq9K5iyfeTShjmoxTh1poZm3n+tH0qqzYFWrz/WD6VUfpQzWOw3dmpFeoRUi1LLRKrmmk9xTV6049KYmCyHoaRyT04pi9ac1XYyuyEgnqaEAzSmhOtAmyfIA4FUbtjtq4elUbv7n40En/2Q=="
], - "highlights": [
- "Guided by a local expert",
- "Includes all entrance fees",
- "Small group size"
], - "categories": [
- {
- "id": 351,
- "title": "Tickets & Entry tickets"
}, - {
- "id": 371,
- "title": "Water parks"
}
], - "prices": [
- {
- "title": "Standard",
- "value": 100,
- "currency": "EUR",
- "category": "Adult",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "title": "Kids",
- "value": 50,
- "currency": "EUR",
- "category": "Child",
- "vat": 23,
- "entry_units": [
- {
- "type": "CHILD"
}
]
}, - {
- "title": "Family ticket",
- "value": 120,
- "currency": "EUR",
- "category": "Group",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}, - {
- "type": "CHILD"
}
]
}
], - "tags": [
- {
- "title": "Preparation & Inventory",
- "values": [
- "All cooking ingredients and utensils",
- "Presentation and explanation of the various ingredients",
- "Introduction to preparation"
]
}, - {
- "title": "Tasting",
- "values": [
- "Joint tasting of the prepared dishes",
- "Non-alcoholic drinks",
- "Wine, beer, soft drinks"
]
}
], - "first_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "min_participants": 10,
- "latest_booking_time": 60,
- "commission": 0
}Response samples
- 201
- 400
- 401
{- "id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "active": "1",
- "root_event_id": "45d5133ed696a041f9697233f18942a2",
- "title": "Berlin Tour",
- "description": "<p>Tour around Berlin</p>",
- "type": "BOOKING",
- "duration": 60,
- "pre_time": 30,
- "max_participants": 200,
- "timezone": "Europe/Berlin",
- "location": "Sonnenallee 223, 12059 Berlin",
- "location_place_id": "ChIJVX06QuNRqEcR0coerEj89jo",
- "location_lng": "12.7135121",
- "location_lat": "41.9214534",
- "meeting_location": "Pariser Platz, 10117 Berlin",
- "meeting_location_lng": "13.3785865",
- "meeting_location_lat": "52.5163766",
- "meeting_location_place_id": "EiRQYXJpc2VyIFBsYXR6LCAxMDExNyBCZXJsaW4sIEdlcm1hbnkiLiosChQKEgk_NdX1xlGoRxEIInH3zI6rAhIUChIJAVkDPzdOqEcRcDteW0YgIQQ",
- "vendor_id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "bring": "Driving licence",
- "advice": "Children up to 15 years must be accompanied by at least one adult.",
- "hint": "Liability and comprehensive insurance is included.",
- "participant_hint": "Please inform us of any special dietary requirements or food allergies.",
- "vendor_name": "string",
- "youtubeVideoId": "lcTsn3_IILM",
- "voucher_checkout_url": "https://web.admin-sandbox.bookingkit.com/voucherOrder/index/?id=dc458a4c9fcff0d0eb962c0654ee90f4",
- "highlights": [
- "Guided by a local expert",
- "Includes all entrance fees",
- "Small group size"
], - "categories": [
- {
- "id": 351,
- "title": "Tickets & Entry tickets"
}, - {
- "id": 371,
- "title": "Water parks"
}
], - "prices": [
- {
- "id": 378,
- "title": "Standard",
- "value": 100,
- "currency": "EUR",
- "public": 1,
- "category": "Adult",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "id": 379,
- "title": "Kids",
- "value": 50,
- "currency": "EUR",
- "public": 1,
- "category": "Child",
- "vat": 23,
- "entry_units": [
- {
- "type": "CHILD"
}
]
}, - {
- "id": 380,
- "title": "Family ticket",
- "value": 120,
- "currency": "EUR",
- "public": 1,
- "category": "Group",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}, - {
- "type": "CHILD"
}
]
}
]
}List events and dates of a vendor
Retrieve a list of events and their associated dates for a specific vendor. This endpoint returns a simplified view with basic identifiers for both events and dates. Use filtering parameters to narrow down results by date ranges, availability, or specific events.
path Parameters
| id required | string Vendor identifier |
query Parameters
| order | string Enum: "date" "available_slots" "event_id" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| available | boolean Default: true Only return dates with at least one free slot. |
| start_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| end_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| accept_vendors | string Comma separated list of accepted vendor ids |
| exclude_vendors | string Comma separated list of rejected vendor ids |
| accept_events | string Comma separated list of accepted event ids |
| exclude_events | string Comma separated list of rejected event ids |
| category | integer Filter by category id, get a complete list of categories from the categories resource |
| geolocation | string^([0-9\.]+),([0-9\.]+),([0-9\.]+),([0-9\.]+)$... Comma separated coordinates. Must be exactly 4 coordinates that describe a rectangle. Must respect following order {minLat,minLng,maxLat,maxLng}. |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| ignore_latest_booking_time | boolean Ignore latest booking time |
Responses
Response samples
- 200
- 400
- 401
[- {
- "dates": [
- {
- "id": "09f7409f216f0b6f3d9374732e23b1be",
- "event_id": "b589292a6b11eadff27b903f0f639065"
}
], - "events": [
- {
- "id": "e3fb3286155dc48fe47ea7fe1deabb46"
}
]
}
]List events
Returns a list of events of all events you have access to.
query Parameters
| order | string Enum: "title" "duration" "max_participants" "vendor_name" "price" "category_id" "first_date" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| match | string Searches the string within therse proterties:
|
| category | integer Filter by category id, get a complete list of categories from the categories resource |
| categories | string Filter by list of category ids, get a complete list of categories from the categories resource. |
| accept_vendors | string Comma separated list of accepted vendor ids. |
| exclude_vendors | string Comma separated list of rejected vendor ids. |
| preferred_categories | string Comma separated list of preferred categories. Events with these categories are placed at the top of the list. |
| type | string Default: "BOOKING" Enum: "BOOKING" "REQUEST" "ALL" Filter by event type. |
| available_from | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return events with at least one date later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| geolocation | string^([0-9\.]+),([0-9\.]+),([0-9\.]+),([0-9\.]+)$... Example: geolocation=52.069896815019,12.665231159637,52.970116384981,14.144676840363 Comma separated coordinates. Must be exactly 4 coordinates that describe a rectangle. Must respect following order {minLat,minLng,maxLat,maxLng}. |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| with_private_prices | boolean Default: false Return private and public prices. Private prices are not shown to end customers. Private prices can be used by vendors when creating bookings in the admin app. |
| only_root_events | boolean Default: false Return root events only. If events have pricelists defined, these are treated as separate pricelists events of the parent event. If this parameter is set to true, only the root event will be retunred, pricelists will be skipped. |
| only_main_duration | boolean Default: false Return main duration event only. If events have durations defined, these are treated as separate duration events of the parent event. If this parameter is set to true, only the root event will be retunred, other durations will be skipped. |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "active": "1",
- "root_event_id": "45d5133ed696a041f9697233f18942a2",
- "title": "Berlin Tour",
- "description": "<p>Tour around Berlin</p>",
- "type": "BOOKING",
- "duration": 60,
- "pre_time": 30,
- "max_participants": 200,
- "timezone": "Europe/Berlin",
- "location": "Sonnenallee 223, 12059 Berlin",
- "location_place_id": "ChIJVX06QuNRqEcR0coerEj89jo",
- "location_lng": "12.7135121",
- "location_lat": "41.9214534",
- "meeting_location": "Pariser Platz, 10117 Berlin",
- "meeting_location_lng": "13.3785865",
- "meeting_location_lat": "52.5163766",
- "meeting_location_place_id": "EiRQYXJpc2VyIFBsYXR6LCAxMDExNyBCZXJsaW4sIEdlcm1hbnkiLiosChQKEgk_NdX1xlGoRxEIInH3zI6rAhIUChIJAVkDPzdOqEcRcDteW0YgIQQ",
- "vendor_id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "bring": "Driving licence",
- "advice": "Children up to 15 years must be accompanied by at least one adult.",
- "hint": "Liability and comprehensive insurance is included.",
- "participant_hint": "Please inform us of any special dietary requirements or food allergies.",
- "vendor_name": "string",
- "youtubeVideoId": "lcTsn3_IILM",
- "voucher_checkout_url": "https://web.admin-sandbox.bookingkit.com/voucherOrder/index/?id=dc458a4c9fcff0d0eb962c0654ee90f4",
- "highlights": [
- "Guided by a local expert",
- "Includes all entrance fees",
- "Small group size"
], - "categories": [
- {
- "id": 351,
- "title": "Tickets & Entry tickets"
}, - {
- "id": 371,
- "title": "Water parks"
}
], - "prices": [
- {
- "id": 378,
- "title": "Standard",
- "value": 100,
- "currency": "EUR",
- "public": 1,
- "category": "Adult",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "id": 379,
- "title": "Kids",
- "value": 50,
- "currency": "EUR",
- "public": 1,
- "category": "Child",
- "vat": 23,
- "entry_units": [
- {
- "type": "CHILD"
}
]
}, - {
- "id": 380,
- "title": "Family ticket",
- "value": 120,
- "currency": "EUR",
- "public": 1,
- "category": "Group",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}, - {
- "type": "CHILD"
}
]
}
]
}
]Create an event
Create a new "event" item
Request Body schema: application/json
| active | integer Enum: "0" "1" Whether an event is active or inactive. Events can be deactivated by a vendor. Inactive events won't be returned. |
| root_event_id | string If an event is a child pricelist event then root_event_id is a parent id of that pricelist event. Parent event of a priclist event can be a duration event. Parent events (main events and duration events) will have root_event_id set to an empty string. |
| title required | string <= 255 characters Event title, descriptive. |
| description required | string <html> Description of the event in HTML format. |
| type | string Enum: "BOOKING" "REQUEST" Event type (bookings or requests). Requests have to be accepted by the vendors to become a booking. |
| duration required | integer Duration of the event in minutes. |
| pre_time | integer Whether and how much time earlier the participants and team need before the event, in minutes. Set to 0 if no extra time is required. |
| max_participants required | integer Maximum number of participants in a single appointment of an event. This can be overriden for each individual apointment. |
| timezone | string Timezone identifier of an event location. |
| location required | string Event location address. |
| location_place_id | string Google Place ID of the event location. |
| location_lng required | number Event location longitude. |
| location_lat required | number Event location latitude. |
| meeting_location required | string Meeting location address, MAY differ from event location. |
| meeting_location_lng required | number Meeting location longitude. |
| meeting_location_lat required | number Meeting location latitude. |
| meeting_location_place_id | string Google Place ID of the meeting location. |
| vendor_id required | string Unique identifier of the vendor that this events belongs to. |
| bring | string What participants need to bring. |
| advice | string Advice note to participants. |
| hint | string Short general hint displayed during the booking process |
| participant_hint | string Short question for participants displayed during the booking process |
| vendor_name | string Vendor company name, doesn't have to be a full legal name |
| youtubeVideoId | string ID of Youtube video, not the whole video URL |
| voucher_checkout_url | string Checkout URL to buy a voucher through the bookingkit system. |
| images required | Array of strings non-empty unique BASE64 encoded image files |
| highlights | Array of strings <= 10 items unique List of main selling points for the event |
required | Array of objects Full ordered category tree. Top level category first. |
required | Array of objects unique Prices for this event. |
Array of objects Optional tags for the event describing the scope of the event. Tags are used only for certain event categories (eg. for cooking classes). | |
| first_date | string <date-time> ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Starting time of the next event. Format: YYYY-MM-DDThh:mm:ssZ, UTC. It's returned only if "available_from" query parameter is set. |
| min_participants | integer Minimum number of participants per booking. Set to 0 if no minimum is required. |
| latest_booking_time | integer How much time (in minutes) the event has to be booked before it starts. Negative value is used for "opening hours" events to indicate that the event can be booked after it has started. |
| commission | integer [ 0 .. 100 ] Percentage of the order value received as commission by the reseller. Greater than 0 only for resellers API clients. |
Responses
Request samples
- Payload
{- "active": "1",
- "root_event_id": "45d5133ed696a041f9697233f18942a2",
- "title": "Berlin Tour",
- "description": "<p>Tour around Berlin</p>",
- "type": "BOOKING",
- "duration": 60,
- "pre_time": 30,
- "max_participants": 200,
- "timezone": "Europe/Berlin",
- "location": "Sonnenallee 223, 12059 Berlin",
- "location_place_id": "ChIJVX06QuNRqEcR0coerEj89jo",
- "location_lng": "12.7135121",
- "location_lat": "41.9214534",
- "meeting_location": "Pariser Platz, 10117 Berlin",
- "meeting_location_lng": "13.3785865",
- "meeting_location_lat": "52.5163766",
- "meeting_location_place_id": "EiRQYXJpc2VyIFBsYXR6LCAxMDExNyBCZXJsaW4sIEdlcm1hbnkiLiosChQKEgk_NdX1xlGoRxEIInH3zI6rAhIUChIJAVkDPzdOqEcRcDteW0YgIQQ",
- "vendor_id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "bring": "Driving licence",
- "advice": "Children up to 15 years must be accompanied by at least one adult.",
- "hint": "Liability and comprehensive insurance is included.",
- "participant_hint": "Please inform us of any special dietary requirements or food allergies.",
- "vendor_name": "string",
- "youtubeVideoId": "lcTsn3_IILM",
- "voucher_checkout_url": "https://web.admin-sandbox.bookingkit.com/voucherOrder/index/?id=dc458a4c9fcff0d0eb962c0654ee90f4",
- "images": [
- "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"
], - "highlights": [
- "Guided by a local expert",
- "Includes all entrance fees",
- "Small group size"
], - "categories": [
- {
- "id": 351,
- "title": "Tickets & Entry tickets"
}, - {
- "id": 371,
- "title": "Water parks"
}
], - "prices": [
- {
- "title": "Standard",
- "value": 100,
- "currency": "EUR",
- "category": "Adult",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "title": "Kids",
- "value": 50,
- "currency": "EUR",
- "category": "Child",
- "vat": 23,
- "entry_units": [
- {
- "type": "CHILD"
}
]
}, - {
- "title": "Family ticket",
- "value": 120,
- "currency": "EUR",
- "category": "Group",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}, - {
- "type": "CHILD"
}
]
}
], - "tags": [
- {
- "title": "Preparation & Inventory",
- "values": [
- "All cooking ingredients and utensils",
- "Presentation and explanation of the various ingredients",
- "Introduction to preparation"
]
}, - {
- "title": "Tasting",
- "values": [
- "Joint tasting of the prepared dishes",
- "Non-alcoholic drinks",
- "Wine, beer, soft drinks"
]
}
], - "first_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "min_participants": 10,
- "latest_booking_time": 60,
- "commission": 0
}Response samples
- 201
- 400
- 401
{- "id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "active": "1",
- "root_event_id": "45d5133ed696a041f9697233f18942a2",
- "title": "Berlin Tour",
- "description": "<p>Tour around Berlin</p>",
- "type": "BOOKING",
- "duration": 60,
- "pre_time": 30,
- "max_participants": 200,
- "timezone": "Europe/Berlin",
- "location": "Sonnenallee 223, 12059 Berlin",
- "location_place_id": "ChIJVX06QuNRqEcR0coerEj89jo",
- "location_lng": "12.7135121",
- "location_lat": "41.9214534",
- "meeting_location": "Pariser Platz, 10117 Berlin",
- "meeting_location_lng": "13.3785865",
- "meeting_location_lat": "52.5163766",
- "meeting_location_place_id": "EiRQYXJpc2VyIFBsYXR6LCAxMDExNyBCZXJsaW4sIEdlcm1hbnkiLiosChQKEgk_NdX1xlGoRxEIInH3zI6rAhIUChIJAVkDPzdOqEcRcDteW0YgIQQ",
- "vendor_id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "bring": "Driving licence",
- "advice": "Children up to 15 years must be accompanied by at least one adult.",
- "hint": "Liability and comprehensive insurance is included.",
- "participant_hint": "Please inform us of any special dietary requirements or food allergies.",
- "vendor_name": "string",
- "youtubeVideoId": "lcTsn3_IILM",
- "voucher_checkout_url": "https://web.admin-sandbox.bookingkit.com/voucherOrder/index/?id=dc458a4c9fcff0d0eb962c0654ee90f4",
- "highlights": [
- "Guided by a local expert",
- "Includes all entrance fees",
- "Small group size"
], - "categories": [
- {
- "id": 351,
- "title": "Tickets & Entry tickets"
}, - {
- "id": 371,
- "title": "Water parks"
}
], - "prices": [
- {
- "id": 378,
- "title": "Standard",
- "value": 100,
- "currency": "EUR",
- "public": 1,
- "category": "Adult",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "id": 379,
- "title": "Kids",
- "value": 50,
- "currency": "EUR",
- "public": 1,
- "category": "Child",
- "vat": 23,
- "entry_units": [
- {
- "type": "CHILD"
}
]
}, - {
- "id": 380,
- "title": "Family ticket",
- "value": 120,
- "currency": "EUR",
- "public": 1,
- "category": "Group",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}, - {
- "type": "CHILD"
}
]
}
]
}Update an event
Update an existing "event" item
path Parameters
| id required | string |
Request Body schema: application/json
| active | integer Enum: "0" "1" Whether an event is active or inactive. Events can be deactivated by a vendor. Inactive events won't be returned. |
| root_event_id | string If an event is a child pricelist event then root_event_id is a parent id of that pricelist event. Parent event of a priclist event can be a duration event. Parent events (main events and duration events) will have root_event_id set to an empty string. |
| title required | string <= 255 characters Event title, descriptive. |
| description required | string <html> Description of the event in HTML format. |
| type | string Enum: "BOOKING" "REQUEST" Event type (bookings or requests). Requests have to be accepted by the vendors to become a booking. |
| duration required | integer Duration of the event in minutes. |
| pre_time | integer Whether and how much time earlier the participants and team need before the event, in minutes. Set to 0 if no extra time is required. |
| max_participants required | integer Maximum number of participants in a single appointment of an event. This can be overriden for each individual apointment. |
| timezone | string Timezone identifier of an event location. |
| location required | string Event location address. |
| location_place_id | string Google Place ID of the event location. |
| location_lng required | number Event location longitude. |
| location_lat required | number Event location latitude. |
| meeting_location required | string Meeting location address, MAY differ from event location. |
| meeting_location_lng required | number Meeting location longitude. |
| meeting_location_lat required | number Meeting location latitude. |
| meeting_location_place_id | string Google Place ID of the meeting location. |
| vendor_id required | string Unique identifier of the vendor that this events belongs to. |
| bring | string What participants need to bring. |
| advice | string Advice note to participants. |
| hint | string Short general hint displayed during the booking process |
| participant_hint | string Short question for participants displayed during the booking process |
| vendor_name | string Vendor company name, doesn't have to be a full legal name |
| youtubeVideoId | string ID of Youtube video, not the whole video URL |
| voucher_checkout_url | string Checkout URL to buy a voucher through the bookingkit system. |
| images required | Array of strings non-empty unique BASE64 encoded image files |
| highlights | Array of strings <= 10 items unique List of main selling points for the event |
required | Array of objects Full ordered category tree. Top level category first. |
required | Array of objects unique Prices for this event. |
Array of objects Optional tags for the event describing the scope of the event. Tags are used only for certain event categories (eg. for cooking classes). | |
| first_date | string <date-time> ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Starting time of the next event. Format: YYYY-MM-DDThh:mm:ssZ, UTC. It's returned only if "available_from" query parameter is set. |
| min_participants | integer Minimum number of participants per booking. Set to 0 if no minimum is required. |
| latest_booking_time | integer How much time (in minutes) the event has to be booked before it starts. Negative value is used for "opening hours" events to indicate that the event can be booked after it has started. |
| commission | integer [ 0 .. 100 ] Percentage of the order value received as commission by the reseller. Greater than 0 only for resellers API clients. |
Responses
Request samples
- Payload
{- "active": "1",
- "root_event_id": "45d5133ed696a041f9697233f18942a2",
- "title": "Berlin Tour",
- "description": "<p>Tour around Berlin</p>",
- "type": "BOOKING",
- "duration": 60,
- "pre_time": 30,
- "max_participants": 200,
- "timezone": "Europe/Berlin",
- "location": "Sonnenallee 223, 12059 Berlin",
- "location_place_id": "ChIJVX06QuNRqEcR0coerEj89jo",
- "location_lng": "12.7135121",
- "location_lat": "41.9214534",
- "meeting_location": "Pariser Platz, 10117 Berlin",
- "meeting_location_lng": "13.3785865",
- "meeting_location_lat": "52.5163766",
- "meeting_location_place_id": "EiRQYXJpc2VyIFBsYXR6LCAxMDExNyBCZXJsaW4sIEdlcm1hbnkiLiosChQKEgk_NdX1xlGoRxEIInH3zI6rAhIUChIJAVkDPzdOqEcRcDteW0YgIQQ",
- "vendor_id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "bring": "Driving licence",
- "advice": "Children up to 15 years must be accompanied by at least one adult.",
- "hint": "Liability and comprehensive insurance is included.",
- "participant_hint": "Please inform us of any special dietary requirements or food allergies.",
- "vendor_name": "string",
- "youtubeVideoId": "lcTsn3_IILM",
- "voucher_checkout_url": "https://web.admin-sandbox.bookingkit.com/voucherOrder/index/?id=dc458a4c9fcff0d0eb962c0654ee90f4",
- "images": [
- "/9j/4AAQSkZJRgABAgEASABIAAD/4QD0RXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUAAAABAAAAYgEbAAUAAAABAAAAagEoAAMAAAABAAIAAAExAAIAAAAdAAAAcgITAAMAAAABAAEAAIdpAAQAAAABAAAAkAAAAAAAAABIAAAAAQAAAEgAAAABQWRvYmUgUGhvdG9zaG9wIDIwMjQgV2luZG93cwAAAAeQAAAHAAAABDAyMjGRAQAHAAAABAECAwCgAAAHAAAABDAxMDCgAQADAAAAAQABAACgAgAEAAAAAQAAAICgAwAEAAAAAQAAAFWkBgADAAAAAQAAAAAAAAAAAAD/wAARCABVAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9sAQwAJCQkJCQkQCQkQFhAQEBYeFhYWFh4mHh4eHh4mLiYmJiYmJi4uLi4uLi4uNzc3Nzc3QEBAQEBISEhISEhISEhI/9sAQwELDAwSERIfEREfSzMqM0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tL/90ABAAI/9oADAMBAAIRAxEAPwD1FYRUohFTK0R/iFSgp6itLnLyIgEQFL5QqzlfUUvHrRzByIq+UKPKFWuDxS7aOYPZoqeUPSk8oVb21HI0cYBdguTgZOMmnzC9mV/KFNMQqpfX/wBj5artrL9oiEg70KaeqJlTs7NERiFMMQq+UphSq5iHSRnmEVGYRWiUphSq5jN0kZTQCqckArcaOqzx1SkZSpI//9D1ZLaMgEd6k+zL2NR2MzTQq3bFaIPWkmZ2RT+zL60vkDON1W8jFRgDec07hyo89uJbm21KeWI4dZCDnuOwPtiujg1O3ubfzllWNuhVjyD/AFrD8QQSHVSIhkOoZvyx1/Cst4QnAZSwYcZ49ecdOlcXtJQk7HoypQqQjc7FNTt0jLzTqfQLyTXPSTT6ndoxOSzqEX+6Mg//AK6zI2WQiRzsALAk8dcnP6frWnpqqNSt5lcMmecEen61lOvKbUZGlLDwpJyW5pazbz3DbFbAJrasYp4YAuc1lalcwI+7d0NQWviO0QGORsMK7Kcoxujy6qvZs6YtOKrvczIcbc1zM/imDdti3GqA8RvuLMpxWntodzLkb2OuW+mZ9uzAqc3Ld1rhT4lZn3IOK3NO121vMqWGR1Bqo1YvREODRtm5/wBmqst7Ghww61eHlOPlIrJv44vNjzjritOYiUHY/9HvLDWLeOIRkjIFLPrqLu2ZP0ryS21GVcGp0v5HJYnrXDOukkkZxkup6MPE4AAKtVO68VNHkohJriXnfYGzTgxuFIasvbyceYcmnojcl1g6mYp5TtAO1gMnlfpUb2Mb3g1MKwkUk7V4VweDnvgjnFX/AA1pkT20xlHDNx68e9dBKgRBGv8AD0zWqi7c19zspzXKotHMTxJewfZWRlQtuyuM4A4HfjNMD+RLFAqsrR/KDjp9Seue9aUEM1tI0qKpLn7qdPz7DPNE0aqxlnbErnnHIHtg9K45ppnoRcWcvdT38ylSGJzWUZGhBEiHdXZy6haMxjC7WAySeh+lVnFrJ8zFRmtoyi1qea8NO5x6zSNyFIojmlL/ALzOK60wW3VcH6VRnto2bbjGa6IpPQ53SlHcxHYkkxtxVCW6MR3xthh3Fa91aeSpMZ61zrxBs5HNEFqQ49DotP8AFl9BzMd4/KpZfEtzfXcTL8ixvubnqK5MwZXA4q/paot3EJPu7xmuhy0M4x1sf//S4pZguFFSpchRjvXXJ4bsj82Ktp4d07qUBNcM6CkYezkji5Ls7AtEV+4+VeTXeHwzZNgmL9KWPw5pyNuWMZHYDmpVBR0K9nJu5Y0O8eKyjWXqxP5Vr3d/FGu4qWbsAK4nUIrr7SqwWj7UIAIIUEeoJI6e9apm2Ji4lVTxwCWwD7ir5uWNjvjT1RLPfzNyoES+9Q+fG/UFsjknqR6ewrnNTikMyLHOcFsZxjn0OeR7VZgS7tpBb3P8Qypzwfqa5KrujvoqwQBZ790P3VBH0pHUbXtyMmPofaptPBjmuB1O85qnc3Rik80D2FZWNrknkwLEskjlc84FaoWKWIGJ92PXrWZKVlsUbA44rMsFeGZiCdpHSrjJpETipblq9nAjKHG7oa56ISk9K7CK2sbubMyNljzWoNFsUPyDiuulJtM8StQqRnd7HnzRvnAFBiaNdw616CdHs+uKqyaNZ556Vo1Nrcjldz//09aB51GNvH1q3DKyMHlHTJxVW2+YZOTWrbhSG8wYzWNx2MebX2GQIpXI64U85qXTdYAhIkWSNmc5JU5Pp+Fahtoc9aFgiAwD0pdbmt1axnXl7DcxEspc5wRtPb8KzBDHd2xgkRlHGD3+la1wyI2zGarMVIrmlSu7nVCrZWRi6pFKzIsURP8ACxOMEVAF1F0VGTIjb5GJ5x6Gt1mXIwKmUq2Pl6UnRRaqsz4opgd5TDH73PWqU1hLKT0HpxmugXaMkij5G5pxopClWbOft9OeOLY5yKsR2ao+4HmtkhSAKYsaKciqVJEuqxkZKdOaRppN33TTmC9abvx3rdKxzydxPObuDUDzfX8RVrdgdjVO4K9SMGmQf//U6C3kIWriyHFZ8HSrq9K5iyfeTShjmoxTh1poZm3n+tH0qqzYFWrz/WD6VUfpQzWOw3dmpFeoRUi1LLRKrmmk9xTV6049KYmCyHoaRyT04pi9ac1XYyuyEgnqaEAzSmhOtAmyfIA4FUbtjtq4elUbv7n40En/2Q=="
], - "highlights": [
- "Guided by a local expert",
- "Includes all entrance fees",
- "Small group size"
], - "categories": [
- {
- "id": 351,
- "title": "Tickets & Entry tickets"
}, - {
- "id": 371,
- "title": "Water parks"
}
], - "prices": [
- {
- "title": "Standard",
- "value": 100,
- "currency": "EUR",
- "category": "Adult",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "title": "Kids",
- "value": 50,
- "currency": "EUR",
- "category": "Child",
- "vat": 23,
- "entry_units": [
- {
- "type": "CHILD"
}
]
}, - {
- "title": "Family ticket",
- "value": 120,
- "currency": "EUR",
- "category": "Group",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}, - {
- "type": "CHILD"
}
]
}
], - "tags": [
- {
- "title": "Preparation & Inventory",
- "values": [
- "All cooking ingredients and utensils",
- "Presentation and explanation of the various ingredients",
- "Introduction to preparation"
]
}, - {
- "title": "Tasting",
- "values": [
- "Joint tasting of the prepared dishes",
- "Non-alcoholic drinks",
- "Wine, beer, soft drinks"
]
}
], - "first_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "min_participants": 10,
- "latest_booking_time": 60,
- "commission": 0
}Response samples
- 200
- 400
- 401
{- "id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "active": "1",
- "root_event_id": "45d5133ed696a041f9697233f18942a2",
- "title": "Berlin Tour",
- "description": "<p>Tour around Berlin</p>",
- "type": "BOOKING",
- "duration": 60,
- "pre_time": 30,
- "max_participants": 200,
- "timezone": "Europe/Berlin",
- "location": "Sonnenallee 223, 12059 Berlin",
- "location_place_id": "ChIJVX06QuNRqEcR0coerEj89jo",
- "location_lng": "12.7135121",
- "location_lat": "41.9214534",
- "meeting_location": "Pariser Platz, 10117 Berlin",
- "meeting_location_lng": "13.3785865",
- "meeting_location_lat": "52.5163766",
- "meeting_location_place_id": "EiRQYXJpc2VyIFBsYXR6LCAxMDExNyBCZXJsaW4sIEdlcm1hbnkiLiosChQKEgk_NdX1xlGoRxEIInH3zI6rAhIUChIJAVkDPzdOqEcRcDteW0YgIQQ",
- "vendor_id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "bring": "Driving licence",
- "advice": "Children up to 15 years must be accompanied by at least one adult.",
- "hint": "Liability and comprehensive insurance is included.",
- "participant_hint": "Please inform us of any special dietary requirements or food allergies.",
- "vendor_name": "string",
- "youtubeVideoId": "lcTsn3_IILM",
- "voucher_checkout_url": "https://web.admin-sandbox.bookingkit.com/voucherOrder/index/?id=dc458a4c9fcff0d0eb962c0654ee90f4",
- "highlights": [
- "Guided by a local expert",
- "Includes all entrance fees",
- "Small group size"
], - "categories": [
- {
- "id": 351,
- "title": "Tickets & Entry tickets"
}, - {
- "id": 371,
- "title": "Water parks"
}
], - "prices": [
- {
- "id": 378,
- "title": "Standard",
- "value": 100,
- "currency": "EUR",
- "public": 1,
- "category": "Adult",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "id": 379,
- "title": "Kids",
- "value": 50,
- "currency": "EUR",
- "public": 1,
- "category": "Child",
- "vat": 23,
- "entry_units": [
- {
- "type": "CHILD"
}
]
}, - {
- "id": 380,
- "title": "Family ticket",
- "value": 120,
- "currency": "EUR",
- "public": 1,
- "category": "Group",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}, - {
- "type": "CHILD"
}
]
}
]
}Response samples
- 200
- 400
- 401
- 404
{- "id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "active": "1",
- "root_event_id": "45d5133ed696a041f9697233f18942a2",
- "title": "Berlin Tour",
- "description": "<p>Tour around Berlin</p>",
- "type": "BOOKING",
- "duration": 60,
- "pre_time": 30,
- "max_participants": 200,
- "timezone": "Europe/Berlin",
- "location": "Sonnenallee 223, 12059 Berlin",
- "location_place_id": "ChIJVX06QuNRqEcR0coerEj89jo",
- "location_lng": "12.7135121",
- "location_lat": "41.9214534",
- "meeting_location": "Pariser Platz, 10117 Berlin",
- "meeting_location_lng": "13.3785865",
- "meeting_location_lat": "52.5163766",
- "meeting_location_place_id": "EiRQYXJpc2VyIFBsYXR6LCAxMDExNyBCZXJsaW4sIEdlcm1hbnkiLiosChQKEgk_NdX1xlGoRxEIInH3zI6rAhIUChIJAVkDPzdOqEcRcDteW0YgIQQ",
- "vendor_id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "bring": "Driving licence",
- "advice": "Children up to 15 years must be accompanied by at least one adult.",
- "hint": "Liability and comprehensive insurance is included.",
- "participant_hint": "Please inform us of any special dietary requirements or food allergies.",
- "vendor_name": "string",
- "youtubeVideoId": "lcTsn3_IILM",
- "voucher_checkout_url": "https://web.admin-sandbox.bookingkit.com/voucherOrder/index/?id=dc458a4c9fcff0d0eb962c0654ee90f4",
- "highlights": [
- "Guided by a local expert",
- "Includes all entrance fees",
- "Small group size"
], - "categories": [
- {
- "id": 351,
- "title": "Tickets & Entry tickets"
}, - {
- "id": 371,
- "title": "Water parks"
}
], - "prices": [
- {
- "id": 378,
- "title": "Standard",
- "value": 100,
- "currency": "EUR",
- "public": 1,
- "category": "Adult",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "id": 379,
- "title": "Kids",
- "value": 50,
- "currency": "EUR",
- "public": 1,
- "category": "Child",
- "vat": 23,
- "entry_units": [
- {
- "type": "CHILD"
}
]
}, - {
- "id": 380,
- "title": "Family ticket",
- "value": 120,
- "currency": "EUR",
- "public": 1,
- "category": "Group",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}, - {
- "type": "CHILD"
}
]
}
]
}List merged events
Retrieve a list of "merged events". Merged events contain price information of all associated pricelists. If event has multiple durations then individual event durations are listed as top level event items.
query Parameters
| order | string Enum: "title" "duration" "max_participants" "vendor_name" "price" "category_id" "first_date" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| match | string Searches the string within therse proterties:
|
| category | integer Filter by category id, get a complete list of categories from the categories resource |
| categories | string Filter by list of category ids, get a complete list of categories from the categories resource. |
| accept_vendors | string Comma separated list of accepted vendor ids. |
| exclude_vendors | string Comma separated list of rejected vendor ids. |
| preferred_categories | string Comma separated list of preferred categories. Events with these categories are placed at the top of the list. |
| type | string Default: "BOOKING" Enum: "BOOKING" "REQUEST" "ALL" Filter by event type. |
| available_from | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return events with at least one date later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| geolocation | string^([0-9\.]+),([0-9\.]+),([0-9\.]+),([0-9\.]+)$... Example: geolocation=52.069896815019,12.665231159637,52.970116384981,14.144676840363 Comma separated coordinates. Must be exactly 4 coordinates that describe a rectangle. Must respect following order {minLat,minLng,maxLat,maxLng}. |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| with_private_prices | boolean Default: false Return private and public prices. Private prices are not shown to end customers. Private prices can be used by vendors when creating bookings in the admin app. |
| only_root_events | boolean Default: false Return root events only. If events have pricelists defined, these are treated as separate pricelists events of the parent event. If this parameter is set to true, only the root event will be retunred, pricelists will be skipped. |
| only_main_duration | boolean Default: false Return main duration event only. If events have durations defined, these are treated as separate duration events of the parent event. If this parameter is set to true, only the root event will be retunred, other durations will be skipped. |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "active": "1",
- "title": "Berlin Tour",
- "description": "<p>Tour around Berlin</p>",
- "type": "BOOKING",
- "duration": 60,
- "pre_time": 30,
- "max_participants": 200,
- "timezone": "Europe/Berlin",
- "location": "Sonnenallee 223, 12059 Berlin",
- "location_place_id": "ChIJVX06QuNRqEcR0coerEj89jo",
- "location_lng": "12.7135121",
- "location_lat": "41.9214534",
- "meeting_location": "Pariser Platz, 10117 Berlin",
- "meeting_location_lng": "13.3785865",
- "meeting_location_lat": "52.5163766",
- "meeting_location_place_id": "EiRQYXJpc2VyIFBsYXR6LCAxMDExNyBCZXJsaW4sIEdlcm1hbnkiLiosChQKEgk_NdX1xlGoRxEIInH3zI6rAhIUChIJAVkDPzdOqEcRcDteW0YgIQQ",
- "vendor_id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "bring": "Driving licence",
- "advice": "Children up to 15 years must be accompanied by at least one adult.",
- "hint": "Liability and comprehensive insurance is included.",
- "participant_hint": "Please inform us of any special dietary requirements or food allergies.",
- "vendor_name": "string",
- "youtubeVideoId": "lcTsn3_IILM",
- "voucher_checkout_url": "https://web.admin-sandbox.bookingkit.com/voucherOrder/index/?id=dc458a4c9fcff0d0eb962c0654ee90f4",
- "highlights": [
- "Guided by a local expert",
- "Includes all entrance fees",
- "Small group size"
], - "categories": [
- {
- "id": 351,
- "title": "Tickets & Entry tickets"
}, - {
- "id": 371,
- "title": "Water parks"
}
], - "price_groups": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d",
- "name": "High season prices",
- "prices": [
- {
- "id": 378,
- "title": "Standard",
- "value": 100,
- "currency": "EUR",
- "public": 1,
- "category": "Adult",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "id": 379,
- "title": "Kids",
- "value": 50,
- "currency": "EUR",
- "public": 1,
- "category": "Child",
- "vat": 23,
- "entry_units": [
- {
- "type": "CHILD"
}
]
}, - {
- "id": 380,
- "title": "Family ticket",
- "value": 120,
- "currency": "EUR",
- "public": 1,
- "category": "Group",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}, - {
- "type": "CHILD"
}
]
}
]
}
], - "tags": [
- {
- "title": "Preparation & Inventory",
- "values": [
- "All cooking ingredients and utensils",
- "Presentation and explanation of the various ingredients",
- "Introduction to preparation"
]
}, - {
- "title": "Tasting",
- "values": [
- "Joint tasting of the prepared dishes",
- "Non-alcoholic drinks",
- "Wine, beer, soft drinks"
]
}
], - "first_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "min_participants": 10,
- "latest_booking_time": 60,
- "commission": 0
}
]Retrieve a merged event
Retrieve a merged event. If parent event or event duration is requested, the merged event object contains price information of all associated pricelists.
path Parameters
| id required | string |
Responses
Response samples
- 200
- 400
- 401
- 404
{- "id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "active": "1",
- "title": "Berlin Tour",
- "description": "<p>Tour around Berlin</p>",
- "type": "BOOKING",
- "duration": 60,
- "pre_time": 30,
- "max_participants": 200,
- "timezone": "Europe/Berlin",
- "location": "Sonnenallee 223, 12059 Berlin",
- "location_place_id": "ChIJVX06QuNRqEcR0coerEj89jo",
- "location_lng": "12.7135121",
- "location_lat": "41.9214534",
- "meeting_location": "Pariser Platz, 10117 Berlin",
- "meeting_location_lng": "13.3785865",
- "meeting_location_lat": "52.5163766",
- "meeting_location_place_id": "EiRQYXJpc2VyIFBsYXR6LCAxMDExNyBCZXJsaW4sIEdlcm1hbnkiLiosChQKEgk_NdX1xlGoRxEIInH3zI6rAhIUChIJAVkDPzdOqEcRcDteW0YgIQQ",
- "vendor_id": "3e3edd05ce4362e2d6a8200c37b1b79c",
- "bring": "Driving licence",
- "advice": "Children up to 15 years must be accompanied by at least one adult.",
- "hint": "Liability and comprehensive insurance is included.",
- "participant_hint": "Please inform us of any special dietary requirements or food allergies.",
- "vendor_name": "string",
- "youtubeVideoId": "lcTsn3_IILM",
- "voucher_checkout_url": "https://web.admin-sandbox.bookingkit.com/voucherOrder/index/?id=dc458a4c9fcff0d0eb962c0654ee90f4",
- "highlights": [
- "Guided by a local expert",
- "Includes all entrance fees",
- "Small group size"
], - "categories": [
- {
- "id": 351,
- "title": "Tickets & Entry tickets"
}, - {
- "id": 371,
- "title": "Water parks"
}
], - "price_groups": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d",
- "name": "High season prices",
- "prices": [
- {
- "id": 378,
- "title": "Standard",
- "value": 100,
- "currency": "EUR",
- "public": 1,
- "category": "Adult",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "id": 379,
- "title": "Kids",
- "value": 50,
- "currency": "EUR",
- "public": 1,
- "category": "Child",
- "vat": 23,
- "entry_units": [
- {
- "type": "CHILD"
}
]
}, - {
- "id": 380,
- "title": "Family ticket",
- "value": 120,
- "currency": "EUR",
- "public": 1,
- "category": "Group",
- "vat": 23,
- "entry_units": [
- {
- "type": "ADULT"
}, - {
- "type": "CHILD"
}
]
}
]
}
], - "tags": [
- {
- "title": "Preparation & Inventory",
- "values": [
- "All cooking ingredients and utensils",
- "Presentation and explanation of the various ingredients",
- "Introduction to preparation"
]
}, - {
- "title": "Tasting",
- "values": [
- "Joint tasting of the prepared dishes",
- "Non-alcoholic drinks",
- "Wine, beer, soft drinks"
]
}
], - "first_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "min_participants": 10,
- "latest_booking_time": 60,
- "commission": 0
}List events and dates
Retrieve a list of events and their associated dates across all vendors. This endpoint returns a simplified view with basic identifiers for both events and dates. Use filtering parameters to narrow down results by date ranges, availability, specific vendors, or events.
query Parameters
| order | string Enum: "date" "available_slots" "event_id" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| available | boolean Default: true Only return dates with at least one free slot. |
| start_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| end_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| accept_vendors | string Comma separated list of accepted vendor ids |
| exclude_vendors | string Comma separated list of rejected vendor ids |
| accept_events | string Comma separated list of accepted event ids |
| exclude_events | string Comma separated list of rejected event ids |
| category | integer Filter by category id, get a complete list of categories from the categories resource |
| geolocation | string^([0-9\.]+),([0-9\.]+),([0-9\.]+),([0-9\.]+)$... Comma separated coordinates. Must be exactly 4 coordinates that describe a rectangle. Must respect following order {minLat,minLng,maxLat,maxLng}. |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| ignore_latest_booking_time | boolean Ignore latest booking time |
Responses
Response samples
- 200
- 400
- 401
[- {
- "dates": [
- {
- "id": "09f7409f216f0b6f3d9374732e23b1be",
- "event_id": "b589292a6b11eadff27b903f0f639065"
}
], - "events": [
- {
- "id": "e3fb3286155dc48fe47ea7fe1deabb46"
}
]
}
]List dates of a vendor
Get a list of dates in array form since api console does not yet support schema relations view date schema for details
path Parameters
| id required | string Vendor identifier |
query Parameters
| order | string Enum: "title" "duration" "max_participants" "vendor_name" "price" "category_id" "first_date" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| match | string Searches the string within therse proterties:
|
| category | integer Filter by category id, get a complete list of categories from the categories resource |
| categories | string Filter by list of category ids, get a complete list of categories from the categories resource. |
| accept_vendors | string Comma separated list of accepted vendor ids. |
| exclude_vendors | string Comma separated list of rejected vendor ids. |
| preferred_categories | string Comma separated list of preferred categories. Events with these categories are placed at the top of the list. |
| type | string Default: "BOOKING" Enum: "BOOKING" "REQUEST" "ALL" Filter by event type. |
| available_from | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return events with at least one date later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| geolocation | string^([0-9\.]+),([0-9\.]+),([0-9\.]+),([0-9\.]+)$... Example: geolocation=52.069896815019,12.665231159637,52.970116384981,14.144676840363 Comma separated coordinates. Must be exactly 4 coordinates that describe a rectangle. Must respect following order {minLat,minLng,maxLat,maxLng}. |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| with_private_prices | boolean Default: false Return private and public prices. Private prices are not shown to end customers. Private prices can be used by vendors when creating bookings in the admin app. |
| only_root_events | boolean Default: false Return root events only. If events have pricelists defined, these are treated as separate pricelists events of the parent event. If this parameter is set to true, only the root event will be retunred, pricelists will be skipped. |
| only_main_duration | boolean Default: false Return main duration event only. If events have durations defined, these are treated as separate duration events of the parent event. If this parameter is set to true, only the root event will be retunred, other durations will be skipped. |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "220e91cd528a624f37b23b877c8969fc",
- "active": 1,
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:00:00Z",
- "available_slots": 10,
- "total_slots": 10,
}
]Create date for a vendor
Create a new date for a specific vendor. This endpoint allows you to add a new available date with specified time and capacity.
path Parameters
| id required | string Vendor identifier |
Request Body schema: application/json
Date creation data
| event_id required | string Unique identifier of the event |
| date required | string <date-time> Starting time of the event |
| available_slots required | integer >= 0 Number of available seats/persons |
| total_slots required | integer >= 0 Total number of seats/persons |
Responses
Request samples
- Payload
{- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:34:00Z",
- "available_slots": 10,
- "total_slots": 10
}Response samples
- 201
- 400
- 401
- 404
{- "id": "220e91cd528a624f37b23b877c8969fc",
- "active": 1,
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:00:00Z",
- "available_slots": 10,
- "total_slots": 10,
}List events and dates of a vendor
Retrieve a list of events and their associated dates for a specific vendor. This endpoint returns a simplified view with basic identifiers for both events and dates. Use filtering parameters to narrow down results by date ranges, availability, or specific events.
path Parameters
| id required | string Vendor identifier |
query Parameters
| order | string Enum: "date" "available_slots" "event_id" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| available | boolean Default: true Only return dates with at least one free slot. |
| start_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| end_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| accept_vendors | string Comma separated list of accepted vendor ids |
| exclude_vendors | string Comma separated list of rejected vendor ids |
| accept_events | string Comma separated list of accepted event ids |
| exclude_events | string Comma separated list of rejected event ids |
| category | integer Filter by category id, get a complete list of categories from the categories resource |
| geolocation | string^([0-9\.]+),([0-9\.]+),([0-9\.]+),([0-9\.]+)$... Comma separated coordinates. Must be exactly 4 coordinates that describe a rectangle. Must respect following order {minLat,minLng,maxLat,maxLng}. |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| ignore_latest_booking_time | boolean Ignore latest booking time |
Responses
Response samples
- 200
- 400
- 401
[- {
- "dates": [
- {
- "id": "09f7409f216f0b6f3d9374732e23b1be",
- "event_id": "b589292a6b11eadff27b903f0f639065"
}
], - "events": [
- {
- "id": "e3fb3286155dc48fe47ea7fe1deabb46"
}
]
}
]List dates for an event
Retrieve a list of dates for a specific event. This endpoint returns all available dates for the specified event, including their availability information and booking URLs.
path Parameters
| id required | string Event identifier |
query Parameters
| order | string Enum: "date" "available_slots" "event_id" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| available | boolean Default: true Only return dates with at least one free slot. |
| start_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| end_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| accept_vendors | string Comma separated list of accepted vendor ids |
| exclude_vendors | string Comma separated list of rejected vendor ids |
| accept_events | string Comma separated list of accepted event ids |
| exclude_events | string Comma separated list of rejected event ids |
| category | integer Filter by category id, get a complete list of categories from the categories resource |
| geolocation | string^([0-9\.]+),([0-9\.]+),([0-9\.]+),([0-9\.]+)$... Comma separated coordinates. Must be exactly 4 coordinates that describe a rectangle. Must respect following order {minLat,minLng,maxLat,maxLng}. |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| ignore_latest_booking_time | boolean Ignore latest booking time |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "220e91cd528a624f37b23b877c8969fc",
- "active": 1,
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:00:00Z",
- "available_slots": 10,
- "total_slots": 10,
}
]Create date for an event
Create a new date for a specific event. This endpoint allows you to add a new available date with specified time and capacity.
path Parameters
| id required | string Event identifier |
Request Body schema: application/json
Date creation data
| event_id required | string Unique identifier of the event |
| date required | string <date-time> Starting time of the event |
| available_slots required | integer >= 0 Number of available seats/persons |
| total_slots required | integer >= 0 Total number of seats/persons |
Responses
Request samples
- Payload
{- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:34:00Z",
- "available_slots": 10,
- "total_slots": 10
}Response samples
- 201
- 400
- 401
- 404
{- "id": "220e91cd528a624f37b23b877c8969fc",
- "active": 1,
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:00:00Z",
- "available_slots": 10,
- "total_slots": 10,
}List dates
Get a list of dates in array form default sorted by date, since api console does not yet support schema relations view date schema for details
query Parameters
| order | string Enum: "date" "available_slots" "event_id" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| available | boolean Default: true Only return dates with at least one free slot. |
| start_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| end_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| accept_vendors | string Comma separated list of accepted vendor ids |
| exclude_vendors | string Comma separated list of rejected vendor ids |
| accept_events | string Comma separated list of accepted event ids |
| exclude_events | string Comma separated list of rejected event ids |
| category | integer Filter by category id, get a complete list of categories from the categories resource |
| geolocation | string^([0-9\.]+),([0-9\.]+),([0-9\.]+),([0-9\.]+)$... Comma separated coordinates. Must be exactly 4 coordinates that describe a rectangle. Must respect following order {minLat,minLng,maxLat,maxLng}. |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| ignore_latest_booking_time | boolean Ignore latest booking time |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "220e91cd528a624f37b23b877c8969fc",
- "active": 1,
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:00:00Z",
- "available_slots": 10,
- "total_slots": 10,
}
]Create a date
Create a new date. This endpoint allows you to add a new available date with specified time and capacity.
Request Body schema: application/json
Date creation data
| event_id required | string Unique identifier of the event |
| date required | string <date-time> Starting time of the event |
| available_slots required | integer >= 0 Number of available seats/persons |
| total_slots required | integer >= 0 Total number of seats/persons |
Responses
Request samples
- Payload
{- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:34:00Z",
- "available_slots": 10,
- "total_slots": 10
}Response samples
- 201
- 400
- 401
{- "id": "220e91cd528a624f37b23b877c8969fc",
- "active": 1,
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:00:00Z",
- "available_slots": 10,
- "total_slots": 10,
}Retrieve a date
Retrieve a specific date by its identifier. This endpoint returns detailed information about a single date including its availability and booking URL.
path Parameters
| id required | string Date identifier |
Responses
Response samples
- 200
- 400
- 401
- 404
{- "id": "220e91cd528a624f37b23b877c8969fc",
- "active": 1,
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:00:00Z",
- "available_slots": 10,
- "total_slots": 10,
}Update a date
Update an existing date item. Note: This endpoint requires the vendor to have activated the Extended Availability Management module.
path Parameters
| id required | string Date identifier |
Request Body schema: application/json
Date update data
| event_id | string Unique identifier of the event |
| date | string <date-time> Starting time of the event |
| total_slots | integer >= 0 Total number of seats/persons |
Responses
Request samples
- Payload
{- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:36:00Z",
- "total_slots": 9
}Response samples
- 200
- 400
- 401
- 404
{- "id": "220e91cd528a624f37b23b877c8969fc",
- "active": 1,
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:00:00Z",
- "available_slots": 10,
- "total_slots": 10,
}List merged dates
Get a list of merged_dates in array form default sorted by date, since api console does not yet support schema relations view merged_date schema for details
query Parameters
| order | string Enum: "date" "available_slots" "event_id" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| available | boolean Default: true Only return dates with at least one free slot. |
| start_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| end_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| accept_vendors | string Comma separated list of accepted vendor ids |
| exclude_vendors | string Comma separated list of rejected vendor ids |
| accept_events | string Comma separated list of accepted event ids |
| exclude_events | string Comma separated list of rejected event ids |
| category | integer Filter by category id, get a complete list of categories from the categories resource |
| geolocation | string^([0-9\.]+),([0-9\.]+),([0-9\.]+),([0-9\.]+)$... Comma separated coordinates. Must be exactly 4 coordinates that describe a rectangle. Must respect following order {minLat,minLng,maxLat,maxLng}. |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| ignore_latest_booking_time | boolean Ignore latest booking time |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "1c94b3f41977a481fb426705a80c4125",
- "active": 1,
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T14:00:00Z",
- "available_slots": 10,
- "total_slots": 10,
}
]Retrieve a merged date
Retrieve a specific merged date by its identifier. This endpoint returns detailed information about a single merged date including its availability and booking URL.
path Parameters
| id required | string Merged date identifier |
Responses
Response samples
- 200
- 400
- 401
- 404
{- "id": "1c94b3f41977a481fb426705a80c4125",
- "active": 1,
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T14:00:00Z",
- "available_slots": 10,
- "total_slots": 10,
}Create multiple dates
Create multiple dates in a single request. This endpoint allows you to create multiple dates for events in one batch operation.
Request Body schema: application/json
Array of date creation objects
| event_id required | string Unique identifier of the event |
| date required | string <date-time> Starting time of the event |
| available_slots required | integer >= 0 Number of available seats/persons |
| total_slots required | integer >= 0 Total number of seats/persons |
Responses
Request samples
- Payload
[- {
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:34:00Z",
- "available_slots": 10,
- "total_slots": 10
}
]Response samples
- 201
- 400
- 401
{- "status": "SUCCESS",
- "processed_items": 2
}Update multiple dates
Update multiple dates in a single request. This endpoint allows you to update multiple dates for events in one batch operation. Note: This endpoint requires the vendor to have activated the Extended Availability Management module.
Request Body schema: application/json
Array of date update objects
| date_id required | string Unique identifier of the date to update |
| event_id | string Unique identifier of the event |
| date | string <date-time> Starting time of the event |
| total_slots | integer Total number of seats/persons |
Responses
Request samples
- Payload
[- {
- "date_id": "0d12b9066aee0d320e9ef1353726b146",
- "event_id": "b589292a6b11eadff27b903f0f639065",
- "date": "2025-08-06T11:36:00Z",
- "total_slots": 9
}
]Response samples
- 200
- 400
- 401
{- "status": "SUCCESS",
- "processed_items": 2
}List events and dates
Retrieve a list of events and their associated dates across all vendors. This endpoint returns a simplified view with basic identifiers for both events and dates. Use filtering parameters to narrow down results by date ranges, availability, specific vendors, or events.
query Parameters
| order | string Enum: "date" "available_slots" "event_id" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| available | boolean Default: true Only return dates with at least one free slot. |
| start_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| end_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return dates earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| accept_vendors | string Comma separated list of accepted vendor ids |
| exclude_vendors | string Comma separated list of rejected vendor ids |
| accept_events | string Comma separated list of accepted event ids |
| exclude_events | string Comma separated list of rejected event ids |
| category | integer Filter by category id, get a complete list of categories from the categories resource |
| geolocation | string^([0-9\.]+),([0-9\.]+),([0-9\.]+),([0-9\.]+)$... Comma separated coordinates. Must be exactly 4 coordinates that describe a rectangle. Must respect following order {minLat,minLng,maxLat,maxLng}. |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
| ignore_latest_booking_time | boolean Ignore latest booking time |
Responses
Response samples
- 200
- 400
- 401
[- {
- "dates": [
- {
- "id": "09f7409f216f0b6f3d9374732e23b1be",
- "event_id": "b589292a6b11eadff27b903f0f639065"
}
], - "events": [
- {
- "id": "e3fb3286155dc48fe47ea7fe1deabb46"
}
]
}
]Additional inventory items offered by vendors. For instance audio guides or merchandise. Ordered products are associated with an order as a whole, not with a particular ticket.
List products
Get a list of products in form of an array. Products that are not set as "Offer product at checkout" are not returned
query Parameters
| order | string Enum: "name" "price" Example: order=-name,price Use -/+ in front of the attribute to specify the soriting direction (descending / ascending). If no modifier is provided, default sorting direction is ascending. Multiple comma separated values may be provided. Example: |
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| available | integer Default: 0 Enum: 0 1 Example: available=1 Set 1 to get products with at least one in stock or 0 to get all products, even out of stock. By default you receive all. |
| requires_shipping | integer Default: 0 Enum: 0 1 Example: requires_shipping=1 Set 1 to get products that requires shipping address or 0 for all products. By default you receive all. |
| accept_vendors | string Example: accept_vendors=52a33ab06f459cfca2a9949ea97d1e73,52a33ab06f459cfca2a9949ea97d1e74 Comma separated list of vendor identifiers to return their products. If not provided, all vendors are accepted. |
| exclude_vendors | string Example: exclude_vendors=52a33ab06f459cfca2a9949ea97d1e73,52a33ab06f459cfca2a9949ea97d1e74 Comma separated list of vendor identifiers to exclude their products. |
| min_price | number Example: min_price=10 Minimum price of products to return. |
| max_price | number Example: max_price=100 Maximum price of products to return. |
| with_private_products | boolean Default: false Example: with_private_products=true Whether to include also the private products. Private products are not set as "offered at checkout" and are sold through the admin app. |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "04b67018b311d9de2784e2a359218720",
- "vendor_id": "52a33ab06f459cfca2a9949ea97d1e73",
- "name": "T-shirt",
- "description": "T-shirt branded with our famous logo.",
- "total": 100,
- "available": 50,
- "price": 19.99,
- "currency": "EUR",
- "shipping_address": 0,
- "dependencies": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}, - {
- "id": "77bb10be5a6eb65a79634e463875d9f2",
- "prices": [
- {
- "id": 1743
}
]
}
], - "vouchers": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}
]
}
]
}
]
}
]Create new product
Create a new "product" item. Note: This endpoint is only available when authenticated as a vendor API.
Request Body schema: application/json
| vendor_id required | string Identifier of a vendor |
| name required | string Product name |
| description required | string Product description |
| total required | integer Total product quantity in stock. Empty string returned if the stock is unlimited. |
| available required | integer Product quantity available for purchase. |
| price required | number Product price value |
| currency required | string Product price currency code (ISO 4217) |
| shipping_address required | integer Whether the product requires collecting a shipping address. 0 - no shipping required, 1 - shipping required. |
required | Array of objects Which events this product is offered with when booking or selling a voucher. If the product is always offered, this array is empty. |
Responses
Request samples
- Payload
{- "vendor_id": "52a33ab06f459cfca2a9949ea97d1e73",
- "name": "T-shirt",
- "description": "T-shirt branded with our famous logo.",
- "total": 100,
- "available": 50,
- "price": 19.99,
- "currency": "EUR",
- "shipping_address": 0,
- "dependencies": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}, - {
- "id": "77bb10be5a6eb65a79634e463875d9f2",
- "prices": [
- {
- "id": 1743
}
]
}
], - "vouchers": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}
]
}
]
}
]
}Response samples
- 201
- 400
- 401
{- "id": "04b67018b311d9de2784e2a359218720",
- "vendor_id": "52a33ab06f459cfca2a9949ea97d1e73",
- "name": "T-shirt",
- "description": "T-shirt branded with our famous logo.",
- "total": 100,
- "available": 50,
- "price": 19.99,
- "currency": "EUR",
- "shipping_address": 0,
- "dependencies": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}, - {
- "id": "77bb10be5a6eb65a79634e463875d9f2",
- "prices": [
- {
- "id": 1743
}
]
}
], - "vouchers": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}
]
}
]
}
]
}Response samples
- 200
- 400
- 401
- 404
{- "id": "04b67018b311d9de2784e2a359218720",
- "vendor_id": "52a33ab06f459cfca2a9949ea97d1e73",
- "name": "T-shirt",
- "description": "T-shirt branded with our famous logo.",
- "total": 100,
- "available": 50,
- "price": 19.99,
- "currency": "EUR",
- "shipping_address": 0,
- "dependencies": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}, - {
- "id": "77bb10be5a6eb65a79634e463875d9f2",
- "prices": [
- {
- "id": 1743
}
]
}
], - "vouchers": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}
]
}
]
}
]
}Update a product
Update an existing "product" item. Note: This endpoint is only available when authenticated as a vendor API.
path Parameters
| id required | string |
Request Body schema: application/json
| vendor_id | string Identifier of a vendor |
| name | string Product name |
| description | string Product description |
| total | integer Total product quantity in stock. |
| available | integer Product quantity available for purchase. |
| price required | number Product price value |
| currency | string Product price currency code (ISO 4217) |
| shipping_address | integer Whether the product requires collecting a shipping address. 0 - no shipping required, 1 - shipping required. |
Array of objects Which events this product is offered with when booking or selling a voucher. If the product is always offered, this array is empty. |
Responses
Request samples
- Payload
{- "vendor_id": "52a33ab06f459cfca2a9949ea97d1e73",
- "name": "T-shirt",
- "description": "T-shirt branded with our famous logo.",
- "total": 100,
- "available": 50,
- "price": 19.99,
- "currency": "EUR",
- "shipping_address": 0,
- "dependencies": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}, - {
- "id": "77bb10be5a6eb65a79634e463875d9f2",
- "prices": [
- {
- "id": 1743
}
]
}
], - "vouchers": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}
]
}
]
}
]
}Response samples
- 200
- 400
- 401
{- "id": "04b67018b311d9de2784e2a359218720",
- "vendor_id": "52a33ab06f459cfca2a9949ea97d1e73",
- "name": "T-shirt",
- "description": "T-shirt branded with our famous logo.",
- "total": 100,
- "available": 50,
- "price": 19.99,
- "currency": "EUR",
- "shipping_address": 0,
- "dependencies": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}, - {
- "id": "77bb10be5a6eb65a79634e463875d9f2",
- "prices": [
- {
- "id": 1743
}
]
}
], - "vouchers": [
- {
- "events": [
- {
- "id": "b4c9dd45265fca13aed91706f5abbb6d"
}
]
}
]
}
]
}Order is a stated intention of end customer to engage in a commercial transaction for specific products or services offered by a vendor. One order can contain multiple items of different types, eg. tickets, products, vouchers.
List orders of a vendor
Get a list of orders in array form since api console does not yet support schema relations view order schema for details
path Parameters
| id required | string |
query Parameters
| order | string Enum: "name" "date" "vendor_id" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| match | string Searches the string within therse proterties:
|
| start_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Returns orders placed later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| end_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Returns orders placed earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| start_event_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Returns orders with at least one ticket refering to a date later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| end_event_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Returns orders with at least one ticket refering to a date earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| status | string Default: "ACCEPTED" Enum: "ACCEPTED" "CANCELED" "PENDING" "DECLINED" "OPEN" "ALL" Returns orders of specified status |
| accept_external_reference | string Comma separated list of accepted external reference codes Can be used to load by external reference |
| accept_code | string Comma separated list of accepted order codes can be used to load by code |
| accept_dates | string Comma separated list of accepted date ids |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "6d2add0cf76d779953f3ffec48fe3406",
- "code": "VWR-3KD9A5",
- "external_reference": "EXT-REF-12345",
- "vendor_id": "8d20ce5d47ab2c9b7a3040157a4e6e9c",
- "date": "2025-08-05T07:31:02Z",
- "payment_date": "2025-08-05T07:31:42Z",
- "expire_date": "2025-08-06T07:31:42Z",
- "status": "ACCEPTED",
- "lang": "en",
- "currency": "EUR",
- "email": "customer@example.com",
- "name": "John Doe",
- "company": "Acme Corporation",
- "vat_number": "DE123456789",
- "phone": "+49 30 12345678",
- "street": "Main Street",
- "streetnr": "42",
- "zip": "10115",
- "city": "Berlin",
- "country": "DE",
- "internal_notes": "Customer requested special arrangements",
- "comment": "Please deliver to reception desk",
- "additional_information": [
- {
- "id": "d548d35b08e39da5f8c19ffaf497ce59",
- "title": "Age of Participant?",
- "value": "16"
}
], - "booking_channel": [
- {
- "name": "Reseller Name",
- "id": "C12asdXas13"
}
], - "cancellation_date": "2025-08-10T14:30:00Z",
- "total_invoice": "139.80",
- "additional_discount": "0.00",
- "redeemed_coupons": [
- {
- "id": "",
- "title": "string",
- "redeemed_value": "string",
- "usage_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC"
}
], - "redeemed_vouchers": {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "redeemed_value": "9.98",
- "usage_date": "2025-08-05T13:21:23Z",
- "creation_date": "2025-08-05T07:31:02Z",
- "purchasing_order_id": "6d2add0cf76d779953f3ffec48fe3406"
}, - "shipping_country": "DE",
- "shipping_city": "Berlin",
- "shipping_zip": "10115",
- "shipping_street": "Main Street",
- "shipping_streetnr": "42",
- "shipping_name": "John Doe",
- "sale_params": "campaign=summer2023&source=website",
- "affiliate_id": "AFF123456",
- "email_newsletter_opt_in": "1",
- "tickets": [
- {
- "id": "a1b2c3d4e5f6g7h8i9j0",
- "event_date_id": "b1c2d3e4f5g6h7i8j9k0",
- "date_id": "c1d2e3f4g5h6i7j8k9l0",
- "event_id": "e1f2g3h4i5j6k7l8m9n0",
- "code": "C6YH4Q",
- "status": "ACCEPTED",
- "comment": "Special seating requested",
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "vat": 0,
- "participants": [
- {
- "id": "p1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "status": "ACCEPTED",
- "name": "Jane Doe",
- "email": "jane.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": "e1f2g3h4i5j6k7l8m9n0",
- "price_value": 50,
- "price_title": "Adult",
- "vat": 0,
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "code": "PCG-JE53DT-BQ5",
- "checked_in": "2025-08-05T14:00:00Z",
- "entry_units": [
- {
- "type": "ADULT"
}
], - "redeemed_flexTicket": {
- "id": "flex-123456",
- "redeemed_value": 10,
- "creation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "purchasing_order_id": "8270e627a721c271205f103985f14d97"
}
}
]
}
], - "voucherOrders": {
- "id": "cd0f8845f4f3b18c3c13e9e0865e49cc",
- "status": "",
- "vat": "0.00",
- "voucher": [
- {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "code": "372FX-UNSH2-S3WRX",
- "value": "19.90",
- "currency": "EUR"
}
]
}, - "products": [
- {
- "product_id": "b465cdbcdf5c90c51ec6023bfa4f8620",
- "status": "ACCEPTED",
- "title": "T-shirt",
- "price": "100.00",
- "amount": 1,
- "currency": "EUR",
- "vat": "19.00"
}
], - "flexTickets": [
- {
- "id": "43a17824f48e528f19a0aafd65d42f7b",
- "code": "JV949-N8XSP-33BME",
- "status": "ACCEPTED",
- "title": "flex offer",
- "redemption_total": 10,
- "redemption_available": 10,
- "unlimited_redemptions": 0,
- "price": "150.00",
- "price_title": "Adult",
- "currency": "EUR",
- "vat": "0.00",
- "flexOffer": [
- {
- "id": "eba1b1ee6c128832ee7f3a7b1e122348",
- "price_category_id": 475,
- "event_id": "8716f0b02e9889757064c64b7ce08552"
}
]
}
]
}
]Create order of a vendor
Create a new "order" item
path Parameters
| id required | string |
Request Body schema: application/json
| id | string Unique identifier |
| code | string Unique code, communicated to the end user |
| external_reference | string Third party systems that generated this order my write their own identifier here |
| vendor_id | string Unique identifier of the vendor |
| date required | string <date-time> Date when the order was generated, may not be changed |
| payment_date | string <date-time> If filled order is marked as payed |
| expire_date | string <date-time> If set the Order will automatically cancel at the given time, minimum value is current date time, maximum value is the first service date, if available |
| status required | string Enum: "ACCEPTED" "CANCELED" "PENDING" "OPEN" "RESERVED" Status of the order |
| lang required | string = 2 characters Language code ISO_639-1 |
| currency required | string = 3 characters Price currency |
| email required | string <email> Billing email of the end customer |
| name required | string >= 2 characters Billing name of the end customer |
| company | string Billing company Name of the end customer |
| vat_number | string VAT identification number |
| phone | string Billing phone of the end customer |
| street | string Billing street name of the end customer's address |
| streetnr | string Billing house number of the end customer's address |
| zip | string Billing zip code of the end customer's address |
| city | string Billing city of the end customer |
| country | string ISO 3166-1 alpha-2 country code |
| internal_notes | string Internal comments |
| comment | string Order comments |
Array of objects Additional order information from customized input | |
Array of objects Reseller or other type of API client that the order was created by. This is available only for particular API clients. | |
| cancellation_date | string <date-time> Date at which the order was cancelled |
| total_invoice | number Total value of this order for invoice purpose |
| additional_discount | number Additional discount value |
Array of objects Applied discount coupons | |
Array of objects Vouchers used to pay for this order | |
| shipping_country | string ISO 3166-1 alpha-2 country code |
| shipping_city | string Shipping city of the end customer |
| shipping_zip | string Shipping zip of the end customer's address |
| shipping_street | string Shipping street of the end customer's address |
| shipping_streetnr | string Shipping house number of the end customer's address |
| shipping_name | string Shipping full name of the end customer |
| sale_params | string Additional sales information |
| external_order_url | string Additional order details URL from an external system |
| affiliate_id | string Affiliate link ID if the order was created through an affiliate link |
| email_newsletter_opt_in | string Consent to receive e-mail newsletter given with this order. Possible values: '1' or empty. |
Array of objects | |
Array of objects | |
Array of objects | |
Array of objects |
Responses
Request samples
- Payload
{- "id": "6d2add0cf76d779953f3ffec48fe3406",
- "code": "VWR-3KD9A5",
- "external_reference": "EXT-REF-12345",
- "vendor_id": "8d20ce5d47ab2c9b7a3040157a4e6e9c",
- "date": "2025-08-05T07:31:02Z",
- "payment_date": "2025-08-05T07:31:42Z",
- "expire_date": "2025-08-06T07:31:42Z",
- "status": "ACCEPTED",
- "lang": "en",
- "currency": "EUR",
- "email": "customer@example.com",
- "name": "John Doe",
- "company": "Acme Corporation",
- "vat_number": "DE123456789",
- "phone": "+49 30 12345678",
- "street": "Main Street",
- "streetnr": "42",
- "zip": "10115",
- "city": "Berlin",
- "country": "DE",
- "internal_notes": "Customer requested special arrangements",
- "comment": "Please deliver to reception desk",
- "additional_information": [
- {
- "id": "d548d35b08e39da5f8c19ffaf497ce59",
- "title": "Age of Participant?",
- "value": "16"
}
], - "booking_channel": [
- {
- "name": "Reseller Name",
- "id": "C12asdXas13"
}
], - "cancellation_date": "2025-08-10T14:30:00Z",
- "total_invoice": "139.80",
- "additional_discount": "0.00",
- "redeemed_coupons": [
- {
- "id": "",
- "title": "string",
- "redeemed_value": "string",
- "usage_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC"
}
], - "redeemed_vouchers": {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "redeemed_value": "9.98",
- "usage_date": "2025-08-05T13:21:23Z",
- "creation_date": "2025-08-05T07:31:02Z",
- "purchasing_order_id": "6d2add0cf76d779953f3ffec48fe3406"
}, - "shipping_country": "DE",
- "shipping_city": "Berlin",
- "shipping_zip": "10115",
- "shipping_street": "Main Street",
- "shipping_streetnr": "42",
- "shipping_name": "John Doe",
- "sale_params": "campaign=summer2023&source=website",
- "affiliate_id": "AFF123456",
- "email_newsletter_opt_in": "1",
- "tickets": [
- {
- "id": "a1b2c3d4e5f6g7h8i9j0",
- "event_date_id": "b1c2d3e4f5g6h7i8j9k0",
- "date_id": "c1d2e3f4g5h6i7j8k9l0",
- "event_id": "e1f2g3h4i5j6k7l8m9n0",
- "code": "C6YH4Q",
- "status": "ACCEPTED",
- "comment": "Special seating requested",
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "vat": 0,
- "participants": [
- {
- "id": "p1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "status": "ACCEPTED",
- "name": "Jane Doe",
- "email": "jane.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": "e1f2g3h4i5j6k7l8m9n0",
- "price_value": 50,
- "price_title": "Adult",
- "vat": 0,
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "code": "PCG-JE53DT-BQ5",
- "checked_in": "2025-08-05T14:00:00Z",
- "entry_units": [
- {
- "type": "ADULT"
}
], - "redeemed_flexTicket": {
- "id": "flex-123456",
- "redeemed_value": 10,
- "creation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "purchasing_order_id": "8270e627a721c271205f103985f14d97"
}
}
]
}
], - "voucherOrders": {
- "id": "cd0f8845f4f3b18c3c13e9e0865e49cc",
- "status": "",
- "vat": "0.00",
- "voucher": [
- {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "code": "372FX-UNSH2-S3WRX",
- "value": "19.90",
- "currency": "EUR"
}
]
}, - "products": [
- {
- "product_id": "b465cdbcdf5c90c51ec6023bfa4f8620",
- "status": "ACCEPTED",
- "title": "T-shirt",
- "price": "100.00",
- "amount": 1,
- "currency": "EUR",
- "vat": "19.00"
}
], - "flexTickets": [
- {
- "id": "43a17824f48e528f19a0aafd65d42f7b",
- "code": "JV949-N8XSP-33BME",
- "status": "ACCEPTED",
- "title": "flex offer",
- "redemption_total": 10,
- "redemption_available": 10,
- "unlimited_redemptions": 0,
- "price": "150.00",
- "price_title": "Adult",
- "currency": "EUR",
- "vat": "0.00",
- "flexOffer": [
- {
- "id": "eba1b1ee6c128832ee7f3a7b1e122348",
- "price_category_id": 475,
- "event_id": "8716f0b02e9889757064c64b7ce08552"
}
]
}
]
}Response samples
- 201
- 400
- 401
{- "id": "6d2add0cf76d779953f3ffec48fe3406",
- "code": "VWR-3KD9A5",
- "external_reference": "EXT-REF-12345",
- "vendor_id": "8d20ce5d47ab2c9b7a3040157a4e6e9c",
- "date": "2025-08-05T07:31:02Z",
- "payment_date": "2025-08-05T07:31:42Z",
- "expire_date": "2025-08-06T07:31:42Z",
- "status": "ACCEPTED",
- "lang": "en",
- "currency": "EUR",
- "email": "customer@example.com",
- "name": "John Doe",
- "company": "Acme Corporation",
- "vat_number": "DE123456789",
- "phone": "+49 30 12345678",
- "street": "Main Street",
- "streetnr": "42",
- "zip": "10115",
- "city": "Berlin",
- "country": "DE",
- "internal_notes": "Customer requested special arrangements",
- "comment": "Please deliver to reception desk",
- "additional_information": [
- {
- "id": "d548d35b08e39da5f8c19ffaf497ce59",
- "title": "Age of Participant?",
- "value": "16"
}
], - "booking_channel": [
- {
- "name": "Reseller Name",
- "id": "C12asdXas13"
}
], - "cancellation_date": "2025-08-10T14:30:00Z",
- "total_invoice": "139.80",
- "additional_discount": "0.00",
- "redeemed_coupons": [
- {
- "id": "",
- "title": "string",
- "redeemed_value": "string",
- "usage_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC"
}
], - "redeemed_vouchers": {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "redeemed_value": "9.98",
- "usage_date": "2025-08-05T13:21:23Z",
- "creation_date": "2025-08-05T07:31:02Z",
- "purchasing_order_id": "6d2add0cf76d779953f3ffec48fe3406"
}, - "shipping_country": "DE",
- "shipping_city": "Berlin",
- "shipping_zip": "10115",
- "shipping_street": "Main Street",
- "shipping_streetnr": "42",
- "shipping_name": "John Doe",
- "sale_params": "campaign=summer2023&source=website",
- "affiliate_id": "AFF123456",
- "email_newsletter_opt_in": "1",
- "tickets": [
- {
- "id": "a1b2c3d4e5f6g7h8i9j0",
- "event_date_id": "b1c2d3e4f5g6h7i8j9k0",
- "date_id": "c1d2e3f4g5h6i7j8k9l0",
- "event_id": "e1f2g3h4i5j6k7l8m9n0",
- "code": "C6YH4Q",
- "status": "ACCEPTED",
- "comment": "Special seating requested",
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "vat": 0,
- "participants": [
- {
- "id": "p1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "status": "ACCEPTED",
- "name": "Jane Doe",
- "email": "jane.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": "e1f2g3h4i5j6k7l8m9n0",
- "price_value": 50,
- "price_title": "Adult",
- "vat": 0,
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "code": "PCG-JE53DT-BQ5",
- "checked_in": "2025-08-05T14:00:00Z",
- "entry_units": [
- {
- "type": "ADULT"
}
], - "redeemed_flexTicket": {
- "id": "flex-123456",
- "redeemed_value": 10,
- "creation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "purchasing_order_id": "8270e627a721c271205f103985f14d97"
}
}
]
}
], - "voucherOrders": {
- "id": "cd0f8845f4f3b18c3c13e9e0865e49cc",
- "status": "",
- "vat": "0.00",
- "voucher": [
- {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "code": "372FX-UNSH2-S3WRX",
- "value": "19.90",
- "currency": "EUR"
}
]
}, - "products": [
- {
- "product_id": "b465cdbcdf5c90c51ec6023bfa4f8620",
- "status": "ACCEPTED",
- "title": "T-shirt",
- "price": "100.00",
- "amount": 1,
- "currency": "EUR",
- "vat": "19.00"
}
], - "flexTickets": [
- {
- "id": "43a17824f48e528f19a0aafd65d42f7b",
- "code": "JV949-N8XSP-33BME",
- "status": "ACCEPTED",
- "title": "flex offer",
- "redemption_total": 10,
- "redemption_available": 10,
- "unlimited_redemptions": 0,
- "price": "150.00",
- "price_title": "Adult",
- "currency": "EUR",
- "vat": "0.00",
- "flexOffer": [
- {
- "id": "eba1b1ee6c128832ee7f3a7b1e122348",
- "price_category_id": 475,
- "event_id": "8716f0b02e9889757064c64b7ce08552"
}
]
}
]
}List orders
query Parameters
| order | string Enum: "name" "date" "vendor_id" Use -/+ in front of the attribute to specify the soriting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| match | string Searches the string within therse proterties:
|
| start_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Returns orders placed later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| end_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Returns orders placed earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| start_event_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Returns orders with at least one ticket refering to a date later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| end_event_date | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Returns orders with at least one ticket refering to a date earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| status | string Default: "ACCEPTED" Enum: "ACCEPTED" "CANCELED" "PENDING" "DECLINED" "OPEN" "ALL" Returns orders of specified status |
| accept_external_reference | string Comma separated list of accepted external reference codes Can be used to load by external reference |
| accept_code | string Comma separated list of accepted order codes can be used to load by code |
| accept_dates | string Comma separated list of accepted date ids |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Example: delta_since=2025-01-24T14:35:41Z Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC). |
Responses
Create an order
Create a new "order" item
Request Body schema: application/json
| id | string Unique identifier |
| code | string Unique code, communicated to the end user |
| external_reference | string Third party systems that generated this order my write their own identifier here |
| vendor_id | string Unique identifier of the vendor |
| date required | string <date-time> Date when the order was generated, may not be changed |
| payment_date | string <date-time> If filled order is marked as payed |
| expire_date | string <date-time> If set the Order will automatically cancel at the given time, minimum value is current date time, maximum value is the first service date, if available |
| status required | string Enum: "ACCEPTED" "CANCELED" "PENDING" "OPEN" "RESERVED" Status of the order |
| lang required | string = 2 characters Language code ISO_639-1 |
| currency required | string = 3 characters Price currency |
| email required | string <email> Billing email of the end customer |
| name required | string >= 2 characters Billing name of the end customer |
| company | string Billing company Name of the end customer |
| vat_number | string VAT identification number |
| phone | string Billing phone of the end customer |
| street | string Billing street name of the end customer's address |
| streetnr | string Billing house number of the end customer's address |
| zip | string Billing zip code of the end customer's address |
| city | string Billing city of the end customer |
| country | string ISO 3166-1 alpha-2 country code |
| internal_notes | string Internal comments |
| comment | string Order comments |
Array of objects Additional order information from customized input | |
Array of objects Reseller or other type of API client that the order was created by. This is available only for particular API clients. | |
| cancellation_date | string <date-time> Date at which the order was cancelled |
| total_invoice | number Total value of this order for invoice purpose |
| additional_discount | number Additional discount value |
Array of objects Applied discount coupons | |
Array of objects Vouchers used to pay for this order | |
| shipping_country | string ISO 3166-1 alpha-2 country code |
| shipping_city | string Shipping city of the end customer |
| shipping_zip | string Shipping zip of the end customer's address |
| shipping_street | string Shipping street of the end customer's address |
| shipping_streetnr | string Shipping house number of the end customer's address |
| shipping_name | string Shipping full name of the end customer |
| sale_params | string Additional sales information |
| external_order_url | string Additional order details URL from an external system |
| affiliate_id | string Affiliate link ID if the order was created through an affiliate link |
| email_newsletter_opt_in | string Consent to receive e-mail newsletter given with this order. Possible values: '1' or empty. |
Array of objects | |
Array of objects | |
Array of objects | |
Array of objects |
Responses
Request samples
- Payload
{- "id": "6d2add0cf76d779953f3ffec48fe3406",
- "code": "VWR-3KD9A5",
- "external_reference": "EXT-REF-12345",
- "vendor_id": "8d20ce5d47ab2c9b7a3040157a4e6e9c",
- "date": "2025-08-05T07:31:02Z",
- "payment_date": "2025-08-05T07:31:42Z",
- "expire_date": "2025-08-06T07:31:42Z",
- "status": "ACCEPTED",
- "lang": "en",
- "currency": "EUR",
- "email": "customer@example.com",
- "name": "John Doe",
- "company": "Acme Corporation",
- "vat_number": "DE123456789",
- "phone": "+49 30 12345678",
- "street": "Main Street",
- "streetnr": "42",
- "zip": "10115",
- "city": "Berlin",
- "country": "DE",
- "internal_notes": "Customer requested special arrangements",
- "comment": "Please deliver to reception desk",
- "additional_information": [
- {
- "id": "d548d35b08e39da5f8c19ffaf497ce59",
- "title": "Age of Participant?",
- "value": "16"
}
], - "booking_channel": [
- {
- "name": "Reseller Name",
- "id": "C12asdXas13"
}
], - "cancellation_date": "2025-08-10T14:30:00Z",
- "total_invoice": "139.80",
- "additional_discount": "0.00",
- "redeemed_coupons": [
- {
- "id": "",
- "title": "string",
- "redeemed_value": "string",
- "usage_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC"
}
], - "redeemed_vouchers": {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "redeemed_value": "9.98",
- "usage_date": "2025-08-05T13:21:23Z",
- "creation_date": "2025-08-05T07:31:02Z",
- "purchasing_order_id": "6d2add0cf76d779953f3ffec48fe3406"
}, - "shipping_country": "DE",
- "shipping_city": "Berlin",
- "shipping_zip": "10115",
- "shipping_street": "Main Street",
- "shipping_streetnr": "42",
- "shipping_name": "John Doe",
- "sale_params": "campaign=summer2023&source=website",
- "affiliate_id": "AFF123456",
- "email_newsletter_opt_in": "1",
- "tickets": [
- {
- "id": "a1b2c3d4e5f6g7h8i9j0",
- "event_date_id": "b1c2d3e4f5g6h7i8j9k0",
- "date_id": "c1d2e3f4g5h6i7j8k9l0",
- "event_id": "e1f2g3h4i5j6k7l8m9n0",
- "code": "C6YH4Q",
- "status": "ACCEPTED",
- "comment": "Special seating requested",
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "vat": 0,
- "participants": [
- {
- "id": "p1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "status": "ACCEPTED",
- "name": "Jane Doe",
- "email": "jane.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": "e1f2g3h4i5j6k7l8m9n0",
- "price_value": 50,
- "price_title": "Adult",
- "vat": 0,
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "code": "PCG-JE53DT-BQ5",
- "checked_in": "2025-08-05T14:00:00Z",
- "entry_units": [
- {
- "type": "ADULT"
}
], - "redeemed_flexTicket": {
- "id": "flex-123456",
- "redeemed_value": 10,
- "creation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "purchasing_order_id": "8270e627a721c271205f103985f14d97"
}
}
]
}
], - "voucherOrders": {
- "id": "cd0f8845f4f3b18c3c13e9e0865e49cc",
- "status": "",
- "vat": "0.00",
- "voucher": [
- {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "code": "372FX-UNSH2-S3WRX",
- "value": "19.90",
- "currency": "EUR"
}
]
}, - "products": [
- {
- "product_id": "b465cdbcdf5c90c51ec6023bfa4f8620",
- "status": "ACCEPTED",
- "title": "T-shirt",
- "price": "100.00",
- "amount": 1,
- "currency": "EUR",
- "vat": "19.00"
}
], - "flexTickets": [
- {
- "id": "43a17824f48e528f19a0aafd65d42f7b",
- "code": "JV949-N8XSP-33BME",
- "status": "ACCEPTED",
- "title": "flex offer",
- "redemption_total": 10,
- "redemption_available": 10,
- "unlimited_redemptions": 0,
- "price": "150.00",
- "price_title": "Adult",
- "currency": "EUR",
- "vat": "0.00",
- "flexOffer": [
- {
- "id": "eba1b1ee6c128832ee7f3a7b1e122348",
- "price_category_id": 475,
- "event_id": "8716f0b02e9889757064c64b7ce08552"
}
]
}
]
}Response samples
- 201
- 400
- 401
{- "id": "6d2add0cf76d779953f3ffec48fe3406",
- "code": "VWR-3KD9A5",
- "external_reference": "EXT-REF-12345",
- "vendor_id": "8d20ce5d47ab2c9b7a3040157a4e6e9c",
- "date": "2025-08-05T07:31:02Z",
- "payment_date": "2025-08-05T07:31:42Z",
- "expire_date": "2025-08-06T07:31:42Z",
- "status": "ACCEPTED",
- "lang": "en",
- "currency": "EUR",
- "email": "customer@example.com",
- "name": "John Doe",
- "company": "Acme Corporation",
- "vat_number": "DE123456789",
- "phone": "+49 30 12345678",
- "street": "Main Street",
- "streetnr": "42",
- "zip": "10115",
- "city": "Berlin",
- "country": "DE",
- "internal_notes": "Customer requested special arrangements",
- "comment": "Please deliver to reception desk",
- "additional_information": [
- {
- "id": "d548d35b08e39da5f8c19ffaf497ce59",
- "title": "Age of Participant?",
- "value": "16"
}
], - "booking_channel": [
- {
- "name": "Reseller Name",
- "id": "C12asdXas13"
}
], - "cancellation_date": "2025-08-10T14:30:00Z",
- "total_invoice": "139.80",
- "additional_discount": "0.00",
- "redeemed_coupons": [
- {
- "id": "",
- "title": "string",
- "redeemed_value": "string",
- "usage_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC"
}
], - "redeemed_vouchers": {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "redeemed_value": "9.98",
- "usage_date": "2025-08-05T13:21:23Z",
- "creation_date": "2025-08-05T07:31:02Z",
- "purchasing_order_id": "6d2add0cf76d779953f3ffec48fe3406"
}, - "shipping_country": "DE",
- "shipping_city": "Berlin",
- "shipping_zip": "10115",
- "shipping_street": "Main Street",
- "shipping_streetnr": "42",
- "shipping_name": "John Doe",
- "sale_params": "campaign=summer2023&source=website",
- "affiliate_id": "AFF123456",
- "email_newsletter_opt_in": "1",
- "tickets": [
- {
- "id": "a1b2c3d4e5f6g7h8i9j0",
- "event_date_id": "b1c2d3e4f5g6h7i8j9k0",
- "date_id": "c1d2e3f4g5h6i7j8k9l0",
- "event_id": "e1f2g3h4i5j6k7l8m9n0",
- "code": "C6YH4Q",
- "status": "ACCEPTED",
- "comment": "Special seating requested",
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "vat": 0,
- "participants": [
- {
- "id": "p1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "status": "ACCEPTED",
- "name": "Jane Doe",
- "email": "jane.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": "e1f2g3h4i5j6k7l8m9n0",
- "price_value": 50,
- "price_title": "Adult",
- "vat": 0,
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "code": "PCG-JE53DT-BQ5",
- "checked_in": "2025-08-05T14:00:00Z",
- "entry_units": [
- {
- "type": "ADULT"
}
], - "redeemed_flexTicket": {
- "id": "flex-123456",
- "redeemed_value": 10,
- "creation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "purchasing_order_id": "8270e627a721c271205f103985f14d97"
}
}
]
}
], - "voucherOrders": {
- "id": "cd0f8845f4f3b18c3c13e9e0865e49cc",
- "status": "",
- "vat": "0.00",
- "voucher": [
- {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "code": "372FX-UNSH2-S3WRX",
- "value": "19.90",
- "currency": "EUR"
}
]
}, - "products": [
- {
- "product_id": "b465cdbcdf5c90c51ec6023bfa4f8620",
- "status": "ACCEPTED",
- "title": "T-shirt",
- "price": "100.00",
- "amount": 1,
- "currency": "EUR",
- "vat": "19.00"
}
], - "flexTickets": [
- {
- "id": "43a17824f48e528f19a0aafd65d42f7b",
- "code": "JV949-N8XSP-33BME",
- "status": "ACCEPTED",
- "title": "flex offer",
- "redemption_total": 10,
- "redemption_available": 10,
- "unlimited_redemptions": 0,
- "price": "150.00",
- "price_title": "Adult",
- "currency": "EUR",
- "vat": "0.00",
- "flexOffer": [
- {
- "id": "eba1b1ee6c128832ee7f3a7b1e122348",
- "price_category_id": 475,
- "event_id": "8716f0b02e9889757064c64b7ce08552"
}
]
}
]
}Update an order
Update an existing "order" item
path Parameters
| id required | string |
Request Body schema: application/json
| external_reference | string Third party systems that generated this order my write their own identifier here |
| expire_date | string <date-time> If set the Order will automatically cancel at the given time, minimum value is current date time, maximum value is the first service date, if available. Required for order status 'RESERVED' |
| status | string Enum: "ACCEPTED" "CANCELED" "PENDING" "DECLINED" "OPEN" "RESERVED" Status of the order |
| lang | string = 2 characters Language code ISO_639-1 |
string <email> Billing email for end customer | |
| name | string >= 2 characters Billing name |
| company | string Billing company |
| vat_number | string VAT identification number |
| phone | string Billing phone |
| street | string Billing street name |
| streetnr | string Billing house number |
| zip | string Billing zip code |
| city | string Billing city |
| country | string ISO 3166-1 alpha-2 country code |
| internal_notes | string Internal comments |
| comment | string Order comments |
| cancellation_date | string <date-time> Date at which the order was cancelled |
| additional_discount | string Additional discount value |
| shipping_country | string ISO 3166-1 alpha-2 country code |
| shipping_city | string Shipping city |
| shipping_zip | string Shipping zip |
| shipping_street | string Shipping street |
| shipping_streetnr | string Shipping house number |
| shipping_name | string Shipping name |
| sale_params | string Additional sales informations |
| external_order_url | string Additional order details URL from an external system. |
Array of objects | |
Array of objects | |
Array of objects |
Responses
Request samples
- Payload
{- "external_reference": "EXT-127701",
- "expire_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "status": "ACCEPTED",
- "lang": "de",
- "email": "customer@example.com",
- "name": "John Doe",
- "company": "Acme Corporation",
- "vat_number": "DE123456789",
- "phone": "+49123456789",
- "street": "Main Street",
- "streetnr": "42",
- "zip": "10115",
- "city": "Berlin",
- "country": "DE",
- "internal_notes": "Customer called to confirm booking details",
- "comment": "Please deliver to reception desk",
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "additional_discount": "5.00",
- "shipping_country": "DE",
- "shipping_city": "Berlin",
- "shipping_zip": "10115",
- "shipping_street": "Main Street",
- "shipping_streetnr": "42",
- "shipping_name": "John Doe",
- "sale_params": "source=partner_website&campaign=summer_sale",
- "tickets": [
- {
- "id": "a1b2c3d4e5f6g7h8i9j0",
- "event_date_id": "b1c2d3e4f5g6h7i8j9k0",
- "date_id": "c1d2e3f4g5h6i7j8k9l0",
- "status": "ACCEPTED",
- "comment": "Special seating requested",
- "cancellation_date": "2025-08-01T14:00:00Z",
- "participants": [
- {
- "id": "d1e2f3g4h5i6j7k8l9m0",
- "status": "ACCEPTED",
- "name": "Jane Doe",
- "email": "jane.doe@example.com",
- "phone": "+49123456789",
- "comment": "Vegetarian meal requested",
- "price_id": "e1f2g3h4i5j6k7l8m9n0",
- "code": "TICKET-123456",
- "checked_in": "2025-08-05T14:00:00Z"
}
]
}
], - "voucherOrders": [
- {
- "id": "cd0f8845f4f3b18c3c13e9e0865e49cc",
- "status": "ACCEPTED",
- "voucher": {
- "value": "19.90",
- "currency": "EUR",
- "code": "372FX-UNSH2-S3WRX"
}
}
], - "products": [
- {
- "product_id": "b465cdbcdf5c90c51ec6023bfa4f8620",
- "status": "ACCEPTED",
- "title": "T-shirt",
- "price": "10.00",
- "amount": 1,
- "currency": "EUR"
}
]
}Response samples
- 200
- 400
- 401
{- "id": "6d2add0cf76d779953f3ffec48fe3406",
- "code": "VWR-3KD9A5",
- "external_reference": "EXT-REF-12345",
- "vendor_id": "8d20ce5d47ab2c9b7a3040157a4e6e9c",
- "date": "2025-08-05T07:31:02Z",
- "payment_date": "2025-08-05T07:31:42Z",
- "expire_date": "2025-08-06T07:31:42Z",
- "status": "ACCEPTED",
- "lang": "en",
- "currency": "EUR",
- "email": "customer@example.com",
- "name": "John Doe",
- "company": "Acme Corporation",
- "vat_number": "DE123456789",
- "phone": "+49 30 12345678",
- "street": "Main Street",
- "streetnr": "42",
- "zip": "10115",
- "city": "Berlin",
- "country": "DE",
- "internal_notes": "Customer requested special arrangements",
- "comment": "Please deliver to reception desk",
- "additional_information": [
- {
- "id": "d548d35b08e39da5f8c19ffaf497ce59",
- "title": "Age of Participant?",
- "value": "16"
}
], - "booking_channel": [
- {
- "name": "Reseller Name",
- "id": "C12asdXas13"
}
], - "cancellation_date": "2025-08-10T14:30:00Z",
- "total_invoice": "139.80",
- "additional_discount": "0.00",
- "redeemed_coupons": [
- {
- "id": "",
- "title": "string",
- "redeemed_value": "string",
- "usage_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC"
}
], - "redeemed_vouchers": {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "redeemed_value": "9.98",
- "usage_date": "2025-08-05T13:21:23Z",
- "creation_date": "2025-08-05T07:31:02Z",
- "purchasing_order_id": "6d2add0cf76d779953f3ffec48fe3406"
}, - "shipping_country": "DE",
- "shipping_city": "Berlin",
- "shipping_zip": "10115",
- "shipping_street": "Main Street",
- "shipping_streetnr": "42",
- "shipping_name": "John Doe",
- "sale_params": "campaign=summer2023&source=website",
- "affiliate_id": "AFF123456",
- "email_newsletter_opt_in": "1",
- "tickets": [
- {
- "id": "a1b2c3d4e5f6g7h8i9j0",
- "event_date_id": "b1c2d3e4f5g6h7i8j9k0",
- "date_id": "c1d2e3f4g5h6i7j8k9l0",
- "event_id": "e1f2g3h4i5j6k7l8m9n0",
- "code": "C6YH4Q",
- "status": "ACCEPTED",
- "comment": "Special seating requested",
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "vat": 0,
- "participants": [
- {
- "id": "p1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "status": "ACCEPTED",
- "name": "Jane Doe",
- "email": "jane.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": "e1f2g3h4i5j6k7l8m9n0",
- "price_value": 50,
- "price_title": "Adult",
- "vat": 0,
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "code": "PCG-JE53DT-BQ5",
- "checked_in": "2025-08-05T14:00:00Z",
- "entry_units": [
- {
- "type": "ADULT"
}
], - "redeemed_flexTicket": {
- "id": "flex-123456",
- "redeemed_value": 10,
- "creation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "purchasing_order_id": "8270e627a721c271205f103985f14d97"
}
}
]
}
], - "voucherOrders": {
- "id": "cd0f8845f4f3b18c3c13e9e0865e49cc",
- "status": "",
- "vat": "0.00",
- "voucher": [
- {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "code": "372FX-UNSH2-S3WRX",
- "value": "19.90",
- "currency": "EUR"
}
]
}, - "products": [
- {
- "product_id": "b465cdbcdf5c90c51ec6023bfa4f8620",
- "status": "ACCEPTED",
- "title": "T-shirt",
- "price": "100.00",
- "amount": 1,
- "currency": "EUR",
- "vat": "19.00"
}
], - "flexTickets": [
- {
- "id": "43a17824f48e528f19a0aafd65d42f7b",
- "code": "JV949-N8XSP-33BME",
- "status": "ACCEPTED",
- "title": "flex offer",
- "redemption_total": 10,
- "redemption_available": 10,
- "unlimited_redemptions": 0,
- "price": "150.00",
- "price_title": "Adult",
- "currency": "EUR",
- "vat": "0.00",
- "flexOffer": [
- {
- "id": "eba1b1ee6c128832ee7f3a7b1e122348",
- "price_category_id": 475,
- "event_id": "8716f0b02e9889757064c64b7ce08552"
}
]
}
]
}Response samples
- 200
- 400
- 401
- 404
{- "id": "6d2add0cf76d779953f3ffec48fe3406",
- "code": "VWR-3KD9A5",
- "external_reference": "EXT-REF-12345",
- "vendor_id": "8d20ce5d47ab2c9b7a3040157a4e6e9c",
- "date": "2025-08-05T07:31:02Z",
- "payment_date": "2025-08-05T07:31:42Z",
- "expire_date": "2025-08-06T07:31:42Z",
- "status": "ACCEPTED",
- "lang": "en",
- "currency": "EUR",
- "email": "customer@example.com",
- "name": "John Doe",
- "company": "Acme Corporation",
- "vat_number": "DE123456789",
- "phone": "+49 30 12345678",
- "street": "Main Street",
- "streetnr": "42",
- "zip": "10115",
- "city": "Berlin",
- "country": "DE",
- "internal_notes": "Customer requested special arrangements",
- "comment": "Please deliver to reception desk",
- "additional_information": [
- {
- "id": "d548d35b08e39da5f8c19ffaf497ce59",
- "title": "Age of Participant?",
- "value": "16"
}
], - "booking_channel": [
- {
- "name": "Reseller Name",
- "id": "C12asdXas13"
}
], - "cancellation_date": "2025-08-10T14:30:00Z",
- "total_invoice": "139.80",
- "additional_discount": "0.00",
- "redeemed_coupons": [
- {
- "id": "",
- "title": "string",
- "redeemed_value": "string",
- "usage_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC"
}
], - "redeemed_vouchers": {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "redeemed_value": "9.98",
- "usage_date": "2025-08-05T13:21:23Z",
- "creation_date": "2025-08-05T07:31:02Z",
- "purchasing_order_id": "6d2add0cf76d779953f3ffec48fe3406"
}, - "shipping_country": "DE",
- "shipping_city": "Berlin",
- "shipping_zip": "10115",
- "shipping_street": "Main Street",
- "shipping_streetnr": "42",
- "shipping_name": "John Doe",
- "sale_params": "campaign=summer2023&source=website",
- "affiliate_id": "AFF123456",
- "email_newsletter_opt_in": "1",
- "tickets": [
- {
- "id": "a1b2c3d4e5f6g7h8i9j0",
- "event_date_id": "b1c2d3e4f5g6h7i8j9k0",
- "date_id": "c1d2e3f4g5h6i7j8k9l0",
- "event_id": "e1f2g3h4i5j6k7l8m9n0",
- "code": "C6YH4Q",
- "status": "ACCEPTED",
- "comment": "Special seating requested",
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "vat": 0,
- "participants": [
- {
- "id": "p1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "status": "ACCEPTED",
- "name": "Jane Doe",
- "email": "jane.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": "e1f2g3h4i5j6k7l8m9n0",
- "price_value": 50,
- "price_title": "Adult",
- "vat": 0,
- "cancellation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "code": "PCG-JE53DT-BQ5",
- "checked_in": "2025-08-05T14:00:00Z",
- "entry_units": [
- {
- "type": "ADULT"
}
], - "redeemed_flexTicket": {
- "id": "flex-123456",
- "redeemed_value": 10,
- "creation_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "purchasing_order_id": "8270e627a721c271205f103985f14d97"
}
}
]
}
], - "voucherOrders": {
- "id": "cd0f8845f4f3b18c3c13e9e0865e49cc",
- "status": "",
- "vat": "0.00",
- "voucher": [
- {
- "id": "abcb45aba049ff4e77a0382c5c931b75",
- "code": "372FX-UNSH2-S3WRX",
- "value": "19.90",
- "currency": "EUR"
}
]
}, - "products": [
- {
- "product_id": "b465cdbcdf5c90c51ec6023bfa4f8620",
- "status": "ACCEPTED",
- "title": "T-shirt",
- "price": "100.00",
- "amount": 1,
- "currency": "EUR",
- "vat": "19.00"
}
], - "flexTickets": [
- {
- "id": "43a17824f48e528f19a0aafd65d42f7b",
- "code": "JV949-N8XSP-33BME",
- "status": "ACCEPTED",
- "title": "flex offer",
- "redemption_total": 10,
- "redemption_available": 10,
- "unlimited_redemptions": 0,
- "price": "150.00",
- "price_title": "Adult",
- "currency": "EUR",
- "vat": "0.00",
- "flexOffer": [
- {
- "id": "eba1b1ee6c128832ee7f3a7b1e122348",
- "price_category_id": 475,
- "event_id": "8716f0b02e9889757064c64b7ce08552"
}
]
}
]
}Prices define the cost structure for events, with different pricing categories for various participant types (adults, children, seniors, etc.). Each price includes the monetary value, currency, VAT information, and entry unit types that determine which participants can use this price. Prices can be public (visible to customers) or private (internal use only).
List prices of a merged date
Retrieve a list of all prices for a specific merged date (event date). This endpoint returns both public and private prices (if requested) with their associated categories, values, and entry unit types. Prices are returned in the vendor's currency and can be filtered by visibility.
path Parameters
| id required | string Merged date identifier |
query Parameters
| with_private_prices | boolean Default: false Return private and public prices. |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": 478,
- "title": "Adult price",
- "value": "100.00",
- "category": "Adult",
- "currency": "EUR",
- "public": 1,
- "vat": "0.00",
- "entry_units": [
- {
- "type": "ADULT"
}
]
}
]Payment represents a particular payment transaction related to an order. Payments can be either incoming payments (positive values) or refunds (negative values). They support various payment methods including third-party payments, cash, mobile app payments, and voucher redemptions. Each payment can be linked to specific orders and vouchers through the related_items field.
List payments of an order
Retrieve a list of all payment transactions for a specific order. This endpoint returns both incoming payments and refunds associated with the order. Each payment includes details about the payment method, amount, date, and any related vouchers or orders.
path Parameters
| id required | string Order identifier |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "7318b273add6571b6ea8e9b69cdbc7d8",
- "value": 90,
- "type": "payment",
- "code": "ThirdParty",
- "payment_method": "ThirdParty",
- "name": "Marketing Partner",
- "payment_date": "2024-08-06T07:36:35Z",
- "related_items": {
- "orders": [
- {
- "id": "65098279518ee11cd3549c3afa68850c",
- "code": "PXG-VJ2T6U"
}
], - "vouchers": [
- {
- "id": "de8dd18ca8f38574488d21f02bcc11c8"
}
]
}
}
]Create payment for an order
Create a new payment transaction for an order. This endpoint allows you to record incoming payments or refunds. Note that related_items (orders and vouchers) cannot be posted when creating payments - they are automatically managed by the system.
path Parameters
| id required | string Order identifier |
Request Body schema: application/json
| payment_method required | string Enum: "ThirdParty" "Cash" "MobileApp" The method of payment used for this transaction |
| value required | number Payment amount in the vendor's currency. Positive values for payments, negative values for refunds |
| type required | string Enum: "payment" "refund" Type of payment transaction |
| payment_date | string <date-time> Date and time when the payment was processed (UTC). If not provided, current time will be used. |
Responses
Request samples
- Payload
{- "payment_method": "ThirdParty",
- "value": 1,
- "type": "payment",
- "payment_date": "2024-08-06T07:36:35Z"
}Response samples
- 200
- 400
- 401
{- "code": "ThirdParty",
- "name": "Marketing Partner",
- "value": 1,
- "type": "payment",
- "payment_date": "2024-08-06T07:36:35Z"
}Also known as a booking. Ticket always relates to a single event and a single date. Ticket object can contain multiple participants and their individual entry tickets.
List tickets of an order
Retrieve a list of all tickets associated with a specific order. This endpoint returns all tickets that belong to the order, including their status, participant information, and booking details. Tickets represent individual bookings for events and can contain multiple participants.
path Parameters
| id required | string Order identifier |
query Parameters
| accept_code required | string Comma separated list of accepted ticket codes can be used to load by code |
| exclude_code required | string Comma separated list of excluded ticket codes can be used to load by code |
Responses
Response samples
- 200
- 400
- 401
- 404
[- {
- "id": "t1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "event_date_id": "d1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "date_id": "d1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "event_id": "e1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "code": "C6YH4Q",
- "status": "ACCEPTED",
- "comment": "Customer requested vegetarian meal",
- "cancellation_date": "2024-08-06T07:36:35Z",
- "vat": "0.00",
- "order": "8270e627a721c271205f103985f14d97",
- "participants": [
- {
- "id": "p1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "status": "ACCEPTED",
- "name": "John Doe",
- "email": "john.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": 123,
- "price_value": "50.00",
- "price_title": "Adult",
- "vat": "0.00",
- "cancellation_date": "2024-08-06T07:36:35Z",
- "code": "PCG-JE53DT-BQ5",
- "checked_in": "",
- "entry_units": [
- {
- "type": "Adult"
}
], - "ticket_id": "47fcc1dad975e544384a3894ee3aea13",
- "order": "8270e627a721c271205f103985f14d97",
- "redeemed_flexTicket": [
- {
- "id": "flex_123456",
- "redeemed_value": "25.50",
- "creation_date": "2024-01-15T10:30:00Z",
- "purchasing_order_id": "o1aa3a67eb1f3aa2a8f712ba8bb6649d"
}
]
}
]
}
]Retrieve ticket of an order
Retrieve detailed information about a specific ticket within an order. This endpoint returns complete ticket details including participant information, booking status, and any associated metadata.
path Parameters
| id required | string Order identifier |
| ticket_id required | string Ticket identifier |
Responses
Response samples
- 200
- 400
- 401
- 404
{- "id": "t1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "event_date_id": "d1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "date_id": "d1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "event_id": "e1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "code": "C6YH4Q",
- "status": "ACCEPTED",
- "comment": "Customer requested vegetarian meal",
- "cancellation_date": "2024-08-06T07:36:35Z",
- "vat": "0.00",
- "order": "8270e627a721c271205f103985f14d97",
- "participants": [
- {
- "id": "p1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "status": "ACCEPTED",
- "name": "John Doe",
- "email": "john.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": 123,
- "price_value": "50.00",
- "price_title": "Adult",
- "vat": "0.00",
- "cancellation_date": "2024-08-06T07:36:35Z",
- "code": "PCG-JE53DT-BQ5",
- "checked_in": "",
- "entry_units": [
- {
- "type": "Adult"
}
], - "ticket_id": "47fcc1dad975e544384a3894ee3aea13",
- "order": "8270e627a721c271205f103985f14d97",
- "redeemed_flexTicket": [
- {
- "id": "flex_123456",
- "redeemed_value": "25.50",
- "creation_date": "2024-01-15T10:30:00Z",
- "purchasing_order_id": "o1aa3a67eb1f3aa2a8f712ba8bb6649d"
}
]
}
]
}List participants of a ticket
Retrieve a list of all participants associated with a specific ticket. This endpoint returns individual participant details including their personal information, booking status, and any special requirements or notes.
path Parameters
| id required | string Order identifier |
| ticket_id required | string Ticket identifier |
query Parameters
| accept_code required | string Comma separated list of accepted ticket codes can be used to load by code |
| exclude_code required | string Comma separated list of excluded ticket codes can be used to load by code |
Responses
Response samples
- 200
- 400
- 401
- 404
[- {
- "id": "a4f8dce00bef7c934b995c743f5b983a",
- "status": "ACCEPTED",
- "name": "John Doe",
- "email": "john.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": 559,
- "price_value": "35.00",
- "price_title": "kids",
- "vat": "0.00",
- "cancellation_date": "2024-08-06T07:36:35Z",
- "code": "67T-8X5YKK-FGG",
- "checked_in": "",
- "entry_units": [
- {
- "type": "ADULT"
}
], - "ticket_id": "08f99ce88195d7b582e5921548c2b579",
- "order": "0f20cad840e30ebbe5b261a8c7ea8488",
- "redeemed_flexTicket": [
- {
- "id": "dd7588d4d22a6f9a860596ad38b09eab",
- "redeemed_value": "10.00",
- "creation_date": "2024-01-24T14:15:34Z",
- "purchasing_order_id": "80cc2fcf4020d3c3258332eb04a29a1f"
}
]
}
]Participant is an individual that can enter the venue with an individual entry ticket. There can be multiple participants within one booking. Participant object holds information on the ticket price (snapshot of the value when the order was made).
Retrieve a participant of a ticket
Retrieve detailed information about a specific participant within a ticket. This endpoint returns individual participant details including personal information, booking status, and any special requirements.
path Parameters
| id required | string Order identifier |
| ticket_id required | string Ticket identifier |
| participant_ticket_id required | string Participant identifier |
Responses
Response samples
- 200
- 400
- 401
- 404
{- "id": "a4f8dce00bef7c934b995c743f5b983a",
- "status": "ACCEPTED",
- "name": "John Doe",
- "email": "john.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": 559,
- "price_value": "35.00",
- "price_title": "kids",
- "vat": "0.00",
- "cancellation_date": "2024-08-06T07:36:35Z",
- "code": "67T-8X5YKK-FGG",
- "checked_in": "",
- "entry_units": [
- {
- "type": "ADULT"
}
], - "ticket_id": "08f99ce88195d7b582e5921548c2b579",
- "order": "0f20cad840e30ebbe5b261a8c7ea8488",
- "redeemed_flexTicket": [
- {
- "id": "dd7588d4d22a6f9a860596ad38b09eab",
- "redeemed_value": "10.00",
- "creation_date": "2024-01-24T14:15:34Z",
- "purchasing_order_id": "80cc2fcf4020d3c3258332eb04a29a1f"
}
]
}List participants
Retrieve a list of all participants across all tickets. This endpoint returns participant information including personal details, booking status, and any special requirements. Use filtering parameters to narrow down results.
query Parameters
| accept_code required | string Comma separated list of accepted ticket codes can be used to load by code |
| exclude_code required | string Comma separated list of excluded ticket codes can be used to load by code |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "a4f8dce00bef7c934b995c743f5b983a",
- "status": "ACCEPTED",
- "name": "John Doe",
- "email": "john.doe@example.com",
- "phone": "+49 123 456 789",
- "comment": "Vegetarian meal required",
- "price_id": 559,
- "price_value": "35.00",
- "price_title": "kids",
- "vat": "0.00",
- "cancellation_date": "2024-08-06T07:36:35Z",
- "code": "67T-8X5YKK-FGG",
- "checked_in": "",
- "entry_units": [
- {
- "type": "ADULT"
}
], - "ticket_id": "08f99ce88195d7b582e5921548c2b579",
- "order": "0f20cad840e30ebbe5b261a8c7ea8488",
- "redeemed_flexTicket": [
- {
- "id": "dd7588d4d22a6f9a860596ad38b09eab",
- "redeemed_value": "10.00",
- "creation_date": "2024-01-24T14:15:34Z",
- "purchasing_order_id": "80cc2fcf4020d3c3258332eb04a29a1f"
}
]
}
]A special ticket type which has no set date or time. It includes seasonal and undated tickets. Open Date Tickets can be redeemed for normal single entry tickets, also at the entry to the venue. Note: This endpoint is only available when authenticated as a vendor API.
Response samples
- 200
- 400
- 401
- 404
{- "id": "2005cef0597aac12c83162c9a48104f8",
- "code": "SCQ99-KABA4-YZBZG",
- "status": "ACCEPTED",
- "customer_name": "John Smith",
- "customer_email": "john.smith@example.com",
- "customer_phone": "+49 30 1234567",
- "customer_language": "en",
- "price_value": "49.99",
- "price_title": "Premium Experience Package",
- "currency": "EUR",
- "event_id": "8f9f810d91b7323a7a433d303b80cc77"
}Redeem an open date ticket
path Parameters
| id required | string |
Request Body schema: application/json
| appointment_id | string (Appointment ID) The unique identifier of the appointment |
| redemption_strategy | string (Redemption Strategy) Enum: "current_appointment_without_overbooking" "selected_appointment" The strategy to redeem the open date ticket |
Responses
Request samples
- Payload
{- "appointment_id": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
- "redemption_strategy": "selected_appointment"
}Response samples
- 400
- 401
{- "message": "The parameter \"limit\" must be of type \"integer\"",
- "code": "40023",
- "user_message": "Bad Request Parameters"
}Flex Offer is an inventory item that can be purchased. It's a multiple or single entry ticket to be redeemed to individual tickets at a later date by End Customers or directly used to enter the venue. Flex offers have multiple types. Purchased flex offers are listed as Flex Tickets, Open Date Tickets and Season Passes and are order items.
List flex offers
Returns a list of flex offers you have access to.
query Parameters
| vendor_id | string Filter by vendor identifier(s). Accepts a single id or a comma separated list of ids. Only applicable for marketplace tokens. |
| event_id | string Filter by event identifier(s). Accepts a single id or a comma separated list of ids. |
| active | integer Enum: 0 1 Filter by active state (1 = active, 0 = inactive). |
| order | string Enum: "title" "active" "start_date" "end_date" "created_at" "vendor_id" "event_id" Use -/+ in front of the attribute to specify the sorting direction (DESC / ASC)
if no modifier is provided default is +
multiple values MAY be provided comma separated
example:
|
| available_from | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return flex offers with start_date later or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| available_until | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Return flex offers with end_date earlier or equal to this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
| delta_since | string^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}... Only return items changed since this date (YYYY-MM-DDThh:mm:ssZ, UTC) |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "2005cef0597aac12c83162c9a48104f8",
- "active": 1,
- "title": "10 Ticket offer! ",
- "vendor_id": "8f9f810d91b7323a7a433d303b80cc77",
- "event_id": "1c7e41d738337f96ff5f4596bf2b4d88",
- "start_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "end_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "redemption_start_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "redemption_end_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "stock": 10,
- "redemptions": 1,
- "unlimited_redemptions": 0,
- "type": "FLEX_OFFER",
- "flex_offer_prices": [
- {
- "id": 6,
- "title": "Standard",
- "value": 5,
- "currency": "EUR",
- "public": 1,
- "category": "Other",
- "vat": 0,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "id": 7,
- "title": "Student",
- "value": 1,
- "currency": "EUR",
- "public": 1,
- "category": "Other",
- "vat": 0,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}
]
}
]Retrieve a flex offer
Retrieve a single flex offer by providing the identifier.
path Parameters
| id required | string |
Responses
Response samples
- 200
- 400
- 401
- 404
{- "id": "2005cef0597aac12c83162c9a48104f8",
- "active": 1,
- "title": "10 Ticket offer! ",
- "vendor_id": "8f9f810d91b7323a7a433d303b80cc77",
- "event_id": "1c7e41d738337f96ff5f4596bf2b4d88",
- "start_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "end_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "redemption_start_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "redemption_end_date": "format: YYYY-MM-DDThh:mm:ssZ, UTC",
- "stock": 10,
- "redemptions": 1,
- "unlimited_redemptions": 0,
- "type": "FLEX_OFFER",
- "flex_offer_prices": [
- {
- "id": 6,
- "title": "Standard",
- "value": 5,
- "currency": "EUR",
- "public": 1,
- "category": "Other",
- "vat": 0,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}, - {
- "id": 7,
- "title": "Student",
- "value": 1,
- "currency": "EUR",
- "public": 1,
- "category": "Other",
- "vat": 0,
- "entry_units": [
- {
- "type": "ADULT"
}
]
}
]
}Category of an event. Categories are hierarchical. Events have the lowest level categories assigned to them. Categories are used to group events together, eg. all events in the 'Excursions and experiences' category.
List categories
Get all events categories
query Parameters
| order | string Example: order=-title Use -/+ in front of the attribute to specify the soriting direction (descending / ascending). If no modifier is provided, default sorting direction is ascending. |
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
| match | string Searches the string within therse proterties:
|
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": 1,
- "title": "Workshops & Courses"
}
]User is a person granted access to bookingkit applications. Users are employees or representatives of vendors. Note: This endpoint is only available when authenticated as a vendor API.
List users
Get a list of all users
query Parameters
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
Responses
Response samples
- 200
- 400
- 401
[- {
- "id": "c1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "name": "Bat man",
- "email": "batman@bookingkit.de",
- "language": "de"
}
]Promotional coupons are discount codes created by vendors to offer special pricing to customers. Coupons can provide percentage discounts, fixed amount reductions, or other promotional benefits. When applied during booking, they reduce the final ticket price. Coupons are managed by vendors and can have usage limits, expiration dates, and specific terms and conditions. Note: This endpoint is only available when authenticated as a vendor API client.
List coupons
Retrieve a list of all promotional coupons available for the authenticated vendor. This endpoint returns all coupons that can be used by customers during the booking process. Use the filtering parameters to paginate through large collections of coupons.
query Parameters
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
Responses
Response samples
- 200
- 400
- 401
[- {
- "ident": "c1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "title": "Summer Sale 20% Off",
- "code": "SUMMER20"
}
]Retrieve a coupon
Retrieve detailed information about a specific promotional coupon by its unique identifier. This endpoint returns the complete coupon details including its title, code, and other properties.
path Parameters
| id required | string |
Responses
Response samples
- 200
- 400
- 401
- 404
{- "ident": "c1aa3a67eb1f3aa2a8f712ba8bb6649d",
- "title": "Summer Sale 20% Off",
- "code": "SUMMER20"
}Vouchers are gift cards or prepaid credits that customers can purchase and redeem later for tickets or products. They act as a form of payment and can be used as gifts, promotional items, or flexible booking options. Vouchers have a specific monetary value and can be redeemed against any available event or service offered by the vendor. Note: This endpoint is only available when authenticated as a vendor API client.
List vouchers
Retrieve a list of all vouchers available for the authenticated vendor. This endpoint returns all vouchers that can be purchased by customers or used as payment methods. Vouchers can be used as gift cards, promotional credits, or flexible payment options. Use the filtering parameters to paginate through large collections of vouchers.
query Parameters
| limit | integer Default: 100000 Example: limit=1000 The limit query parameter specifies the number of resources that a single page contains. |
| offset | integer Default: 0 The offset query parameter is used to exclude from a response the first N items of a collection. |
| accept | string Comma separated list of accepted item identifiers. |
| exclude | string Comma separated list of item IDs to be excluded. |
| fields | string Default: "all" Comma separated list of item properties that should be returned. |
| with_count | boolean Default: false Example: with_count=true If set, the request will return an USE ONLY IF NECESSARY this obviously makes every request a lot slower. We stringly advise leaving this option to false. |
Responses
Response samples
- 200
- 400
- 401
[- {
- "ident": "v1aa3a67eb1f3aa2a8f712ba8bb6649e",
- "title": "Gift Card €50",
- "code": "GIFT50EUR"
}
]Retrieve a voucher
Retrieve detailed information about a specific voucher by its unique identifier. This endpoint returns the complete voucher details including its title, code, and other properties.
path Parameters
| id required | string |
Responses
Response samples
- 200
- 400
- 401
- 404
{- "ident": "v1aa3a67eb1f3aa2a8f712ba8bb6649e",
- "title": "Gift Card €50",
- "code": "GIFT50EUR"
}