---
title: "Update User"
method: PUT
path: "/api/scim/v2/Users/{id}"
tags: ["Users V2"]
---

# Update User

`PUT /api/scim/v2/Users/{id}`

## Request

- Base URL: `https://hostname`
- URL: `https://hostname/api/scim/v2/Users/{id}`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://{hostname}/api/access/v1/oauth/token` scopes: `SCIM`, `USER`

Use this API to fully update all attributes for a user. This API should only be used when provisioning and managing users from your Identity Provider using the System for Cross-Domain Identity Management (SCIM) standard to facilitate the automated creation of user identities from a third-party identity management application.

> 🗒 Things to Know
>
> - This API supports OneTrust's Legacy SCIM Integration that leverages SCIM groups, which are unique role-organization combinations that each represent a specific role within a particular organization. For more information, see [Legacy SCIM User Provisioning](https://my.onetrust.com/s/article/UUID-abda73a7-4996-c1b4-2e2a-e46aa3f2a3cc).
> - The following user attributes will be updated using this API: `givenName`, `familyName`, `externalId`, `active`, `division`, `userType`, `employeeNumber`, `department`, `manager`, and `title`.
> - Any attributes not included in the request will be replaced with a `null` value. It is best to first retrieve the latest user record using the [Get User](https://developer.onetrust.com/onetrust/reference/getuserusingget) API, and then modify that response to use in the request for this API. If you only need to update some but not all attributes, use the [Modify User](https://developer.onetrust.com/onetrust/reference/patchuserusingpatch) API.

## Path parameters

- `id` string, uuid, required

## Request body

- UserResource
  - `id` string, uuid: Unique identifier for the user created by the OneTrust application.
  - `externalId` string: External Id
  - `meta` Meta
    - `created` string, date-time: The date and time when the resource was created
    - `lastModified` string, date-time: The date and time when the resource was last modified
    - `location` string, uri: The URL for the resource
    - `version` string: The version of the resource
    - `attributes` string[]
    - `resourceType` 'User' | 'Group' | 'ResourceType' | 'ServiceProviderConfig' | 'Schema': The resource type
  - `schemas` string[]
  - `userName` string, email: Username of the user in the OneTrust application.
  - `name` Name, required
    - `familyName` string, required: Family name (last name) of the user.
    - `givenName` string, required: Given name (first name) of the user.
  - `userType` 'Internal' | 'External': Type of the user.
  - `active` boolean: The flag to check whether the user is an active or an inactive user.
  - `groups` UserGroup[]: List of group details for a user within the OneTrust application.
    - `value` string: Unique identifier of a group in the application.
    - `display` string: Name of the User Group in the application.
  - `emails` Email[], required: List of Email addresses for the User.
    - `value` string, email, required: Email of the user.
    - `display` string, email: Email of the user.
    - `primary` boolean: Is the email the user's primary. Always `true` in the OneTrust application.
    - `$ref` string, string: Reference for the attribute
    - `type` string: The type of the email. In the OneTrust application, type is always 'work'.
  - `roles` string[]: Role of the user within the OneTrust application.
  - `title` string: Job title of the user
  - `urn:ietf:params:scim:schemas:extension:enterprise:2.0:User` EnterpriseUser
    - `businessUnit` string: User's business unit.
    - `division` string: The division with which the user is associated.
    - `employeeNumber` string: User's employee number or ID.
    - `officeLocation` string: The office location of the user.
    - `department` string: The department with which the user is associated.
    - `manager` Manager
      - `value` string, required: The manager's GUID or `id` in the OneTrust application. Leverage the [Get List of Users](/onetrust/reference/getusers) API to obtain a list of users. Use the manager's `id` to populate `value`.
      - `displayName` string: Manager's full name in the application.
      - `$ref` string, url: Reference URL to the user
    - `organization` string: Organization of the user within the OneTrust application.
    - `legacyManager` string: The legacy manager of the user.

## Response `200`

OK

- UserResource
  - `id` string, uuid: Unique identifier for the user created by the OneTrust application.
  - `externalId` string: External Id
  - `meta` Meta
    - `created` string, date-time: The date and time when the resource was created
    - `lastModified` string, date-time: The date and time when the resource was last modified
    - `location` string, uri: The URL for the resource
    - `version` string: The version of the resource
    - `attributes` string[]
    - `resourceType` 'User' | 'Group' | 'ResourceType' | 'ServiceProviderConfig' | 'Schema': The resource type
  - `schemas` string[]
  - `userName` string, email: Username of the user in the OneTrust application.
  - `name` Name, required
    - `familyName` string, required: Family name (last name) of the user.
    - `givenName` string, required: Given name (first name) of the user.
  - `userType` 'Internal' | 'External': Type of the user.
  - `active` boolean: The flag to check whether the user is an active or an inactive user.
  - `groups` UserGroup[]: List of group details for a user within the OneTrust application.
    - `value` string: Unique identifier of a group in the application.
    - `display` string: Name of the User Group in the application.
  - `emails` Email[], required: List of Email addresses for the User.
    - `value` string, email, required: Email of the user.
    - `display` string, email: Email of the user.
    - `primary` boolean: Is the email the user's primary. Always `true` in the OneTrust application.
    - `$ref` string, string: Reference for the attribute
    - `type` string: The type of the email. In the OneTrust application, type is always 'work'.
  - `roles` string[]: Role of the user within the OneTrust application.
  - `title` string: Job title of the user
  - `urn:ietf:params:scim:schemas:extension:enterprise:2.0:User` EnterpriseUser
    - `businessUnit` string: User's business unit.
    - `division` string: The division with which the user is associated.
    - `employeeNumber` string: User's employee number or ID.
    - `officeLocation` string: The office location of the user.
    - `department` string: The department with which the user is associated.
    - `manager` Manager
      - `value` string, required: The manager's GUID or `id` in the OneTrust application. Leverage the [Get List of Users](/onetrust/reference/getusers) API to obtain a list of users. Use the manager's `id` to populate `value`.
      - `displayName` string: Manager's full name in the application.
      - `$ref` string, url: Reference URL to the user
    - `organization` string: Organization of the user within the OneTrust application.
    - `legacyManager` string: The legacy manager of the user.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `429`: Too Many Requests. For more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).
- `500`: Internal Server Error

---

[API](https://skmtc.dev/onetrust/apis/platform-user-provisioning.md) - [All operations](https://skmtc.dev/onetrust/apis/platform-user-provisioning/llms.txt) - [OpenAPI document](https://skmtc.dev/onetrust/apis/platform-user-provisioning/revisions/919b165fb538?raw)
