API ist die Abkürzung für Application Programming Interface. APIs sind Programmierschnittstellen, die vom Softwarehersteller mitgeliefert werden. APIs sind Sätze von Befehlen, Funktionen und Protokollen, die Programmierer beim Erstellen von Software für ein bestimmtes Betriebssystem oder für notwendige Software-Integrationen verwenden können. Die API ermöglicht Programmierern vordefinierte Funktionen zu verwenden, um mit dem Betriebssystem zu interagieren, anstatt sie selbst zu schreiben, was deutlich Kosten für notwendige Funktionen und Anpassungen einspart.
APIs werden meist wie ein Softwareprodukt angesehen und behandelt. APIs haben wie andere Softwareprodukte auch ihren eigenen Software Development Lifecycle. Sie werden überwacht und verwaltet, damit die Sicherheit gewährleistet ist.
Alle Computer-Betriebssysteme, wie zum Beispiel Windows, Unix und MacOS liefern eine sogenannte Anwendungsprogramm-Schnittstelle für Programmierer mit. Während APIs dem Programmierer die Arbeit erleichtern, profitieren auch Anwender von vorhandenen API Schnittstellen. APIs stellen immer sicher, das alle Programme mit der gleichen API eine ähnliche Benutzeroberfläche haben. Somit werden Einarbeitungszeiten verkürzt und Kosten für Anwenderschulungen minimiert.
Es wird zwischen verschiedenen Arten von Programmierschnittstellen (APIs) unterschieden:
Über die Jahre hinweg wurden diverse API Architekturtypen veröffentlicht. Jeder dieser Architekturtypen hat seine eigenen Muster für die Standardisierung des Datenaustauschs. Manche der aufgeführten API Typen wird mittlerweile kaum noch eingesetzt, während andere häufig genutzt werden für den Datenaustausch. Die am häufigsten eingesetzten API Architekturtypen sind RPC, SOAP, REST und GraphQL.