Daten an einen Webhook senden
Der Baustein „An Webhook senden“ ist der Rückweg aus Twynko: Kommt ein Kontakt an dieser Stelle im Flow an, schickt Twynko seine Daten an eine Adresse deiner Wahl. So landet zum Beispiel eine im Flow eingesammelte E-Mail in deinem Newsletter, oder ein Kommentar mit „GUIDE“ wird über Make zu einer Zeile in Google Sheets. Den Baustein gibt es ab dem Pro-Tarif.
Der Flow wartet nicht auf den Empfänger und läuft sofort weiter. Ein langsamer oder ausgefallener Empfänger hält keine Nachricht auf. Umgekehrt kann der Empfänger auch nichts in den Flow zurückgeben: der Baustein meldet, er steuert nichts.
Wofür man das benutzt
Drei Beispiele, die sich mit den Bausteinen bauen lassen, die es ohnehin gibt:
- Freebie einsammeln und in den Newsletter: Kommentar „GUIDE“ unter dem Reel → DM mit Nachfrage → Eingabe der E-Mail → Merkmal setzen → An Webhook senden an Make, dort legt Make den Kontakt in Brevo oder Mailchimp an. Kein Export, keine Liste, die drei Wochen alt ist.
- Anfragen im eigenen System: Stichwort „TERMIN“ → zwei, drei Fragen im Flow → Buchungslink →An Webhook senden an Make oder n8n, von dort in ein Google Sheet, ein CRM oder ein Projektwerkzeug. Der einfachste Einstieg, weil ein Sheet als Ziel reicht.
- Die Gegenrichtung, ohne Webhook: Ein Shop meldet eine Bestellung an Make, Make ruft die Twynko-Schnittstelle auf und setzt beim Kontakt das Tag „Kunde“. Danach sieht man in der Inbox sofort, wer schon gekauft hat, und Flows können darauf reagieren. Wie das geht, steht im Beitrag „API-Zugang“.
So richtest du ihn ein
- 1Adresse beim Empfänger holenIn Make: neues Szenario, Modul „Webhooks“, „Custom webhook“, Adresse kopieren. In Zapier heißt es „Webhooks by Zapier“, „Catch Hook“. Die Adresse muss mit
https://beginnen. - 2Baustein einfügenÖffne deinen Flow im Editor und klick links auf „An Webhook senden“. Verbinde ihn an der Stelle, an der die Daten raus sollen, zum Beispiel direkt nach „Merkmal setzen“.
- 3Adresse, Ereignis, AuswahlTrag die Adresse ein und gib einen Ereignisnamen wie
guide_angefragt. Wähle, was mitgeht: Instagram-Name, Tags und einzelne Merkmale. Die Instagram-ID des Kontakts ist immer dabei. Tags und Merkmale gibt es ab Super. - 4Geheimnis hinterlegenUnter Einstellungen, Tab „API“, steht das Webhook-Geheimnis (nur für den Inhaber des Kontos sichtbar). Trag es bei deinem Empfänger ein, wenn er die Signatur prüfen soll.
- 5VeröffentlichenAb jetzt schickt der Flow bei jedem Kontakt, der an dieser Stelle ankommt, eine Sendung.

Was beim Empfänger ankommt
Ein POST mit JSON. Die Merkmale stehen immer vollständig drin, auch wenn ein Kontakt einen Wert noch nicht hat (dann null). So bleibt die Form gleich, und dein Szenario in Make bricht nicht.
{
"event": "guide_angefragt",
"delivery_id": "5b1f0c9e-…",
"sent_at": "2026-09-11T10:15:00.000Z",
"flow": { "id": "…", "name": "Guide per DM" },
"contact": {
"ig_user_id": "17841400000000001",
"username": "anna.beispiel",
"tags": ["interessent"],
"fields": { "email": "anna@example.com" }
}
}Die Signatur prüfen
Jede Sendung trägt diese Kopfzeilen: X-Twynko-Event, X-Twynko-Delivery, X-Twynko-Timestamp und X-Twynko-Signature. Die Signatur ist ein HMAC-SHA256 über Zeitstempel, einen Punkt und den unveränderten Text der Anfrage, gerechnet mit deinem Webhook-Geheimnis. Stimmt sie, kommt die Sendung von Twynko und wurde unterwegs nicht verändert. Ist der Zeitstempel älter als ein paar Minuten, verwirf die Sendung.
// Node.js, "body" ist der unveränderte Text der Anfrage
const crypto = require("crypto");
const zeit = req.headers["x-twynko-timestamp"];
const erwartet = "sha256=" + crypto
.createHmac("sha256", process.env.TWYNKO_WEBHOOK_SECRET)
.update(zeit + "." + body)
.digest("hex");
const echt = erwartet === req.headers["x-twynko-signature"];Wenn der Empfänger nicht antwortet
- Twynko wartet höchstens 5 Sekunden auf eine Antwort. Jede Antwort mit einem Code von 200 bis 299 gilt als angekommen.
- Bei Zeitüberschreitung, Netzfehlern und Antworten ab 500 (sowie 408 und 429) versucht Twynko es erneut: insgesamt vier Versuche, nach 30 Sekunden, 1 Minute und 2 Minuten.
- Jeden Versuch siehst du im Editor: Klick auf den Baustein, unten stehen unter „Letzte Sendungen“ Zeitpunkt, Status und Antwort-Code. Ist die letzte Sendung gescheitert, steht das auch am Baustein und in der Flow-Liste als „Webhook gescheitert“. Adresse und Antwort des Empfängers speichert Twynko dabei nicht.
- Andere Fehler (zum Beispiel 404) wiederholt Twynko nicht, sie werden sofort vermerkt. Weiterleitungen folgt Twynko nicht, trag die endgültige Adresse ein.
- Kommt eine Sendung doppelt an, erkennst du das an der gleichen
delivery_id. - Interne Adressen (etwa
localhostoder private Netze) sind gesperrt, auch wenn ein Name dorthin zeigt.