Websites & Schnittstellen

Formulardaten über eine Schnittstelle weitergeben

Eine neue Anfrage kommt über deine Website. Jemand kopiert sie in eine Tabelle und trägt sie danach ins nächste Programm ein. Eine Schnittstelle kann diese Übergaben vereinfachen. Der eigentliche Nutzen ist nicht „eine API“, sondern ein Ablauf, in dem Informationen vollständig ankommen und Fehler nicht unbemerkt bleiben.

Kurzüberblick

Eine nachvollziehbare Testanfrage an einen öffentlichen Echo-Dienst und ein Plan für die spätere Übergabe in dein eigenes Zielsystem.

Technischer Einstieg · Schnittstellen

Vor dem Start

  • Ein Terminal mit curl; der gezeigte Mehrzeiler ist für macOS oder eine Linux-Shell gedacht
  • Internetverbindung und ausschließlich die künstlichen Beispieldaten
  • Für die spätere echte Anbindung: Dokumentation und autorisierter Testzugang zum Zielsystem
  • Die Bereitschaft, Erfolgsfälle und Fehlerfälle getrennt zu testen

Was soll nach dem Absenden wirklich passiert sein?

Beschreibe zuerst den fachlichen Endzustand: „Eine Serviceanfrage erscheint genau einmal mit Betreff, Kategorie und Rückkontakt im zuständigen System.“ Liste die benötigten Angaben und ihre Ziel-Felder auf. Eine frei formulierte Beschreibung und eine interne Kundennummer sind nicht einfach austauschbar, nur weil beide als Text übertragen werden können.

Eine API ist die vereinbarte Programmschnittstelle des Zielsystems. Adresse, Methode, Datenformat und Berechtigung legen fest, wie eine Anfrage aussehen muss. Eine öffentlich dokumentierte API ist nicht automatisch ohne Anmeldung nutzbar oder in jedem Tarif enthalten. Kläre diese Punkte vor dem Formularbau.

Eine erste Übertragung ohne echte Kundendaten ausprobieren.

httpbin ist ein öffentlicher Dienst, der Testanfragen und Antworten sichtbar macht. Der folgende Aufruf sendet lediglich eine ausgedachte ID und einen Betreff an diesen externen Anbieter. Wie bei jedem Internetaufruf fallen auch Verbindungsdaten an. Sende deshalb keine Kundeninformationen, Zugangsdaten oder Dokumente dorthin. Das Beispiel ist kein Formular-Backend und kein Speichertest.

curl --connect-timeout 10 --max-time 20 --include \
  --request POST 'https://httpbin.org/post' \
  --header 'Content-Type: application/json' \
  --data '{"anfrage_id":"demo-001","betreff":"Fiktiver Test"}'

Zum Nachlesen: httpbin: öffentlicher HTTP-Testdienst

Die Antwort lesen, statt nur auf einen grünen Haken zu schauen.

  1. Führe den unveränderten Aufruf einmal aus. Prüfe zuerst den HTTP-Status, anschließend den Antwortinhalt. Bei Zeitüberschreitung oder Nichterreichbarkeit brich den Versuch ab; deaktiviere keine Zertifikatsprüfung.
  2. Suche im JSON-Antwortobjekt den Bereich json. Dort sollten anfrage_id und betreff mit den gesendeten Beispielwerten erscheinen.
  3. Ändere nur den fiktiven Betreff und wiederhole den Aufruf. So erkennst du, welche Werte in deinem Request stehen und was der Dienst zurückliefert.
  4. Notiere: Dieser Test belegt eine beantwortete Übertragung an einen Echo-Dienst. Er belegt nicht, dass ein CRM einen Datensatz angelegt oder eine Mail zugestellt hat.
  5. Für die echte Integration ersetzt du nicht einfach die Adresse: Prüfe dokumentierte Methode, Anmeldung, Feldnamen, Typen, Pflichtfelder, Fehlercodes und erwartete Empfangsbestätigung des Zielsystems.

Der Browser bekommt keine geheimen Universalschlüssel.

Braucht das Zielsystem einen vertraulichen technischen Schlüssel, gehört er in einen geschützten serverseitigen Ablauf und nicht in das JavaScript der Website. Das Frontend übergibt die erlaubten Angaben an deinen kontrollierten Endpunkt. Dort werden Eingaben geprüft, der Zugriff begrenzt und die Weitergabe mit dem vorgesehenen Zugang ausgeführt.

Manche APIs unterstützen bewusst öffentliche Browserzugriffe mit eingeschränkten Rechten. Das muss der Anbieter ausdrücklich so vorsehen. CORS regelt bestimmte Zugriffe durch Browser; es ersetzt weder eine Benutzeranmeldung noch eine serverseitige Berechtigungsprüfung. Ein im Terminal erfolgreicher Aufruf kann im Browser deshalb trotzdem scheitern.

Zum Nachlesen: MDN: Client und Server verstehen

Zuverlässig heißt auch: Fehler und Wiederholungen beherrschen.

Plane eine eindeutige Vorgangskennung und eine Prüfung gegen doppelte Verarbeitung. Wenn das Zielsystem die Anfrage bereits gespeichert hat, die Antwort aber verloren geht, kann blindes Wiederholen sonst zwei Vorgänge erzeugen. Nutze eine dokumentierte Idempotenzfunktion oder eine abgestimmte eigene Duplikatlogik; eine beliebige ID im JSON reicht dafür allein nicht aus.

Unterscheide Eingabefehler, fehlende Berechtigung, Rate-Limits und vorübergehende Ausfälle. Nur passende Fälle werden begrenzt und mit Abstand erneut versucht. Offene Übertragungen müssen sichtbar bleiben und eine zuständige Person haben. Protokolliere Vorgangskennung und Ergebnis sparsam, ohne geheime Schlüssel oder unnötige personenbezogene Inhalte in Logs zu kopieren.

Der Abnahmetest findet im autorisierten Testsystem statt: erfolgreicher Vorgang, fehlendes Pflichtfeld, doppelte Sendung, abgelaufener Zugang und simulierte Nichterreichbarkeit. Als Erfolg zählt der fachlich überprüfte Eingang im Zielsystem, nicht nur eine freundliche Meldung auf der Website.

Zum Prüfen

  • Benötigte Angaben sind eindeutig den Ziel-Feldern zugeordnet.
  • Request, Status und Antwortinhalt des künstlichen Tests wurden verstanden.
  • Vertrauliche Zugänge bleiben außerhalb des Browsercodes.
  • Doppelte Sendungen, Ausfälle und offene Vorgänge haben eine definierte Behandlung.

Hinweise

Der Echo-Test ist öffentlich und speichert keine nachgewiesenen Geschäftsvorgänge für dich. Eine echte Integration benötigt einen autorisierten Zielzugang, abgestimmte Verarbeitungsvorgaben und eigene Tests. Manche Systeme lassen die gewünschte Anbindung nicht oder nur eingeschränkt zu.

Unterstützung bei der Umsetzung

Wir verbinden deine Datenerfassung mit den vorhandenen Systemen und planen nicht nur die erste Übertragung, sondern auch Rückmeldungen, Fehlerbehandlung und Zuständigkeiten.

Projekt besprechenBeratung & Projekte kennenlernen