# Kktix — 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.

> Search and discover events on KKTIX by category or filters, view detailed event information including tickets and organizer details, and browse featured events and their availability. Access comprehensive event metadata to find exactly what you're looking for across different categories and organizers.

**Category:** Entertainment | **Website:** [kktix.com/](https://kktix.com/) | **Docs:** [parse.bot/marketplace/7f576477-7ed5-4efa-97d2-d255843abffe/kktix-com-api](https://parse.bot/marketplace/7f576477-7ed5-4efa-97d2-d255843abffe/kktix-com-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-kktix-com-api-7f576477/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_event_categories

Returns the full list of event category tags available on KKTIX. Each category has a numeric ID, multilingual names (zh-TW, English, Japanese), and an animation class. Use the IDs with search_events tag_ids filter.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-kktix-com-api-7f576477/get_event_categories \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_event_details

Returns comprehensive details for a specific event by its slug. Includes event metadata (name, dates, location, capacity, payment options), organization info, ticket types with pricing, and registration fields. Slugs can be extracted from event URLs returned by search_events or get_featured_events.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `slug` | string | Yes | Event slug identifier (e.g. 'ad96beb7'). Can be extracted from event URLs returned by search_events or get_featured_events. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-kktix-com-api-7f576477/get_event_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"slug":"<string>"}'
```

### get_event_tickets

Returns ticket types and real-time availability for a specific event. Merges ticket metadata (name, price, buy limits) with inventory counts. For sold-out or closed events, tickets array may be empty and register_status indicates state ('CLOSED', 'SOLD_OUT', 'IN_STOCK').

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `slug` | string | Yes | Event slug identifier (e.g. 'astateoftrancehongkong'). Can be extracted from event URLs returned by search_events. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-kktix-com-api-7f576477/get_event_tickets \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"slug":"<string>"}'
```

### get_featured_events

Returns featured events and headline banners from the KKTIX homepage. Featured events include structured metadata (id, slug, name, start_at, register_status, public_url, description_summary). Headline banners are site-wide announcements.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-kktix-com-api-7f576477/get_featured_events \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_organizer_events

Returns all events from a specific organizer by their subdomain. Results are in Atom-style feed format, same structure as search_events. The organizer subdomain can be found in event URLs (e.g. 'baodaorecords' from baodaorecords.kktix.cc) or author URIs from search results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `organizer` | string | Yes | Organizer subdomain (e.g. 'baodaorecords'). Found in event URLs or author URIs from search results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-kktix-com-api-7f576477/get_organizer_events \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"organizer":"<string>"}'
```

### search_events

Search for events on KKTIX with optional keyword, category, date range, and price filters. Returns a paginated Atom-style feed of matching events. Each entry includes title, summary, content (date/venue info), URL, and author (organizer). Pagination via integer page param; results ordered by recency.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `end_at` | string | No | End date filter in YYYY-MM-DD format |
| `max_price` | integer | No | Maximum ticket price filter in TWD |
| `min_price` | integer | No | Minimum ticket price filter in TWD |
| `page` | integer | No | Page number for pagination |
| `query` | string | No | Search keyword to filter events by title or description |
| `start_at` | string | No | Start date filter in YYYY-MM-DD format |
| `tag_ids` | string | No | Comma-separated category tag IDs to filter by (use get_event_categories to find IDs) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-kktix-com-api-7f576477/search_events \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"end_at":"<string>","max_price":"<integer>","min_price":"<integer>","page":"<integer>","query":"<string>","start_at":"<string>","tag_ids":"<string>"}'
```
