Skip to main content
Hosted sessions are the easiest way to verify identities. You create a session, send the user to a hosted verification page, and retrieve the results when they’re done — deepidv handles document upload, selfie capture, and liveness for you.

Flow overview

Step 1 — Create a session

The result contains the URL to send your user to:
This maps to the REST Create Session endpoint — see it for the full request/response schema and the redirect_url callback parameters.

Step 2 — Send the user to verify

Redirect the user to session.sessionUrl. On the hosted page they:
  1. Upload their identity document (passport, driver’s license, national ID).
  2. Take a selfie for face matching.
  3. Complete liveness detection.

Step 3 — Handle the callback

When the user finishes (or abandons), they’re redirected to your redirectUrl with query parameters appended:
See Create Session → Redirect URL for the full list of status and reason values.

Step 4 — Retrieve results

The analysisData field carries all verification results:
Presigned URLs for accessing uploaded documents and images:

Step 5 — Update session status

After reviewing the results, set the final status:
Only VERIFIED, REJECTED, and VOIDED are valid targets. You cannot set PENDING or SUBMITTED — those are managed by the API based on user activity. See the REST Update Session Status endpoint.

Listing sessions

Pagination

The paginated response wraps data with total, hasMore, limit, and offset. See the REST List Sessions endpoint and the Sessions reference for the full types.

Session statuses