Schnittstellenentwicklung und API-Entwicklung

Deine Systeme sollen miteinander reden, statt dass jemand Daten von Hand überträgt. Wir entwickeln API-Schnittstellen, binden bestehende Dienste an und sorgen dafür, dass die Verbindung im Betrieb hält.

Aktion gegen den Hunger: Startseite
Projekt: Aktion gegen den Hunger

Auszug unserer Referenzen

  • Aktion gegen den Hunger
  • Deutscher Naturschutzring
  • Umweltbundesamt
  • INKOTA-netzwerk
  • erntemich
  • Das NETTZ
  • Netzwerk Stiftungen und Bildung
  • Schulen gegen den Hunger
  • GoodFunds

Grundlagen

Was ist eine API-Schnittstelle?

Eine API, kurz für Application Programming Interface, verbindet zwei oder mehr Software-Komponenten über ein festgelegtes Protokoll. Sie legt fest, wie ein System beim anderen Daten abfragt oder etwas auslöst, ohne dass ein Mensch dazwischen kopieren muss.

„Die Spenden tragen wir jeden Montag von Hand ins CRM ein.“

Eine Schnittstelle überträgt die Daten sofort und ohne Tippfehler.

„Das neue Tool kann alles, nur nicht mit unserem alten System reden.“

Eine API-Schnittstelle zwischen beiden spart den Systemwechsel.

„Unsere Partner wollen an unsere Daten, aber wir schicken Excel-Listen.“

Eine eigene, dokumentierte API macht deine Daten für andere nutzbar, kontrolliert und sicher.

APIs gibt es privat, also nur für deine eigenen Systeme, oder öffentlich für Partner und andere Entwickler. Welche Variante passt, hängt von der Aufgabe ab. Technisch setzen wir je nach Anforderung auf REST, GraphQL oder SOAP.

Schnittstellenentwicklung

API-Entwicklung: Schnittstellen entwickeln, die halten.

Wer eigene Services anbieten will, braucht eine saubere API. Wir klären mit dir Notwendigkeiten und Möglichkeiten und setzen die Schnittstelle so um, dass andere Systeme sich auf sie verlassen können.

  1. gemeinsam

    Anforderungen

    Welche Daten fließen wohin, wie oft, und wer darf was? Daraus entsteht der Entwurf der Schnittstelle.

  2. vor dem Code

    Entwurf

    Endpunkte, Datenformate und Fehlerfälle werden beschrieben, bevor programmiert wird, etwa als OpenAPI-Spezifikation.

  3. automatisch geprüft

    Umsetzung und Tests

    Wir entwickeln die API mit automatisierten Tests, damit spätere Änderungen nichts Bestehendes brechen.

  4. dauerhaft

    Dokumentation und Betrieb

    Die Schnittstelle wird dokumentiert, ausgerollt und überwacht.

Unsere API-Entwickler bauen Schnittstellen als Teil deiner Software oder als eigenen Dienst: als REST- oder GraphQL-API, mit Webhooks für Ereignisse, als Microservice oder entkoppelt (decoupled) vom Rest der Anwendung. Ob du eine neue API-Schnittstelle entwickeln lassen willst oder eine bestehende Schnittstelle (API) erweitern: API-Schnittstellen-Entwicklung und Schnittstellen-Entwicklung sind bei uns Teil der individuellen Softwareentwicklung, nicht ein loses Zusatzteil.

Anbindungen

API-Schnittstellen zu den Diensten, die du schon nutzt.

Oft muss keine neue API entstehen, sondern eine bestehende angebunden werden. Wir verbinden deine Website oder Anwendung mit Software as a Service (SaaS) und Cloud-Lösungen.

Typische Anbindungen

  • Spenden- und Fundraising-Software, etwa FundraisingBox
  • Newsletter- und Marketing-Tools wie Brevo (Sendinblue), Mailchimp, Mailjet oder ActiveCampaign
  • CRM und Mitgliederverwaltung
  • Ältere Systeme über SOAP
  • Drupal als Headless CMS für eigene Frontends

Ein Beispiel: Für Aktion gegen den Hunger haben wir ein Spendenformular mit API an FundraisingBox angebunden, dazu ein Petitionstool mit Double-Opt-in und Newsletter-Anbindung. Für die KFZ-Innung Dresden kommen Mitglieder, Weiterbildungen und Stellenausschreibungen per SOAP aus den internen Systemen auf die Website.

API-Dokumentation

Eine API für Entwickler ist nur so gut wie ihre Dokumentation.

Damit andere Entwickler deine öffentliche API nutzen können, gehört eine Schnittstellendokumentation dazu. Wir halten uns an Standards wie die OpenAPI-Spezifikation (Swagger) oder das Schema von GraphQL.

API-Dokumentation nach OpenAPI oder GraphQL-Schema, lesbar für Menschen und Maschinen

Beispiele für jede Abfrage, damit der Einstieg schnell gelingt

SDK-Entwicklung: Für manche Fälle entwickeln wir ein Software Development Kit in der Programmiersprache, die deine Nutzer brauchen

Versionen und Änderungen nachvollziehbar, damit bestehende Anbindungen nicht plötzlich brechen

Sicherheit

Offen für die Richtigen, geschlossen für alle anderen.

Eine API-Software öffnet deine Daten nach außen. Deshalb gehören Schutzmechanismen von Anfang an in den Entwurf.

Was wir absichern

  • Authentifizierung und Autorisierung mit OAuth oder JWT
  • Rate-Limiting gegen Überlastung und Missbrauch
  • Rechte und Rollen: Jeder sieht nur die Daten, die er sehen darf
  • Event Sourcing, wenn Änderungen lückenlos nachvollziehbar sein müssen

Betrieb und Überwachung

Eine Schnittstelle ist erst fertig, wenn sie im Betrieb hält.

Die Gegenseite ändert ihr Format, ein Zertifikat läuft ab, ein Dienst ist kurz weg. Schnittstellen fallen selten laut aus, sondern still. Deshalb überwachen wir sie.

Überwachung von Erreichbarkeit, Antwortzeiten und Fehlern

Alarmierung, bevor fehlende Daten jemandem auffallen

Wiederholung fehlgeschlagener Übertragungen statt stiller Datenverluste

Wartung, wenn Anbieter ihre API ändern

Hosting, Updates und Überwachung für deine Anwendung und ihre Schnittstellen.

Zu Betrieb und Wartung

Schnittstelle anfragen

Welche Systeme sollen bei dir miteinander reden?

30 Minuten, kostenlos und unverbindlich. Wir klären, welche Daten fließen sollen und wie die Schnittstelle dafür aussehen kann.

Tim Schmidt, Inhabermeldet sich persönlich, meist am selben Werktag.