Claude Platform Docs

Update User

beta.organization.users.update(struser_id, UserUpdateParams**kwargs) -> BetaOrganizationUser
POST/v1/organizations/users/{user_id}

Update a member's organization role.

Parameters
user_id: str

ID of the User.

role: Literal["billing", "claude_code_user", "developer", 2 more]

New role for the User.

The accepted values depend on the organization type. Console and API organizations accept user, developer, billing, and claude_code_user; admin cannot be assigned through the API. Claude Enterprise organizations accept user and managed.

One of the following:
"billing"
"claude_code_user"
"developer"
"managed"
"user"
Returns
class BetaOrganizationUser:
id: str

ID of the User.

added_at: datetime

RFC 3339 datetime string indicating when the User joined the Organization.

formatdate-time
email: str

Email of the User.

name: str

Name of the User.

Organization role of the User.

One of the following:
"admin"
"billing"
"claude_code_user"
"developer"
"managed"
"membership_admin"
"owner"
"primary_owner"
"user"
type: Literal["user"]

Object type.

For Users, this is always "user".

defaultuser

Update User

import os
from anthropic import Anthropic

client = Anthropic(
    api_key=os.environ.get(
        "ANTHROPIC_API_KEY"
    ),  # This is the default and can be omitted
)
beta_organization_user = client.beta.organization.users.update(
    user_id="user_id",
    role="user",
)
print(beta_organization_user.id)
{
  "id": "user_01WCz1FkmYMm4gnmykNKUu3Q",
  "added_at": "2024-10-30T23:58:27.427722Z",
  "email": "user@emaildomain.com",
  "name": "Jane Doe",
  "role": "admin",
  "type": "user"
}
Returns Examples
{
  "id": "user_01WCz1FkmYMm4gnmykNKUu3Q",
  "added_at": "2024-10-30T23:58:27.427722Z",
  "email": "user@emaildomain.com",
  "name": "Jane Doe",
  "role": "admin",
  "type": "user"
}