Dit artikel is ook beschikbaar in:
Hier leggen we alles uit over (onze) API met een aantal leuke voorbeelden, hoe je hem kunt gebruiken, en waarom je hem zou moeten gebruiken.

1. Wat is de API?

API staat voor Programmeerinterface voor applicaties. Het is de interface die het mogelijk maakt dat softwareapplicaties met elkaar communiceren. Het stelt je in principe in staat om iets aan te vragen, of een vraag te stellen, waarna de API-aanroep de actie uitvoert die hij verondersteld wordt te doen, nadat je hem van informatie hebt voorzien. In ons geval zou dit vragen om een deelnemer toe te voegen aan een Examen, Cursus of de Academie die specifieke gegevens over de deelnemer nodig heeft.

Voorbeeld 1

Als je in je browser naar Facebook gaat, gaat er een verzoek naar de externe server van Facebook. Zodra je browser het antwoord ontvangt, interpreteert hij de code en geeft hij de pagina weer.

Voor de browser, ook wel bekend als de client, is de server van Facebook een API. Dit betekent dat je elke keer dat je een pagina op het web bezoekt, contact hebt met de API van een externe server.

Een API is niet hetzelfde als de remote server  rather het is het deel van de server dat verzoeken ontvangt en antwoorden stuurt.

Voorbeeld 2

Stel je voor dat je aan een tafel in een restaurant zit met een keuzemenu waaruit je kunt kiezen. De keuken is het onderdeel van het "systeem" dat je bestelling klaarmaakt. Wat ontbreekt is de kritische schakel om je bestelling naar de keuken te communiceren en je eten terug te brengen naar je tafel. Daar komt de ober of API in beeld. De ober is de boodschapper - of API - die je verzoek of bestelling in ontvangst neemt en de keuken - het systeem - vertelt wat je moet doen. Vervolgens levert de ober het antwoord aan je terug; in dit geval is het het eten.

Om samen te vatten, wanneer een bedrijf een API aanbiedt aan hun klanten, betekent dit alleen dat ze een set van speciale URL's hebben gebouwd die pure data teruggeven responses - meaning de reacties zullen niet het soort presentatie-overhead bevatten dat je zou verwachten in een grafische gebruikersinterface zoals een website.

2. Waarvoor gebruik ik het?

Ontwikkelaars kunnen verschillende API's op verschillende manieren gebruiken om verschillende dingen te bouwen. Facebook is daar een goed voorbeeld van; de site heeft in mei het ontwikkelplatform F8 gelanceerd en biedt nu onderdak aan een verbazingwekkende 10.900 applicatie van de beruchte Scrabulous tot instant messaging en voedselgevechtspelletjes.

Het voordeel voor de host site is dat het veel nieuwe, coole functies gratis krijgt, terwijl de ontwikkelaars hun werk op een meer prominente site kunnen promoten en op het werk van iemand anders kunnen voortbouwen. De meeste van deze applicaties worden gebouwd door bedrijven met een eigen website - vaak kleinere bedrijven met minder verkeer die profiteren van de crossover. Filmrecensiesite Flixster heeft bijvoorbeeld een populaire Facebook-applicatie, net als Last.fm en de fotodelingssite Flickr.

3. Welke API-aanroepen heeft Easy LMS?

Easy LMS heeft zes API-oproepen die verschillende functies dienen:

Deelnemer toevoegen aan Examen (uitnodigen)
Deelnemer toevoegen aan Examen zonder kennisgeving (geen uitnodiging)
Deelnemer toevoegen aan Cursus (uitnodigen)
Deelnemer toevoegen aan Academie (uitnodigen)
Deelnemer toevoegen aan Academie zonder kennisgeving (geen uitnodiging)
Verwijder deelnemer aan Deelnemersgegevens tabblad (Het verwijdert alle sporen van een deelnemer permanent uit ons systeem).

De API vraagt om een Examen alleen te werken als de toegang is ingesteld op Een voorgedefinieerde groep deelnemersof voor een Cursus die alleen op uitnodiging wordt gegeven. Dit is voor de Academie vanzelfsprekend. Het is ook niet mogelijk om een van deze oproepen te gebruiken voor hetzelfde Examen, dezelfde Cursus of Academie als er al een deelnemer aan is toegevoegd. Dit komt omdat het doel van deze API-calls is om deelnemers toe te voegen, dus als ze al zijn toegevoegd, werkt de API-call niet.

Een API-aanroep bestaat uit drie dingen:

De payload (de werkelijke gegevens die worden verzonden)
Het eindpunt (het adres waarnaar de gegevens worden verzonden)
De reactie (succes of foutmelding)

De payload is de informatie die naar een eindpunt wordt gestuurd, wat betekent dat er gegevens nodig zijn om een deelnemer aan het Examen, de Cursus of de Academie toe te voegen.

Het eindpunt is een webadres waar de informatie naartoe wordt gestuurd, en het antwoord geeft aan of de API-aanroep succesvol was of niet.

4. Webhooks

Webhooks kunnen worden gebruikt in combinatie met API-aanroepen om verschillende acties te initiëren. Wanneer een webhook wordt verzonden die de vereiste payload voor een bepaalde API-call bevat om te werken, zal de API-call zijn werk doen en de deelnemer toevoegen. De webhooks moeten van jouw systeem naar ons eindpunt worden gestuurd. Dit is iets wat je zelf zou moeten instellen in je systeem.

Voorbeeld 1 - Cursus, Examen, Academie

De volgende paragrafen maken deel uit van een fictieve use-case om uit te leggen hoe webhooks en API's kunnen samenwerken.

