---
title: "Get the current user's profile, creating it on first call"
method: GET
path: "/v1/users/me"
tags: ["Users"]
---

# Get the current user's profile, creating it on first call

`GET /v1/users/me`

## Request

- Base URL: `https://api.signvoy.com`
- URL: `https://api.signvoy.com/v1/users/me`
- Auth: HTTP bearer

## Response `200`

- UserProfileDto
  - `id` string, required: Clerk user id
  - `email` string, nullable, required
  - `name` string, nullable, required: Convenience join of firstName and lastName ("first last"), null when both are unset. Not stored — update the parts, not this.
  - `firstName` string, nullable, required
  - `lastName` string, nullable, required
  - `imageUrl` string, nullable, required: Clerk avatar URL
  - `phone` string, nullable, required
  - `demographics` UserDemographicsDto, required
    - `role` string: Professional role
    - `useCases` string[]: Document types the user plans to send
    - `monthlyVolume` '1-5' | '6-20' | '21-100' | '100+'
    - `teamSize` 'just_me' | '2-10' | '11-50' | '51-200' | '200+'
    - `referralSource` string: How the user heard about Signvoy
    - `previousTool` string: Tool the user signs documents with today
  - `onboardingStep` number, required: Furthest onboarding step reached
  - `onboardingCompletedAt` string, date-time, nullable, required
  - `createdAt` string, date-time, required
  - `updatedAt` string, date-time, required

---

[API](https://skmtc.dev/signvoy/apis/signvoy-api.md) · [All operations](https://skmtc.dev/signvoy/apis/signvoy-api/llms.txt) · [OpenAPI document](https://skmtc.dev/signvoy/apis/signvoy-api/revisions/003cabc7cfe2?raw)
