Wat is een API?
Een applicatie-programmeerinterface of API is een set datastructuren, protocollen, routines en tools voor toegang tot een webgebaseerde softwareapplicatie. Het biedt alle bouwstenen voor het gemakkelijk ontwikkelen van programma's. Een applicatie-programmeerinterface kan taalafhankelijk of taalonafhankelijk zijn. Een taalafhankelijke API is alleen beschikbaar in een bepaalde programmeertaal. Taalonafhankelijke API's zijn niet gebonden aan een bepaalde taal, systeem of proces. Ze kunnen vanuit verschillende programmeertalen worden opgeroepen.
API's worden stil op de achtergrond uitgevoerd. Ze zijn volledig onzichtbaar voor softwaregebruikers en websurfers. Hun primaire rol is om een kanaal te bieden waarmee applicaties met elkaar kunnen samenwerken om ervoor te zorgen dat de gebruiker de vereiste functionaliteit en informatie krijgt.
Wanneer een gebruiker bijvoorbeeld een product online koopt en zijn of haar creditcardinformatie invoert, gebruikt de productwebsite een API om de creditcardinformatie naar een andere toepassing te verzenden. De applicatie controleert of de informatie correct is of niet. Vervolgens autoriseert het de productwebsite om het gekochte product uit te geven nadat de informatie is geverifieerd en de betaling is bevestigd. Een website heeft veel van dergelijke applicaties die samenwerken met behulp van API's.
Applicatie-programmeerinterfaces zorgen ervoor dat softwareontwikkelaars niet vanaf nul hoeven te beginnen met het bouwen van applicaties. Het is niet nodig om één applicatie te bouwen die elke functie uitvoert. De applicatie kan bepaalde verantwoordelijkheden overdragen naar een externe applicatie. API's zijn dus vergelijkbaar met SaaS (Software as a Service).
Een softwarebedrijf geeft zijn API vrij aan programmeurs in de vorm van een software-ontwikkelingskit (SDK). De SDK bevat programmeertools, de applicatie-programmeerinterface en releasedocumenten om het werk van de programmeur eenvoudiger te maken.
Een bedrijf volgt een aantal publicatiebeleidsregels voordat API's worden vrijgegeven aan de ontwikkelaars, waaronder:
- Belangrijke informatie over een applicatie-programmeerinterface kan aan niemand buiten het bedrijf worden vrijgegeven.
- Bedrijven moeten API's vrij toegankelijk maken voor het publiek. Microsoft® maakt bijvoorbeeld DirectX® en de volledige API's gratis voor ontwikkelaars. Ze moeten de SDK downloaden om toegang te krijgen tot deze componenten. Microsoft® heeft de Windows® API ook gratis gemaakt voor ontwikkelaars voor het maken van applicaties die consistent zijn met de besturingsomgeving. Apple® heeft ook zijn API's Carbon® en Cocoa® vrijgegeven voor ontwikkelaars om nuttige toepassingen voor de iPhone te maken.
- Een bedrijf beschermt informatie tegen het grote publiek. De officiële PlayStation® 2 API is bijvoorbeeld alleen door Sony® vrijgegeven aan gelicentieerde PlayStation®-ontwikkelaars. Zo had Sony® volledige controle over de kwaliteit van zijn games en genoot hij van mogelijke licentie-inkomsten.