---
title: "Create user"
url: "https://docs.signnow.com/docs/user/operations/post-user"
type: "endpoint"
section: "user"
slug: "user/operations/post-user"
method: "POST"
path: "/user"
operation_id: "post-user"
authorization: "basic"
---

# Create user

`POST /user`

Creates an account for a `user`

`user` object in SignNow allows you to track the `invite`s, `document`s and `template`s associated with one user. Using API you can create, update and delete users, retrieve their info, verify their emails, reset passwords, track changes with user's documents, templates, document groups, folders and teams, add them to or remove from organizations. The `user` object is also crucial to event subscriptions: SignNow enables you to trigger callbacks by an event of a specific user.  

## Authorization

basic

## Header Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `Content-Type` | string | No | application/json |

## Request Body

**Schema**

```json
{
  "type": "object",
  "required": [
    "email",
    "password"
  ],
  "properties": {
    "email": {
      "type": "string",
      "description": "User's email address."
    },
    "number": {
      "type": "string",
      "description": "User's phone number."
    },
    "password": {
      "type": "string",
      "description": "User's password: 6 characters minimum."
    },
    "last_name": {
      "type": "string",
      "description": "User's last name."
    },
    "first_name": {
      "type": "string",
      "description": "User's first name."
    }
  }
}
```

## Responses

### 200

OK

**Example** (`Example 1`)

```json
{
  "id": "aad13814e8f369089ee2f12b533545f9534e6cf8",
  "email": "user@signnow.com",
  "verified": 0
}
```

**Example** (`application/json`)

```json
{
  "id": "aaXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "email": "user@email.com",
  "verified": 0
}
```

### 400

* "unverified_email" - email has been registered on site before, but not verified
* "internal api error" - request without a required field in body 
* "User with email exists" - email has been registered and verified on site before
* "Invalid payload" - request without body

**Example** (`email exists`)

```json
{
  "errors": [
    {
      "code": 66330,
      "message": "User with email exists"
    }
  ]
}
```

**Example** (`invalid payload`)

```json
{
  "errors": [
    {
      "code": 65536,
      "message": "Invalid payload"
    }
  ]
}
```

**Example** (`unverified email`)

```json
{
  "errors": [
    {
      "code": 66396,
      "message": "unverified_email"
    }
  ]
}
```

**Example** (`internal api error`)

```json
{
  "errors": [
    {
      "code": 65544,
      "message": "internal api error"
    }
  ]
}
```

## Code Examples

> Replace `$SIGNNOW_ACCESS_TOKEN` and any `{placeholder}` values before running.

### cURL

```bash
curl -X POST \
  "https://api.signnow.com/user" \
  -H "Authorization: Basic $SIGNNOW_ACCESS_TOKEN" \
  -H "Content-Type: application/json"
```

---
*Full reference: https://docs.signnow.com/docs/user/operations/post-user*
