---
title: "Create a user"
method: POST
path: "/v1/users/"
tags: ["Users"]
---

# Create a user

`POST /v1/users/`

The endpoint creates a user.

## Request body

- ApplicantRequestCreate
  - `external_user_id` string, required — External user id.
  - `first_name` string, required — First name of the user.
  - `last_name` string, required — Last name of the user.
  - `email` string, email — User's email.
  - `phone` string — User's phone number. Accepted formats are normalized and stored as E.164 (`+14155554193`).
  - `ssn` string — User's SSN — the full 9 digits or the last 4 digits. Dashes and spaces are accepted on input and stripped before storing. Returned masked in responses.

## Response `201`

- Applicant
  - `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.

## Other responses

- `400` — HTTP 400 Bad Request
- `401` — HTTP 401 Unauthorized
- `403` — HTTP 403 Forbidden

## Changes

- **2026-07-27** `f7c013875516` — 5 warning
  - the `email` request property's maxLength was set to `254`
  - the `external_user_id` request property's maxLength was set to `512`
  - the `first_name` request property's maxLength was set to `128`
  - the `last_name` request property's maxLength was set to `128`
  - …1 more
- **2026-07-26** `e58688835e25` — 3 breaking
  - the response property `first_name` became nullable for the status `201`
  - the response property `last_name` became nullable for the status `201`
  - the response property `ssn` became nullable for the status `201`

[Change history](https://skmtc.dev/truv/apis/truv-api/changes/v1/users/post.md)

---

[API](https://skmtc.dev/truv/apis/truv-api.md) · [All operations](https://skmtc.dev/truv/apis/truv-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/truv/truv-api/revisions/d7195c30b6b1/schema)
