Get the latest extracted verification detail for a user.
Returns the most recent normalized verification record. The baseline view
is always returned; extended groups (document number, source-of-funds,
proof-of-address, AML hit details, downloadable documents) are included
only when granted to this client.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Returns the most recent extracted verification detail for a single user. The endpoint looks up the latest verification record for the given user_id scoped to the authenticated client, ordered by decision time (newest first, records without a decision timestamp last) and then by fetch time. The response is a curated, client-safe view: it always exposes a baseline set of fields and adds extended groups (decrypted document number, source-of-funds answers, proof-of-address fields, AML hit details, downloadable document roles) only when UrbanpayX has granted that visibility group to your client.
Authentication & access
- Requires a valid Bearer token in the
Authorizationheader. - Permission required:
kyc.users.read. - Allowed account roles:
ownerandoperations. API credentials must carry thekyc.users.readpermission. - In a production runtime, the client must have production access enabled.
Path parameters
user_id(string, required) - The client-scoped user identifier whose latest verification record is returned. Records are matched on bothuser_idand the authenticated client, so one client cannot read another client's records.
Behavior
- Only the single most recent record is returned. Selection is ordered by
decision_atdescending (nulls last), thenfetched_atdescending, limited to one row. - This endpoint returns individual (
kyc) records only; records are matched byuser_id, and business records are not addressable here. - To retrieve the full history of records for a user, use
GET /api/v1/kyc/detail/USER_ID/history.
Response
200 OK returns the curated verification record (VerificationDetailResponse).
Always-present baseline fields:
status- one ofapproved,declined,in_review,pending,expired,unknown.kind- alwayskycfor this endpoint.data_trusted(boolean) andfetched_at(timestamp).decision_atmay benull.
Baseline fields that are nullable:
- Identity:
first_name,last_name,full_name,date_of_birth,nationality,document_type,document_issuing_country,document_expiry,gender. - Check results:
liveness_status,liveness_score,face_match_status,face_match_score,nfc_status,poa_status,aml_status,aml_total_hits. These check-result fields are populated only when the corresponding check was part of the verification performed; otherwise they are null.
Extended groups, returned only when granted to your client (otherwise null):
document_number- decrypted document number.sof_questionnaire- source-of-funds answers (object).poa- proof-of-address extracted fields (object).aml_hits- AML hit details (array of objects).documents- list of available document roles for download viaGET /api/v1/kyc/detail/USER_ID/documents/{file_role}.
Error responses
| Status | When |
|---|---|
404 | No verification record exists for the given user_id under the authenticated client. |
422 | The request fails path-parameter validation. |
Standard 401 (authentication), 403 (insufficient permission or role), and 429 (rate limit) responses apply to every endpoint and are documented in the Error reference.