Tickable heeft een API waarmee je evenementen, bestellingen en tickets kunt ophalen, tickets kunt scannen en webhooks kunt instellen. Handig als je Tickable wilt koppelen aan je eigen website, CRM, boekhoudsoftware of andere systemen.

De volledige technische documentatie vind je op [docs.tickable.io](https://docs.tickable.io).

# **Wat kun je met de API?**

Via de API kun je je evenementen en tijdsloten ophalen, bestellingen en tickets inzien (inclusief de antwoorden op je vragen), tickets scannen vanuit je eigen systeem, en webhooks instellen zodat je automatisch een melding krijgt als er een bestelling is betaald.

Evenementen en bestellingen aanmaken of wijzigen kan (nog) niet via de API.

# **Hoe begin ik?**

Om aan de slag te gaan heb je een API-sleutel nodig:

1. Klik in het menu links op **Instellingen** en ga naar **API** ([app.tickable.nl/settings/developers](https://app.tickable.nl/settings/developers)). Zie je **API** niet? Zet het dan eerst aan onder [**Meer instellingen**](https://app.tickable.nl/settings/more) en klik op **Instellen**.
2. Klik op **API-sleutel aanmaken**
3. Geef de sleutel een **Naam**, bijvoorbeeld "CRM-koppeling"
4. Kies bij **Rechten** wat de sleutel mag, bijvoorbeeld **Evenementen lezen** of **Tickets lezen**
5. Kies een **Vervaldatum**: geen, of na 30, 90 of 365 dagen
6. Klik op **Sleutel genereren**

Kopieer de sleutel meteen: je kunt hem daarna niet meer bekijken. In de lijst zie je per sleutel wanneer die voor het laatst is gebruikt.

Elke API-aanroep bevat je sleutel als Bearer-token in de Authorization-header. Een voorbeeld:

```
curl https://api.tickable.io/events \
  -H "Authorization: Bearer tk_live_JOUW_API_SLEUTEL"
```

Binnen twee minuten kun je zo je eerste evenementen ophalen.

# **Authenticatie**

Er zijn twee manieren om te authenticeren:

* **API-sleutel** — ideaal voor directe server-naar-server koppelingen, zoals een synchronisatie met je eigen database of boekhouding.

* **OAuth2** — bedoeld voor situaties waarin een externe applicatie namens een Tickable-gebruiker toegang nodig heeft, bijvoorbeeld een integratie die je voor meerdere organisaties aanbiedt. Wil je OAuth2 gebruiken? Neem dan contact met ons op.

De meeste organisaties komen prima uit met een API-sleutel.

## **Rechten**

Bij het aanmaken van een API-sleutel kies je precies wat de sleutel mag:

* **Evenementen lezen** — evenementen, tickettypes en tijdsloten ophalen
* **Bestellingen lezen** — bestellingen inzien
* **Tickets lezen** — tickets ophalen
* **Tickets schrijven** — tickets scannen
* **Webhooks lezen** — webhooks bekijken
* **Webhooks schrijven** — webhooks aanmaken en verwijderen

# **Webhooks**

Met een webhook stuurt Tickable automatisch een bericht naar jouw systeem als er een bestelling is bevestigd: de bestelling is betaald en de tickets zijn gemaakt (`order.confirmed`). Zo hoef je niet zelf steeds te controleren of er iets is veranderd. Andere gebeurtenissen, zoals een gescand ticket, zijn er nog niet.

Een webhook maak je onder [**Instellingen** > **API**](https://app.tickable.nl/settings/developers) met **Webhook toevoegen**:

* **Endpoint URL** — het adres waar het bericht naartoe gaat
* **Beschrijving** — voor jezelf
* **Gebeurtenistypes** — kies **Bestelling bevestigd**
* **Ondertekeningsgeheim** — optioneel. Vul je dit in, dan krijgt elk bericht een header `X-Webhook-Signature: sha256=…`, een HMAC-SHA256 van de body met dit geheim. Zo controleer je dat het bericht echt van Tickable komt.

Het bericht bevat de bestelling, het evenement en het tijdslot. Klik op een webhook om de **Aflevergeschiedenis** te zien, met per bericht de status en wat er is verstuurd en teruggekregen. Mislukt een bericht, dan proberen we het nog een paar keer opnieuw.

# **Meer informatie**

De volledige API-referentie, voorbeelden in cURL, Node.js en Python, en uitleg over paginering en webhooks vind je in de developer-documentatie: [docs.tickable.io](https://docs.tickable.io).

Loop je ergens tegenaan? Neem dan contact met ons op via [tickable.nl](https://tickable.nl).