Webhook-Payloads umwandeln
Diese Funktion wandelt den JSON-Inhalt eines eingehenden Webhooks in ein anderes Format um – Felder umbenennen, verschachteln, zusammenführen oder herausfiltern. Gedacht für alle, die Webhook-Daten eines Anbieters an die von einer eigenen Anwendung erwartete Struktur anpassen müssen, ohne dafür eigenen Code zu schreiben.
Im Browser ausführen – kostenlos
Läuft direkt in Ihrem Browser – kostenlos. Ihre Datei verlässt Ihren Browser nicht und wird an keinen Server übertragen.
Eine Zuordnung statt eigenem Code
Sie fügen ein Beispiel des eingehenden Payloads ein und legen fest, wie die Felder im Ergebnis heißen und angeordnet sein sollen – etwa das Feld „customer.email“ eines Anbieters auf „kunde_email“ in der eigenen Struktur. Die Funktion wendet diese Zuordnung auf jeden weiteren Payload an, ohne dass Sie dafür eine eigene Transformationsfunktion schreiben müssen. Auch feste Zusatzwerte, etwa ein Herkunftskennzeichen, das im ursprünglichen Payload gar nicht vorkommt, lassen sich beim Anlegen der Zuordnung ergänzen.
Verschachtelte Felder und Listen
Die Zuordnung funktioniert auch über mehrere Ebenen hinweg und bei Listen: Ein Array aus Bestellpositionen lässt sich zu einer Summe zusammenfassen, ein tief verschachteltes Feld lässt sich auf die oberste Ebene heben. Damit passt sich der Payload auch dann an, wenn die eigene Anwendung eine deutlich flachere oder andere Struktur erwartet als der Anbieter liefert. Einzelne Elemente einer Liste lassen sich zusätzlich herausfiltern, etwa um nur bezahlte Positionen einer Bestellung an die eigene Anwendung weiterzugeben.
Kostenlos im Browser, per API automatisierbar
Im Browser läuft die Umwandlung direkt im Widget dieser Seite, ohne Limit und ohne dass der Payload übertragen wird. Für den laufenden Betrieb – etwa als Zwischenschritt zwischen einem Zahlungsanbieter und der eigenen Anwendung – steht dieselbe Zuordnung über die API zur Verfügung, für $0.002 pro Ereignis. So lässt sich eine im Browser entworfene und getestete Zuordnung ohne weiteren Aufwand in eine produktive Pipeline übernehmen.
Typische Anbieter und Formate
Häufig eingesetzt wird die Funktion für Webhooks von Zahlungsanbietern, Formular-Diensten oder CRM-Systemen, deren Payload-Struktur sich vom eigenen Datenmodell unterscheidet. Statt bei jeder neuen Integration eine eigene Übersetzungsfunktion zu schreiben, genügt eine einmal eingerichtete Zuordnung, die sich bei Bedarf anpassen lässt. Ändert der Anbieter später die Struktur seines Payloads, lässt sich die bestehende Zuordnung entsprechend nachziehen, statt den gesamten Integrationscode neu zu schreiben.
Anwendungsfälle
Zahlungsanbieter an eigenes Datenmodell anpassen
Ein Entwickler bei der Schneider IT-Systeme GmbH & Co. KG richtet eine Zuordnung ein, die eingehende Webhooks eines Zahlungsanbieters in das interne Bestellformat der eigenen Anwendung umwandelt, bevor sie weiterverarbeitet werden.
Formulardaten für ein internes System aufbereiten
Anna Hoffmann leitet Webhook-Daten eines Formular-Dienstes über die Funktion um, damit Feldnamen und Struktur zum internen CRM-System passen, ohne dass jemand im Team eigenen Übersetzungscode pflegen muss.
Testfälle für die eigene Webhook-Verarbeitung prüfen
Ein Entwickler testet im Browser-Widget, ob ein Beispiel-Payload korrekt in das erwartete Zielformat überführt wird, bevor er die Zuordnung in die produktive Pipeline übernimmt.
Häufige Fragen
Verlässt der Payload meinen Browser?
Nein, solange Sie die Funktion im Browser nutzen. Die Umwandlung läuft direkt auf dieser Seite, ohne Übertragung an einen Server.
Muss ich mich anmelden?
Nein. Es gibt derzeit keine Konten – die Nutzung im Browser ist kostenlos und ohne Limit.
Wie richte ich eine Zuordnung ein?
Sie fügen ein Beispiel des eingehenden Payloads ein und legen fest, wie die Zielfelder heißen und angeordnet sein sollen; die Zuordnung lässt sich anschließend speichern und wiederverwenden.
Funktioniert das auch mit verschachtelten Feldern und Listen?
Ja. Felder lassen sich über mehrere Ebenen hinweg verschieben, und Listen lassen sich zusammenfassen oder filtern.
Was kostet die Nutzung über die API?
$0.002 pro Ereignis. Im Browser bleibt die Funktion unabhängig davon kostenlos.
Für welche Webhook-Anbieter eignet sich das?
Für jeden Anbieter, dessen Payload im JSON-Format vorliegt – häufig genutzt bei Zahlungsanbietern, Formular-Diensten und CRM-Systemen.
Gibt es einen AVV für die Verarbeitung von Kundendaten im Payload?
Aktuell steht kein separater Auftragsverarbeitungsvertrag zur Verfügung. Wer das für sein Unternehmen benötigt, schreibt uns bitte vorab an [email protected].
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/dev/webhook-transform \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/dev/webhook-transform", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/webhook-transform",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/webhook-transform", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/webhook-transform", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"input": "…"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.webhook_transform",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |