# Songkick — Wrapped API

> **You are on:** `https://api.beta.paywithlocus.com/api` | [llms.txt](https://beta.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.

> Access data from songkick.com.

**Category:** Entertainment | **Website:** [www.songkick.com/](https://www.songkick.com/) | **Docs:** [parse.bot/marketplace/691816d5-5dd1-4d4a-bf06-8cc541060b5c/songkick-com-api](https://parse.bot/marketplace/691816d5-5dd1-4d4a-bf06-8cc541060b5c/songkick-com-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.beta.paywithlocus.com/api/wrapped/credits/songkick/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get city events

Retrieve paginated upcoming events for a city. Resolves the city name via search to its Songkick metro area, then returns up to 50 events per page with venue, lineup, ticket info, and status. Event IDs from results can be passed to get_event_details for full detail. Two upstream requests per call (city lookup + events page). When min_date is supplied, only events starting on or after that date are included in the response.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `city` | string | Yes | City name to search for (e.g. "New York", "London", "Edinburgh"). Resolves to the top matching Songkick metro area. |
| `min_date` | string | No | ISO date (YYYY-MM-DD) to filter events. Only events starting on or after this date are returned. |
| `page` | integer | No | Page number for pagination (50 events per page). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/songkick/get-city-events \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"city":"<string>","min_date":"<string>","page":"<integer>"}'
```

### Get event details

Retrieve full details for a single concert or event by its numeric Songkick event ID. Returns venue address and coordinates, performer lineup with billing, ticket pricing, and ticket provider links. Event IDs are obtained from search_concerts results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `event_id` | string | Yes | Numeric Songkick event ID (e.g. from search_concerts results). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/songkick/get-event-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"event_id":"<string>"}'
```

### Search concerts

Full-text search across Songkick's catalog of artists, upcoming events, venues, and cities. Returns categorized results ranked by relevance. Use event IDs from results to fetch full details via get_event_details.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search term — artist name, city name, venue name, or event name. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/songkick/search-concerts \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://beta.paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://beta.paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://beta.paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://beta.paywithlocus.com/agent/index.md): every Locus agent page.