/api/. There is no separate backend server.
Authentication
Every protected endpoint requires a valid BetterAuth session. The session is established via cookie-based authentication after login.orgId for multi-tenant isolation.
Request format
JSON body
POST and PATCH endpoints accept JSON request bodies:File uploads
Evidence and document upload endpoints acceptmultipart/form-data:
Query parameters
GET endpoints use query parameters for filtering and pagination:Response format
Success
Errors
Status codes
| Code | Meaning |
|---|---|
| 200 | Success |
| 201 | Created |
| 400 | Bad request — validation error or missing required fields |
| 401 | Unauthorized — no valid session |
| 403 | Forbidden — archived resource or insufficient permissions |
| 404 | Not found — resource doesn’t exist or doesn’t belong to your org |
| 409 | Conflict — duplicate resource or invalid status transition |
| 500 | Internal server error |
| 503 | Service unavailable — background service unavailable |
ID formats
Verity uses human-readable IDs throughout:| Resource | Format | Example |
|---|---|---|
| Examination | EX-YYYY-NNN | EX-2026-001 |
| Request item | RI-NNN | RI-001 |
| MRA | MRA-YYYY-NNN | MRA-2026-001 |
| Compliance program | CP-YYYY-NNN | CP-2026-001 |