SeatDataDocs

Get sales data

GET/v0.3/salesdata/get

All responses are gzip encoded.

You must pass either a SeatData Event ID (from the /v0.3.1/events/search or /v1/events/search endpoints) or a Marketplace Event ID (obtained separately).

Authorization

AuthorizationBearer <token>

Pass Authorization: Bearer <api_key>. Preferred for new integrations.

In: header

Query Parameters

event_id?integer

SeatData Event ID

event_id_sh?integer

Marketplace Event ID

Response Body

application/json

curl -X GET "https://example.com/v0.3/salesdata/get?event_id=225220" \  -H "Authorization: Bearer YOUR_API_KEY"
[  {    "timestamp": 1624060468,    "quantity": 2,    "price": 44.46,    "zone": "Field Outfield",    "section": "109",    "row": "2"  }]

Get event stats GET

Returns the historical event_stats time series for a single event. Each snapshot row includes event-level aggregates (avg/median price, get-in price, listing fill rate) AND inline zone-level breakdowns for every zone in that snapshot. ## Billing rules | Scenario | Charged a pull? | |---|---| | First request for an event (no cursor, snapshots exist) | Yes - 1 pull | | Follow-up paginated page (cursor present) | No (continuation) | | Repeat first-page request, no new snapshot since last paid pull | No (freshness rule) | | Repeat first-page request, new snapshot logged in between | Yes - 1 pull | | Event has no event_stats rows yet | No (empty result, free) | The freshness rule means polling for "is there fresh data?" only costs when there's actually new data to consume. ## Pagination Cursor-based. The first page response includes `total_count` and `available_zones`; subsequent paginated pages omit them. Cursors expire after 1 hour.

Get sales data (batch) POST

All responses are gzip encoded. Accepts up to 100 events per request, combined across both id lists after deduplication. Billing is identical to `GET /v0.3/salesdata/get` — one pull per event that returns sales data; events with no sales are free. `results` is keyed by the identifier you sent: Marketplace Event IDs appear under the marketplace id, SeatData Event IDs under the SeatData id. `errors` reports per-event failures: `not_found` for a SeatData Event ID that does not exist, `payment_required` when a pay-as-you-go balance ran out mid-batch (that event's data is withheld; events already charged are still returned).