# Ticketone — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Browse upcoming events and search for artists or venues on TicketOne.it, then check real-time ticket availability and get detailed event information all in one place. Discover featured events by category or search directly to find events to attend.

**Category:** Entertainment | **Website:** [ticketone.it/](https://ticketone.it/) | **Docs:** [parse.bot/marketplace/c7137106-de4a-41b5-b856-049163378ea7/ticketone-it-api](https://parse.bot/marketplace/c7137106-de4a-41b5-b856-049163378ea7/ticketone-it-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-ticketone-it-api-c7137106/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_event_details

Get detailed information for a specific event by event_id, or all events in a product group by product_group_id. Provide exactly one parameter. When using event_id, returns a single product object with full details. When using product_group_id, returns a list of all products in that group with totalResults count.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `event_id` | string | No | Specific event/product ID to look up (e.g. 20455591 from search_events.products[*].productId). |
| `product_group_id` | string | No | Product group ID to get all events in the group (e.g. 3934156 from search_events.products[*].productGroupId). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ticketone-it-api-c7137106/get_event_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"event_id":"<string>","product_group_id":"<string>"}'
```

### get_event_ticket_availability

Get ticket availability status and pricing for one or more event IDs. Returns per-event availability information including stock status, price, currency, and purchase link. Accepts a comma-separated list of event product IDs.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `event_ids` | string | Yes | Comma-separated list of event product IDs to check availability for (e.g. 20455591,20447041 from search_events.products[*].productId). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ticketone-it-api-c7137106/get_event_ticket_availability \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"event_ids":"<string>"}'
```

### get_homepage_featured_events

Get featured and recommended events from the TicketOne homepage. Returns event groups sorted by recommendation priority along with category facets. Each group represents a series of related performances (e.g. a tour) with shared metadata. Use offset and limit for manual pagination.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Maximum number of product groups to return per page. Capped at 50 by the upstream API. |
| `offset` | integer | No | Number of results to skip for pagination. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ticketone-it-api-c7137106/get_homepage_featured_events \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","offset":"<integer>"}'
```

### list_events_by_category

List events filtered by category and/or city with pagination. Returns product groups with nested product details, city facets, venue facets, and category facets. Each product group contains individual performance products with venue and date information. Use offset and limit for pagination through results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category` | string | No | Category name to filter events. |
| `city` | string | No | City name to filter events (e.g. Milano, Roma, Bari, Napoli, Firenze). |
| `limit` | integer | No | Maximum number of product groups to return per page. Capped at 50 by the upstream API. |
| `offset` | integer | No | Number of results to skip for pagination. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ticketone-it-api-c7137106/list_events_by_category \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category":"<string>","city":"<string>","limit":"<integer>","offset":"<integer>"}'
```

### search_events

Search for events or artists by keyword. Returns individual product listings with location, date, category, and attraction information. Results include all matching performances across Italy. Use offset and limit for manual pagination through results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Maximum number of products to return per page. Capped at 50 by the upstream API. |
| `offset` | integer | No | Number of results to skip for pagination. |
| `query` | string | Yes | Search keyword (artist name, event name, venue, etc.). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ticketone-it-api-c7137106/search_events \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","offset":"<integer>","query":"<string>"}'
```
