> ## 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.

# Fehlerbehebung & FAQ

> Häufige Probleme, was tatsächlich passiert, und wie du sie behebst.

Lösungen für die häufigsten Probleme, jeweils dem tatsächlichen Fehlercode oder Verhalten
dahinter zugeordnet. Für die vollständige Liste der Codes, siehe die [Fehlerreferenz](/docs/de/reference/error-table).

## "Ich erhalte keine E-Mails für Einsendungen"

Fast immer einer dieser Gründe, nach Wahrscheinlichkeit geordnet:

1. **Die Zieladresse ist noch nicht verifiziert.** Bei einem neuen Formular hält die Zieladresse jede
   Zustellung zurück, bis du den 6-stelligen Code eingibst, den Formpaste an sie gemailt hat. Prüfe den
   Setup-Tab des Formulars im [Dashboard](https://app.formpaste.com) auf einen Status
   "Verifizierung ausstehend". Siehe [Dein erstes Formular](/docs/de/first-form#verify-the-destination-email).
2. **Die Einsendung landete in der Quarantäne, nicht im Posteingang.** Einsendungen unter Quarantäne
   werden nie gemailt, das ist der Sinn der [Quarantäne](/docs/de/features/quarantine). Prüfe den
   **Spam**-Tab des Formulars; falls sie dort ist, siehe den Abschnitt zur Quarantäne unten.
3. **Du hast dein monatliches Kontingent überschritten.** Sobald das Einsendungslimit eines Tarifs
   für den Abrechnungsmonat überschritten ist, werden weitere Einsendungen angenommen und gespeichert, aber
   zurückgehalten statt gemailt, bis der Monat wechselt oder du upgradest. Siehe
   [Grenzen des kostenlosen Tarifs](/docs/de/features/free-plan-limits).
4. **Prüfe Spam/Junk in deinem tatsächlichen Postfach**, das liegt außerhalb von Formpastes Kontrolle, ist aber der
   häufigste Fehlalarm.

## "403 domain\_not\_allowed"

Die Origin der einsendenden Seite steht nicht auf der Zulassungsliste dieses Formulars. Öffne den Setup-Tab des Formulars →
**Erlaubte Domains** und füge die Domain hinzu, von der das Formular ausgeliefert wird (z. B. `example.com` für
`https://example.com/contact`). Ist die Zulassungsliste leer, wird jede Origin akzeptiert, das
greift also erst, sobald du ein Formular eingeschränkt hast. Siehe
[Domain-Zulassungsliste](/docs/de/features/custom-domains).

## "401 invalid\_access\_key"

Das Feld `access_key` wurde entweder nicht gesendet, passt zu keinem Formular, oder gehört zu einem Formular,
das gelöscht wurde. Kopiere den Schlüssel erneut aus dem Setup-Tab des Formulars im Dashboard (oder rufe
[`get_snippet`](/docs/agents/get-snippet) mit der `formId` auf, um ein Snippet mit dem echten
Schlüssel eingesetzt zu erhalten) und stelle sicher, dass er als Wert eines `access_key`-Felds im Request-Body steht,
nicht als `Authorization`-Header. `/submit` akzeptiert keine Bearer-Authentifizierung, die ist nur für den
[MCP-Server](/docs/agents/mcp-server) gedacht.

## "Meine Einsendung wurde unter Quarantäne gestellt"

Formpaste bewertet jede Einsendung mit Spam-Heuristiken (Honeypot, Timing, Link-
Dichte, Rate, Wegwerf-/Duplikat-E-Mail) und leitet alles Verdächtige in den
**Spam**-Tab um, statt es zu verwerfen, siehe [Spam-Filterung](/docs/de/features/spam-filtering)
für das, was geprüft wird. Häufige Ursachen für einen Fehlalarm:

* Das Honeypot-Feld `botcheck` wurde versehentlich mit einem echten `value` versehen, oder dein CSS versteckt
  es auf eine Weise, die eine Browser-Autofill-Funktion oder -Erweiterung trotzdem befüllen kann.
* Das Formular wurde schneller abgeschickt, als `_ts` vermuten lässt, dass ein Mensch es ausfüllen könnte, häufig bei
  automatisierten Tests, in der Regel kein Fehlalarm bei echtem Produktionstraffic.
* Die eingesendete `email` gehört zu einer Domain eines Wegwerf-Anbieters, und
  `allow_disposable_email` ist für dieses Formular ausgeschaltet.

Du kannst Einsendungen unter Quarantäne im kostenlosen Tarif einsehen (nur lesend). Eine erneute Zustellung ("kein Spam")
erfordert [Pros Rettungsaktion](/docs/de/features/quarantine-rescue), im kostenlosen Tarif entfernst du die Ursache
(behebe die Honeypot-Verdrahtung, oder schalte `allow_disposable_email` ein) und lässt den Besucher
erneut absenden.

## "400 missing\_access\_key / invalid\_body"

`missing_access_key` bedeutet, es war überhaupt kein `access_key`-Feld vorhanden, prüfe, ob der Feldname
exakt `access_key` lautet, ohne Tippfehler, und ob er sich tatsächlich innerhalb des `<form>` (oder
`FormData`-/JSON-Bodys) befindet, der gesendet wird. `invalid_body` bedeutet, der Request-Body konnte nicht
als JSON oder Formulardaten geparst werden, prüfe, ob `Content-Type` dem entspricht, was du tatsächlich
sendest (`application/json` für einen JSON-Body, dem Browser-Standard überlassen bei einem einfachen HTML-Formular
oder `FormData`).

## "400 invalid\_redirect"

Die URL des Felds `redirect` steht nicht auf der Liste der erlaubten Domains dieses Formulars. Füge diese
Domain entweder zu **Erlaubte Domains** hinzu, oder entferne das Feld `redirect`, falls du per
`fetch`/AJAX sendest und keine Seitennavigation benötigst. Siehe [Umleitungen](/docs/de/features/redirects).

## "403 upgrade\_required"

Du bist im kostenlosen Tarif und hast versucht, eine reine Pro-Funktion zu nutzen oder zu konfigurieren: Quarantäne-Rettung,
Autoresponder, zusätzliche/CC-Empfänger, Webhooks oder Datei-Uploads. Siehe
[Grenzen des kostenlosen Tarifs](/docs/de/features/free-plan-limits) für die vollständige Liste, oder
[Pro-Tarif](/docs/de/features/pro-plan) zum Upgrade.

## "429 rate\_limited"

Zu viele Einsendungen von derselben Quelle in einem kurzen Zeitfenster. Das ist unabhängig vom
Inhalt, es tritt sogar bei legitimem Traffic auf, wenn er in Schüben kommt. Verlangsame die Retry-Logik
(exponentielles Backoff, keine enge Schleife) und es klärt sich von selbst.

## "Mein Webhook feuert nicht"

Webhooks feuern nur bei zugestellten, nicht als Spam eingestuften Einsendungen, eine Einsendung unter Quarantäne
löst nie einen aus. Bestätige, dass `webhook_url` gesetzt ist und Pro im Konto aktiv ist, prüfe
das Zustellprotokoll pro Formular im Dashboard auf fehlgeschlagene Versuche, und bestätige, dass dein Endpunkt
`https://` verwendet und schnell mit `2xx` antwortet. Siehe [Webhooks](/docs/de/features/webhooks) für Retry-
Timing und das Rezept zur Signaturprüfung.

## "Brauche ich ein CAPTCHA?"

Nein, Formpaste ist gezielt so konzipiert, dass du keins hinzufügen musst. Spam wird stattdessen mit dem
Honeypot `botcheck`, dem Timing `_ts` und serverseitigen Heuristiken erkannt. Siehe
[Spam verhindern](/docs/de/guides/preventing-spam).

## "Gibt es eine REST-API für Einsendungen/Formulare?"

Nein. Formulare werden im Dashboard oder über das MCP-Tool
[`create_form`](/docs/agents/create-form) erstellt; Einsendungen werden über das Dashboard, den CSV-
Export oder das MCP-Tool [`list_submissions`](/docs/agents/list-submissions) gelesen. Siehe
[Einsendungen abrufen](/docs/de/reference/submissions-api) für die vollständige Übersicht, es gibt
keine `GET`-/`POST`-REST-API für Formulare oder Einsendungen jenseits von `POST /submit` selbst.

<CardGroup cols={2}>
  <Card title="Fehlerreferenz" icon="triangle-exclamation" href="/docs/de/reference/error-table">
    Jeder Code, sein HTTP-Status und seine Meldung.
  </Card>

  <Card title="Optionsreferenz" icon="sliders" href="/docs/de/reference/options">
    Die reservierten Felder und die Dashboard-Konfiguration, auf die sich diese Fehler beziehen.
  </Card>
</CardGroup>
