---
title: "Retrieve a user"
method: GET
path: "/v1/users/{user_id}/"
tags: ["Users"]
---

# Retrieve a user

`GET /v1/users/{user_id}/`

This endpoint retrieves a user.

## Query parameters

- `list_links` boolean

## Response `200`

- ApplicantRetrieve
  - `id` string, required — Unique identifier of the user.
  - `external_user_id` string, nullable, required — External user id.
  - `first_name` string, nullable — First name of the user.
  - `last_name` string, nullable — Last name of the user.
  - `email` string, email, nullable — User's email.
  - `phone` string, nullable — User's phone number in E.164 format (`+` followed by the country code and number).
  - `ssn` string, nullable — User's SSN, masked. Only the last 4 digits are visible — the leading digits are replaced with `*` (for example `*****3333`). When only the last 4 digits are on file, the value is fully masked (`****`).
  - `created_at` string, date-time, required — Timestamp when the user was created.
  - `updated_at` string, date-time, required — Timestamp when the user was updated last time.
  - `links` Link[], nullable — List of account Links associated with the user.
    - `id` string — Link ID
    - `access_token` string — Access token for data refresh. Returns masked value (e.g., `****************************7610`) unless filtered by `user_id`, in which case the full token is returned.
    - `created_at` string — Link creation timestamp (ISO 8601)
    - `updated_at` string — Link last update timestamp (ISO 8601)
    - `deleted_at` string, nullable — Link removal timestamp (ISO 8601)
    - `tracking_info` string, nullable — Optional tracking information provided by a partner
    - `status` string — Status of the last Task
    - `user_external_id` string, nullable — User external ID is information provided by a partner
    - `provider_id` string — Data provider ID
    - `provider` ProviderBase, nullable
      - `id` string, required — Data provider ID.
      - `name` string, required — Data provider name.
      - `logo_url` string, nullable — Data provider logo image.
    - `company_mapping` Employer, nullable
      - `id` string, nullable, required — Employer ID.
      - `name` string, required — Employer name.
      - `logo_url` string, nullable — Employer logo image.
    - `link_hash` string, nullable — Unique hash for the user credentials used to create the link
    - `allowed_products` string[] — List of all allowed products for this connection
    - `initial_product_type` 'income' | 'employment' | 'deposit_switch' | 'pll' | 'insurance' | 'transactions' | 'assets' | 'credit' | 'education' | 'null', nullable — Initial product type
    - `data_source` 'payroll' | 'docs' | 'insurance' | 'financial_accounts' | 'tax' | 'scoring_attributes' | 'credit' | 'education' — Source of data: payroll - payroll provider parsing, docs - user uploaded documents, insurance - insurance data, financial_accounts - bank data, tax - tax documents, scoring_attributes - transactions scoring attributes report.
    - `is_suspicious` boolean — Flag to indicate if the data from the source is suspicious. E.g. fraud detected in uploaded documents or SSN of the user does not match with the data
    - `is_dds_available` boolean, nullable — This flag indicates if connected account supports deposit switching functionality. null - unknown, True - yes, False - No
  - `voie_report_id` string, nullable — GSE accepted income and employment verification report ID
  - `voa_report_id` string, nullable — Verification of Assets report ID
  - `income_insights_report_id` string, nullable — Income insights report ID
  - `aim_check_report_id` string, nullable — AIM check report ID

## Other responses

- `401` — HTTP 401 Unauthorized
- `403` — HTTP 403 Forbidden
- `404` — HTTP 404 Not Found

---

[API](https://skmtc.net/truv/apis/truv-api.md) · [All operations](https://skmtc.net/truv/apis/truv-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/truv/truv-api/versions/b92671dcb52d/schema)
