Skip to main content

HTTP Status Codes

StatusDescription
200Success
201Created
400Bad request (validation error)
401Unauthorized (invalid API key)
403Forbidden (form disabled, domain not allowed)
404Not found
429Rate limit exceeded
500Server error

Error Response Format

{
  "error": "Human-readable error message",
  "code": "ERROR_CODE"
}

Common Errors

Form Submission Errors

ErrorCauseSolution
Form not foundInvalid form slugCheck the form slug in your URL
Form is disabledForm deactivatedEnable form in dashboard
Domain not allowedOrigin not in allowed listAdd domain to form settings
reCAPTCHA verification requiredMissing captcha tokenInclude reCAPTCHA response
reCAPTCHA verification failedInvalid tokenEnsure valid reCAPTCHA setup
Please use a work emailFree email blockedUse company email address
File uploads not enabledFiles sent to non-upload formEnable file uploads in settings
Storage quota exceededAccount storage fullUpgrade plan or delete files

API Errors

ErrorCauseSolution
UnauthorizedMissing or invalid API keyCheck Authorization header
ForbiddenInsufficient permissionsUse key with correct permissions
Rate limit exceededToo many requestsWait and retry, or upgrade plan

Rate Limiting

When rate limited, the response includes:
HTTP/1.1 429 Too Many Requests
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1640000060
Retry-After: 60
Wait until X-RateLimit-Reset timestamp or Retry-After seconds before retrying.

Debugging Tips

  1. Check the error field for specific details
  2. Verify your API key has required permissions
  3. Ensure Content-Type header matches body format
  4. For form submissions, add Accept: application/json to get JSON errors