---
title: "Set SCIM information for a provisioned enterprise user"
method: PUT
path: "/scim/v2/enterprises/{enterprise}/Users/{scim_user_id}"
tags: ["enterprise-admin"]
---

# Set SCIM information for a provisioned enterprise user

`PUT /scim/v2/enterprises/{enterprise}/Users/{scim_user_id}`

Replaces an existing provisioned user's information.

You must supply complete user information, just as you would when provisioning them initially. Any previously existing data not provided will be deleted. To update only a specific attribute, refer to the [Update an attribute for a SCIM user](#update-an-attribute-for-a-scim-enterprise-user) endpoint.

> [!WARNING]
> Setting `active: false` will suspend a user. As a result, their handle and primary email address will be obfuscated.
>
> ```
>{
>  "schemas": [
>    "urn:ietf:params:scim:schemas:core:2.0:User"
>  ],
>  "externalId": "E012345",
>  "active": false,
>  "userName": "E012345",
>  "name": {
>    "familyName": "Octocat",
>    "givenName": "Mona",
>    "middleName": "Lisa"
>  },
>  "displayName": "Mona Lisa",
>  "emails": [
>    {
>      "value": "mlisa@example.com",
>      "type": "work",
>      "primary": true
>    }
>  ],
>  "roles": [
>    {
>      "value": "User"
>    }
>  ]
>}
> ```

## Path parameters

- `scim_user_id` string, required
- `enterprise` string, required

## Request body

- User
  - `schemas` string[], required — The URIs that are used to indicate the namespaces of the SCIM schemas.
  - `externalId` string, required — A unique identifier for the resource as defined by the provisioning client.
  - `active` boolean, required — Whether the user active in the IdP.
  - `userName` string, required — The username for the user.
  - `name` UserName
    - `formatted` string — The full name, including all middle names, titles, and suffixes as appropriate, formatted for display.
    - `familyName` string, required — The family name of the user.
    - `givenName` string, required — The given name of the user.
    - `middleName` string — The middle name(s) of the user.
  - `displayName` string, required — A human-readable name for the user.
  - `emails` object[], required — The emails for the user.
    - `value` string, required — The email address.
    - `type` string, required — The type of email address.
    - `primary` boolean, required — Whether this email address is the primary address.
  - `roles` object[] — The roles assigned to the user.
    - `display` string
    - `type` string
    - `value` 'user' | '27d9891d-2c17-4f45-a262-781a0e55c80a' | 'guest_collaborator' | '1ebc4a02-e56c-43a6-92a5-02ee09b90824' | 'enterprise_owner' | '981df190-8801-4618-a08a-d91f6206c954' | 'ba4987ab-a1c3-412a-b58c-360fc407cb10' | 'billing_manager' | '0e338b8c-cc7f-498a-928d-ea3470d7e7e3' | 'e6be2762-e4ad-4108-b72d-1bbe884a0f91', required — The role value representing a user role in GitHub.
    - `primary` boolean — Is the role a primary role for the user.

## Response `200`

User was updated

## Other responses

- `400` — Bad request
- `401` — Authorization failure
- `403` — Permission denied
- `404` — Resource not found
- `409` — Duplicate record detected
- `429` — Too many requests
- `500` — Internal server error

---

[API](https://skmtc.net/github/apis/ghec.md) · [All operations](https://skmtc.net/github/apis/ghec/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/github/ghec/revisions/8ae6d0c8716e/schema)
