**Source URL:** https://limited.veevavault.dev/safety/vault-api/api-reference/24.3/users/update-vault-membership.md

# Update Vault Membership



Use this request to:

* Assign an existing user to a Vault in your domain.

* Remove (disable) an existing user from a Vault in your domain.

* Update the security profile and license type of an existing user.

You cannot use this request to:

* Create a new user. See [Create Object Records](/vault-api/api-reference/24.3/vault-objects/update-object-records).

* Update other user profile information. See [Update Object Records](/vault-api/api-reference/24.3/vault-objects/update-object-records).

Additional information:

* For a list of user fields and properties, see [Retrieve Users](/vault-api/api-reference/24.3/users/retrieve-all-users).

* Learn about [Creating & Managing Users](https://platform.veevavault.help/en/lr/953) and [Managing Users Across Vaults](https://platform.veevavault.help/en/lr/15127) in Vault Help.

## Permissions {#permissions}

System Admins and Vault Owners can update users in the Vaults where they have administrative access. System Admins who are also Domain Admins have an unrestricted access to users across all Vaults in the domain.

<Endpoint path="/api/{version}/objects/users/{user_id}/vault_membership/{vault_id}" method="PUT"></Endpoint>

## Headers {#headers}

<FieldTable>
| Name | Description |
| --- | --- |
| `Content-Type` | `application/x-www-form-urlencoded` |
| `Accept` | `application/json` (default) or `application/xml` |
</FieldTable>

## URI Path Parameters {#uri-path-parameters}

<FieldTable>
| Name | Description |
| --- | --- |
| `{user_id}` | The user `id` field value. See [Retrieve All Users](/vault-api/api-reference/24.3/users/retrieve-all-users) above. |
| `{vault_id}` | The system-managed `id` field value assigned to each Vault in the domain. |
</FieldTable>

## Body Parameters {#body-parameters}

<FieldTable>
| Name | Description |
| --- | --- |
| `active__v` | Set the user status to active (`true`) or inactive (`false`). If omitted, this value defaults to `active__v`. |
| `security_profile__v` | Assigns the user a specific security profile in the Vault. If omitted, defaults to `document_user__v`. |
| `license_type__v` | Assigns the user a specific license type in the Vault. If omitted, defaults to `full__v`. |
</FieldTable>
See the example requests below for additional information about using these input values.

## Request Details: Add User to a Vault {#request-details-add-user-to-a-vault}

This request will assign the user (ID: 25001) to the Vault (ID: 3003). There are a few default settings that will be applied here:

The user's status will be set to active in the Vault. This is the default setting; the `active__v=true` parameter ca be omitted and produce the same results. We've not included the optional `security_profile__v` and `license_type__v` in the input. Therefore, the user will be assigned a `full__v` license type and `document_user__v` security profile by default.

## Request Details: Disable User in a Vault {#request-details-disable-user-in-a-vault}

This request will set the user (ID: 25001) profile to inactive in the Vault (ID: 3003). They will still be a member in the Vault and retain their license type and security profile, but their user profile will be inactive and they will no longer have access to the Vault.

## Request Details: Set Security Profile & License Type {#request-details-set-security-profile--license-type}

This request will set the user (ID: 25001) security profile and license type to specific values in the Vault (ID: 3003). If the user is already a member of the Vault, this will change their security profile and license type. If the user is not a member of the Vault, this will assign them to the Vault, set their status to active, and their security profile and license type to the specified values.

## Request : Add User to a Vault {#request--add-user-to-a-vault}

<CodeExample title="">
```
curl -X PUT -H "Authorization: {SESSION_ID}" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "active__v=true" \
https://myvault.veevavault.com/api/v15.0/objects/users/25001/vault_membership/3003

```
</CodeExample>

## Request : Disable User in a Vault {#request--disable-user-in-a-vault}

<CodeExample title="">
```
curl -X PUT -H "Authorization: {SESSION_ID}" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "active__v=false" \
https://myvault.veevavault.com/api/v15.0/objects/users/25001/vault_membership/3003

```
</CodeExample>

## Request : Set Security Profile & License Type {#request--set-security-profile--license-type}

<CodeExample title="">
```
curl -X PUT -H "Authorization: {SESSION_ID}" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "security_profile__v=business_admin__v" \
-d "license_type__v=full__v"
https://myvault.veevavault.com/api/v15.0/objects/users/25001/vault_membership/3003

```
</CodeExample>

---

**Previous:** [Change My Password](/safety/vault-api/api-reference/24.3/users/change-my-password)  
**Next:** [Retrieve Application License Usage](/safety/vault-api/api-reference/24.3/users/retrieve-application-license-usage)