> 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/cinema-ticketing-cinema-movies-available-days-purchase-etc/get-cinema-ticket-categories-and-pricing.md).

# Get Cinema Ticket Categories & Pricing

Cinema movies use the same tickets endpoint as regular experiences. To get ticket types and pricing for a movie, simply call the endpoint with the cinema experience ID.

### Endpoint

```
GET /api/v1/merpi/experience/tickets/{experience_id}
```

***

### Multi-Location Cinema Support

**For cinemas with multiple locations**, include the `cinema_location_id` query parameter to get pricing and availability for a specific location:

```
GET /api/v1/merpi/experience/tickets/{experience_id}?cinema_location_id={location_id}
```

**Why this matters**: Ticket prices and availability may vary by location. Without `cinema_location_id`, the endpoint defaults to headquarters, which may not reflect the customer's selected location.

***

### Quick Example

#### Single Location or Default to Headquarters

```http
GET /api/v1/merpi/experience/tickets/9b0c2340-8274-4e9b-b7b8-a652dbb652eb HTTP/1.1
Accept: application/json
```

#### Specific Location (Multi-Location Cinema)

```http
GET /api/v1/merpi/experience/tickets/9b0c2340-8274-4e9b-b7b8-a652dbb652eb?cinema_location_id=4 HTTP/1.1
Accept: application/json
```

**Response:**

```json
{
  "success": true,
  "status": 200,
  "message": "Success",
  "data": {
    "tickets": [
      {
        "id": "3161487b-f3f7-4b7d-a92c-a09bfaf11347",
        "title": "Regular",
        "price": 2100,
        "slots_remaining": 3454,
        "price_breakdown": {
          "ticket_price": 2000,
          "convenience_fee": 40,
          "merchant_commission": 60
        }
      },
      {
        "id": "ee1cbdd5-b581-4363-aab0-050dca412b17",
        "title": "VIP",
        "price": 5250,
        "slots_remaining": 3455,
        "price_breakdown": {
          "ticket_price": 5000,
          "convenience_fee": 100,
          "merchant_commission": 150
        }
      }
    ],
    "experience": {
      "id": "9b0c2340-8274-4e9b-b7b8-a652dbb652eb",
      "title": "Batman: The Yahoo Junction Menace"
    }
  }
}
```

***

### Cinema-Specific Workflow

#### For Multi-Location Cinemas

```javascript
// 1. Get cinema details to check locations
const detailsResponse = await fetch(`/api/v1/merpi/experience/v/${movieId}`);
const movie = await detailsResponse.json();

// 2. Check if multi-location
const locations = movie.data.cinema_info.locations;

if (locations.length > 1) {
  // 3. Customer selects location
  const selectedLocationId = await showLocationSelector(locations);
  
  // 4. Fetch tickets for that location
  const ticketsUrl = `/api/v1/merpi/experience/tickets/${movieId}?cinema_location_id=${selectedLocationId}`;
  const ticketsResponse = await fetch(ticketsUrl);
  const tickets = await ticketsResponse.json();
  
  displayTickets(tickets.data.tickets, selectedLocationId);
} else {
  // Single location - no cinema_location_id needed
  const ticketsResponse = await fetch(`/api/v1/merpi/experience/tickets/${movieId}`);
  const tickets = await ticketsResponse.json();
  
  displayTickets(tickets.data.tickets);
}
```

***

### Cinema-Specific Notes

When booking cinema tickets, you need:

1. **Ticket category ID** - From this endpoint (e.g., "Regular", "VIP")
2. **Showtime ID (`time_id`)** - From the Get Cinema Experience Details endpoint
3. **Cinema Location ID (`cinema_location_id`)** - For multi-location cinemas, specify which branch (optional for single-location, defaults to HQ)
4. **Attendance Date** - The date customer plans to watch the movie

The ticket categories and prices you fetch here apply to the specific location you queried. Make sure to use the same `cinema_location_id` when purchasing tickets.

***

### Important Reminders

#### Always Include Location ID for Multi-Location

If the cinema has multiple locations (check `cinema_info.locations.length > 1`), **always pass `cinema_location_id`** when:

* Fetching tickets (this endpoint)
* Creating holds (POST /api/v1/merpi/validate)
* Purchasing tickets (POST /api/v1/merpi/experience/buy/tickets)

Without it, all operations default to headquarters, which may not be the customer's intended location.

#### Ticket Availability

The `slots_remaining` field shows availability for the **specific location** you queried. Different locations may have different availability for the same movie.

***

### Complete Documentation

For comprehensive information including:

* All response fields and their descriptions
* Pricing breakdown details
* Validation rules and code examples
* Caching strategies
* Error handling

See the [**Get Ticket Categories and Pricing**](/merpi-by-syticks/api-reference/experience-ticketing-events-parties-conference-comedy-and-more/get-ticket-categories-and-pricing.md) page.

***

### Next Steps

After fetching cinema tickets:

1. **Display tickets** - Show categories with prices for the selected location
2. **Get showtimes** - Fetch available screening times for that location
3. **Create holds** - Reserve tickets via POST /api/v1/merpi/validate (include `cinema_location_id`)
4. **Complete purchase** - Buy tickets with `reservation_ids`, `time_id`, and `cinema_location_id`

***

### Related Endpoints

* [**Get Cinema Experience Details**](/merpi-by-syticks/api-reference/cinema-ticketing-cinema-movies-available-days-purchase-etc/get-cinema-experience-details.md) - Fetch movie details and locations
* [**Hold/Reserve Cinema Tickets**](/merpi-by-syticks/api-reference/hold-reserve-ticket-inventory/hold-reserve-experience-inventory.md) - Create holds before purchasing
* [**Buy Cinema Tickets**](/merpi-by-syticks/api-reference/cinema-ticketing-cinema-movies-available-days-purchase-etc/buy-cinema-experience-tickets.md) - Complete purchase with all required parameters
* [**Get Ticket Categories and Pricing**](/merpi-by-syticks/api-reference/experience-ticketing-events-parties-conference-comedy-and-more/get-ticket-categories-and-pricing.md) - Complete endpoint documentation


---

# 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/cinema-ticketing-cinema-movies-available-days-purchase-etc/get-cinema-ticket-categories-and-pricing.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.
