---
title: "Create user"
method: POST
path: "/appReseller/v1/users"
tags: ["AppResellerAccount"]
---

# Create user

`POST /appReseller/v1/users`

## Request

- Base URL: `https://marketplace.appdirect.com/api`
- URL: `https://marketplace.appdirect.com/api/appReseller/v1/users`
- Auth: none declared
- TypeScript: <https://skmtc.dev/appdirect/apis/companies/docs/appReseller/v1/users/post.ts> (a function with typed inputs; its response is checked against the schema)

Create a new user in a company linked to the Reseller company.

## Query parameters

- `context` 'RESELLER' | 'RESELLER_MANAGER', required

## Request body

- UserCreationRequest
  - `createdByCompanyId` string: Reseller's company ID
  - `companyId` string: New user's company ID
  - `externalId` string: New user's external ID (must be unique)
  - `email` string: New user's email (must be unique)
  - `firstName` string: New user's First Name
  - `lastName` string: New user's Last Name

## Response `200`

Success

- UserCreationResponse
  - `id` string: User ID
  - `companyId` string: Current company ID
  - `email` string: Email address
  - `firstName` string: First name
  - `lastName` string: Last name
  - `createdOn` number: User creation date, in timestamp format
  - `activated` boolean: Indicates whether user is activated
  - `invitationRequired` boolean: Indicates whether the user requires an invitation
  - `enabled` boolean: Indicates whether the user is enabled
  - `memberships` AppResellerAccountUserCompanyMembershipWS[]: User company memberships
    - `company` AppResellerAccountCompanyWS
      - `id` string: Company ID
      - `externalId` string, nullable: Company's external ID
      - `name` string: Company name
      - `createdOn` number: Company creation date, in timestamp format
    - `enabled` boolean: Indicates whether user's company membership is enabled
    - `mosiUser` MosiUser, nullable
      - `username` string, nullable
    - `roles` Role[]: User roles in the Company

## Other responses

- `401`: Unauthorized
- `500`: User not created

## Changes

- **2026-11-06** `1fc240f06971`: 2 breaking, 16 info
  - the request's body type changed from no type to `object`
  - the response's body type changed from no type to `object` for status `200`
  - added the new optional request property `companyId`
  - added the new optional request property `createdByCompanyId`
  - …14 more

[Operation history](https://skmtc.dev/appdirect/apis/companies/changes/appReseller/v1/users/post.md)

---

[API](https://skmtc.dev/appdirect/apis/companies.md) - [All operations](https://skmtc.dev/appdirect/apis/companies/llms.txt) - [OpenAPI document](https://skmtc.dev/appdirect/apis/companies/revisions/1fc240f06971?raw)
