REST API: KYC
Change a KYC session status
Record a manual decision on a session.
Purpose
Use this call to change a session status from your own tooling, for example when a reviewer decides a case outside the dashboard. A reviewer can make the same change in the dashboard.
Request
POST <API_BASE_URL>/kyc/session/status/change. All calls are POST under your API address. Replace <API_BASE_URL> with the API address provided with your access.
Send a permanent API token in the token field of the body, or a user token in the token header. See authentication.
Content type: application/json.
| Field | Type | Required | Description |
|---|---|---|---|
token | string (uuid) | yes | Your permanent API token. Required unless you send a user token in the token header. |
sessionId | string | yes | The session to change. |
status | value | yes | The new session status. Use one of the values on the session statuses page. |
Response
HTTP 200. The status was changed. The body confirms the change and carries nothing of the session itself.
| Field | Type | Description |
|---|---|---|
status | string | Always ok on this body. |
message | string | Human-readable detail. Never branch on it. |
Errors
400: The body failed validation. The answer hasstatusoferrorand adetailslist with one entry per offending field (path,expected,actual).401: The token is missing, expired or unknown.409: The session was busy with another request for the whole wait. Nothing of this request was applied. Repeat it once the other request has been answered.
A refusal can also come before the operation runs: an address outside your IP allowlist, a token bound to another address, or a body that is not valid JSON. See response format and errors.
Example
Request:
curl -X POST "<API_BASE_URL>/kyc/session/status/change" \
-H "Content-Type: application/json" \
-d '{
"token": "<your permanent API token>",
"sessionId": "00000000-0000-0000-0000-000000000000",
"status": "success"
}'
Response:
{
"status": "ok",
"message": "<detail>"
}