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

# Create a user

`POST /v1/users`

## Request

- Base URL: `http://0.0.0.0:3000`
- URL: `http://0.0.0.0:3000/v1/users`
- Auth: none declared

Creates a new user or retrieves an existing user by email. Returns an API token (`sk_`) for authenticating requests on behalf of this user.

**Authentication**:
- `Authorization: Bearer <client_secret>` header
- `X-Auth-Type: partner` header (recommended)
- `client_id` in request body

**Response**:
- `id`: The user's unique identifier (UUID)
- `token`: An `sk_` prefixed API token for this user

## Request body

- object
  - `email` string, email, required
  - `client_id` string, required
  - `first_name` string
  - `last_name` string
  - `role` string

## Response `200`

Default Response

- object
  - `success` true, required
  - `data` object, required
    - `id` string, uuid, required
    - `token` string, required

## Other responses

- `400`: Default Response
- `401`: Default Response
- `500`: Default Response

---

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