Wir bieten

API-Entwicklung

Wir betreuen viele große Websites und Webanwendungen. Viele davon sind über Schnittstellen (APIs) an andere IT-Systeme angebunden. Was uns im Bereich API-Entwicklung auszeichnet – und welche Kunden uns seit vielen Jahren vertrauen.

Das zeichnet uns in der API-Entwicklung aus:

Gründliche Planung

Je nach Anforderung und API sind unterschiedliche Vorgehensweisen und Technologien zur Anbindung empfehlenswert. Wir analysieren Ihre Anforderungen, konzipieren eine passende Lösung und implementieren diese.

Automatisierte Tests

Wir dokumentieren die API in maschinenlesbarer Form und sichern ihre Funktionalität mit automatisierten Integrationstests ab. Das erhöht die Zuverlässigkeit und erleichtert im Falle eines Falles die Fehleranalyse.

Laufende Betriebsüberwachung

Bei Fehlern in der API-Kommunikation werden wir im Rahmen unseres Webhostings automatisch informiert. So können wir schnell reagieren und eine reibungslosen Betrieb sicherstellen.

Was sind APIs?

Manche Anwendungsfälle benötigen mehr als ein Software-System. Damit die notwendigen Daten nicht händisch und fehleranfällig vom einem System ins andere übertragen werden müssen, können technische Schnittstellen eine automatisierte Datenübertragung spezifizieren.

Eine solche Schnittstelle nennt man "Application Programming Interface" (API).

Beispiele für APIs, die wir anbieten und nutzen

  • Für die Staatsoper Unter den Linden in Berlin werden Platzverfügbarkeiten und Ticket-Preise automatisiert vom Ticketing-Dienstleister Eventim bezogen. Veranstaltungen des Staatsballetts Berlin werden importiert und eigene Veranstaltungen an Berlin Bühnen exportiert. Alle APIs verwenden XML.
  • Beim Staatstheater Darmstadt werden Platzverfügbarkeiten und Ticket-Preise vom Ticketing-Dienstleister Bilettix in Form von Push-Nachrichten mit JSON-Dateien importiert.
  • Auf krankenkassen.de können Nutzer im Wechselservice über inSign digitale Unterschriften leisten. Für die elektronische Übertagung von Mitgliedschaftsanträgen an einzelne Krankenkassen haben wir einen FTP-Upload von XML-Dateien implementiert sowie SOAP- und REST-Webservices und weitere Webdienste wie Zapier angebunden.
  • Für den Bundesverband Deutscher Versicherungskaufleute werden Mitgliederdaten aus einem bestehenden Verwaltungssystem importiert, um einen geschützten Mitgliederbereich anzubieten. In diesem können Mitglieder beispielsweise auf geschützte Downloads zugreifen oder ihre Daten ändern.
  • JUGEND für Europa pflegt Meldungen zentral im Content-Management-System von jugendfuereuropa.de ein und diese werden automatisch auf verschiedenen Websites wie erasmusplus-jugend.de und erasmusplus-sport.de ausgespielt.
  • In OBELIS können Zuwendungsempfänger ihre Ladestationen geolokalisieren, in dem sie mit Google Maps-Karten interagieren.

Technische und organisatorische Aufgaben

Wenn Sie die Daten eines Ihrer Systeme über eine API anbieten wollen, stellen sich einige Fragen: Möchten Sie die Daten aktiv an ein Zielsystem (Push-Prinzip) übermitteln oder darauf warten, dass das Ziel-System die Daten abruft (Pull-Prinzip)? Welche Systeme sind zum Datenabruf berechtigt und wie authentifizieren sie sich? In welchem Format stellen Sie die Daten bereit? Diese Fragen beantworten wir mit Ihnen gemeinsam, um eine einfache Nutzung und hohen Mehrwert sicherzustellen.

Je nach Anwendungsfall verfassen wir dann eine maschinenlesbare Spezifikation, denn:

  • Ihre hohe Präzision vermeidet Missverständnisse.
  • Mit Anwendungsbeispielen und aussagekräftigen Benennungen erleichtern wir den Nutzern ihre API-Anbindung. Im Sinne der Ubiquituous Language geben wir Datenfelder mit den Bezeichnungen heraus, unter denen wir sie auch selbst führen. Das vermeidet unverständliche Abkürzungen und Mehrdeutigkeiten bei (unnötigen) Übersetzungen.
  • Kunden können mithilfe der Spezifikation automatisch Code für die Nutzung der API generieren und ihre Implementierung automatisiert testen.

Wir haben bereits eine Vielzahl von APIs angebunden und dabei festgestellt, dass die jeweils zu verwendenden Technologien und Spezifikationen völlig unterschiedlich ausfallen können: Während die eine API mit OpenAPI das JSON-Format für einen HTTP-Endpunkt spezifiziert, spezifiziert die nächste mit einer XML Schema Definition (XSD) die Struktur von XML-Daten, die über einen FTP-Server ausgetauscht werden. Eine dritte API geht womöglich einen völlig anderen Weg.

Darüber hinaus sind Fragen zum Betrieb und zur nicht-technischen Organisation zu klären, beispielsweise:

  • Ausfälle: Wie soll sich das System bei einem kurzfristigen Ausfall der API verhalten? Es könnte etwa die Übertragung später erneut versuchen oder einen Fallback-Mechanismus nutzen.
  • Speicherung: Welche Informationen werden übermittelt und gespeichert? Welche Löschfristen gelten?
  • Monitoring: Wie bemerken wir eine Häufung von Ausfällen und anderen Fehlern? Gibt es verschiedene Arten von Meldungen mit verschiedenen Ansprechpartnern? So könnte zwischen Systemausfällen und inhaltlichen Fehlern der Nutzdaten unterschieden werden.
  • Logging: Wie können wir im Fehlerfall den Datenfluss innerhalb unseres Systems und über verschiedene Systeme hinweg kontrollieren?
  • Änderungen: Wie lange kann eine API in identischer Weise verwendet werden? Wer wird wie über Änderungen an der API informiert?

Zu all diesen Fragen beraten wir Sie gerne. Sprechen Sie uns an, um von unserer Erfahrung bei der Entwicklung von APIs zu profitieren.

Digitale Erfolgsgeschichten

Beispiele für Anwendungen, die über APIs an externe Systeme angebunden sind

Sprechen Sie uns an

Brauchen Sie Unterstützung bei der Umsetzung einer neuen Website oder suchen Sie nach einer Agentur, die Ihre bestehende Symfony-Anwendung weiterentwickelt? Dann sprechen Sie uns gerne an!