Getting Started with the Seaty API

Create an API key, make your first authenticated request, and understand the response. A five-minute walkthrough for organisers integrating with Seaty.

This page takes you from nothing to your first successful API response in a few minutes.

1. Create an API key

API keys are created from your organisation's admin area, and only an organisation super-admin can create them.

  1. Sign in to Seaty and go to your organisation's admin Tools menu.
  2. Open API Keys.
  3. Choose Create a key, give it a recognisable name (for example "Accounts sync"), and decide whether it may record balance payments.
  4. Copy the key when it is shown.

Important: the full key is shown once, at the moment you create it. Seaty stores only a one-way hash of it, so it can never be displayed again. If you lose it, revoke it and create a new one. Treat the key like a password.

A key looks like sk_live_ followed by a long random string and a signature, for example:

sk_live_q28KYUs9u4eyMzABMbzuiQmp0QLMQbNf.otRW_KxDFxMUA7QajUZTPQ

2. Make your first request

Send the key as a bearer token in the Authorization header. Here is a request for your five most recent events:

curl "https://developer.seaty.co.uk/v1/events?per_page=5" \
  -H "Authorization: Bearer sk_live_your_key_here"

The same call in a few other languages:

# Python (requests)
import requests

response = requests.get(
    "https://developer.seaty.co.uk/v1/events",
    params={"per_page": 5},
    headers={"Authorization": "Bearer sk_live_your_key_here"},
)
print(response.json())
// JavaScript (fetch)
const response = await fetch("https://developer.seaty.co.uk/v1/events?per_page=5", {
  headers: { Authorization: "Bearer sk_live_your_key_here" },
});
const body = await response.json();
console.log(body);

3. Read the response

Every list endpoint returns the same envelope: your records in data, paging links in links, and paging detail in meta.

{
  "data": [
    {
      "id": 1024,
      "tag": "spring-concert",
      "name": "Spring Concert",
      "organisation_id": 3,
      "currency_symbol": "£",
      "ticketing_enabled": true,
      "buying_enabled": true
    }
  ],
  "links": { "first": "...", "last": "...", "prev": null, "next": "..." },
  "meta": { "current_page": 1, "per_page": 5, "from": 1, "to": 5, "total": 23, "path": "/v1/events" }
}

Take the id of an event from data and use it to drill in, for example its dates:

curl "https://developer.seaty.co.uk/v1/events/1024/dates" \
  -H "Authorization: Bearer sk_live_your_key_here"

4. Explore interactively

The live, always-up-to-date reference is at https://developer.seaty.co.uk/docs. It lists every endpoint with its parameters and response shapes, and lets you authorise with your key and try calls in the browser.

A typical flow

Most integrations follow the same path down the data:

  1. List events → pick an event id.
  2. List that event's dates → pick a date id.
  3. List that date's orders → pick an order id.
  4. Read the order, its tickets, payments and discounts.

Each step is covered in its own endpoint guide, starting with Events.

Next


Need help? Email support@seaty.co.uk.