API-overzicht

Draai je eigen website op je Sway-gegevens, verkoop er tickets vanaf, en hoor het van Sway zodra er iets verandert.

De publieke Sway-API laat een crew (een artiestenbureau, een promotorcollectief, een locatieteam) zijn eigen website draaien op zijn Sway-gegevens. Je site blijft onafhankelijk en praat alleen via de API met Sway:

  • Toon je roster, evenementen, line-ups en timetables, locaties, nieuws, partners, galerijen en perskits.
  • Verkoop tickets: open een Sway-checkout vanaf je site, controleer eerst een coupon of een toegangscode, volg de bestelling op.
  • Verkoop merch uit de shops van je pagina's: de catalogus, een winkelmand die Sway berekent, een Stripe-checkout op de rekening van de pagina.
  • Verzamel: bookingaanvragen, nieuwsbriefinschrijvingen, antwoorden op je formulieren.
  • Draai je ambassadeursprogramma op je eigen pagina's: aanmelden, inloggen via een e-maillink, ledenzone, ranglijst, rewards.
  • Hoor over veranderingen zodra ze gebeuren met webhooks, in plaats van elke paar minuten te vragen.
  • Vraag een AI-assistent over je gegevens via de MCP-server.

Basis-URL

https://www.sway.events/api/v1

Elk endpoint heeft een versie onder /v1. Antwoorden zijn JSON met sleutels in snake_case, behalve de kalenderfeeds (text/calendar) en de exports (NDJSON). GET /v1/openapi.json beschrijft elk endpoint in OpenAPI 3.1, en GET /v1/changelog toont wat er wanneer veranderde.


Wie toegang heeft

De API zit in de abonnementen Studio en Roster. Sleutels maak je aan in Crew admin → API, door iemand met het recht API beheren op de crew.

Elke sleutel hoort bij precies één crew: alleen de sleutel bepaalt wiens gegevens je ziet, nooit een parameter in het verzoek. Loopt het abonnement van de crew af, dan werken de sleutels pas weer als de crew weer actief is.


Wat je sleutel kan zien

Alles wat de API teruggeeft is ofwel beheerd ofwel publiek:

NiveauWat het omvatWat je krijgt
BeheerdDe pagina's gekoppeld aan je crew (zijn artiesten, promotors en locaties) en hun evenementenDe volledige weergave: bio, elke link inclusief contactmails, optredenhistorie
PubliekPagina's die in je evenementen voorkomen zonder van jou te zijn: een gastartiest in een line-up, een locatie die je niet beheertAlleen wat de publieke Sway-pagina al toont, gemarkeerd met "managed": false

Voorbeeld: de gastartiest. Het evenement van je promotor toont een artiest die niet bij je crew hoort. Die artiest verschijnt in de line-up van het evenement met alleen publieke velden (naam, afbeelding, genres) en "managed": false. Rechtstreeks opgevraagd geeft GET /v1/artists/{id} 404.

Alles buiten de pagina's van je crew geeft 404, nooit 403, zodat de API niets verraadt over wat je niet kunt bereiken.

Je roster-artiesten komen ook ongepubliceerd terug: de roster is je eigen data. Elke andere bron komt pas terug zodra ze gepubliceerd is; ongepubliceerde bronnen geven 404 of ontbreken in line-ups.

Snel aan de slag

Controleer je sleutel en wat hij mag:

curl https://www.sway.events/api/v1/me \
  -H "Authorization: Bearer sway_sk_YOUR_KEY"
{
  "key": {
    "id": "3f9a1c02-7b45-4c8e-9d21-0a1b2c3d4e5f",
    "type": "secret",
    "scopes": ["read:profile", "read:artists", "read:promoters", "read:events", "read:venues", "read:content"],
    "rate_limit": { "per_minute": 120, "per_day": 20000 },
    "limits": {
      "requests_per_minute": 2400,
      "crew_work_per_minute": 600,
      "crew_work_per_day": 120000,
      "bytes_per_day": 5368709120
    },
    "websites": []
  },
  "crew": { "id": "a2628d53-4f21-4c1e-9b7d-1a2b3c4d5e6f", "name": "Insomnia", "slug": "insomnia" }
}

Toon daarna je aankomende evenementen:

curl "https://www.sway.events/api/v1/events?limit=10" \
  -H "Authorization: Bearer sway_sk_YOUR_KEY"

Eén bron komt terug als het object zelf; een lijst komt terug in { "data": [...], "pagination": {...} }.


Meer weten

Authenticatie

Geheime en publiceerbare sleutels, scopes, rate limits, caching, fouten en idempotentie.

Endpoint-referentie

Elk endpoint, met zijn parameters en een voorbeeldantwoord.

Paginering en filters

Cursors, filters, velden, talen en uitbreiding.

Website-integratie

Het recept om een partnersite op de API te draaien.

Webhooks

Ondertekende aanroepen naar je server zodra een bestelling betaald wordt of een evenement verandert.

MCP-server

Alleen-lezen tools voor AI-assistenten, op de gegevens van je crew.