UnifyIDDeveloper

Identity access

Scopes

Scopes define the maximum information an application may request. They never bypass user consent, data availability, or UnifyID policy.

Enabling a scope only makes it eligible for a request. The user must still grant that scope during authorization before any corresponding information can be disclosed.

Scope catalogue

Risk describes the sensitivity of the requested information. “Attestable” means UnifyID can accompany the verified result with privacy-safe proof metadata; it never means raw evidence or biometric data is disclosed.

Authentication

openid

Issue an OpenID Connect ID token and an application-specific subject.

Risk
Standard
Proof
Not attestable
profile

Request the basic profile bundle. It never means unrestricted profile access.

Risk
Standard
Proof
Not attestable

Contact

email

Request one user-selected verified email address.

Risk
Standard
Proof
Attestable
emails

Request the verified email addresses the user explicitly selects.

Risk
Sensitive
Proof
Attestable
phone

Request one user-selected verified phone number.

Risk
Standard
Proof
Attestable
phones

Request the verified phone numbers the user explicitly selects.

Risk
Sensitive
Proof
Attestable

Personal identity

legal_name

Request the legal name established by identity verification.

Risk
Sensitive
Proof
Attestable
age

Request the current age derived from a verified date of birth.

Risk
Sensitive
Proof
Attestable
age_over_18

Receive a privacy-preserving boolean confirming whether the person is at least 18.

Risk
Standard
Proof
Attestable
date_of_birth

Request the exact verified date of birth.

Risk
Restricted
Proof
Attestable
nationality

Request verified nationality.

Risk
Sensitive
Proof
Attestable

Identity assurance

identity_verified

Check whether UnifyID currently considers the person verified.

Risk
Standard
Proof
Attestable
identity_assurance_level

Request the assurance level reached by the identity.

Risk
Standard
Proof
Attestable
liveness_verified

Check whether required live-person verification passed.

Risk
Sensitive
Proof
Attestable
face_match_verified

Check whether the live person matched the verified account reference.

Risk
Sensitive
Proof
Attestable

Profile

profile_photo

Request the user-approved profile photo.

Risk
Restricted
Proof
Not attestable
profile_photo_verified

Check whether the current profile photo passed account-bound matching.

Risk
Standard
Proof
Attestable

Documents

identity_documents

List approved verified documents using opaque application-specific references.

Risk
Sensitive
Proof
Attestable
document_type

Request the verified document type.

Risk
Standard
Proof
Attestable
document_issuing_country

Request the country that issued the document.

Risk
Standard
Proof
Attestable
document_expiry_date

Request the verified document expiry date.

Risk
Sensitive
Proof
Attestable
document_validity

Request whether the document is active, expired, disabled, or revoked.

Risk
Standard
Proof
Attestable
document_verified

Check whether the selected document passed verification.

Risk
Standard
Proof
Attestable
document_verified_at

Request when the selected document was verified.

Risk
Sensitive
Proof
Attestable
document_number_masked

Request a masked document identifier.

Risk
Sensitive
Proof
Attestable
document_number_full

Restricted complete document number; requires explicit consent and Production approval.

Risk
Restricted
Proof
Attestable

Scope dependencies

RequestRequired boundary
openidRequired for OpenID Connect authentication and an ID token.
profileA bounded basic profile bundle; it is not permission to retrieve every profile field.
email / phoneReturns one user-selected verified value. Use the plural scope only when multiple values are necessary.
identity_documentsRequired before the document collection endpoint can be used.
document_*Requires identity_documents, an allowed country and document type, the matching permitted field, and user approval.

Document selection policy

Document access is configured in three layers. First select an issuing country, then one or more document types from that country’s live catalogue, and finally the exact fields your application may receive. New catalogue entries are never added to an existing application automatically.

01Issuing country

Select a supported country.

02Document type

Select accepted evidence from that country.

03Permitted fields

Allow only fields required by the decision.

04User approval

The person chooses an eligible document and approves disclosure.

Effective document access is the intersection of the current country catalogue, the application’s saved document policy, the user’s active and share-enabled verified documents, the authorization request, active consent, and UnifyID policy.

Retrieve approved documents

List approved documents first, then retrieve one document using its opaque, application-specific reference. A reference is not a document number, differs between applications, and stops resolving when the document or consent is no longer shareable.

GET/v1/userinfo/identity-documents

Requires identity_documents. Returns only active, verified, scope-enabled, share-enabled documents that match the saved country and document-type policy.

{
  "data": {
    "documents": [{
      "documentReference": "docref_opaque_application_value",
      "displayName": "NG Passport",
      "documentType": "passport",
      "issuingCountry": "NG",
      "validityStatus": "active",
      "verified": true
    }]
  }
}
GET/v1/userinfo/identity-documents/:documentReference

Returns only the fields approved for that document and may include privacy-safe UnifyID attestation metadata.

{
  "data": {
    "documentReference": "docref_opaque_application_value",
    "displayName": "NG Passport",
    "documentType": "passport",
    "issuingCountry": "NG",
    "expiryDate": "2031-07-31",
    "validityStatus": "active",
    "verified": true,
    "verifiedAt": "2026-07-31T12:00:00.000Z",
    "maskedDocumentNumber": "•••• 7778",
    "proof": {
      "type": "UnifyIDAttestation",
      "attestationId": "attestation_public_reference",
      "schemaVersion": "1.0",
      "status": "issued",
      "proofHash": "privacy_safe_proof_hash"
    }
  }
}

Restricted document numbers

document_number_full is unavailable in Sandbox. Production access requires an active Production application, explicit user consent, a permitted document field, and administrative approval. Every successful disclosure is audited. Prefer document_number_masked whenever possible.

Unavailable and revoked information

UserInfo omits unavailable claims rather than inventing a negative value. Document endpoints reject missing scope with insufficient_scope, return 404 when an approved reference no longer resolves, and reject tokens whose consent has expired or been revoked. Your application must stop new processing after revocation and apply its retention or deletion obligations.

Compatibility alias

identity_verification_status remains accepted for compatibility with earlier integrations. New applications should request identity_verified. Do not request both.

Least privilege

Prefer
age_over_18

Use an age threshold instead of requesting the complete date_of_birth.

Prefer
identity_verified

Request a clear trust decision when the underlying identity details are unnecessary.

Limit
email or phone

Request one selected contact value unless your product genuinely requires multiple values.

Justify
Document metadata

Request document fields only when they directly support the stated business decision.

Consent behavior

The consent page shows the actual requested scopes. Adding a scope later requires a new authorization request; existing grants do not silently expand.

Was this page helpful?
UnifyID Developer Documentation · Version V.1 · Updated July 2026