Troubleshooting
SupportStart from the response status. Most integration problems are one of the six below, and each has a single fix.
By status code
| Response | Cause | Fix |
|---|---|---|
| 405 Method Not Allowed | The form was submitted with GET. | A form with no method attribute defaults to GET. Set method="POST". |
| 404 Not Found | The form id does not exist. | Copy the endpoint from the Integration tab again; a truncated id is the usual cause. |
| 409 Conflict | The form is paused, or the plan quota is used. | Resume the form, or check the usage bar on Billing. |
| 413 Payload Too Large | The body exceeds 256 KB. | Send a URL to a file instead of the file itself. |
| 415 Unsupported Media Type | The Content-Type is missing or wrong. | Send application/json, form-encoded or multipart. |
| 429 Too Many Requests | A rate limit was hit. | Wait for Retry-After seconds, then retry with the same Idempotency-Key. |
A CORS error in the browser
The browser reports a blocked request. In practice this is almost always one of three things:
Access to fetch at 'https://formivo.faizyab.me/api/f/...'
from origin 'https://your-site.com' has been blocked by CORS policy- The form lists allowed domains and your site is not one of them. Add the exact origin, including https://.
- The request is a form-encoded POST without a preflight, and the server rejected the Origin. Check the form's domain list the same way.
- The request was sent to http:// instead of https://, which redirects and drops the body.
A request succeeds but nothing appears
A 200 from an HTML form means the thank-you page was returned, not that the row exists. Check the submission list filtered to that form, then check that you are looking at the same workspace.
A filled honeypot is discarded on purpose
If a submission is accepted but never stored, the _gotcha field was probably filled. Autofill and some browser extensions do this. Keep the field excluded from autofill and out of the tab order.
Notification emails do not arrive
The submission is stored independently of email, so a missing notification is not a lost lead. Check the notification address on the form, then check spam, then confirm the sending domain is verified with the email provider. Formivo never retries an address that the provider rejected.
A client cannot see a form
The client must sign in with the exact address that was invited. If they already had an account under a different address, the invitation belongs to a different user. Revoke the invitation and send a new one to the address they actually use.
Still stuck?
Send the form id, the response status and the time of the request to support. Never include full submission contents in a support message.