Integratie

Evenementen van Fienta op je eigen website tonen

Evenementen tonen

Je kunt al je evenementen van Fienta direct op je eigen website tonen. Met een beetje programmeren kun je de lijst opmaken en structureren zodat deze past bij het ontwerp en de opbouw van je site.

Openbare API

Onze openbare API is gebaseerd op REST, levert JSON-gecodeerde antwoorden en gebruikt standaard HTTP-statuscodes.

Endpoint

Je kunt een lijst ophalen van gepubliceerde, niet-privé aankomende evenementen voor één organisator met dit endpoint:

GET https://fienta.com/api/v1/public/events?organizer=<organiser_id>

<locale>
Twee kleine letters voor de voorkeurstaal van het evenement. Evenementen in andere talen worden nog steeds teruggegeven. Wil je alleen evenementen in een bepaalde taal, voeg dan de queryparameter „locale_strict” toe.

<organiser_id>
Het organisator-ID op Fienta. Je vindt het in de URL op de pagina Instellingen.
Voorbeeld: als je Instellingen-URL /my/organizers/1234/edit is, is je organiser_id 1234.

Voorbeeld: evenementen ophalen van organisator 1234, met voorkeur voor Engels:

GET https://fienta.com/api/v1/public/events?organizer=1234&locale=en

Voorbeeld: alleen Duitse evenementen ophalen van organisator 1234:

GET https://fienta.com/api/v1/public/events?organizer=1234&locale_strict=de

Alle beschikbare parameters staan in onze API-documentatie.

Antwoord

Voorbeeld van een JSON-API-antwoord:

{"events": [
   {
    "id": 5678,
   "title": "Indiefestival",
    "starts_at": "2020-12-16 19:00:00",
    "ends_at": "2020-12-16 21:15:00",
   "duration_string": "Ma 16 december 2020 om 19:00 - 21:15",
    "venue": "Millennium Park",
    "address": "201 E Randolph St, Chicago, IL 60602",
   "description": "Een bekroond festivalweekend aan de rand van de stad.",
    "url": "https:\/\/fienta.com\/indie-festival",
    "buy_tickets_url":"https:\/\/fienta.com\/indie-festival",
    "image_url": "https:\/\/fienta.com\/uploads\/5678.jpg",
   "organizer_name": "Smdith Events B.V.",
    "organizer_phone": "+81 555 666",
    "organizer_email": "[email protected]",
  },
]}

id
Unieke ID van het evenement.

title
Titel van het evenement.

starts_at, ends_at
Start- en einddatum en -tijd van het evenement.

duration_string
Een geformatteerde tekenreeks met begin- en eindtijd.

venue
Naam van de locatie.

address
Adres van de locatie, zonder landnaam.

description
De evenementbeschrijving. Kan HTML bevatten.

url
Volledige URL van de evenementpagina op Fienta.

buy_tickets_url
De volledige URL van de ticketverkooppagina van het evenement. Worden tickets op Fienta verkocht, dan is de waarde gelijk aan de parameter „url”. Worden tickets op een extern platform verkocht, dan wordt de bijbehorende URL teruggegeven. Heeft het evenement geen ticketverkoop of registratie, dan is de waarde leeg.

image_url
URL van de evenementafbeelding.

organizer_name
Naam van de organisator.

organizer_phone
Telefoonnummer van de organisator.

organizer_email
E-mailadres van de organisator.

JavaScript-voorbeeld

Voorbeeld van het ophalen van evenementen van Fienta en het weergeven van HTML op je eigen website met JavaScript en jQuery:

<div id="events">
  <!-- Evenementen worden in deze div weergegeven -->
</div>

<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script>
jQuery(document).ready(function() {
  // HTML-element dat de evenementenlijst bevat
  var container = jQuery('#events'); 
  // Aankomende evenementen ophalen van Fienta
  jQuery.getJSON('https://fienta.com/api/v1/public/events?organizer=1234', function(data) {
    // Door de resultaten lopen
    data.events.forEach(function (event) {
      // Evenementen in de DOM schrijven
      container.append(
        '<div>' +
        '<img src="' + event.image_url + '">' +
        '<h2>' + event.title + '</h2>' +
        '<p>' + event.duration_string + ' @ ' + 
        event.venue + ', ' + event.address + '</p>' +
        '<p><a href="' + event.url + '">Ticket kopen</a></p>' +
        '<p>' + event.description + '</p>' +
        '</div>'
      );
    });
  });
});
</script>

<!-- Optioneel: ticketverkoopproces inbedden -->
<script src="https://fienta.com/embed.js"></script>