22 June 2022

In 5 stappen een API-koppeling bouwen

Twee digitale systemen kunnen met elkaar communiceren via een API-koppeling. In dit artikel leggen we uit hoe we bij Myler Media een API-koppeling bouwen.
Shape 6

Twee digitale systemen kunnen met elkaar communiceren via een API-koppeling. Handig om bijvoorbeeld data uit het ene programma automatisch te synchroniseren met het andere. Dat bespaart handmatig werk. In dit artikel leggen we uit hoe we bij Myler Media een API-koppeling bouwen.

Wat is een API-koppeling?

API staat voor Application Programming Interface. Een API-koppeling verbindt twee verschillende softwareprogramma’s of applicaties met elkaar en maakt communicatie mogelijk. Zelfs als de twee programma’s in een andere programmeertaal geschreven zijn.

Zo werkt het: data uit het ene programma wordt beschikbaar gesteld om uit te lezen. Het andere programma doet dat ook. Door een API-koppeling te bouwen wordt de data vertaald en verzonden. Zo is onderlinge communicatie mogelijk.

Voorbeeld

Boekhoudsoftware MoneyBird kun je verbinden met e-mailmarketingsoftware MailChimp. Een API-koppeling bouw je bijvoorbeeld op zo’n manier dat elke nieuwe klant automatisch in je klantenlijst in MailChimp terecht komt, zodat hij of zij voortaan ook de nieuwsbrief ontvangt.

Soorten API’s

We maken onderscheid tussen drie soorten API’s. Elk heeft zo zijn eigen unieke eigenschappen, voordelen en nadelen.
 

  • Publieke API - Toegankelijk voor iedereen en wordt ook wel open API genoemd. Ontwikkelaars zijn vrij om koppelingen te bouwen met de API zonder hiervoor te betalen. Meestal is er ook volop documentatie online te vinden.

  • Partner API - Voor het gebruik van deze API is toegang nodig vanuit het bedrijf die de API beheert. Ook betaalde API’s vallen onder deze categorie.

  • Privé API - Niet-openbare API en alleen voor intern gebruik. Dit type API wordt gebruikt voor communicatie tussen applicaties die je alleen binnen jouw team of organisatie gebruikt. 

Kun je zelf een API-koppeling bouwen?

Voor veel bekende softwarepakketten zijn kant-en-klare API-koppelingen beschikbaar. Het is een service vanuit de software die concurrentievoordeel oplevert en de klanttevredenheid vergroot. Of er is door een onafhankelijke ontwikkelaar een koppeling gebouwd die je tegen betaling kunt gebruiken. Als gebruiker kun je deze koppelingen met kleine moeite instellen en gebruiken.

Is er nog geen API-koppeling beschikbaar? Dan kun je er zelf één bouwen. Tenminste, als je kan programmeren en over een server beschikt waarop je de applicatie kunt hosten. Daar is behoorlijk wat technische kennis voor nodig.

Liever uitbesteden? Lees hier meer informatie of neem direct contact met ons op.

API-koppeling maken

Een nieuwe API-koppeling maken, doen we bij Myler Media in vijf stappen. 

In onderstaand voorbeeld gaan we uit van een API voor privégebruik binnen een organisatie, maar dezelfde stappen zijn ook toepasbaar op een publieke API of partner API.

1. Voorbereiding

Een goede voorbereiding is het halve werk. In het geval van API-koppelingen maken is dit letterlijk de helft van het werk. 
 

  • Inventarisatie - Eerst zoeken we uit of beide systemen een API beschikbaar stellen. En of er documentatie voor geschreven is. We zoeken we uit welke data we nodig hebben en welke we kunnen uitlezen. 

  • Contact - Bij beide systemen vragen we naar een technisch contactpersoon. Deze persoon schakelen we in voor hulp. Maar we vragen ook of er al een dergelijke koppeling op de planning staat. Als de koppeling die we voor ogen hebben bijvoorbeeld op de roadmap over een half jaar staat, kan het de moeite waard zijn om gewoon nog even te wachten.

  • Actieplan - Wanneer we alle informatie hebben die nodig is, maken we een plan van aanpak voor de bouw.

2. API-koppeling bouwen

Een API-koppeling bouwen betekent dat we een nieuwe applicatie schrijven. Dat doen we zo licht en clean mogelijk. Zo zorgen we voor optimale prestaties bij zware belasting en minimaliseren we de kans op storingen.
 

  • Programmeertaal kiezen - Je kunt zelf kiezen in welke programmeertaal je een koppeling ontwikkelt. Bij Myler Media geven we de voorkeur aan C# in het framework .NET Core. Dit is een superstabiele en toekomstbestendige programmeertaal. Omdat grote bedrijven als Microsoft en Meta er ook graag mee werken, verwachten we dat deze taal over 20 jaar nog steeds actueel is en onderhouden wordt. Een ander voordeel is dat het ook op Linux werkt en daarmee goedkoper is.

  • Limiet instellen - Elk verzoek kost processorkracht (stroom) van de server. Populaire API’s die constant gebruikt worden, hebben daarom een zware server nodig om in de lucht te blijven. Om die reden kiezen we ervoor om een limiet in te stellen op het aantal API-verzoeken per gebruiker. Afhankelijk van het doel van de API kan dat bijvoorbeeld één keer per uur, per week of per dag zijn.

  • Beveiliging - We versleutelen alle data en gebruiken bij gevoelige informatie end-to-end encryptie. Ook slaan we geen onnodige data op. Wat je niet hebt, kan immers ook niet uitlekken. En we stellen domeinvalidatie in om een man-in-the-middle attack te voorkomen. Met deze maatregelen minimaliseren we de kans op een datalek.

3. Testen

We maken testaccounts aan bij de systemen die we koppelen. Vervolgens testen we de koppeling met dummy data. Als het naar behoren werkt, laten we onze testers los op de applicatie. Zij proberen de koppeling uit waarvoor die bedoeld is, maar proberen de koppeling ook expres ‘kapot te maken’. Bijvoorbeeld door letters in te vullen in velden waar alleen cijfers mogen, om vervolgens te kijken hoe de koppeling daarop reageert. 

4. Live zetten

Wanneer de testfase succesvol afgerond is, en alle foutjes zijn gladgestreken, is het tijd om de applicatie te koppelen aan de accounts waarvoor die ontworpen is. Eventuele oude data en bestaande koppelingen worden eerst gemigreerd en de koppeling wordt vervolgens live gezet.

5. Onderhoud

Een API-koppeling moet onderhouden worden. Wanneer er aanpassingen gemaakt worden binnen één van de gekoppelde software kan het namelijk gebeuren dat de koppeling niet meer naar behoren werkt. Denk bijvoorbeeld aan een naamveld dat opgesplitst wordt in voor- en achternaam. Binnen de API moet deze splitsing dan ook gemaakt worden.

Met actieve monitoring heb je het in de gaten wanneer er fouten optreden. Wij gebruiken hier bijvoorbeeld Zabbix voor. Deze monitoringstool geeft aan wanneer er een fout optreedt. Dan zoeken we het uit en lossen we het probleem zo snel mogelijk op.

Zoals je ziet, komt er behoorlijk wat kijken bij het maken van API-koppeling. Wil je ook een API-koppeling laten bouwen? Onze developers hebben hier jarenlange ervaring mee en helpen je graag. Neem contact met ons op of lees hier eerst meer informatie.
 

Deel dit artikel