Wie implementiere ich eine API?

API

Modulare Systeme in der IT-Architektur Eures Unternehmens oder Startups sind nur dann sinnvoll, wenn man die einzelnen unabhängigen Module, Apps, Extensions oder Microservices miteinander verbinden kann. Ob die zu verbindenden Systeme eigene Applikationen, Standard-Software-Tools oder andere beliebige Fremdsysteme sind, ist dabei relativ egal. Hierfür werden heute Schnittstellen implementiert, die man als API bezeichnet.

1. Was ist eine API?
1.1. Beispiel API
2. API-Implementierung
2.1. Wichtiger Hinweis

1. Was ist eine API?

“An application-programming interface (API) is a set of programming instructions and standards for accessing a Web-based software application or Web tool. A software company releases its API to the public so that other software developers can design products that are powered by its service.”

– Dave Roos

APIs werden nur für den einen Zweck gebaut, dass verschiedene Systeme oder Module miteinander Daten austauschen können.

1.1. Beispiel API

Ein einfaches Beispiel für eine API: Früher musste man in einem System A einen Export von Daten in ein Excel-File machen und dies dann in ein anderes System B wieder hochladen. Funktionierte. Aber es waren einige manuelle Schritte, die sich immer wieder wiederholen, notwendig. Zudem müssen natürlich auch die Export- und die Importfunktionen der Systeme erst mal vorhanden sein. Eine API würde diesen Prozess automatisieren. Wie oft und wann dies geschehen soll, kann man optimalerweise bei der Integration der API konfigurieren. Ein weiterer Vorteil ist der Aspekt, dass die automatisch immer wieder importierten Daten deutlich aktueller vorliegen, statt immer mit einer „menschlichen“ Verzögerung gezogen werden zu müssen. Eine schöne neue Welt, oder?

2. API-Implementierung

Der technische Betrieb einer eigenen API hat aber auch seine Tücken, wie könnte es anders sein. Gerade bei der technischen Konzeption von APIs gilt es, einige Dinge bereits im Vorfeld zu bedenken, wie z.B.:

  • Wer sind die Nutzer der API?
  • Wie stellt man eine technisch performante API zur Verfügung?
  • Wie sichert man den Zugang zu einer API bestmöglich ab?
  • Welche Daten werden per API zur Verfügung gestellt und welche vielleicht sogar bewusst nicht?
  • Wie kann ich eine API monetarisieren?
  • Wie kann ich eine API, die einmal beim Kunden integriert ist, weiterentwickeln, ohne dass er seine Integration ändern muss?
  • Wie kontrolliere ich API-Traffic?

Wie für jedes Feature, muss man sich im Vorfeld über die Target Group klar werden. Sind es Großkunden, die mehr Individualisierung brauchen, oder doch eher die breite Masse? Allein diese Fragestellung wird Entscheidungen bezüglich technischer Performance, Zugangssicherung und dem Business-Modell erfordern.
Vor allem der Punkt Performance ist erfahrungsgemäß besonders kritisch, da man die Last durch die Fremdsystem-Integration im Vorfeld nur schwer abschätzen kann. Welchen Traffic erwartet der Kunde wirklich? Hat er Last-Peaks? Für einen SaaS-Tool-Betreiber ist es unmöglich, hierzu von allen Kunden schon im Vorfeld valide Antworten zu bekommen.
Eine performante und skalierende Infrastruktur für den Betrieb von APIs aufzubauen, ist zudem kostspielig, so dass dies im Business-Modell berücksichtigt werden sollte, um nicht hinterher am Pricing für die User nachbessern zu müssen.
Das ist ein Grund, warum Google Maps schon seit vielen Jahren die API-Nutzung pro User begrenzt. Nicht nur technisch ein sinnvoller Riegel, um die eigene System-Performance nicht zu gefährden, sondern auch in puncto Business-Modell clever. Denn natürlich können User mit viel Traffic mehr Zugriffe auf die API dazu kaufen.

2.1. Wichtiger Hinweis:

Bei allen Vorteilen, welche die Veröffentlichung einer eigenen API mit sich bringt, sollte man niemals die Kontrolle vollständig aus der Hand geben. Nutzungsbedingungen, Autorisierungsverfahren, eine solide Daten-Architektur und integrierte Tracking-Mechanismen dürfen beim API-Design nicht fehlen. Das gilt auch für Start-ups. Hat man keinen API-Experten im Team, sollte man die Finger von APIs lassen oder sich von API-Spezialisten unterstützen lassen. Die erste API von einem fremdsprachigen Upwork-Entwickler implementieren zu lassen, ist garantiert keine gute Idee.

Dass eine skalierende und modulare IT-Infrastruktur eine Grundvoraussetzung für erfolgreiches Growth Hacking sein muss, ist vor allem vielen Start-ups in der Anfangsphase nicht klar. Viele Start-ups scheitern oftmals auch daran, dass sie in ihrem Gründer-Team keinen erfahrenen Techie mit dabei hatten. Das ist kritisch, nicht nur für die Investorensuche.

In unserem nächsten Beitrag erfährst du, wie du APIs für deine Growth Hacking Aktivitäten nutzen kannst.

 

Bildmaterial by CAROLIN PETTERSON
https://01.media/it-infrastructure-professional-skill-set

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.