REST API
JSON over HTTPS at https://p01--mapmyvenue--xpfbl4sjg8sg.code.run. Find your keys in the dashboard under Settings.
Authentication
| public | x-public-key: pk_... header (or ?publicKey=). Safe in browsers. |
| secret | Authorization: Bearer sk_.... Server-side only. |
Endpoints
| Method | Path | Auth | Does |
|---|
GET | /v1/events | secret | List events with seat counts |
POST | /v1/events | secret | Create an event from a published chart |
GET | /v1/events/:key | secret | Event details and seat counts |
PATCH | /v1/events/:key | secret | Change name, venue or date |
DELETE | /v1/events/:key | secret | Delete an event and its bookings |
GET | /v1/events/:key/render | public | Chart plus live seat statuses |
POST | /v1/events/:key/hold | public | Hold seats for a token |
POST | /v1/events/:key/release | public | Release a token's seats |
POST | /v1/events/:key/book | secret | Book seats |
POST | /v1/events/:key/release-booking | secret | Un-book seats, e.g. after a refund |
Errors
Errors are { statusCode, error, message }, where message is a code. Seat errors also carry seatIds; invalid request bodies return 400 with message as a list of problems. Too many requests return 429.
SEATS_UNAVAILABLE (409) | Hold or book: a seat is held by someone else or already booked. |
UNKNOWN_SEATS (400) | A seat id is not in the event, or is blocked. |
CHART_NOT_PUBLISHED (400) | Create event: the chart has never been published. |