validation_error | 400 | Submitted payload failed contract validation. Inspect validationErrors[]. |
invalid_request | 400 | Request was syntactically invalid (missing required header, malformed JSON, etc.). |
invalid_token | 401 | Bearer token missing, malformed, or expired. Mint a fresh access token. |
forbidden | 403 | Token is valid but the partner application is not provisioned for this resource. |
not_found | 404 | Resource does not exist or is not visible to the caller. |
conflict | 409 | Idempotency-Key conflict, terminal-state mutation, or strict-order violation. |
payload_too_large | 413 | File exceeded the 10 MB upload cap. |
unsupported_media_type | 415 | Upload content-type not in the allow list (PDF, JPEG, PNG, WEBP). |
internal_error | 500 | Something broke on Zest’s side. Retry with backoff; cite errorId if persistent. |
service_unavailable | 503 | Transient downstream outage. Retry with exponential backoff. |