FormsFort

Troubleshooting

Troubleshoot FormsFort email delivery, CORS, rate limits, captcha, server-side submissions, and file uploads.

Troubleshooting

Debug form delivery from request to worker. Start with the request ID returned by the API, then inspect redacted submission events, email delivery state, and integration delivery state from the dashboard.

Common issues

No email received

Confirm the recipient is verified, the form is live, the submission was accepted, and the email worker processed the queued delivery.

Email has no fields

Every custom input must have a name attribute. Reserved fields are handled separately and unnamed fields are ignored by browsers.

CORS or redirect errors

Use application/json or FormData for JavaScript fetches. Keep hosted redirects for plain HTML form posts.

403 server-side submission

Requests without Origin or Referer need a paid/manual entitlement and an exact sender IP safelist on the form.

429 rate limited

Wait for the fixed window to clear, then test more slowly. Persistent abuse can be blocked with admin abuse rules.

Attachments rejected

Check the plan gate, file count, file size, MIME allowlist, and scanner result before retrying.

JavaScript submission pattern

JavaScript submissions should send JSON and handle JSON responses. Put browser redirects in your success handler instead of mixing a hidden redirect field with fetch.

const response = await fetch("https://api.formsfort.dev/submit", {
  method: "POST",
  headers: {
    "content-type": "application/json",
    accept: "application/json",
  },
  body: JSON.stringify({
    access_key: "YOUR_ACCESS_KEY",
    name: "Ada",
    email: "ada@example.com",
    message: "Hello",
  }),
});

const result = await response.json();
if (response.ok) {
  window.location.href = "/thanks";
}

Support checklist

If you are an admin or operator, these endpoints can help diagnose issues:

GET /v1/forms/{formId}/events
GET /v1/forms/{formId}/deliveries

Use your admin dashboard or contact support with the request ID for help.

On this page