A 400 status code (Bad Request) during a Webflow flow test typically indicates invalid or missing data being sent to an API, webhook, or integration step.
1. Check API or Webhook URLs
- Ensure the Webhook URL or Third-party API endpoint in your flow step is correctly formatted (https://...).
- Check for malformed parameters, encoding issues, or incorrect query strings.
2. Validate Required Fields
- Web services return 400 when required fields are missing or empty.
- In your flow steps (like form submissions or CMS updates), verify all mandatory variables are being populated.
- Check if fields like email, ID, or token are blank or contain invalid formats.
3. Review Headers and Authorization
- If using custom headers (e.g., for Bearer tokens), make sure they’re correctly configured.
- Some services require headers like
Content-Type: application/json — missing or incorrect headers can trigger a 400.
4. Confirm Flow Trigger Data
- If the flow is triggered by a form submission or CMS event, inspect the inbound data.
- Use the "Test trigger" function to preview sample data and ensure it includes all necessary fields.
5. Test the Endpoint Separately
- Use Postman, Insomnia, or curl to send a test payload manually to the same endpoint using identical data.
- If the manual call also fails with 400, the issue is with the endpoint requirements — not Webflow.
6. Check CMS and Form Binding
- For CMS collection flows, ensure the referenced collection still exists and matches the expected schema.
- For form submission flows, verify field names have not changed or been removed from the Form block.
Summary
A recurring 400 error in Webflow flows is typically caused by invalid input, missing required data, or misconfigured headers. Re-check your webhook or API step, validate required fields are filled properly, and confirm your endpoint is accepting the payload structure you’re sending.