Uitgesproken als afzonderlijke letters, is een Application Programming Interface (API) een reeks routines, protocollen en tools voor het bouwen van softwaretoepassingen. Een API specificeert ook hoe twee of meer programma’s met elkaar omgaan; elke keer dat een gebruiker informatie van de ene applicatie kopieert en in een andere plakt, maken ze gebruik van een reeks API-protocollen die tussen de twee programma’s werken. Een goede API heeft gedetailleerde documentatie die het gemakkelijker maakt om een programma te ontwikkelen of te verfijnen door alle bouwstenen te leveren die vervolgens worden samengesteld of gemanipuleerd door een programmeur.
Soorten API’s
Er zijn veel soorten API’s voor besturingssystemen, applicaties of websites. Windows heeft bijvoorbeeld veel API-sets die worden gebruikt door systeemhardware en applicaties. De meeste besturingssystemen bieden open API’s zodat programmeurs applicaties kunnen schrijven die compatibel zijn met de huidige omgeving.
API’s kunnen ook worden gespecificeerd door websites; Met de API’s van Amazon en eBay kunnen ontwikkelaars bijvoorbeeld de bestaande winkelinfrastructuur gebruiken om gespecialiseerde webwinkels te creëren. Softwareontwikkelaars van derden gebruiken web-API’s om softwareoplossingen voor eindgebruikers te maken, en ontwikkelaars gebruiken API’s om applicaties te maken voor intern en commercieel gebruik.
Er zijn tegenwoordig duizenden API’s in gebruik, en nieuwe worden toegevoegd bij elke nieuwe softwarelancering of update. Sommige API’s zijn beschikbaar voor openbaar gebruik, terwijl andere mogelijk strikt intern zijn of beperkt in gebruik tussen twee of meer partners. API’s kunnen verschillen per architectuurtype (REST, SOAP, RPC, enz.), Maar worden over het algemeen gebruikt voor een van de volgende drie doeleinden:
- Systeem-API’s toegang tot en onderhoud van gegevens. Dit soort API’s zijn verantwoordelijk voor het beheer van alle configuraties binnen een systeem. Om een voorbeeld te noemen: een systeem-API ontgrendelt gegevens uit de facturatiedatabase van een bedrijf.
- API’s verwerken neem de gegevens waartoe toegang wordt verkregen met systeem-API’s en synthetiseer deze om een nieuwe manier te creëren om gegevens tussen systemen te bekijken of erop te reageren. Om het voorbeeld voort te zetten, zou een proces-API de factureringsinformatie gebruiken en deze combineren met voorraadinformatie en andere gegevens om een bestelling uit te voeren.
- Ervaar API’s voeg context toe aan systeem- en proces-API’s. Dit soort API’s maakt de informatie die wordt verzameld door systeem- en proces-API’s begrijpelijk voor een specifiek publiek. Volgens hetzelfde voorbeeld zou een ervarings-API de gegevens van de proces- en systeem-API’s kunnen vertalen naar een orderstatus-tracker die informatie weergeeft over wanneer de bestelling is geplaatst en wanneer de klant deze mag verwachten.
API-voorbeelden
Veelgebruikte toepassingen voor API’s variëren in complexiteit van het kopiëren en plakken van tekst tot het volgen van marktprijzen voor blockchain en cryptocurrency. Populaire API-sets zijn onder meer:
- Google Maps API: Met Google Maps API’s kunnen ontwikkelaars geolocatiegegevens insluiten op webpagina’s met behulp van een JavaScript-interface. De Google Maps API is ontworpen om te werken op mobiele apparaten en desktopbrowsers.
- YouTube API: Met de API’s van Google kunnen ontwikkelaars YouTube-video’s en -functionaliteit integreren in websites of applicaties. YouTube-API’s omvatten de YouTube Analytics API, YouTube Data API, YouTube Live Streaming API, YouTube Player API’s en meer.
- Twitter-API’s: Twitter biedt twee API’s, een voor algemene Twitter-inhoud en een andere voor Twitter-advertenties. De eerste biedt programmatische toegang tot tweets, directe berichten, Twitter-gebruikers en andere functies. De laatste verbindt ontwikkelaars met het Twitter-advertentieplatform om programma’s te bouwen rond het beheren van de creatieve inhoud, het doelpubliek en algemene prestatieanalyses van een campagne.
Amazon Product Advertising API: Amazon’s Product Advertising API geeft ontwikkelaars toegang tot de productselectie- en ontdekkingsfunctionaliteit van Amazon om reclame te maken voor Amazon-producten om geld te verdienen met een website.