Developer center
Events & errors
For vendors, development teams and integration partners. Every API links to its service, context and evidence.
Meaningful error codes
No-match is a business result; 401/403/503 describe protocol, authorization or service faults.
| HTTP | Illustrative code | Recommended handling |
|---|---|---|
| 422 | CAPTURE_QUALITY_LOW | Capture quality is insufficient; guide a retry. |
| 422 | PRESENTATION_REJECTED | Stop the session and use the policy-approved alternative. |
| 409 | SESSION_EXPIRED | Create a fresh session; do not replay old capture. |
| 403 | DEVICE_UNTRUSTED | Reject the session and request a device review. |
| 403 | SCOPE_NOT_ALLOWED | Check client, organization and purpose authorization. |
| 429 | RATE_LIMITED | Honor Retry-After and bound retry attempts. |
| 503 | PROCESSING_UNAVAILABLE | Do not infer success; invoke the alternative workflow. |
Events can be duplicated or reordered
| Element | Requirement |
|---|---|
| eventId / requestId / traceId | Deduplicate by event ID; trace IDs support diagnosis only. |
| eventTime / version | Use state and version, not arrival order alone. |
| signature / authentication | Agree a webhook signature or mTLS mechanism; never trust an unsolicited callback. |
| retry / dead-letter | Bound retries and provide reconciliation and manual handling. |