> ## Documentation Index
> Fetch the complete documentation index at: https://formpaste.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Einsendungen an Slack senden

> Leite Formular-Einsendungen mit dem Webhook von Formpaste in einen Slack-Kanal - Pro.

<Info>**Pro** - dieses Rezept setzt [Webhooks](/docs/de/features/webhooks) voraus, die nur in Pro verfügbar sind.</Info>

Es gibt keine native Slack-Integration in Formpaste, keinen "Mit Slack verbinden"-Button
im Dashboard. Was es real gibt, ist ein generischer, signierter Webhook, der bei jeder
zugestellten Einsendung feuert, und Slacks eigenes Format für eingehende Webhooks
unterscheidet sich ausreichend (`{"text": …}` gegenüber der versionierten JSON-Umschlagstruktur
von Formpaste), sodass die beiden nicht direkt miteinander sprechen können. Diese Anleitung
ist die ehrliche Version: wie du sie selbst mit einem kleinen Relay verbindest, mithilfe
einer Automatisierungsplattform, damit du nichts selbst hosten musst.

## Warum du Formpaste nicht direkt auf Slack zeigen lassen kannst

Ein eingehender Slack-Webhook erwartet einen Body wie `{"text": "hello"}`. Der Webhook
von Formpaste sendet stattdessen seinen eigenen Umschlag:

```json theme={null}
{
  "type": "submission.received",
  "version": 1,
  "id": "sub_...",
  "form_id": "frm_...",
  "created_at": 1720700000000,
  "data": { "name": "John Smith", "email": "john@example.com", "message": "Hello!" }
}
```

Slack wird diese Form rundweg ablehnen. Etwas dazwischen muss sie umformen, das ist
das Relay.

## Das Rezept: Automatisierungsplattform als Relay

Der schnellste Weg ist ein No-Code-Automatisierungstool (Zapier, Make, Pipedream oder
n8n), das zwischen den beiden sitzt:

1. **Erstelle einen Zap/ein Szenario/einen Workflow**, der mit einem **Catch Webhook**-
   bzw. **Webhook-Trigger**-Schritt beginnt. Die Plattform gibt dir dafür eine eindeutige
   URL, die Formpaste dann aufruft.
2. **Zeige den Webhook von Formpaste auf diese URL.** Öffne im [Dashboard](https://app.formpaste.com)
   dein Formular → **Einstellungen** → **Webhooks**, füge die URL der Automatisierungsplattform
   in `webhook_url` ein und speichere. Kopiere das angezeigte Signing-Secret `whsec_…`.
3. **(Empfohlen) Verifiziere die Signatur innerhalb der Automatisierung.** Die meisten
   dieser Plattformen unterstützen einen Code-Schritt (JS in Pipedream/n8n, ein
   "Code by Zapier"-Schritt in Zapier). Nutze ihn, um `X-Formpaste-Signature` genauso
   zu prüfen wie im [Snippet zur Webhook-Verifizierung](/docs/de/features/webhooks#verifying-the-signature),
   bevor du auf Basis des Payloads handelst. So bestätigst du, dass die Anfrage
   tatsächlich von Formpaste stammt und nicht von etwas, das deine Relay-URL errät.
4. **Füge einen Slack-Schritt hinzu.** Nutze die eingebaute Slack-Aktion der Plattform
   (Nachricht in Kanal posten) und mappe die gewünschten Felder aus dem eingehenden
   Payload, `data.name`, `data.email`, `data.message` usw., in den Slack-Nachrichtentext.
5. **Aktiviere es und sende einen Test.** Sende dein Formular einmal ab; die Nachricht
   sollte innerhalb weniger Sekunden in Slack ankommen.

Eine minimale Nachrichtenvorlage:

```
New submission on {{form_id}}
From: {{data.name}} <{{data.email}}>
Message: {{data.message}}
```

(Die genaue Templating-Syntax hängt von der Plattform ab. Zapier/Make nutzen ihren
eigenen Field Picker, Pipedream/n8n lassen dich `steps.trigger.event.body.data.name`
usw. direkt in JS referenzieren.)

## Was feuert, und was nicht

Nur **zugestellte, nicht als Spam eingestufte** Einsendungen lösen den Webhook aus,
dieselben, die auch eine E-Mail-Benachrichtigung erzeugen. Eine Einsendung, die in die
[Quarantäne](/docs/de/features/quarantine) geleitet wird, löst den Webhook nie aus und erreicht
Slack somit auch nie; prüfe dafür den Spam-Tab im Dashboard.

## Free vs. Pro

Webhooks, und damit dieses gesamte Rezept, erfordern [Pro](/docs/de/features/pro-plan). Ein
Formular im Free-Tarif kann keine `webhook_url` speichern:

| Code               | HTTP | Bedeutung                                 |
| ------------------ | ---- | ----------------------------------------- |
| `upgrade_required` | 403  | Dieses Feature erfordert einen Pro-Tarif. |

<CardGroup cols={2}>
  <Card title="Webhooks" icon="webhook" href="/docs/de/features/webhooks">
    Vollständige Payload-Struktur, Signierung, Wiederholungsversuche und das Zustell-Log.
  </Card>

  <Card title="Discord-Benachrichtigungen" icon="discord" href="/docs/de/guides/discord-notifications">
    Dasselbe Rezept, für Discord.
  </Card>
</CardGroup>
