Skip to main content
POST
curl

KYC and KYB support

Didit decodes the share token, reads the embedded session_kind, and clones the corresponding kind of session:
  • session_kind: "user" — clones the user session plus its related identity, face, liveness, face-match, AML, location, POA, phone, email, database-validation, and log rows.
  • session_kind: "business" — clones the business session plus its related registry check, key-people records, documents, AML screenings, phone, email, location, questionnaire, and log rows.
If the token predates the unified sharing rollout and has no session_kind field, Didit defaults to "user" for backward compatibility.

What gets created

  • A new session of the same kind in your application with a fresh session_id, session_number, and session_url.
  • The new session’s shared_from_session field points at the original session in the source application.
  • The new session’s status is either the original status (trust_review: true) or IN_REVIEW (trust_review: false).
  • A new entity (User or Business) is auto-created for the vendor_data if one doesn’t exist.

Examples

Response (201 Created):

trust_review parameter

Errors

Idempotency

Importing the same share_token twice is rejected with 403 — the duplicate-import check runs against both user and business tables depending on session_kind.

Authorizations

x-api-key
string
header
required

Body

application/json
share_token
string
required

JWT share token issued by POST /v3/session/{sessionId}/share/.

Example:

"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."

trust_review
boolean
required

If true, the cloned session keeps the source's final status. If false, it is forced into In Review.

Example:

false

workflow_id
string<uuid>
required

UUID of a workflow in the calling application. Cross-application IDs are rejected with 404.

Example:

"9f9b1234-aaaa-bbbb-cccc-1234567890ab"

vendor_data
string | null

Optional override for the cloned session's vendor_data.

Example:

"user-1"

Response

Session cloned. The body is the V3 decision payload for both kinds, discriminated by session_kind: "user" (KYC) with list-based feature blocks such as id_verifications, liveness_checks, aml_screenings; "business" (KYB) with blocks like registry_checks and key_people_checks. Both include shared_from_session — the session_id of the original session in the source application. With trust_review: false the cloned session's status is forced to In Review.