Claude Platform Docs

Update User

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

Update a member's organization role.

Parameters
user_id: String

ID of the User.

role: :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, added_at, email, 3 more }
id: String

ID of the User.

added_at: Time

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

formatdate-time
email: String

Email of the User.

name: String

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: :user

Object type.

For Users, this is always "user".

Update User

require "anthropic"

anthropic = Anthropic::Client.new(api_key: "my-anthropic-api-key")

beta_organization_user = anthropic.beta.organization.users.update("user_id", role: :user)

puts(beta_organization_user)
{
  "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"
}