Sessions

The session object

Fields returned by every session endpoint.

Every session endpoint returns this object.

link Fields

id string

The session's ID. Use it to retrieve or cancel the session.

reference string

Your reference for the customer, as you sent it.

status string

Where the session has got to. One of created, handed_off, capturing, submitted, processing, clear, consider, rejected, expired, cancelled or error (a technical failure, not a finding).

See Sessions and statuses.

outcome string | null

The decision: clear, consider or rejected. null until there is one.

reasons string[]

Why the session wasn't clear, as stable codes. Empty otherwise. After a review, the reviewer's reason code. See Results.

reviewed boolean

Whether a person in your team decided the outcome.

review object | null

The person's decision. null unless reviewed.

add Show properties
action string

approve, reject or retry.

reason string

The reason code they gave.

retry_session_id string | null

The session started in this one's place when a reviewer asked for a retry. Send your customer its link from the dashboard.

retry_of string | null

For a retry: the session it replaces.

checks object

Each check's result, once there's an outcome: document, liveness, face_match, fraud, and ai_review when it ran.

add Show properties
result string

passed, needs_review or failed.

signals object[]

The findings behind it: code and severity (hard or soft).

document object

Only for keys with the sessions:read_data scope, on retrieve. Never in webhooks. Each read is recorded in your audit log.

add Show properties
fields object | null

The details read from the document, by name: surname, given_names, birth_date, document_number, expiry_date and others the document carries. null once deleted under your retention settings.

document_type string | null

The document your customer chose: passport, driving_licence, id_card or residence_permit. null until they choose.

document_country string | null

The country that issued it, as an ISO 3166-1 alpha-3 code such as GBR. null until they choose.

captures object

How many photos and videos we have, by kind. Retakes replace earlier attempts, so only the ones that count are included.

add Show properties
doc_front integer

Front of the ID, or the passport's photo page.

doc_back integer

Back of the card, for documents that have one.

selfie_clip integer

The selfie video.

selfie_keyframe integer

Still frames from the selfie.

created_at string

When you created the session.

expires_at string

When the link stops working, 24 hours after creation.

submitted_at string | null

When your customer finished uploading.

decided_at string | null

When the decision was made.

test boolean

true for a session started with a sandbox key. See Sandbox.

The session object
{
  "id": "a841ce23-0c9d-42a4-ba95-3e7e17a1407b",
  "reference": "user_1042",
  "status": "clear",
  "outcome": "clear",
  "reasons": [],
  "reviewed": false,
  "review": null,
  "retry_session_id": null,
  "retry_of": null,
  "checks": {
    "document": {"result": "passed", "signals": []},
    "liveness": {"result": "passed", "signals": []},
    "face_match": {"result": "passed", "signals": []},
    "fraud": {"result": "passed", "signals": []}
  },
  "document_type": "driving_licence",
  "document_country": "GBR",
  "captures": {
    "doc_front": 1,
    "doc_back": 1,
    "selfie_clip": 1,
    "selfie_keyframe": 3
  },
  "created_at": "2026-10-15T12:10:11Z",
  "expires_at": "2026-10-16T12:10:11Z",
  "submitted_at": "2026-10-15T12:14:52Z",
  "decided_at": "2026-10-15T12:15:20Z"
}
Was this page helpful?

Authorization

Your secret key stays in this tab: it is sent with this request only and never stored.

Body application/json

Response

Send the request to see the response.