Avayo Developers Agenda-feed

Agenda-feed

Je programma als JSON of XML, zonder token. Daarmee bouw je de agenda en de evenementpagina's zelf op je website, in je eigen vormgeving. Voor het boeken verwijs je naar de ticketshop.

Het adres

GET https://jouwshop.avayo.nl/feed/v2/events.json
GET https://jouwshop.avayo.nl/feed/v2/events.xml

Geen token nodig: de feed bevat alleen wat ook publiek in je ticketshop staat. JSON en XML hebben dezelfde inhoud en dezelfde namen. Heeft je shop een eigen domein, dan werkt hetzelfde pad daarop.

Tot vijf minuten oud

De feed wordt vijf minuten bewaard, en mag dat bij jou ook. Een wijziging in je backoffice, of een voorstelling die uitverkocht raakt, staat er dus binnen vijf minuten in. Lees hem niet bij elke paginaweergave opnieuw in, maar bewaar hem zelf een paar minuten.

Een voorbeeld

Antwoord, ingekort
{
  "meta": {
    "version": 2, "shop": "jouwshop",
    "generated_at": "2026-09-29T22:16:55+02:00",
    "timezone": "Europe/Amsterdam", "amounts_in": "euro",
    "locales": ["nl", "de"], "default_locale": "nl"
  },
  "data": [
    {
      "id": 104738,
      "name": { "nl": "Kerkhof & Kerkhof", "de": "Kerkhof & Kerkhof" },
      "subtitle": { "nl": "Cabaretesk college", "de": "Cabaretesk college" },
      "genre": { "id": 37, "slug": "theatercollege", "name": { "nl": "Theatercollege" } },
      "ticket_sales": true,
      "images": { "thumb": "https://…", "medium": "https://…", "large": "https://…", "square": "https://…" },
      "service_fee": { "per_ticket": 0.85, "per_order": 0.0, "max": null },
      "prices": [
        { "category_id": 115499, "category": { "nl": "Theater" },
          "products": [ { "id": 178493, "name": { "nl": "Ticketprijs" }, "price": 25.0 } ] }
      ],
      "urls": { "info": "https://jouwshop.avayo.nl/agenda/info/104738", "book": "https://…",
                "embedded_info": "https://jouwdomein.nl/tickets?e_id=104738&target=info", "embedded_book": "https://…" },
      "performances": [
        {
          "id": 494009,
          "start": "2026-10-03T20:00:00+02:00", "end": null,
          "status": "available", "on_sale": true, "waiting_list": false,
          "seating": "numbered",
          "location": { "name": "Parkgebouw", "address": "Oosterhofweg 49", "city": "Rijssen" },
          "room": "Herman Wessels zaal",
          "urls": { "info": "https://…", "book": "https://…", "embedded_info": "https://…", "embedded_book": "https://…" }
        }
      ]
    }
  ]
}

Een evenement

VeldWat het is
idHet nummer van het evenement. Dat gebruik je ook in links naar de shop.
name
subtitle
description
Per taal van je shop. Ontbreekt een vertaling, dan staat de tekst in je standaardtaal er. De beschrijving kan HTML bevatten.
genreMet slug, de korte naam die je ook gebruikt voor ?genre=. Leeg als het evenement geen genre heeft.
ticket_salesfalse voor een evenement zonder kaartverkoop, alleen ter informatie.
start_date
end_date
De geldigheid van een dag- of periodeticket, als datum. Leeg bij een gewone voorstelling.
imagesDe afbeelding in vier maten. Leeg zonder afbeelding.
video_urlEen YouTube- of Vimeo-link, of leeg.
kijkwijzerDe Kijkwijzer-pictogrammen, als je die gebruikt.
service_feeServicekosten per ticket, per bestelling en het maximum, in euro.
pricesDe ticketsoorten per categorie, met prijs in euro. Leeg zonder kaartverkoop.
urlsKant-en-klare links, zie hieronder.
performancesDe speeldata, zie hieronder.

Een speeldatum

Alle speeldata in de toekomst staan erin, ook als de verkoop nog niet open is. Zo kun je een voorstelling al aankondigen. Of er nu te koop is, zegt on_sale.

VeldWat het is
start
end
Begin en einde, in Nederlandse tijd met de afwijking erbij, bijvoorbeeld 2026-10-03T20:00:00+02:00. Het einde kan leeg zijn.
statusZie de tabel hieronder.
previous_startAlleen bij een verplaatste speeldatum: het oude begin.
on_saletrue als er nu tickets te koop zijn.
sale_starts_at
sale_ends_at
Wanneer de verkoop opent en sluit, of leeg.
waiting_listtrue als er een wachtlijst open staat.
seatingnumbered (genummerde stoelen), free (vrije plaatsen) of combined (stoelen en staanplaatsen).
location
room
De locatie met adres, en de zaal.
urlsKant-en-klare links voor deze speeldatum.
statusBetekenis
availableEr is plaats
sold_outUitverkocht
cancelledGeannuleerd
postponedUitgesteld, nog geen nieuwe datum
rescheduledVerplaatst, met de nieuwe datum in start

Links voor het boeken

Bij elk evenement en elke speeldatum staan de links klaar, zodat je ze niet zelf hoeft te bouwen.

LinkOpent
infoDe informatiepagina in je ticketshop bij ons. Alleen Red.
bookDe ticketstap in je ticketshop bij ons.
embedded_info
embedded_book
Hetzelfde, maar op je eigen website, in de ingebouwde shop. Alleen gevuld als je Je website hebt ingesteld.

Heb je de ticketshop ingebouwd, gebruik dan de embedded_-links: de bezoeker blijft op je website en komt na het betalen daar terug.

Afspraken

  • Binnen v2 komen er alleen velden bij. Hernoemen of weghalen doen we alleen in een nieuwe versie. Negeer dus velden die je niet kent.
  • Een leeg veld is null in JSON en een leeg element met nil="true" in XML.
  • Bedragen zijn euro's met twee decimalen, nooit centen. Dat staat ook in meta.amounts_in.
  • Tijden zijn Nederlandse tijd, met de afwijking van UTC erbij.

Gebruik je nog /events.atom? Die blijft werken, zie Agenda-feed v1. Voor iets nieuws gebruik je deze feed.