Errors
RFC 9457 problem+json error responses from the Verifycate API
Error responses use RFC 9457 problem details with media type application/problem+json.
Problem body
| Field | Type | Description |
|---|---|---|
type | string (URI) | Optional URI for the error type. Often omitted; schema default is about:blank. |
title | string | Short summary, typically the HTTP status text (for example Bad Request). |
status | integer | HTTP status code. |
detail | string | Human-readable explanation for this occurrence. |
code | string | Machine-readable error code (for example invalid_email, seat_required). |
instance | string (URI) | Optional URI identifying this occurrence. |
errors | array | Optional field-level details (validation). |
Treat code and status as the stable signals for client logic. Do not rely on type URLs resolving to documentation pages.
Example
{
"title": "Payment Required",
"status": 402,
"detail": "an active seat is required for this feature",
"code": "seat_required"
}Validation example
{
"title": "Bad Request",
"status": 400,
"detail": "certificate name is required",
"code": "name_required"
}Common status codes
| Status | When |
|---|---|
400 | Invalid input (bad UUID, missing name, invalid attributes) |
401 | Missing or invalid API key |
402 | Workspace has no active Pro seat (seat_required) |
403 | Insufficient role or API key scope (missing_permission) |
404 | Resource not found |
429 | Rate limit exceeded (rate_limited). See Rate limits. |
500 | Unexpected server error (internal_error) |