Errors and versioning
HTTP status (REST: /api/v1, /api/zapier)
| Status | Meaning |
|---|---|
| 200 | Success (Zapier create may still be queued) |
| 400 | Validation |
| 401 | Missing or invalid key/token |
| 404 | Unknown route |
| 405 | Wrong method |
| 500 | Server error — retry with exponential backoff |
GraphQL
Do not assume HTTP 200 means business success. Read errors.
Idempotency
- Assessment submit upserts by organisation + email.
- Zapier
record_idshould be stable in your system so retries do not create duplicate people. - OAuth authorization codes are one-time.
Versioning
- Assessment questions include a
versionstring. Pin your renderer to the fetched schema, not to a copied questionnaire. - Path
/api/v1will remain the current REST version until a/api/v2is announced to integrators. - GraphQL field deprecations are communicated to listed partners before removal.
Support
Include timestamp (UTC), endpoint, request id / job_id if you received one, and organisation name. Never send API keys in email; rotate if a key leaked.