Skip to main content
GET
curl

Overview

Returns a single User entity keyed by vendor_data. Responses include didit_internal_id — Didit’s stable internal identifier.

When to use it

  • Lookup a user’s current verification state — the features map gives you the latest status of every feature in a single object.
  • Detail views in your own UI — pull the profile on demand before rendering.
  • Risk scoring — combine session counters and features to score each user on your side.

Notes

  • vendor_data in the URL is case-sensitive.
  • Returns 404 if no user with that vendor_data exists in the application.
  • Aggregate counters (session_count, approved_count, declined_count, in_review_count) update in real time as sessions complete.
  • See the User data model for every field.

Permissions

Role must grant read:users.

Authorizations

x-api-key
string
header
required

Path Parameters

vendor_data
string
required

Your unique identifier for the user — a free-form string (NOT a UUID). This is the same value you passed as vendor_data when creating the session that first introduced this user, matched exactly as sent.

Response

Full user detail including metadata, comments/activity log, and aggregated session data.

Full user detail. Extends UserListItem with metadata, comments, and updated_at.

didit_internal_id
string<uuid>

Didit's stable internal UUID for this user.

vendor_data
string | null

Your unique identifier for this user (passed when creating sessions). This can be null when no vendor identifier was supplied.

display_name
string | null

Custom display name set by you

full_name
string | null

Full name extracted from verified documents

date_of_birth
string<date> | null
effective_name
string | null

Best available name: display_name if set, otherwise full_name

status
enum<string>

Lifecycle status of the user record (NOT a session status). ACTIVE is the default, FLAGGED marks the user for manual attention, BLOCKED prevents new sessions for this vendor_data.

Available options:
ACTIVE,
FLAGGED,
BLOCKED
portrait_image_url
string | null

Presigned URL of the user's portrait photo (expires after a few hours)

session_count
integer

Total number of verification sessions for this user

approved_count
integer

Number of approved sessions

declined_count
integer

Number of declined sessions

in_review_count
integer

Number of sessions in review

issuing_states
string[]

ISO 3166-1 alpha-3 codes of issuing countries seen on this user's approved ID documents, e.g. ["USA", "ESP"]. Empty array when none.

approved_emails
string[]

Verified email addresses collected from this user's approved sessions, e.g. ["john@example.com"].

approved_phones
string[]

Verified phone numbers collected from this user's approved sessions, e.g. ["+14155551234"].

features
object

Aggregated per-feature status across all of this user's sessions. Possible keys: ID_VERIFICATION, NFC, LIVENESS, FACE_MATCH, POA, QUESTIONNAIRE, EMAIL_VERIFICATION, PHONE, AML, IP_ANALYSIS, AGE_ESTIMATION, DATABASE_VALIDATION. Possible values: Approved, Declined, In Review, Not Finished, Resub Requested.

features_list
object[]

Same data as features, as an ordered array of {feature, status} objects.

last_session_at
string<date-time> | null

Timestamp of the most recent session

first_session_at
string<date-time> | null

Timestamp of the first session

last_activity_at
string<date-time> | null

Timestamp of the most recent activity on this user (session, transaction, status change, data edit, etc.).

tags
object[]

Tag assignments. NOTE: on detail responses each entry is a tag link object ({uuid, tag: {...}, added_by_email, added_by_name, created_at}), unlike the flat {uuid, name, color} shape used on list responses.

created_at
string<date-time>
metadata
object

Custom metadata JSON you attached to this user. Defaults to {}.

comments
object[]

Activity log and comments for this user (status changes, profile edits, manual notes).

updated_at
string<date-time>