3. Reserve Tickets
This endpoint places a short-lived hold on a specific availability so you can safely collect customer details before calling the Book Tickets API. A reservation is held for 60 minutes. After that it expires automatically and no further action is required.
You are not required to create a reservation before booking. However, for checkout flows where some time passes between picking tickets and paying, using a reservation avoids the risk of overselling.
POST https://api.e-guma.ch/v1/ticketing/reservation.json?apikey={api-key}Parameters
api-key
| API key of a user that is approved for third-party integrations. |
POST Data
product_id
| ID of the product. You can get the ID from the List of Products API. |
starts_at
| Start date and time of the availability being reserved, in ISO 8601 format. Use the starts_at returned by the List of Availabilities API. For day slots, pass only the date (or the date with a |
items
| List of ticket items to reserve. At least one item is required. See item object below for details. |
Item object
category_id
| ID of the person category. Matches a category returned by the List of Products API. |
quantity
| Number of tickets to reserve for this category. Must be greater than or equal to If min_quantity is set on the category (see List of Availabilities API) and allow_zero_quantity is |
Return
| reservation_id | ID of the reservation. Pass this value as reservation_id when calling the Book Tickets API. |
| expires_at | Moment at which the reservation will automatically expire, in ISO 8601 format. You must complete the booking before this time. |
Example
POST https://api.e-guma.ch/v1/ticketing/reservation.json?apikey=510e32c594d84816a4af9df1{
"product_id": "64ad1bb1973b861c040c99bd",
"starts_at": "2026-03-19T10:00:00",
"items": [
{
"category_id": "64ad1bb1973b861c040c99c1",
"quantity": 2
}
]
}{
"reservation_id": "7f2d9e4b-1c33-4fab-8a42-abcdef123456",
"expires_at": "2026-03-19T09:00:00.0000000"
}Updated about 3 hours ago
