> For the complete documentation index, see [llms.txt](https://syticks.gitbook.io/merpi-by-syticks/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://syticks.gitbook.io/merpi-by-syticks/api-reference/hold-reserve-ticket-inventory.md).

# Hold/Reserve Ticket Inventory

**Important Note for All Integrations**: You must create holds before completing ticket purchases. This is a critical step that prevents situations where customers complete payment but tickets/seats/rooms are no longer available. Holds temporarily reserve inventory for 3 minutes while your customer completes checkout, guaranteeing availability during the payment process.

***

### Hold/Reserve Experience Tickets

Temporarily reserve experience tickets (concerts, shows, events, cinema movies) before a customer completes their purchase. This endpoint ensures ticket availability during checkout and prevents overselling.

**When to use**: Before purchasing any experience tickets - whether regular events or cinema movies.

{% content-ref url="/pages/qyFigDP0pW0HvMBJ7Y6u" %}
[Hold/Reserve Experience Inventory](/merpi-by-syticks/api-reference/hold-reserve-ticket-inventory/hold-reserve-experience-inventory.md)
{% endcontent-ref %}

***

### Hold/Reserve Transport Tickets

Temporarily reserve bus tickets and seats before a customer completes their purchase. Supports both timed schedules (specific seats) and random schedules (general boarding slots).

**When to use**: Before purchasing transport tickets on any schedule type.

**Key features**:

* Timed schedules: Reserve specific seat numbers
* Random schedules: Reserve general passenger slots
* Single endpoint handles both schedule types

{% content-ref url="/pages/RUSEE2rKZI6RjOj2Jqnq" %}
[Hold/Reserve Transport Tickets](/merpi-by-syticks/api-reference/hold-reserve-ticket-inventory/hold-reserve-transport-tickets.md)
{% endcontent-ref %}

***

### Hold/Reserve Hospitality Rooms

Temporarily reserve hotel rooms, resort accommodations, or apartment bookings before a customer completes their purchase. Holds ensure room availability for the specified check-in and check-out dates.

**When to use**: Before booking any hotel, resort, or apartment accommodation.

**Key features**:

* Reserve rooms for specific date ranges
* Supports multi-night stays

{% content-ref url="/pages/67wpzc4Wo5PyTLjxngDA" %}
[Hold/Reserve Hospitality Rooms](/merpi-by-syticks/api-reference/hold-reserve-ticket-inventory/hold-reserve-hospitality-rooms.md)
{% endcontent-ref %}

***

### Release Hold Early

Manually release active holds before their automatic expiration. Use this endpoint when a customer abandons checkout, cancels their selection, or you need to free up inventory programmatically.

**When to use**:

* Customer removes items from cart
* Customer abandons checkout
* Session timeout or inactivity
* Customer explicitly cancels selection

**Note**: Holds automatically expire after 3 minutes, so manual release is optional. It's primarily useful for improving inventory availability and user experience.

{% content-ref url="/pages/9zXf3gfq1YvNVJHcselY" %}
[Release a Hold/Reservation Early](/merpi-by-syticks/api-reference/hold-reserve-ticket-inventory/release-a-hold-reservation-early.md)
{% endcontent-ref %}

***

### How Holds Work

#### The Hold Lifecycle

```
1. Create Hold (POST /api/v1/merpi/validate)
   ↓
   Status: "active" - Inventory reserved for 3 minutes
   ↓
2a. Complete Purchase → Status: "converted" (Hold becomes booking)
2b. Manual Release → Status: "released" (Inventory freed)
2c. TTL Expires → Status: "expired" (Inventory freed automatically)
```

#### Key Concepts

**Reservation IDs**: When you create holds, you receive `reservation_id` values. These UUIDs are required when completing purchases - they prove you have reserved inventory.

**Customer Ownership**: Holds are tied to customer email/phone number. The same credentials used to create holds must be used when purchasing or releasing them.

**Time-to-Live (TTL)**: All holds automatically expire after 3 minutes (configurable). This prevents inventory from being locked indefinitely.

**Idempotency**: Submitting identical hold parameters while an active hold exists returns the existing hold instead of creating a duplicate.

**Batch Rollback**: When creating multiple holds in one request, if any hold fails, all previously created holds in that request are automatically released. This ensures all-or-nothing consistency.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://syticks.gitbook.io/merpi-by-syticks/api-reference/hold-reserve-ticket-inventory.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
