# Add user

Adds a user to the organization account.

> Who can use this operation?
>
> Permissions: System Admin

If successful, and user auto provisioning (UAP) is on, and user matches the auto provisioning rules, user is added to the org. If UAP is off, or user does not match UAP rules, user is invited to the org and must explicitly accept the invitation to join.

> Note: On user model plans, this operation sets licensedSheetCreator to true, regardless of the value provided in the request body.

> Note: In some specific scenarios, supplied attributes such as firstName and lastName may be ignored. For example, if you are inviting an existing Smartsheet user to join your organization account, and the invited user has not yet accepted your invitation, any supplied firstName and lastName are ignored.

Endpoint: POST /users
Version: 2.0.0
Security: APIToken, OAuth2

## Header parameters:

  - `Authorization` (string)
    API Access Token used to authenticate requests to Smartsheet APIs.

  - `smartsheet-integration-source` (string)
    Uses the following metadata to distinguish between human-initiated API requests and third-party service-initiated calls by AI Connectors or ITSM:

- Integration source type
- Organization name
- Integration source name 

Format:


TYPE,OrgName,SourceName


Examples: 

AI,SampleOrg,My-AI-Connector-v2

SCRIPT,SampleOrg2,Accounting-updater-script

APPLICATION,SampleOrg3,SheetUpdater
    Example: "AI,SampleOrg,My-AI-Connector-v2"

## Query parameters:

  - `sendEmail` (boolean)
    Either true or false to indicate whether to notify the user by email. Default is false. If true, limit is 1000 emails.

## Request fields (application/json):

  - `admin` (boolean)
    Indicates whether the user is a system admin (can manage user accounts and organization account).
    Example: true

  - `email` (string)
    User's primary email address.
    Example: "jane.doe@smartsheet.com"

  - `firstName` (string)
    User's first name.
    Example: "Jane"

  - `groupAdmin` (boolean)
    Indicates whether the user is a group admin (can create and edit groups).
    Example: true

  - `lastName` (string)
    User's last name.
    Example: "Doe"

  - `licensedSheetCreator` (boolean)
    Indicates whether the user is a licensed user (can create and own sheets).

Note: On user model plans, the [POST /users](/api/smartsheet/openapi/users/add-user) operation sets licensedSheetCreator to true, regardless of the value provided in the request body.
    Example: true

  - `profileImage` (object)

  - `profileImage.imageId` (string)
    Unique image ID.
    Example: "u!1!nAtdn5RJB_o!k6_e_3h2R3w!wmYXPek-yVD"

  - `profileImage.height` (integer)
    Image height.
    Example: 1050

  - `profileImage.width` (integer)
    Image width.
    Example: 1050

  - `resourceViewer` (boolean)
    Indicates whether the user is a resource viewer (can access resource views).
    Example: true

  - `status` (string)
    User status, set to one of the listed enum values.
    Enum: "ACTIVE", "DECLINED", "PENDING", "DEACTIVATED"

## Response 200 fields (application/json):

  - `message` (string)
    Message that indicates the outcome of the request. (One of SUCCESS or PARTIAL_SUCCESS.)
    Enum: "PARTIAL_SUCCESS", "SUCCESS"

  - `resultCode` (number)
    * '0' Success
* '3' Partial Success of Bulk Operation
    Enum: 0, 3

  - `result` (object)
    User object.

## Response default fields (application/json):

  - `refId` (string)
    The ID of the specific error occurrence. Please include this information when contacting Smartsheet support.

  - `errorCode` (number)
    Custom error code from Smartsheet. See the complete [Error Code List](/api/smartsheet/error-codes).

  - `message` (string)
    Descriptive error message.


