Skip to main content
POST
Create an IDV session

Authorizations

Authorization
string
header
required

Authorization: Api-Key <application_api_key> (legacy X-Api-Key also accepted).

Body

application/json
profile_id
string
required

REQUIRED. The Minerva customer/profile object id this verification belongs to (missing/empty -> 400 idv_profile_id_required; bad shape -> 400 idv_profile_id_invalid). The profile MUST exist in scope in the Minerva profiles service: a missing profile -> 400 idv_profile_not_found, a profile-service lookup failure -> 503 idv_profile_lookup_unavailable (fail closed). The id is stored, scoped, and indexed, and every profile-scoped query is always tenant+workspace bounded.

Required string length: 1 - 128
Pattern: ^[A-Za-z0-9._:-]+$
tenant_id
string

Ignored/overwritten when an application principal is resolved.

workspace_id
string

Ignored/overwritten when an application principal is resolved.

subject_reference
string

Encrypted at rest; never echoed.

retention_policy_id
string
workflow
enum<string>
default:liveness_and_id

Mutually exclusive with steps (both present -> 400).

Available options:
liveness_and_id,
liveness_only,
id_only
steps
object[]

Explicit flow-step manifest. Order is the canonical flow order. At most one liveness and one id_capture step; step_id and document_id values are unique, with at most five documents total. Mutually exclusive with workflow.

Required array length: 1 - 10 elements
workflow_id
string

Workflow OBJECT reference (idvw_...). Mutually exclusive with BOTH workflow and steps (400 when combined). Must resolve within the caller's tenant/workspace (404 otherwise; missing and out-of-scope are indistinguishable). Steps + branding are COPIED onto the session at create; later workflow edits never mutate it. When ALL manifest sources are omitted, the scope's DEFAULT workflow applies (falling back to the liveness_and_id preset).

idempotency_key
string

Optional caller-generated retry key, unique within the authenticated tenant/workspace. A replay with the same profile, workflow source, and normalized full-create fingerprint returns the original session; reuse for a different request returns 409 idv_session_idempotency_conflict. The key is internal persistence metadata and is never included in a session response.

Required string length: 1 - 160
Pattern: ^[A-Za-z0-9._:-]+$
session_overrides
object

Versioned bounded overrides available only to applications entitled to them. Applied after the workflow/default manifest and policy are resolved and copied. This surface cannot remove/reorder steps or change consent, liveness, documents, retention, theme, or assessment controls.

Response

Created

data
object
required

Reviewer-safe session projection (management planes).

session_token
string
required

One-time end-user capture token. Returned only for the first keyed create; an idempotent replay returns an empty string because the original token cannot be recovered or safely rotated.

Example:

"idvs_9c1f...redacted"

token_expires_at
string<date-time>
required