Sie nutzen APIs dutzende Male täglich, ohne es zu bemerken. Das Abrufen der Wettervorhersage auf Ihrem Telefon, das Senden einer Nachricht, das Bezahlen von etwas online: Jede dieser Aktionen übergibt still eine Anfrage an eine API und wartet auf eine Antwort. Das Wort klingt nach tiefer Infrastruktur, aber die dahinterstehende Idee ist einfach, und sobald Sie sie verstanden haben, sehen Sie APIs überall.
Dieser Leitfaden liefert Ihnen eine handhabbare API-Definition in einfacher Sprache und in technischen Begriffen, dann erklärt er, wie APIs Daten tatsächlich bewegen: Anfragen und Antworten, Endpunkte, Methoden, Authentifizierung und das JSON, das sie zurückgeben. Danach behandeln wir die wichtigsten Stile, denen Sie begegnen werden (REST, SOAP, GraphQL und Webhooks), schauen uns echte Beispiele an und zeigen, wie eine Scraping-API eine unordentliche Website, die keine offizielle API hat, in etwas verwandelt, das Sie wie eine aufrufen können.
API-Definition: Was eine API eigentlich ist
Eine API, kurz für Application Programming Interface (Anwendungsprogrammierschnittstelle), ist eine Reihe von Regeln, die es zwei Softwareteilen ermöglicht, miteinander zu kommunizieren. Ein Programm fragt nach etwas; das andere antwortet in einem vorhersehbaren Format. Die API ist der vereinbarte Vertrag in der Mitte, der festlegt, wie man fragt und was man zurückbekommt.
Die klassische Vorstellung ist die eines Restaurants. Sie sitzen an einem Tisch (Ihre App), lesen eine Speisekarte mit den Dingen, die Sie bestellen dürfen (die dokumentierten Optionen der API), und sagen dem Kellner, was Sie möchten. Der Kellner (die API) trägt Ihre Bestellung in die Küche (den Server), wartet, während sie zubereitet wird, und bringt das Ergebnis zurück an Ihren Tisch. Sie betreten die Küche nie, und Sie müssen nicht wissen, wie das Gericht gekocht wird. Sie müssen nur wissen, was auf der Speisekarte steht und wie man es bestellt.
In technischen Begriffen stellt eine API einer Systemfunktionalität oder -daten eine definierte Schnittstelle bereit, während die dahinterliegende Implementierung verborgen bleibt. Sie abstrahiert die Datenbank, die Geschäftslogik und den internen Code und gibt der Außenwelt einen stabilen Satz von Operationen zum Aufrufen. Diese Abstraktion ist der gesamte Wert: Die Küche kann ihre Rezepte komplett ändern, und solange die Speisekarte gleich bleibt, bemerkt Ihr Tisch es nie.
Eine API ist ein Vertrag für die Software-zu-Software-Kommunikation. Eine Seite fragt, die andere antwortet in einem vereinbarten Format, und keine muss wissen, wie die andere intern aufgebaut ist.
Wie eine API funktioniert: Anfrage und Antwort
Fast jede API läuft auf demselben einfachen Kreislauf: Ein Client sendet eine Anfrage, der Server gibt eine Antwort zurück. Alles andere ist ein Detail darüber hinaus. Gehen Sie die Teile durch und der Rest dieses Artikels fällt an seinen Platz.
Die Anfrage
Eine Anfrage ist eine Nachricht, die Ihr Programm an die API sendet und darin sagt, was es möchte. Eine typische Web-API-Anfrage enthält vier Dinge: welche Adresse aufgerufen werden soll (den Endpunkt), welche Art von Aktion Sie möchten (die Methode), wer Sie sind (Authentifizierung) und manchmal einen Datenkörper, den Sie mitsenden.
Die Antwort
Die Antwort ist das, was zurückkommt. Sie enthält normalerweise einen Statuscode, der Ihnen mitteilt, wie es gelaufen ist (200 bedeutet Erfolg, 404 bedeutet nicht gefunden, 401 bedeutet keine Berechtigung), und einen Körper mit den angeforderten Daten, meist als JSON formatiert. Ihr Code liest diese Antwort und macht etwas Nützliches damit.
Endpunkte
Ein Endpunkt ist eine spezifische Adresse, die Sie aufrufen, um eine bestimmte Ressource oder Aktion zu erreichen. Wenn die API die Speisekarte ist, sind Endpunkte die einzelnen Artikel darauf. Eine Wetter-API könnte einen Endpunkt für aktuelle Bedingungen und einen anderen für die Fünf-Tage-Vorhersage bereitstellen. Endpunkte fallen in der Regel in einige vertraute Formen:
- Ressourcenendpunkte geben eine spezifische Sache zurück, z. B. ein einzelnes Nutzerprofil oder ein Produkt.
- Sammlungsendpunkte geben eine Gruppe von Dingen zurück, z. B. eine Liste aller Produkte.
- Aktionsendpunkte führen eine Operation durch, z. B. die Verarbeitung einer Zahlung oder das Senden einer E-Mail.
- Suchendpunkte ermöglichen Ihnen Abfragen und Filtern, z. B. alle Bestellungen dieser Woche zu finden.
Methoden
Die Methode teilt der API mit, was Sie mit einem Endpunkt beabsichtigen. Web-APIs leihen diese Verben direkt von HTTP aus, und vier davon decken das meiste ab, was Sie schreiben werden:
- GET liest Daten, ohne etwas zu ändern (Profil abrufen).
- POST erstellt etwas Neues (eine neue Bestellung absenden).
- PUT aktualisiert eine bestehende Sache (Profil bearbeiten).
- DELETE entfernt etwas (eine Bestellung stornieren).
Authentifizierung
Die meisten nützlichen APIs müssen wissen, wer ruft, bevor sie antworten. Authentifizierung ist die API, die Ihren Ausweis an der Tür prüft. Die einfachste Form ist ein API-Schlüssel, ein langer geheimer String, den Sie bei jeder Anfrage mitschicken und der Ihr Konto identifiziert, ähnlich wie ein Hausschlüssel, der eine bestimmte Tür öffnet. Tokens gehen einen Schritt weiter: Sie verhalten sich eher wie eine Smartcard, die auch Informationen darüber trägt, was Sie tun dürfen, und Standards wie OAuth 2.0 nutzen sie für berechtigungsbasierten Zugriff. Die richtige Wahl ist eine Balance. Ein einfacher API-Schlüssel reicht für ein schlichtes internes Tool, während eine öffentliche, nutzerorientierte App normalerweise die stärkeren Garantien möchte, die Tokens und OAuth bieten.
JSON: das Format, in dem die meisten Antworten gesprochen werden
Wenn eine API antwortet, muss sie die Daten so formatieren, dass Ihr Programm sie zuverlässig lesen kann. JSON (JavaScript Object Notation) ist der Standard geworden, weil es kompakt, menschenlesbar und von jeder modernen Sprache unterstützt wird. Es stellt Daten als Schlüssel-Wert-Paare und verschachtelte Listen dar, was gut auf die Objekte passt, mit denen die meisten Programme bereits arbeiten. Eine kleine JSON-Antwort für einen einzelnen Nutzer könnte so aussehen:
{ "id": 42, "name": "Ada Lovelace", "email": "[email protected]", "active": true }
Fügen Sie die Teile zusammen und ein vollständiger Round-Trip liest sich fast wie ein Satz: Senden Sie eine GET-Anfrage an den Nutzer-Endpunkt mit Ihrem API-Schlüssel und erhalten Sie JSON zurück. Hier ist dieselbe Idee als einzeiliger Aufruf, den Sie von einem Terminal aus ausführen könnten, plus die Art der Antwort, die er zurückgibt.
# GET a user, sending an API key as a header curl -H "Authorization: Bearer YOUR_API_KEY" \ "https://api.example.com/users/42"
Der Server liest die Anfrage, bestätigt den Schlüssel, schlägt Nutzer 42 nach und antwortet mit dem oben genannten JSON-Objekt. Das ist der gesamte Mechanismus hinter den meisten APIs, die Sie jemals berühren werden.
API-Typen: REST, SOAP, GraphQL und Webhooks
APIs folgen einer Handvoll gängiger Stile. Sie alle erledigen die Anfrage-und-Antwort-Aufgabe, unterscheiden sich aber darin, wie strikt sie sind, wie Sie nach Daten fragen und wie die Daten zurückkommen. Vier decken die große Mehrheit von dem ab, was Sie antreffen werden.
REST
REST (Representational State Transfer) ist der dominante Stil im modernen Web. Es ist weniger ein striktes Protokoll als vielmehr eine Reihe von Konventionen: Verwenden Sie einfache HTTP-Methoden an klar benannten Endpunkten, halten Sie jede Anfrage eigenständig und geben Sie Daten in einem einfachen Format wie JSON zurück. REST ist beliebt, weil es zugänglich und zustandslos ist, d. h. jede Anfrage trägt alles, was der Server benötigt, und der Server hat keine Erinnerung an vorherige Aufrufe. Das macht REST-APIs leicht zu cachen, leicht zu skalieren und leicht zu erlernen, weshalb die meisten öffentlichen APIs, denen Sie begegnen, RESTful sind.
SOAP
SOAP (Simple Object Access Protocol) ist der ältere, strengere Cousin. Während REST flexibel ist, setzt SOAP einen starren Vertrag durch: Nachrichten sind immer XML und müssen einer formalen Struktur folgen. Diese Strenge ist in regulierten, risikoreichen Umgebungen ein Vorteil. SOAP hat starke integrierte Standards für Sicherheit, Transaktionen und Zuverlässigkeit, sodass es immer noch in Unternehmensumgebungen wie Banking und Zahlungsabwicklung auftaucht, wo zuverlässiges, prüfbares Messaging wichtiger ist als Komfort.
GraphQL
GraphQL, 2012 bei Facebook entwickelt, verfolgt einen anderen Ansatz. Anstatt viele Endpunkte, die jeweils eine feste Datenform zurückgeben, stellt es einen einzigen Endpunkt bereit und lässt den Client genau nach den gewünschten Feldern fragen. Die Vorteile ergeben sich direkt: Sie hören auf, Daten abzurufen, die Sie nicht benötigen, können zusammengehörige Dinge in einem Round-Trip statt mehreren abrufen, und ein typisiertes Schema dokumentiert präzise, was verfügbar ist, bevor Sie jemals eine Abfrage senden. Diese Präzision macht GraphQL attraktiv für komplexe Apps mit vielen Bildschirmen, die jeweils etwas unterschiedliche Ausschnitte derselben Daten benötigen.
Webhooks
Webhooks kehren die übliche Richtung um. Bei REST, SOAP und GraphQL fragt Ihre App und der Server antwortet; bei einem Webhook teilt der Server Ihrer App im Moment eines Ereignisses mit, ohne dass gefragt werden muss. Sie registrieren eine URL, und wenn ein Ereignis eintritt (eine Zahlung wird abgewickelt, ein Build fertiggestellt, ein Formular abgeschickt), sendet der Dienst eine Anfrage an Ihre URL mit den Details. Denken Sie daran als Unterschied zwischen dem wiederholten Anrufen der Küche, um zu fragen, ob Ihre Bestellung fertig ist, und der Küche, die einfach eine Glocke läutet, wenn sie fertig ist. Webhooks sind der Standardweg, um Echtzeit-Updates zu erhalten, ohne eine API immer wieder abzufragen.
Echte API-Beispiele
Die klarste Möglichkeit, die API-Definition zu festigen, ist es, einige zu nennen, die Sie fast sicher genutzt haben:
- Zahlungen. Wenn eine Kassenseite Ihre Karte belastet, ruft sie im Hintergrund die API eines Zahlungsanbieters auf. Der Shop berührt niemals Ihre rohen Kartendaten; er bittet die API, die Transaktion zu verarbeiten, und wartet auf eine Genehmigt-oder-Abgelehnt-Antwort.
- Karten. Eine Liefer-App, die eine Live-Karte und eine geschätzte Ankunftszeit anzeigt, ruft Kacheln, Routen und Entfernungen von einer Karten-API ab, anstatt ihre eigene Weltkarte aufzubauen.
- Anmeldung mit Google oder Apple. Diese Schaltflächen nutzen eine Authentifizierungs-API, damit eine App bestätigen kann, wer Sie sind, ohne jemals Ihr Passwort zu sehen.
- Wetter. Die Vorhersage in der Wetter-App Ihres Telefons kommt von der API eines Wetteranbieters, denselben Daten, die an Landwirtschaft, Logistik und Veranstaltungsplanung verkauft werden.
- Social Media und Streaming. Das Posten von einer Drittanbieter-App oder das Erhalten einer personalisierten Wiedergabeliste läuft über APIs, die Daten im Namen der Plattform lesen und schreiben.
Warum APIs wichtig sind
APIs sind der Grund, warum moderne Software aus Teilen gebaut wird, statt von Grund auf neu. Kein Team muss seinen eigenen Zahlungsabwickler, seine eigene Karten-Engine oder sein eigenes Authentifizierungssystem schreiben, wenn eine gut dokumentierte API die Aufgabe in wenigen Aufrufen erledigt. Das ermöglicht es Unternehmen, schneller zu liefern und sich auf das zu konzentrieren, was ihr Produkt unterscheidet, anstatt gelöste Probleme neu aufzubauen.
Sie schaffen auch echten Geschäftswert. APIs ermöglichen es einem Unternehmen, sich in Partner-Ökosysteme einzubinden, neue Vertriebskanäle zu erschließen und Kundensegmente zu erreichen, die es allein nicht bedienen könnte. Viele Organisationen behandeln ihre Daten und Dienste mittlerweile als Produkte an sich: Ein Wetterdienst verkauft seine Prognosen über eine API, eine Bank stellt Kontodaten für Fintech-Apps bereit, und beide verwandeln bestehende Systeme in Einnahmen. APIs vereinheitlichen auch die Kundensicht, indem sie Datensilos aufbrechen, sodass eine App, eine Website und ein Chatbot alle dieselben konsistenten, aktuellen Informationen präsentieren können.
Wenn eine Website keine API hat: die Scraping-API
Hier ist die Lücke. Viele Daten, die Sie möglicherweise benötigen, befinden sich auf öffentlichen Websites, die überhaupt keine offizielle API anbieten. Die Informationen sind direkt auf der Seite, aber es gibt keinen sauberen Endpunkt zum Aufrufen und kein JSON, das auf Sie wartet. Die traditionelle Antwort ist Web-Scraping: das HTML der Seite abrufen und die Werte selbst herausziehen. Das funktioniert, bis die Website Inhalte mit JavaScript rendert, unbekannte Besucher blockiert, ein CAPTCHA auslöst oder ihr Layout ändert, an welchem Punkt ein einfacher Abruf zu einem laufenden Wartungsproblem wird.
Eine Scraping-API schließt diese Lücke, indem sie all das hinter einem einzigen Endpunkt verpackt. Anstatt Browser, Proxys und Wiederholungsversuche selbst zu verwalten, senden Sie eine einzige Anfrage, die die gewünschte URL benennt, und Sie erhalten die Seite als saubere Antwort zurück, genau die Anfrage-und-Antwort-Schleife, die jede andere API nutzt. Effektiv gibt sie einer API-losen Website eine API-ähnliche Schnittstelle: Sie rufen sie genauso auf, wie Sie einen Wetter- oder Zahlungsdienst aufrufen würden, und die unordentlichen Teile des Abrufens einer echten Seite bleiben auf der anderen Seite des Vertrags.
Wenn eine Website, die Sie benötigen, keine eigene API hat, gibt ihr die Crawling API eine. Senden Sie eine einzige Anfrage mit dem Namen der Seite, und Crawlbase übernimmt das JavaScript-Rendering, die IP-Rotation und CAPTCHAs im Hintergrund und gibt dann das HTML der Seite zurück, damit Sie mit den Daten arbeiten können, statt gegen die Infrastruktur zu kämpfen. Sie erhalten bis zu 20.000 kostenlose Anfragen.
Sobald eine Seite als vorhersehbare Antwort zurückkommt, gilt alles, was Sie oben gelernt haben. Sie können das HTML mit einer Bibliothek parsen, die Daten mit Python oder Node.js anfordern und das Ergebnis genauso in Ihre eigene App einspeisen, als wäre es von einem dokumentierten JSON-Endpunkt angekommen. Die Website wird zu einfach einer weiteren API, die Ihr Code aufzurufen weiß.
Verantwortungsvolles Scraping
Eine Website wie eine API zu behandeln, hebt Ihre Verantwortung für die Art und Weise, wie Sie sie nutzen, nicht auf. Bleiben Sie bei öffentlichen Daten, lesen und respektieren Sie die Nutzungsbedingungen der Website und ihre robots.txt, identifizieren Sie Ihre Anfragen ehrlich und halten Sie Ihre Anfragerate vernünftig, damit Sie die Server anderer Leute nicht belasten. Eine verwaltete Scraping-API hilft Ihnen, höflich zu bleiben, indem sie Anfragen für Sie verteilt und dosiert, aber das Urteil darüber, was zu sammeln ist und wie hart eine Website zu treffen ist, liegt immer noch bei Ihnen.
Wichtigste Erkenntnisse
- Eine API ist ein Vertrag. Sie ermöglicht zwei Programmen die Kommunikation, indem sie festlegt, wie man fragt und was zurückkommt, während die dahinterliegende Implementierung verborgen bleibt.
- Alles ist Anfrage und Antwort. Ein Client sendet eine Anfrage an einen Endpunkt mit einer Methode und Authentifizierung, und der Server antwortet, meist in JSON.
- Stile unterscheiden sich, nicht der Kerngedanke. REST ist der flexible Web-Standard, SOAP ist strikt und unternehmenstauglich, GraphQL ruft genau die angeforderten Felder ab, und Webhooks senden Ihnen Updates.
- APIs sind der Grund, warum Software modular ist. Sie ermöglichen es Teams, Zahlungen, Karten und Authentifizierung wiederzuverwenden, statt sie neu zu bauen, und ermöglichen es Unternehmen, Daten in Produkte zu verwandeln.
- Eine Scraping-API gibt einer API-losen Website eine Schnittstelle. Eine Anfrage hinein, eine saubere Seite heraus, sodass eine Website, die Sie nicht offiziell abfragen können, sich wie jede andere API verhält.
Häufig gestellte Fragen
Was ist eine API in einfachen Worten?
Eine API ist eine Reihe von Regeln, die es zwei Softwareprogrammen ermöglicht, miteinander zu kommunizieren. Ein Programm sendet eine Anfrage nach Daten oder einer Aktion, und das andere sendet eine Antwort in einem vereinbarten Format zurück. Wie ein Kellner, der Ihre Bestellung in die Küche trägt und das Essen zurückbringt, übernimmt die API das Gespräch, damit keine Seite wissen muss, wie die andere innen funktioniert.
Was ist der Unterschied zwischen einer API und einer Website?
Eine Website ist für Menschen gebaut: Sie gibt HTML zurück, das für einen Browser gestaltet ist, damit ein Mensch es lesen kann. Eine API ist für Programme gebaut: Sie gibt strukturierte Daten zurück, meist JSON, die andere Software direkt lesen kann. Eine Scraping-API sitzt dazwischen, ruft eine für Menschen gedachte Seite ab und gibt sie als vorhersehbare Antwort zurück, die Ihr Code verarbeiten kann.
Was sind die Haupttypen von APIs?
Die häufigsten Stile sind REST, SOAP, GraphQL und Webhooks. REST ist der flexible, weit verbreitete Standard für Web-Dienste. SOAP ist ein strengeres, XML-basiertes Protokoll, das in Unternehmen und Finanzen bevorzugt wird. GraphQL lässt Clients genau die Felder anfordern, die sie von einem einzigen Endpunkt benötigen. Webhooks kehren den Fluss um, sodass ein Server Ihrer App Echtzeit-Updates senden kann, wenn ein Ereignis eintritt.
Was ist JSON und warum nutzen APIs es?
JSON (JavaScript Object Notation) ist ein kompaktes, textbasiertes Format zur Darstellung von Daten als Schlüssel-Wert-Paare und Listen. APIs bevorzugen es, weil es kompakt, leicht für Menschen zu lesen und von jeder modernen Programmiersprache unterstützt wird, was Antworten einfach zu senden, zu speichern und zu parsen macht.
Benötige ich einen API-Schlüssel, um eine API zu nutzen?
Oft ja. Viele APIs benötigen einen API-Schlüssel oder ein Token, damit sie Ihr Konto identifizieren, den Zugriff kontrollieren und die Nutzung verfolgen können. Sie fügen den Schlüssel bei jeder Anfrage ein, ähnlich wie das Vorzeigen eines Ausweises an einer Tür. Einige offene APIs erlauben eine begrenzte Nutzung ohne Schlüssel, aber die meisten Produktionsdienste erwarten einen.
Wie nutze ich eine Website, die keine API hat?
Sie können eine Scraping-API verwenden, die die Website hinter einem einzigen Endpunkt verpackt. Sie senden eine Anfrage mit dem Namen der gewünschten Seite, und der Dienst ruft sie ab, übernimmt Rendering, IP-Rotation und Blockierungen für Sie, und gibt dann das HTML als saubere Antwort zurück. Von dort parsen Sie die Daten genauso wie bei jeder anderen Standard-API.
Crawlen Sie jede Website im großen Maßstab, ohne gegen die Infrastruktur zu kämpfen.
Crawlbase übernimmt Proxys, Fingerprints und CAPTCHAs, damit Ihr Team Datenpipelines ausliefert, statt Crawl-Infrastruktur zu pflegen. 1.000 Anfragen kostenlos, keine Karte erforderlich.
