HTTP Status Codes
| Status | Description |
|---|---|
200 | Success |
201 | Created |
400 | Bad request (validation error) |
401 | Unauthorized (invalid API key) |
403 | Forbidden (form disabled, domain not allowed) |
404 | Not found |
429 | Rate limit exceeded |
500 | Server error |
Error Response Format
Common Errors
Form Submission Errors
| Error | Cause | Solution |
|---|---|---|
Form not found | Invalid form slug | Check the form slug in your URL |
Form is disabled | Form deactivated | Enable form in dashboard |
Domain not allowed | Origin not in allowed list | Add domain to form settings |
reCAPTCHA verification required | Missing captcha token | Include reCAPTCHA response |
reCAPTCHA verification failed | Invalid token | Ensure valid reCAPTCHA setup |
Please use a work email | Free email blocked | Use company email address |
File uploads not enabled | Files sent to non-upload form | Enable file uploads in settings |
Storage quota exceeded | Account storage full | Upgrade plan or delete files |
API Errors
| Error | Cause | Solution |
|---|---|---|
Unauthorized | Missing or invalid API key | Check Authorization header |
Forbidden | Insufficient permissions | Use key with correct permissions |
Rate limit exceeded | Too many requests | Wait and retry, or upgrade plan |
Rate Limiting
When rate limited, the response includes:X-RateLimit-Reset timestamp or Retry-After seconds before retrying.
Debugging Tips
- Check the
errorfield for specific details - Verify your API key has required permissions
- Ensure Content-Type header matches body format
- For form submissions, add
Accept: application/jsonto get JSON errors