Een HR-manager heeft een instapcursus en -examen gemaakt voor nieuw aangeworven medewerkers. De HR-manager wil dat de medewerkers de Course volgen, maar wil dat ze pas na het afronden van de Course toegang krijgen tot het Examen. Pas na het behalen van het Examen wil hij dat de medewerkers toegang krijgen tot de Academy, die cursussen en examens op intermediair en expert-niveau bevat. Dus, hoe zetten ze dit op?

Om te begrijpen hoe dit in te stellen hebben we al vastgesteld dat deze webhooks en API-calls intern worden verstuurd binnen het Easy LMS-systeem. Het proces is als volgt:

De HR-manager moet een webhook maken die een payload naar de Examen-API stuurt nadat de medewerker de cursus heeft afgerond. Deze webhook hoeft alleen de gegevens te bevatten die nodig zijn om de Examen-API aan te roepen. In dit geval gebruiken we de Deelnemer toevoegen aan Examen (uitnodigen) API oproep. Wanneer deze webhook is verzonden, zal de API-call worden getriggerd als er een succesvolle reactie is. De API-aanroep voegt de deelnemer toe en stuurt de Examenuitnodiging automatisch.

De tweede webhook die de HR-manager moet maken is voor als de medewerker het Examen met succes aflegt om toegang te krijgen tot de Academy. Ook hier geldt dat de payload van deze webhook alleen de informatie mag bevatten die de Academy API oproep nodig heeft om de deelnemer toe te voegen en een uitnodiging te sturen. Na het versturen van deze ''Examen geslaagd'' webhook, wordt de Academy API call getriggerd, waarna de deelnemer wordt toegevoegd en een uitnodiging voor de Academy wordt verstuurd.

Om samen te vatten:

Maak een webhook aan voor het afronden van de cursus die naar de Examen-API-oproep wordt gestuurd.
Maak een webhook aan voor het behalen van een examen, die naar de API-oproep van Academy wordt gestuurd.
Medewerker volgt de cursus en voltooit deze.
Webhook voor het voltooien van een cursus wordt verzonden naar Deelnemer toevoegen aan Examen (uitnodigen) API call endpoint en voegt deelnemer toe en nodigt deze uit voor het Examen.
Werknemer neemt Exam en slaagt.
Webhook voor het behalen van het examen wordt gestuurd naar Deelnemer toevoegen aan Academy (uitnodigen) API call endpoint en voegt deelnemer toe aan de Academy en nodigt deze uit.



Voorbeeld 2 - Uitnodigingen versturen vanuit je eigen systeem

Een klant wil onze tool gebruiken voor het trainen van zijn (nieuwe) medewerkers. Zij gebruiken momenteel de Een voorgedefinieerde groep deelnemers instelling om uitnodigingsmails te versturen. Veel medewerkers zien deze uitnodigingen echter als spam, en sommige van deze e-mails komen ook in hun spam-mappen terecht. De klant wil deze uitnodigingen in plaats daarvan vanuit zijn eigen systeem versturen.

De klant maakt eerst een webhook aan die een payload naar de Examen-API - Deelnemer toevoegen zonder kennisgeving. Wanneer een nieuwe medewerker aan je systeem wordt toegevoegd, stuurt de webhook de payload naar de Examen-API die de medewerker toevoegt. De API-aanroep stuurt geen uitnodiging naar deze medewerker. Wanneer de API-aanroep succesvol is, bevat de reactie ook inloggegevens. Deze inloggegevens moeten dan vanuit je eigen systeem en mailprogramma naar de medewerker worden gestuurd.

Dit werkt ook voor bestaande medewerkers, je hoeft alleen maar een webhook aan te maken die een payload naar de Examen-API stuurt die de actie van het toevoegen van deelnemers triggert zonder het Examen te melden. De inloggegevens die terugkomen in het antwoord op de API-aanroep kunnen dan vanuit je eigen systeem worden verzonden.

Voorbeeld 3 - Examens verkopen

Een klant maakt Exams aan in ons systeem en verkoopt deze aan zijn eigen klanten vanaf hun e-commerce website. Hij wil dit automatiseren nadat zijn klanten betalen voor een Examen.

Om zijn verkoopproces te automatiseren zal hij een webhook moeten gebruiken. Wanneer zijn klanten een examen kopen of betalen op zijn e-commerce website, worden ze toegevoegd aan zijn systeem. De webhook die hij aanmaakt moet getriggerd worden nadat ze betaald hebben. Deze webhook zal dan de relevante payload naar de Examen-API-call sturen en moet een (n)-succes of foutreactie terugsturen. Als het een succesvol antwoord is, voegt de API-aanroep toe en nodigt hij zijn klanten uit voor het Examen waarvoor zij hebben betaald.



5. Wanneer gebruiken we elk van de API-aanroepen en wat zijn hun specificaties?

Omdat elke API-aanroep een andere functie heeft, kunnen ze worden gebruikt om verschillende dingen te bereiken. Bijvoorbeeld, Deelnemer toevoegen aan Examen (uitnodigen) kan gebruikt worden om een deelnemer toe te voegen en automatisch een uitnodiging voor een Examen te sturen wanneer deze trigger geactiveerd is.

Onze API accepteert applicatie/x-www-form-urlencoded of multipart/form-data en json.

Lees meer over onze Exam- en Academy API-aanroepen in dit artikel.

Lees meer over onze Course API call in dit artikel.
Was dit artikel behulpzaam ?
annuleren
Dank je wel !