How to troubleshoot failed form submissions (403/429/500)
If your form submissions aren’t showing up, start here. This guide covers the most common HTTP status codes and what to check in each case.
Quick checklist
- Confirm you’re submitting to the correct endpoint:
/api/f/<form_id>. - Confirm the form is Active in the dashboard.
- If using HTML form posts: expect a 303 redirect on success.
- If using AJAX/JSON: expect a JSON response and handle success in your UI (no automatic redirect).
- Make sure your page’s domain matches the form’s allowed origin.
403 errors
429 errors
400-ish validation errors
- CAPTCHA errors: if you enabled Turnstile/reCAPTCHA/hCaptcha, the visitor must include the provider token field with the submission.
- Schema / required fields: if you set validation rules (Pro), the submission must include required fields and match constraints.
- Body size limits: very large payloads (especially file uploads) can be rejected. If you’re uploading files, ensure Pro file uploads are enabled and you’re using
multipart/form-data.
500 errors
A 500 indicates a server-side failure while processing the submission. Try again once. If it consistently fails, collect:
- Approximate timestamp
- Endpoint URL
- Submission method (HTML vs JSON)
- Whether file uploads / CAPTCHA / validation are enabled
Then contact support with those details.