AnmeldenKostenlose Testphase starten
Meta Tech Provider

WhatsApp-Nachrichten in Airtable protokollieren und aus einer Base senden

Der eingehende Webhook-Trigger von Airtable akzeptiert nur POST-Anfragen. Er kann daher Metas Verifizierungs-GET nicht beantworten und nicht selbst als Webhook-Ziel einer Nummer dienen. Richten Sie das Ziel auf einen n8n-Workflow, der jede Nachricht an eine Tabelle anhängt. Das Senden funktioniert direkt in Airtable: Eine Automation mit Run a script kann die Cloud API per fetch aufrufen, mit dem Token der Nummer als Secret.

POST only

Der Trigger When webhook received von Airtable akzeptiert keine andere Methode und kann deshalb kein Verifizierungs-GET beantworten.

5 per second

Anfragelimit des eingehenden Webhook-Triggers von Airtable, mit einer Payload-Obergrenze von 100 KB.

50 fetches

Anfragen, die eine Run-a-script-Action von Airtable stellen kann, jeweils mit einem Timeout nach 30 Sekunden.

Warum kann Airtable WhatsApp-Webhooks nicht direkt empfangen?

Weil Meta ein Ziel prüft, bevor es etwas ausliefert. Meta sendet eine GET-Anfrage mit einem Challenge-Wert und erwartet denselben Wert als Antwort-Body zurück. Der Trigger When webhook received von Airtable akzeptiert nur POST-Anfragen und antwortet mit seinem eigenen festen JSON. Die Prüfung kann also nicht bestehen, und Meta beginnt nie mit der Auslieferung.

Die Lösung ist ein Zwischenschritt. Ein Webhook-Node in n8n übernimmt die Verifizierung und empfängt jede Nachricht, der Airtable-Node von n8n hängt eine Zeile an: Absender, Profilname, Text, Nachrichten-ID, Zeitstempel und die Phone-Number-ID der empfangenden Nummer. Dasselbe Muster funktioniert in Make oder Zapier.

Der Zwischenschritt hat einen zweiten Vorteil. Der Webhook-Trigger von Airtable erlaubt fünf Anfragen pro Sekunde, und ein Workflow-Tool kann einen Schwall puffern, der sonst abgewiesen würde.

Wie senden Sie ein WhatsApp-Template aus einer Airtable-Base?

Mit einer Automation, deren Action Run a script ist. Der Trigger kann ein Datensatz sein, der in eine Ansicht gelangt, ein geändertes Feld oder ein Klick auf einen Button. Das Skript liest die Telefonnummer und die Felder des Datensatzes über input.config() und ruft den messages-Endpoint der Cloud API per fetch auf. Automation-Skripte in Airtable laufen serverseitig, es gibt also keine Browser-Einschränkung.

Legen Sie das Token im Skript-Editor als Secret ab und nicht im Code. Airtable schwärzt Secrets in der Konsolenausgabe und erlaubt nur Personen mit Zugriff auf alle Secrets eines Skripts, es zu bearbeiten.

Nutzen Sie ein Template für alles, was der Kunde in den letzten 24 Stunden nicht selbst ausgelöst hat, denn Freitext wird nur innerhalb dieses Fensters zugestellt. Das Skript kann die zurückgegebene Nachrichten-ID in den Datensatz schreiben und so den Versand mit der Zeile verknüpfen.

Run a script action: send an approved template
const { phone, name } = input.config();
const token = input.secret("WHATSAPP_TOKEN");
const res = await fetch(
  "https://graph.facebook.com/v23.0/<PHONE_NUMBER_ID>/messages",
  {
    method: "POST",
    headers: { Authorization: "Bearer " + token, "Content-Type": "application/json" },
    body: JSON.stringify({
      messaging_product: "whatsapp",
      to: phone,
      type: "template",
      template: {
        name: "order_ready",
        language: { code: "en" },
        components: [{ type: "body", parameters: [{ type: "text", text: name }] }],
      },
    }),
  },
);
output.set("result", await res.json());

Wie sollte die Nachrichten-Tabelle aussehen?

Eine Zeile pro Nachricht, mit der WhatsApp-Nachrichten-ID als Primärfeld. Meta wiederholt Zustellungen, die es für gescheitert hält. Ein Workflow, der die ID vor dem Anhängen nachschlägt, schreibt dieselbe Nachricht nie doppelt.

Führen Sie ein Feld für die Richtung mit inbound und outbound. Bei einer Coexistence-Nummer erreichen Antworten, die das Team in der WhatsApp Business App tippt, denselben Webhook als smb_message_echoes-Ereignisse. Wenn Sie sie als outbound-Zeilen protokollieren, enthält die Base die ganze Unterhaltung und nicht nur eine Seite.

Verknüpfen Sie jede Nachricht mit einer Kontakte-Tabelle, die über die reine Ziffern-Telefonnummer geführt wird, also in der Form, in der Meta sie sendet. Ein Rollup zeigt dann pro Kontakt den Zeitpunkt der letzten eingehenden Nachricht, und genau dieses Feld braucht eine Automation, um zwischen Freitext und Template zu entscheiden.

Häufige Fehler

  • Eine Airtable-Webhook-URL als Ziel der Nummer eintragen. Sie akzeptiert nur POST, Metas Verifizierungs-GET schlägt fehl, und es wird nie etwas zugestellt.
  • Das Token in den Skript-Body einfügen. Legen Sie es als Skript-Secret ab, damit es nicht in Code und Logs landet.
  • Freitext aus einer Datensatz-Automation an jemanden senden, der seit 24 Stunden nicht geschrieben hat. Nur ein genehmigtes Template wird zugestellt.
Mit EasyCoexistence

Verbinden Sie die Nummer auf easycoexistence.com, richten Sie ihr Webhook-Ziel auf den n8n-Workflow, der in Airtable schreibt, und lesen Sie Phone-Number-ID und Token im Dashboard ab. Ab US$ 9 pro Nummer und Monat, mit wachsender Nummernzahl bis US$ 1, die ersten 3 Tage kostenlos.

Häufig gestellte Fragen

Ist Run a script im kostenlosen Airtable-Tarif enthalten?

Airtable führt die Action in allen Tarifen mit unterschiedlichen Einschränkungen auf und weist darauf hin, dass sie in einer Testphase des Team-Tarifs nicht verfügbar ist.

Kann ich n8n weglassen und Make oder Zapier nutzen?

Ja. Jedes der drei Tools kann den Webhook empfangen, die Verifizierung beantworten und die Zeile anhängen. Nur Airtable selbst kann nicht das Ziel sein.

Kann ein Airtable-Button eine WhatsApp-Nachricht senden?

Ja. Nutzen Sie den Trigger When a button is clicked mit einer Run-a-script-Action, die die Cloud API aufruft. Die Daten der Zeile füllen das Template.

Speichert EasyCoexistence die Nachrichten?

Nein. Meta liefert jeden Webhook an Ihre n8n-URL, und die einzige Kopie ist die, die Ihr Workflow in Airtable schreibt.

Weiterlesen

Bereit für den Start?

Richten Sie WhatsApp Coexistence in wenigen Minuten statt Monaten ein. Die App funktioniert weiterhin auf dem Telefon.

Kostenlose Testphase starten

Verifiziert am

WhatsApp und Airtable über die Cloud API