Claude Platform Docs

Beta

Models
type AnthropicBeta = (string & {}) | "message-batches-2024-09-24" | "prompt-caching-2024-07-31" | "computer-use-2024-10-22" | 47 more
One of the following:
interface BetaAPIError { type: "api_error"; message }
type: "api_error"
defaultapi_error
message: string
defaultInternal server error
interface BetaAuthenticationError { type: "authentication_error"; message }
type: "authentication_error"
defaultauthentication_error
message: string
defaultAuthentication error
interface BetaBillingError { type: "billing_error"; message }
type: "billing_error"
defaultbilling_error
message: string
defaultBilling error
type BetaCurrency = "USD"
One of the following:
interface BetaErrorResponse { type: "error"; error; request_id }
type: "error"
defaulterror
error: BetaError
One of the following:
request_id: string | null
interface BetaGatewayTimeoutError { type: "timeout_error"; message }
type: "timeout_error"
defaulttimeout_error
message: string
defaultRequest timeout
interface BetaInvalidRequestError { type: "invalid_request_error"; message }
type: "invalid_request_error"
defaultinvalid_request_error
message: string
defaultInvalid request
interface BetaMonetaryAmount { amount; currency }

A monetary amount in a specific currency.

amount: string

Amount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.

currency: BetaCurrency

Uppercase ISO-4217 currency code. USD is the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.

interface BetaNotFoundError { type: "not_found_error"; message }
type: "not_found_error"
defaultnot_found_error
message: string
defaultNot found
interface BetaOverloadedError { type: "overloaded_error"; message }
type: "overloaded_error"
defaultoverloaded_error
message: string
defaultOverloaded
interface BetaPermissionError { type: "permission_error"; message }
type: "permission_error"
defaultpermission_error
message: string
defaultPermission denied
interface BetaRateLimitError { type: "rate_limit_error"; message }
type: "rate_limit_error"
defaultrate_limit_error
message: string
defaultRate limited

BetaModels

List Models
client.beta.models.list(params?, options?): Page<BetaModelInfo>
GET/v1/models

List available models.

Get a Model
client.beta.models.retrieve(modelID, params?, options?): BetaModelInfo
GET/v1/models/{model_id}

Get a specific model.

BetaMessages

Create a Message
client.beta.messages.create(params, options?): BetaMessage | Stream<BetaRawMessageStreamEvent>
POST/v1/messages

Send a structured list of input messages with text and/or image content, and the model will generate the next message in the conversation.

Count tokens in a Message
client.beta.messages.countTokens(params, options?): BetaMessageTokensCount
POST/v1/messages/count_tokens

Count the number of tokens in a Message.

BetaMessagesBatches

Create a Message Batch
client.beta.messages.batches.create(params, options?): BetaMessageBatch
POST/v1/messages/batches

Send a batch of Message creation requests.

Retrieve a Message Batch
client.beta.messages.batches.retrieve(messageBatchID, params?, options?): BetaMessageBatch
GET/v1/messages/batches/{message_batch_id}

This endpoint is idempotent and can be used to poll for Message Batch completion. To access the results of a Message Batch, make a request to the results_url field in the response.

List Message Batches
client.beta.messages.batches.list(params?, options?): Page<BetaMessageBatch>
GET/v1/messages/batches

List all Message Batches within a Workspace. Most recently created batches are returned first.

Cancel a Message Batch
client.beta.messages.batches.cancel(messageBatchID, params?, options?): BetaMessageBatch
POST/v1/messages/batches/{message_batch_id}/cancel

Batches may be canceled any time before processing ends. Once cancellation is initiated, the batch enters a canceling state, at which time the system may complete any in-progress, non-interruptible requests before finalizing cancellation.

Delete a Message Batch
client.beta.messages.batches.delete(messageBatchID, params?, options?): BetaDeletedMessageBatch
DELETE/v1/messages/batches/{message_batch_id}
Retrieve Message Batch results
client.beta.messages.batches.results(messageBatchID, params?, options?): BetaMessageBatchIndividualResponse | Stream<BetaMessageBatchIndividualResponse>
GET/v1/messages/batches/{message_batch_id}/results

Streams the results of a Message Batch as a .jsonl file.

BetaAgents

Create Agent
client.beta.agents.create(params, options?): BetaManagedAgentsAgent
POST/v1/agents
List Agents
client.beta.agents.list(params?, options?): PageCursor<BetaManagedAgentsAgent>
GET/v1/agents
Get Agent
client.beta.agents.retrieve(agentID, params?, options?): BetaManagedAgentsAgent
GET/v1/agents/{agent_id}
Update Agent
client.beta.agents.update(agentID, params, options?): BetaManagedAgentsAgent
POST/v1/agents/{agent_id}
Archive Agent
client.beta.agents.archive(agentID, params?, options?): BetaManagedAgentsAgent
POST/v1/agents/{agent_id}/archive

BetaAgentsVersions

List Agent Versions
client.beta.agents.versions.list(agentID, params?, options?): PageCursor<BetaManagedAgentsAgent>
GET/v1/agents/{agent_id}/versions
Create Environment
client.beta.environments.create(params, options?): BetaEnvironment
POST/v1/environments

Create a new environment with the specified configuration.

List Environments
client.beta.environments.list(params?, options?): PageCursor<BetaEnvironment>
GET/v1/environments

List environments with pagination support.

Get Environment
client.beta.environments.retrieve(environmentID, params?, options?): BetaEnvironment
GET/v1/environments/{environment_id}

Retrieve a specific environment by ID.

Update Environment
client.beta.environments.update(environmentID, params, options?): BetaEnvironment
POST/v1/environments/{environment_id}

Update an existing environment's configuration.

Delete Environment
client.beta.environments.delete(environmentID, params?, options?): BetaEnvironmentDeleteResponse
DELETE/v1/environments/{environment_id}

Delete an environment by ID. Returns a confirmation of the deletion.

Archive Environment
client.beta.environments.archive(environmentID, params?, options?): BetaEnvironment
POST/v1/environments/{environment_id}/archive

Archive an environment by ID. Archived environments cannot be used to create new sessions.

BetaEnvironmentsWork

Get Work Item
client.beta.environments.work.retrieve(workID, params, options?): BetaSelfHostedWork
GET/v1/environments/{environment_id}/work/{work_id}

Note: these endpoints are called automatically by the pre-built environment worker provided in the SDKs and CLI, for orchestrating sessions with self-hosted sandbox environments. They are included here as a reference; you do not need to invoke them directly.

Poll for Work
client.beta.environments.work.poll(environmentID, params?, options?): BetaSelfHostedWork | null
GET/v1/environments/{environment_id}/work/poll

Note: these endpoints are called automatically by the pre-built environment worker provided in the SDKs and CLI, for orchestrating sessions with self-hosted sandbox environments. They are included here as a reference; you do not need to invoke them directly.

Acknowledge Work
client.beta.environments.work.ack(workID, params, options?): BetaSelfHostedWork
POST/v1/environments/{environment_id}/work/{work_id}/ack

Note: these endpoints are called automatically by the pre-built environment worker provided in the SDKs and CLI, for orchestrating sessions with self-hosted sandbox environments. They are included here as a reference; you do not need to invoke them directly.

Record Heartbeat
client.beta.environments.work.heartbeat(workID, params, options?): BetaSelfHostedWorkHeartbeatResponse
POST/v1/environments/{environment_id}/work/{work_id}/heartbeat

Note: these endpoints are called automatically by the pre-built environment worker provided in the SDKs and CLI, for orchestrating sessions with self-hosted sandbox environments. They are included here as a reference; you do not need to invoke them directly.

Stop Work
client.beta.environments.work.stop(workID, params, options?): BetaSelfHostedWork
POST/v1/environments/{environment_id}/work/{work_id}/stop

Note: these endpoints are called automatically by the pre-built environment worker provided in the SDKs and CLI, for orchestrating sessions with self-hosted sandbox environments. They are included here as a reference; you do not need to invoke them directly.

List Work Items
client.beta.environments.work.list(environmentID, params?, options?): PageCursor<BetaSelfHostedWork>
GET/v1/environments/{environment_id}/work

Note: these endpoints are called automatically by the pre-built environment worker provided in the SDKs and CLI, for orchestrating sessions with self-hosted sandbox environments. They are included here as a reference; you do not need to invoke them directly.

Update Work Item
client.beta.environments.work.update(workID, params, options?): BetaSelfHostedWork
POST/v1/environments/{environment_id}/work/{work_id}

Note: these endpoints are called automatically by the pre-built environment worker provided in the SDKs and CLI, for orchestrating sessions with self-hosted sandbox environments. They are included here as a reference; you do not need to invoke them directly.

Get Queue Statistics
client.beta.environments.work.stats(environmentID, params?, options?): BetaSelfHostedWorkQueueStats
GET/v1/environments/{environment_id}/work/stats

Get statistics about the work queue for an environment.

BetaSessions

Create Session
client.beta.sessions.create(params, options?): BetaManagedAgentsSession
POST/v1/sessions
List Sessions
client.beta.sessions.list(params?, options?): BidirectionalPageCursor<BetaManagedAgentsSession>
GET/v1/sessions
Get Session
client.beta.sessions.retrieve(sessionID, params?, options?): BetaManagedAgentsSession
GET/v1/sessions/{session_id}
Update Session
client.beta.sessions.update(sessionID, params, options?): BetaManagedAgentsSession
POST/v1/sessions/{session_id}
Delete Session
client.beta.sessions.delete(sessionID, params?, options?): BetaManagedAgentsDeletedSession
DELETE/v1/sessions/{session_id}
Archive Session
client.beta.sessions.archive(sessionID, params?, options?): BetaManagedAgentsSession
POST/v1/sessions/{session_id}/archive

BetaSessionsEvents

List Events
client.beta.sessions.events.list(sessionID, params?, options?): PageCursor<BetaManagedAgentsSessionEvent>
GET/v1/sessions/{session_id}/events
Send Events
client.beta.sessions.events.send(sessionID, params, options?): BetaManagedAgentsSendSessionEvents
POST/v1/sessions/{session_id}/events
Stream Events
client.beta.sessions.events.stream(sessionID, params?, options?): BetaManagedAgentsStreamSessionEvents | Stream<BetaManagedAgentsStreamSessionEvents>
GET/v1/sessions/{session_id}/events/stream

BetaSessionsResources

Add Session Resource
client.beta.sessions.resources.add(sessionID, params, options?): BetaManagedAgentsFileResource
POST/v1/sessions/{session_id}/resources
List Session Resources
client.beta.sessions.resources.list(sessionID, params?, options?): PageCursor<BetaManagedAgentsSessionResource>
GET/v1/sessions/{session_id}/resources
Get Session Resource
client.beta.sessions.resources.retrieve(resourceID, params, options?): ResourceRetrieveResponse
GET/v1/sessions/{session_id}/resources/{resource_id}
Update Session Resource
client.beta.sessions.resources.update(resourceID, params, options?): ResourceUpdateResponse
POST/v1/sessions/{session_id}/resources/{resource_id}
Delete Session Resource
client.beta.sessions.resources.delete(resourceID, params, options?): BetaManagedAgentsDeleteSessionResource
DELETE/v1/sessions/{session_id}/resources/{resource_id}

BetaSessionsThreads

List Session Threads
client.beta.sessions.threads.list(sessionID, params?, options?): PageCursor<BetaManagedAgentsSessionThread>
GET/v1/sessions/{session_id}/threads
Get Session Thread
client.beta.sessions.threads.retrieve(threadID, params, options?): BetaManagedAgentsSessionThread
GET/v1/sessions/{session_id}/threads/{thread_id}
Archive Session Thread
client.beta.sessions.threads.archive(threadID, params, options?): BetaManagedAgentsSessionThread
POST/v1/sessions/{session_id}/threads/{thread_id}/archive

BetaSessionsThreadsEvents

List Session Thread Events
client.beta.sessions.threads.events.list(threadID, params, options?): PageCursor<BetaManagedAgentsSessionEvent>
GET/v1/sessions/{session_id}/threads/{thread_id}/events
Stream Session Thread Events
client.beta.sessions.threads.events.stream(threadID, params, options?): BetaManagedAgentsStreamSessionThreadEvents | Stream<BetaManagedAgentsStreamSessionThreadEvents>
GET/v1/sessions/{session_id}/threads/{thread_id}/stream
Create Deployment
client.beta.deployments.create(params, options?): BetaManagedAgentsDeployment
POST/v1/deployments
List Deployments
client.beta.deployments.list(params?, options?): PageCursor<BetaManagedAgentsDeployment>
GET/v1/deployments
Get Deployment
client.beta.deployments.retrieve(deploymentID, params?, options?): BetaManagedAgentsDeployment
GET/v1/deployments/{deployment_id}
Update Deployment
client.beta.deployments.update(deploymentID, params, options?): BetaManagedAgentsDeployment
POST/v1/deployments/{deployment_id}
Archive Deployment
client.beta.deployments.archive(deploymentID, params?, options?): BetaManagedAgentsDeployment
POST/v1/deployments/{deployment_id}/archive
Run Deployment Now
client.beta.deployments.run(deploymentID, params?, options?): BetaManagedAgentsDeploymentRun
POST/v1/deployments/{deployment_id}/run
Pause Deployment
client.beta.deployments.pause(deploymentID, params?, options?): BetaManagedAgentsDeployment
POST/v1/deployments/{deployment_id}/pause
Unpause Deployment
client.beta.deployments.unpause(deploymentID, params?, options?): BetaManagedAgentsDeployment
POST/v1/deployments/{deployment_id}/unpause
List Deployment Runs
client.beta.deploymentRuns.list(params?, options?): PageCursor<BetaManagedAgentsDeploymentRun>
GET/v1/deployment_runs
Get Deployment Run
client.beta.deploymentRuns.retrieve(deploymentRunID, params?, options?): BetaManagedAgentsDeploymentRun
GET/v1/deployment_runs/{deployment_run_id}

BetaVaults

Create Vault
client.beta.vaults.create(params, options?): BetaManagedAgentsVault
POST/v1/vaults
List Vaults
client.beta.vaults.list(params?, options?): PageCursor<BetaManagedAgentsVault>
GET/v1/vaults
Get Vault
client.beta.vaults.retrieve(vaultID, params?, options?): BetaManagedAgentsVault
GET/v1/vaults/{vault_id}
Update Vault
client.beta.vaults.update(vaultID, params, options?): BetaManagedAgentsVault
POST/v1/vaults/{vault_id}
Delete Vault
client.beta.vaults.delete(vaultID, params?, options?): BetaManagedAgentsDeletedVault
DELETE/v1/vaults/{vault_id}
Archive Vault
client.beta.vaults.archive(vaultID, params?, options?): BetaManagedAgentsVault
POST/v1/vaults/{vault_id}/archive

BetaVaultsCredentials

Create Credential
client.beta.vaults.credentials.create(vaultID, params, options?): BetaManagedAgentsCredential
POST/v1/vaults/{vault_id}/credentials
List Credentials
client.beta.vaults.credentials.list(vaultID, params?, options?): PageCursor<BetaManagedAgentsCredential>
GET/v1/vaults/{vault_id}/credentials
Get Credential
client.beta.vaults.credentials.retrieve(credentialID, params, options?): BetaManagedAgentsCredential
GET/v1/vaults/{vault_id}/credentials/{credential_id}
Update Credential
client.beta.vaults.credentials.update(credentialID, params, options?): BetaManagedAgentsCredential
POST/v1/vaults/{vault_id}/credentials/{credential_id}
Delete Credential
client.beta.vaults.credentials.delete(credentialID, params, options?): BetaManagedAgentsDeletedCredential
DELETE/v1/vaults/{vault_id}/credentials/{credential_id}
Archive Credential
client.beta.vaults.credentials.archive(credentialID, params, options?): BetaManagedAgentsCredential
POST/v1/vaults/{vault_id}/credentials/{credential_id}/archive
Validate Credential
client.beta.vaults.credentials.mcpOAuthValidate(credentialID, params, options?): BetaManagedAgentsCredentialValidation
POST/v1/vaults/{vault_id}/credentials/{credential_id}/mcp_oauth_validate
Create a memory store
client.beta.memoryStores.create(params, options?): BetaManagedAgentsMemoryStore
POST/v1/memory_stores
List memory stores
client.beta.memoryStores.list(params?, options?): PageCursor<BetaManagedAgentsMemoryStore>
GET/v1/memory_stores
Retrieve a memory store
client.beta.memoryStores.retrieve(memoryStoreID, params?, options?): BetaManagedAgentsMemoryStore
GET/v1/memory_stores/{memory_store_id}
Update a memory store
client.beta.memoryStores.update(memoryStoreID, params, options?): BetaManagedAgentsMemoryStore
POST/v1/memory_stores/{memory_store_id}
Delete a memory store
client.beta.memoryStores.delete(memoryStoreID, params?, options?): BetaManagedAgentsDeletedMemoryStore
DELETE/v1/memory_stores/{memory_store_id}
Archive a memory store
client.beta.memoryStores.archive(memoryStoreID, params?, options?): BetaManagedAgentsMemoryStore
POST/v1/memory_stores/{memory_store_id}/archive

BetaMemory StoresMemories

Create a memory
client.beta.memoryStores.memories.create(memoryStoreID, params, options?): BetaManagedAgentsMemory
POST/v1/memory_stores/{memory_store_id}/memories
List memories
client.beta.memoryStores.memories.list(memoryStoreID, params?, options?): PageCursor<BetaManagedAgentsMemoryListItem>
GET/v1/memory_stores/{memory_store_id}/memories
Retrieve a memory
client.beta.memoryStores.memories.retrieve(memoryID, params, options?): BetaManagedAgentsMemory
GET/v1/memory_stores/{memory_store_id}/memories/{memory_id}
Update a memory
client.beta.memoryStores.memories.update(memoryID, params, options?): BetaManagedAgentsMemory
POST/v1/memory_stores/{memory_store_id}/memories/{memory_id}
Delete a memory
client.beta.memoryStores.memories.delete(memoryID, params, options?): BetaManagedAgentsDeletedMemory
DELETE/v1/memory_stores/{memory_store_id}/memories/{memory_id}

BetaMemory StoresMemory Versions

List memory versions
client.beta.memoryStores.memoryVersions.list(memoryStoreID, params?, options?): PageCursor<BetaManagedAgentsMemoryVersion>
GET/v1/memory_stores/{memory_store_id}/memory_versions
Retrieve a memory version
client.beta.memoryStores.memoryVersions.retrieve(memoryVersionID, params, options?): BetaManagedAgentsMemoryVersion
GET/v1/memory_stores/{memory_store_id}/memory_versions/{memory_version_id}
Redact a memory version
client.beta.memoryStores.memoryVersions.redact(memoryVersionID, params, options?): BetaManagedAgentsMemoryVersion
POST/v1/memory_stores/{memory_store_id}/memory_versions/{memory_version_id}/redact

BetaFiles

Upload File
client.beta.files.upload(params, options?): BetaFileMetadata
POST/v1/files
List Files
client.beta.files.list(params?, options?): PageCursor<BetaFileMetadata>
GET/v1/files
Download File
client.beta.files.download(fileID, params?, options?): Response
GET/v1/files/{file_id}/content
Get File Metadata
client.beta.files.retrieveMetadata(fileID, params?, options?): BetaFileMetadata
GET/v1/files/{file_id}
Delete File
client.beta.files.delete(fileID, params?, options?): BetaDeletedFile
DELETE/v1/files/{file_id}

BetaSkills

Create Skill
client.beta.skills.create(params, options?): BetaSkill
POST/v1/skills
List Skills
client.beta.skills.list(params?, options?): PageCursor<BetaSkill>
GET/v1/skills
Get Skill
client.beta.skills.retrieve(skillID, params?, options?): BetaSkill
GET/v1/skills/{skill_id}
Delete Skill
client.beta.skills.delete(skillID, params?, options?): BetaDeletedSkill
DELETE/v1/skills/{skill_id}

BetaSkillsVersions

Create Skill Version
client.beta.skills.versions.create(skillID, params, options?): BetaSkillVersion
POST/v1/skills/{skill_id}/versions
List Skill Versions
client.beta.skills.versions.list(skillID, params?, options?): PageCursor<BetaSkillVersion>
GET/v1/skills/{skill_id}/versions
Download Skill Version Content
client.beta.skills.versions.download(version, params, options?): Response
GET/v1/skills/{skill_id}/versions/{version}/content

Download a skill version's content as a zip archive.

Get Skill Version
client.beta.skills.versions.retrieve(version, params, options?): BetaSkillVersion
GET/v1/skills/{skill_id}/versions/{version}
Delete Skill Version
client.beta.skills.versions.delete(version, params, options?): BetaDeletedSkillVersion
DELETE/v1/skills/{skill_id}/versions/{version}
Create User Profile
client.beta.userProfiles.create(params, options?): BetaUserProfile
POST/v1/user_profiles
List User Profiles
client.beta.userProfiles.list(params?, options?): PageCursor<BetaUserProfile>
GET/v1/user_profiles
Get User Profile
client.beta.userProfiles.retrieve(userProfileID, params?, options?): BetaUserProfile
GET/v1/user_profiles/{user_profile_id}
Update User Profile
client.beta.userProfiles.update(userProfileID, params, options?): BetaUserProfile
POST/v1/user_profiles/{user_profile_id}
Create Enrollment URL
client.beta.userProfiles.createEnrollmentURL(userProfileID, params?, options?): BetaUserProfileEnrollmentURL
POST/v1/user_profiles/{user_profile_id}/enrollment_url

BetaDreams

Create a Dream
client.beta.dreams.create(params, options?): BetaDream
POST/v1/dreams

Start an asynchronous job that uses past sessions to produce a reorganized version of a memory store and get back the dream to poll for the result.

List Dreams
client.beta.dreams.list(params?, options?): PageCursor<BetaDream>
GET/v1/dreams

List the dreams in the workspace, newest first.

Get a Dream
client.beta.dreams.retrieve(dreamID, params?, options?): BetaDream
GET/v1/dreams/{dream_id}

Get a dream by ID to check its status, output memory store, and token usage.

Cancel a Dream
client.beta.dreams.cancel(dreamID, params?, options?): BetaDream
POST/v1/dreams/{dream_id}/cancel

Stop a pending or running dream.

Archive a Dream
client.beta.dreams.archive(dreamID, params?, options?): BetaDream
POST/v1/dreams/{dream_id}/archive

Hide a completed, failed, or canceled dream from the default list of dreams.

BetaTunnels

Create Tunnel
client.beta.tunnels.create(params, options?): BetaTunnel
POST/v1/tunnels

The Tunnels API is in research preview. It requires the anthropic-beta: mcp-tunnels-2026-06-22 header and may change without a deprecation period. It supersedes the Admin API endpoints at /v1/organizations/tunnels, which remain available during a migration window.

Get Tunnel
client.beta.tunnels.retrieve(tunnelID, params?, options?): BetaTunnel
GET/v1/tunnels/{tunnel_id}

The Tunnels API is in research preview. It requires the anthropic-beta: mcp-tunnels-2026-06-22 header and may change without a deprecation period. It supersedes the Admin API endpoints at /v1/organizations/tunnels, which remain available during a migration window.

List Tunnels
client.beta.tunnels.list(params?, options?): PageCursor<BetaTunnel>
GET/v1/tunnels

The Tunnels API is in research preview. It requires the anthropic-beta: mcp-tunnels-2026-06-22 header and may change without a deprecation period. It supersedes the Admin API endpoints at /v1/organizations/tunnels, which remain available during a migration window.

Archive Tunnel
client.beta.tunnels.archive(tunnelID, params?, options?): BetaTunnel
POST/v1/tunnels/{tunnel_id}/archive

The Tunnels API is in research preview. It requires the anthropic-beta: mcp-tunnels-2026-06-22 header and may change without a deprecation period. It supersedes the Admin API endpoints at /v1/organizations/tunnels, which remain available during a migration window.

Reveal Tunnel Token
client.beta.tunnels.revealToken(tunnelID, params?, options?): BetaTunnelToken
POST/v1/tunnels/{tunnel_id}/reveal_token

The Tunnels API is in research preview. It requires the anthropic-beta: mcp-tunnels-2026-06-22 header and may change without a deprecation period. It supersedes the Admin API endpoints at /v1/organizations/tunnels, which remain available during a migration window.

Rotate Tunnel Token
client.beta.tunnels.rotateToken(tunnelID, params, options?): BetaTunnelToken
POST/v1/tunnels/{tunnel_id}/rotate_token

The Tunnels API is in research preview. It requires the anthropic-beta: mcp-tunnels-2026-06-22 header and may change without a deprecation period. It supersedes the Admin API endpoints at /v1/organizations/tunnels, which remain available during a migration window.

BetaTunnelsCertificates

Create Tunnel Certificate
client.beta.tunnels.certificates.create(tunnelID, params, options?): BetaTunnelCertificate
POST/v1/tunnels/{tunnel_id}/certificates

The Tunnels API is in research preview. It requires the anthropic-beta: mcp-tunnels-2026-06-22 header and may change without a deprecation period. It supersedes the Admin API endpoints at /v1/organizations/tunnels, which remain available during a migration window.

Get Tunnel Certificate
client.beta.tunnels.certificates.retrieve(certificateID, params, options?): BetaTunnelCertificate
GET/v1/tunnels/{tunnel_id}/certificates/{certificate_id}

The Tunnels API is in research preview. It requires the anthropic-beta: mcp-tunnels-2026-06-22 header and may change without a deprecation period. It supersedes the Admin API endpoints at /v1/organizations/tunnels, which remain available during a migration window.

List Tunnel Certificates
client.beta.tunnels.certificates.list(tunnelID, params?, options?): PageCursor<BetaTunnelCertificate>
GET/v1/tunnels/{tunnel_id}/certificates

The Tunnels API is in research preview. It requires the anthropic-beta: mcp-tunnels-2026-06-22 header and may change without a deprecation period. It supersedes the Admin API endpoints at /v1/organizations/tunnels, which remain available during a migration window.

Archive Tunnel Certificate
client.beta.tunnels.certificates.archive(certificateID, params, options?): BetaTunnelCertificate
POST/v1/tunnels/{tunnel_id}/certificates/{certificate_id}/archive

The Tunnels API is in research preview. It requires the anthropic-beta: mcp-tunnels-2026-06-22 header and may change without a deprecation period. It supersedes the Admin API endpoints at /v1/organizations/tunnels, which remain available during a migration window.

Get Current Organization
client.beta.organization.retrieve(options?): BetaOrganization
GET/v1/organizations/me

Retrieve information about the organization associated with the authenticated API key.

BetaOrganizationAPI Keys

List API Keys
client.beta.organization.apiKeys.list(query?, options?): Page<BetaAPIKey>
GET/v1/organizations/api_keys
Retrieve API Key (Admin API)
client.beta.organization.apiKeys.retrieve(apiKeyID, options?): BetaAPIKey
GET/v1/organizations/api_keys/{api_key_id}

Retrieve information about a single API key in your organization, looked up by its ID. This Admin API endpoint requires an Admin API key, is intended for programmatic key management, and never returns the key's secret value. To view or create your own API keys, go to API keys in the Claude Console.

Update API Key
client.beta.organization.apiKeys.update(apiKeyID, body, options?): BetaAPIKey
POST/v1/organizations/api_keys/{api_key_id}

BetaOrganizationExternal Keys

Create External Key
client.beta.organization.externalKeys.create(body, options?): BetaExternalKey
POST/v1/organizations/external_keys

Create an external key config owned by the caller's organization.

List External Keys
client.beta.organization.externalKeys.list(query?, options?): PageCursor<BetaExternalKey>
GET/v1/organizations/external_keys

List external key configs in the caller's organization.

Get External Key
client.beta.organization.externalKeys.retrieve(externalKeyID, options?): BetaExternalKey
GET/v1/organizations/external_keys/{external_key_id}

Retrieve a single external key config in the caller's organization by ID.

Update External Key
client.beta.organization.externalKeys.update(externalKeyID, body, options?): BetaExternalKey
POST/v1/organizations/external_keys/{external_key_id}

Partially update an external key config. Omitted fields are left unchanged.

Delete External Key
client.beta.organization.externalKeys.delete(externalKeyID, options?): ExternalKeyDeleteResponse
DELETE/v1/organizations/external_keys/{external_key_id}

Delete an external key config.

Validate External Key
client.beta.organization.externalKeys.validate(externalKeyID, options?): ExternalKeyValidateResponse
POST/v1/organizations/external_keys/{external_key_id}/validate

Validate an external key config against the customer's KMS.

BetaOrganizationFederationIssuers

Create Federation Issuer
client.beta.organization.federation.issuers.create(params, options?): BetaFederationIssuer
POST/v1/organizations/federation_issuers

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

List Federation Issuers
client.beta.organization.federation.issuers.list(params?, options?): PageCursor<BetaFederationIssuer>
GET/v1/organizations/federation_issuers

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Get Federation Issuer
client.beta.organization.federation.issuers.retrieve(federationIssuerID, params?, options?): BetaFederationIssuer
GET/v1/organizations/federation_issuers/{federation_issuer_id}

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Update Federation Issuer
client.beta.organization.federation.issuers.update(federationIssuerID, params, options?): BetaFederationIssuer
POST/v1/organizations/federation_issuers/{federation_issuer_id}

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Archive Federation Issuer
client.beta.organization.federation.issuers.archive(federationIssuerID, params?, options?): BetaFederationIssuer
POST/v1/organizations/federation_issuers/{federation_issuer_id}/archive

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

BetaOrganizationFederationRules

Create Federation Rule
client.beta.organization.federation.rules.create(params, options?): BetaFederationRule
POST/v1/organizations/federation_rules

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

List Federation Rules
client.beta.organization.federation.rules.list(params?, options?): PageCursor<BetaFederationRule>
GET/v1/organizations/federation_rules

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Get Federation Rule
client.beta.organization.federation.rules.retrieve(federationRuleID, params?, options?): BetaFederationRule
GET/v1/organizations/federation_rules/{federation_rule_id}

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Update Federation Rule
client.beta.organization.federation.rules.update(federationRuleID, params, options?): BetaFederationRule
POST/v1/organizations/federation_rules/{federation_rule_id}

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Archive Federation Rule
client.beta.organization.federation.rules.archive(federationRuleID, params?, options?): BetaFederationRule
POST/v1/organizations/federation_rules/{federation_rule_id}/archive

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

BetaOrganizationFederationRulesWorkspaces

Add Federation Rule Workspace
client.beta.organization.federation.rules.workspaces.add(federationRuleID, params, options?): BetaFederationRuleWorkspace
POST/v1/organizations/federation_rules/{federation_rule_id}/workspaces

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

List Federation Rule Workspaces
client.beta.organization.federation.rules.workspaces.list(federationRuleID, params?, options?): PageCursor<BetaFederationRuleWorkspace>
GET/v1/organizations/federation_rules/{federation_rule_id}/workspaces

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Remove Federation Rule Workspace
client.beta.organization.federation.rules.workspaces.remove(workspaceID, params, options?): WorkspaceRemoveResponse
DELETE/v1/organizations/federation_rules/{federation_rule_id}/workspaces/{workspace_id}

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

BetaOrganizationInvites

Create Invite
client.beta.organization.invites.create(body, options?): BetaOrganizationInvite
POST/v1/organizations/invites

Invite a user to join the organization by email.

List Invites
client.beta.organization.invites.list(query?, options?): Page<BetaOrganizationInvite>
GET/v1/organizations/invites

List the organization's invites.

Get Invite
client.beta.organization.invites.retrieve(inviteID, options?): BetaOrganizationInvite
GET/v1/organizations/invites/{invite_id}

Retrieve an invite by ID.

Delete Invite
client.beta.organization.invites.delete(inviteID, options?): InviteDeleteResponse
DELETE/v1/organizations/invites/{invite_id}

Delete a pending invite.

BetaOrganizationService Accounts

Create Service Account
client.beta.organization.serviceAccounts.create(params, options?): BetaServiceAccount
POST/v1/organizations/service_accounts

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

List Service Accounts
client.beta.organization.serviceAccounts.list(params?, options?): PageCursor<BetaServiceAccount>
GET/v1/organizations/service_accounts

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Get Service Account
client.beta.organization.serviceAccounts.retrieve(serviceAccountID, params?, options?): BetaServiceAccount
GET/v1/organizations/service_accounts/{service_account_id}

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Update Service Account
client.beta.organization.serviceAccounts.update(serviceAccountID, params, options?): BetaServiceAccount
POST/v1/organizations/service_accounts/{service_account_id}

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Archive Service Account
client.beta.organization.serviceAccounts.archive(serviceAccountID, params?, options?): BetaServiceAccount
POST/v1/organizations/service_accounts/{service_account_id}/archive

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

BetaOrganizationService AccountsWorkspaces

Add Workspace To Service Account
client.beta.organization.serviceAccounts.workspaces.add(serviceAccountID, params, options?): BetaServiceAccountWorkspaceMember
POST/v1/organizations/service_accounts/{service_account_id}/workspaces

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

List Workspaces For Service Account
client.beta.organization.serviceAccounts.workspaces.list(serviceAccountID, params?, options?): PageCursor<BetaServiceAccountWorkspaceMember>
GET/v1/organizations/service_accounts/{service_account_id}/workspaces

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Remove Workspace From Service Account
client.beta.organization.serviceAccounts.workspaces.remove(workspaceID, params, options?): WorkspaceRemoveResponse
DELETE/v1/organizations/service_accounts/{service_account_id}/workspaces/{workspace_id}

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

BetaOrganizationUsers

List Users
client.beta.organization.users.list(query?, options?): Page<BetaOrganizationUser>
GET/v1/organizations/users

List the organization's members.

Get User
client.beta.organization.users.retrieve(userID, options?): BetaOrganizationUser
GET/v1/organizations/users/{user_id}

Retrieve a member of the organization by user ID.

Update User
client.beta.organization.users.update(userID, body, options?): BetaOrganizationUser
POST/v1/organizations/users/{user_id}

Update a member's organization role.

Remove User
client.beta.organization.users.remove(userID, options?): UserRemoveResponse
DELETE/v1/organizations/users/{user_id}

Remove a member from the organization.

BetaOrganizationWorkspaces

List Workspaces
client.beta.organization.workspaces.list(query?, options?): Page<BetaWorkspace>
GET/v1/organizations/workspaces
Create Workspace
client.beta.organization.workspaces.create(params, options?): BetaWorkspace
POST/v1/organizations/workspaces
Get Workspace
client.beta.organization.workspaces.retrieve(workspaceID, options?): BetaWorkspace
GET/v1/organizations/workspaces/{workspace_id}
Update Workspace
client.beta.organization.workspaces.update(workspaceID, body, options?): BetaWorkspace
POST/v1/organizations/workspaces/{workspace_id}
Archive Workspace
client.beta.organization.workspaces.archive(workspaceID, options?): BetaWorkspace
POST/v1/organizations/workspaces/{workspace_id}/archive

BetaOrganizationWorkspacesRate Limits

List Workspace Rate Limits
client.beta.organization.workspaces.rateLimits.list(workspaceID, query?, options?): PageCursor<BetaWorkspaceRateLimit>
GET/v1/organizations/workspaces/{workspace_id}/rate_limits

List a workspace's rate limits.

BetaOrganizationWorkspacesMembers

List Workspace Members
client.beta.organization.workspaces.members.list(workspaceID, query?, options?): Page<BetaWorkspaceMember>
GET/v1/organizations/workspaces/{workspace_id}/members
Create Workspace Member
client.beta.organization.workspaces.members.add(workspaceID, body, options?): BetaWorkspaceMember
POST/v1/organizations/workspaces/{workspace_id}/members
Get Workspace Member
client.beta.organization.workspaces.members.retrieve(userID, params, options?): BetaWorkspaceMember
GET/v1/organizations/workspaces/{workspace_id}/members/{user_id}
Update Workspace Member
client.beta.organization.workspaces.members.update(userID, params, options?): BetaWorkspaceMember
POST/v1/organizations/workspaces/{workspace_id}/members/{user_id}
Delete Workspace Member
client.beta.organization.workspaces.members.remove(userID, params, options?): MemberRemoveResponse
DELETE/v1/organizations/workspaces/{workspace_id}/members/{user_id}

BetaOrganizationWorkspacesService Accounts

List Service Account Workspace Members
client.beta.organization.workspaces.serviceAccounts.list(workspaceID, params?, options?): PageCursor<BetaServiceAccountWorkspaceMember>
GET/v1/organizations/workspaces/{workspace_id}/service_accounts

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Create Service Account Workspace Member
client.beta.organization.workspaces.serviceAccounts.add(workspaceID, params, options?): BetaServiceAccountWorkspaceMember
POST/v1/organizations/workspaces/{workspace_id}/service_accounts

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Get Service Account Workspace Member
client.beta.organization.workspaces.serviceAccounts.retrieve(serviceAccountID, params, options?): BetaServiceAccountWorkspaceMember
GET/v1/organizations/workspaces/{workspace_id}/service_accounts/{service_account_id}

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Update Service Account Workspace Member
client.beta.organization.workspaces.serviceAccounts.update(serviceAccountID, params, options?): BetaServiceAccountWorkspaceMember
POST/v1/organizations/workspaces/{workspace_id}/service_accounts/{service_account_id}

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Delete Service Account Workspace Member
client.beta.organization.workspaces.serviceAccounts.remove(serviceAccountID, params, options?): ServiceAccountRemoveResponse
DELETE/v1/organizations/workspaces/{workspace_id}/service_accounts/{service_account_id}

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

BetaOrganizationRate Limits

List Organization Rate Limits
client.beta.organization.rateLimits.list(query?, options?): PageCursor<BetaOrganizationRateLimit>
GET/v1/organizations/rate_limits

List Messages API rate limits for your organization.

BetaOrganizationCompliance Settings

Get Compliance Settings
client.beta.organization.complianceSettings.retrieve(options?): BetaComplianceSettings
GET/v1/organizations/compliance_settings

Retrieve your organization's Compliance Settings.

Update Compliance Settings
client.beta.organization.complianceSettings.update(body, options?): BetaComplianceSettings
POST/v1/organizations/compliance_settings

Update your organization's Compliance Settings.

BetaOrganizationAnalyticsSummaries

Get Activity Summaries
client.beta.organization.analytics.summaries.list(query, options?): PageCursor<BetaAnalyticsSingleDayActivitySummary>
GET/v1/organizations/analytics/summaries

Get organization-wide activity summaries for a date range.

BetaOrganizationAnalyticsUsers

List User Activity
client.beta.organization.analytics.users.list(query?, options?): PageCursor<BetaAnalyticsUserActivity>
GET/v1/organizations/analytics/users

Get per-user activity for a given day, with cursor-based pagination.

BetaOrganizationAnalyticsAppsChatProjects

Get Chat Project Usage
client.beta.organization.analytics.apps.chat.projects.list(query?, options?): PageCursor<BetaAnalyticsProjectActivity>
GET/v1/organizations/analytics/apps/chat/projects

Get per-project activity for a given day, with cursor-based pagination.

BetaOrganizationAnalyticsConnectors

Get Connector Usage
client.beta.organization.analytics.connectors.list(query?, options?): PageCursor<BetaAnalyticsConnectorActivity>
GET/v1/organizations/analytics/connectors

Get per-connector usage for a given day, with cursor-based pagination.

BetaOrganizationAnalyticsPlugins

Get Plugin Usage
client.beta.organization.analytics.plugins.list(query?, options?): PageCursor<BetaAnalyticsPluginActivity>
GET/v1/organizations/analytics/plugins

Get per-plugin install + invocation usage for a given day, with pagination.

BetaOrganizationAnalyticsSkills

Get Skill Usage
client.beta.organization.analytics.skills.list(query?, options?): PageCursor<BetaAnalyticsSkillActivity>
GET/v1/organizations/analytics/skills

Get per-skill usage for a given day, with cursor-based pagination.

BetaOrganizationAnalyticsArtifacts

Get Artifact Activity
client.beta.organization.analytics.artifacts.list(query, options?): PageCursor<BetaAnalyticsArtifactActivity>
GET/v1/organizations/analytics/artifacts

Get artifact-creation activity for a given day, broken out by MIME type.

BetaOrganizationAnalyticsUsage Report

Get Token Usage Over Time
client.beta.organization.analytics.usageReport.list(query, options?): PageCursor<BetaAnalyticsUsageReportTimeBucket>
GET/v1/organizations/analytics/usage_report

Get token usage over time across a date range.

BetaOrganizationAnalyticsUser Usage Report

Get Per-User Token Usage
client.beta.organization.analytics.userUsageReport.list(query, options?): PageCursor<BetaAnalyticsUsageUsersItem>
GET/v1/organizations/analytics/user_usage_report

Get per-user token usage across a date range.

BetaOrganizationAnalyticsCost Report

Get Cost Over Time
client.beta.organization.analytics.costReport.list(query, options?): PageCursor<BetaAnalyticsCostReportTimeBucket>
GET/v1/organizations/analytics/cost_report

Get cost in USD over time across a date range.

BetaOrganizationAnalyticsUser Cost Report

Get Per-User Cost
client.beta.organization.analytics.userCostReport.list(query, options?): PageCursor<BetaAnalyticsCostUsersItem>
GET/v1/organizations/analytics/user_cost_report

Get per-user cost in USD across a date range.

BetaOrganizationSpend Limits

Set Spend Limit
client.beta.organization.spendLimits.set(params, options?): BetaSpendLimit
POST/v1/organizations/spend_limits

Set a spend limit.

Get Spend Limit
client.beta.organization.spendLimits.retrieve(spendLimitID, options?): BetaSpendLimit
GET/v1/organizations/spend_limits/{spend_limit_id}

Retrieve a spend limit by ID.

Delete Spend Limit
client.beta.organization.spendLimits.delete(spendLimitID, options?): SpendLimitDeleteResponse
DELETE/v1/organizations/spend_limits/{spend_limit_id}

Delete a spend limit.

List Spend Limits
client.beta.organization.spendLimits.list(params?, options?): PageCursor<BetaSpendLimit>
GET/v1/organizations/spend_limits

List the organization's spend limits.

BetaOrganizationSpend LimitsEffective

List Effective Spend Limits
client.beta.organization.spendLimits.effective.list(query?, options?): PageCursor<BetaSpendSummary>
GET/v1/organizations/spend_limits/effective

List each member's effective spend limit and period-to-date spend.

BetaOrganizationSpend LimitsIncrease Requests

List Spend Limit Increase Requests
client.beta.organization.spendLimits.increaseRequests.list(query?, options?): PageCursor<BetaSpendLimitIncreaseRequest>
GET/v1/organizations/spend_limit_increase_requests

List spend limit increase requests, most recent first.

Get Spend Limit Increase Request
client.beta.organization.spendLimits.increaseRequests.retrieve(spendLimitIncreaseRequestID, options?): BetaSpendLimitIncreaseRequest
GET/v1/organizations/spend_limit_increase_requests/{spend_limit_increase_request_id}

Retrieve a spend limit increase request.

Approve Spend Limit Increase Request
client.beta.organization.spendLimits.increaseRequests.approve(spendLimitIncreaseRequestID, body, options?): IncreaseRequestApproveResponse
POST/v1/organizations/spend_limit_increase_requests/{spend_limit_increase_request_id}/approve

Approve a pending spend limit increase request.

Deny Spend Limit Increase Request
client.beta.organization.spendLimits.increaseRequests.deny(spendLimitIncreaseRequestID, body, options?): BetaSpendLimitIncreaseRequest
POST/v1/organizations/spend_limit_increase_requests/{spend_limit_increase_request_id}/deny

Deny a pending spend limit increase request.

BetaOrganizationRBAC Groups

Create RBAC Group
client.beta.organization.rbacGroups.create(body, options?): BetaRBACGroup
POST/v1/organizations/rbac_groups

Create an RBAC Group in the Claude Enterprise tenant. Groups created via the API have source type "direct".

List RBAC Groups
client.beta.organization.rbacGroups.list(query?, options?): PageCursor<BetaRBACGroup>
GET/v1/organizations/rbac_groups

List RBAC Groups in the Claude Enterprise tenant.

Get RBAC Group
client.beta.organization.rbacGroups.retrieve(rbacGroupID, options?): BetaRBACGroup
GET/v1/organizations/rbac_groups/{rbac_group_id}

Retrieve an RBAC Group by ID.

Update RBAC Group
client.beta.organization.rbacGroups.update(rbacGroupID, body, options?): BetaRBACGroup
POST/v1/organizations/rbac_groups/{rbac_group_id}

Update an RBAC Group's name. Groups provisioned by an identity provider (source type "scim") cannot be modified via the API while an organization in the tenant uses SCIM provisioning.

Delete RBAC Group
client.beta.organization.rbacGroups.delete(rbacGroupID, options?): RBACGroupDeleteResponse
DELETE/v1/organizations/rbac_groups/{rbac_group_id}

Delete an RBAC Group. Groups provisioned by an identity provider (source type "scim") cannot be deleted via the API while an organization in the tenant uses SCIM provisioning.

BetaOrganizationRBAC GroupsMembers

List RBAC Group Members
client.beta.organization.rbacGroups.members.list(rbacGroupID, query?, options?): PageCursor<BetaRBACGroupMember>
GET/v1/organizations/rbac_groups/{rbac_group_id}/members

List members of an RBAC Group.

Add RBAC Group Member
client.beta.organization.rbacGroups.members.add(rbacGroupID, body, options?): BetaRBACGroupMember
POST/v1/organizations/rbac_groups/{rbac_group_id}/members

Add a User to an RBAC Group. Membership of groups provisioned by an identity provider (source type "scim") cannot be modified via the API while an organization in the tenant uses SCIM provisioning.

Remove RBAC Group Member
client.beta.organization.rbacGroups.members.remove(userID, params, options?): MemberRemoveResponse
DELETE/v1/organizations/rbac_groups/{rbac_group_id}/members/{user_id}

Remove a User from an RBAC Group. Membership of groups provisioned by an identity provider (source type "scim") cannot be modified via the API while an organization in the tenant uses SCIM provisioning.

BetaOrganizationRBAC Roles

List RBAC Roles
client.beta.organization.rbacRoles.list(query?, options?): PageCursor<BetaRBACRole>
GET/v1/organizations/rbac_roles

List RBAC Roles in the organization.

Get RBAC Role
client.beta.organization.rbacRoles.retrieve(rbacRoleID, options?): BetaRBACRole
GET/v1/organizations/rbac_roles/{rbac_role_id}

Retrieve an RBAC Role by ID.

BetaOrganizationRBAC RolesPermissions

List RBAC Role Permissions
client.beta.organization.rbacRoles.permissions.list(rbacRoleID, query?, options?): PageCursor<BetaRBACRolePermission>
GET/v1/organizations/rbac_roles/{rbac_role_id}/permissions

List the permissions an RBAC Role grants.

BetaOrganizationPlugins

Create Plugin
client.beta.organization.plugins.create(params, options?): BetaPlugin
POST/v1/organizations/plugins

Create an organization-owned Plugin and its first version by uploading the version's files.

Get Plugin
client.beta.organization.plugins.retrieve(pluginID, params?, options?): BetaPlugin
GET/v1/organizations/plugins/{plugin_id}

Retrieve a Plugin by ID.

Update Plugin
client.beta.organization.plugins.update(pluginID, params, options?): BetaPlugin
POST/v1/organizations/plugins/{plugin_id}

Change which stored version of an organization-owned Plugin is served to members, for example to roll back to an earlier one. This pins the served version: later uploads are stored but no longer change what is served, and pinning cannot currently be undone, here or in claude.ai.

List Plugins
client.beta.organization.plugins.list(params?, options?): PageCursor<BetaPlugin>
GET/v1/organizations/plugins

List the Plugins created under the organization, newest first: those in the organization's own plugin marketplaces and those in members' personal plugin marketplaces.

Delete Plugin
client.beta.organization.plugins.delete(pluginID, params?, options?): BetaDeletedPlugin
DELETE/v1/organizations/plugins/{plugin_id}

Permanently delete a Plugin and every version it holds, exactly as when an administrator deletes it in claude.ai. The Plugin may belong to the organization or to a member, including a member who has since left the organization.

BetaOrganizationPluginsVersions

Create Plugin Version
client.beta.organization.plugins.versions.create(pluginID, params, options?): BetaPluginVersion
POST/v1/organizations/plugins/{plugin_id}/versions

Add a version to an organization-owned Plugin by uploading the new version's files; it becomes the version served to members unless the Plugin's served version has been pinned.

List Plugin Versions
client.beta.organization.plugins.versions.list(pluginID, params?, options?): PageCursor<BetaPluginVersion>
GET/v1/organizations/plugins/{plugin_id}/versions

List a Plugin's versions, newest first.

Get Plugin Version
client.beta.organization.plugins.versions.retrieve(version, params, options?): BetaPluginVersion
GET/v1/organizations/plugins/{plugin_id}/versions/{version}

Retrieve one version of a Plugin by its ID, or the Plugin's newest version.

Download Plugin Version Archive
client.beta.organization.plugins.versions.download(version, params, options?): Response
GET/v1/organizations/plugins/{plugin_id}/versions/{version}/content

Download one version's .zip archive, exactly as stored. Each download of a Plugin from a member's personal plugin marketplace is recorded on the Compliance API activity feed.

BetaOrganizationPluginsInstallation Settings

List Plugin Installation Settings
client.beta.organization.plugins.installationSettings.list(pluginID, params?, options?): PageCursor<BetaPluginInstallationSetting>
GET/v1/organizations/plugins/{plugin_id}/installation_settings

List an organization-owned Plugin's installation settings, which say which members it is for, most recently created first.

Set Plugin Installation Setting
client.beta.organization.plugins.installationSettings.set(target, params, options?): BetaPluginInstallationSetting
POST/v1/organizations/plugins/{plugin_id}/installation_settings/{target}

Set or change an organization-owned Plugin's installation setting for the whole organization or for one RBAC Group.

Remove Plugin Installation Setting
client.beta.organization.plugins.installationSettings.remove(target, params, options?): BetaDeletedPluginInstallationSetting
DELETE/v1/organizations/plugins/{plugin_id}/installation_settings/{target}

Remove an organization-owned Plugin's own installation setting for the whole organization or for one RBAC Group.

BetaOrganizationPluginsShares

List Plugin Shares
client.beta.organization.plugins.shares.list(pluginID, params?, options?): PageCursor<BetaPluginShare>
GET/v1/organizations/plugins/{plugin_id}/shares

List the shares the owner of a member-owned Plugin has given — to every member of the organization, to an RBAC Group, or to one member — most recently granted first.

BetaOrganizationPlugin Marketplaces

List Plugin Marketplaces
client.beta.organization.pluginMarketplaces.list(params?, options?): PageCursor<BetaPluginMarketplace>
GET/v1/organizations/plugin_marketplaces

List the plugin marketplaces Plugins live in, newest first: the organization's own and its members' personal ones.

Get Plugin Marketplace
client.beta.organization.pluginMarketplaces.retrieve(marketplaceID, params?, options?): BetaPluginMarketplace
GET/v1/organizations/plugin_marketplaces/{marketplace_id}

Retrieve a plugin marketplace by ID.

Update Plugin Marketplace
client.beta.organization.pluginMarketplaces.update(marketplaceID, params, options?): BetaPluginMarketplace
POST/v1/organizations/plugin_marketplaces/{marketplace_id}

Set the default installation setting of one of the organization's own plugin marketplaces. Every Plugin in it without a setting of its own gets this default as its organization-wide setting, including Plugins added later.

Validate Plugin Marketplace Repository
client.beta.organization.pluginMarketplaces.validateRepository(params, options?): BetaPluginMarketplaceValidationReport
POST/v1/organizations/plugin_marketplaces/validate_repository

Check whether a plugin marketplace held in a public GitHub repository would synchronize into claude.ai, without connecting or storing it.

Validate Plugin Marketplace Archive
client.beta.organization.pluginMarketplaces.validateArchive(params, options?): BetaPluginMarketplaceValidationReport
POST/v1/organizations/plugin_marketplaces/validate_archive

Check whether a plugin marketplace, uploaded as a .zip of the marketplace directory, would synchronize into claude.ai, without connecting or storing it.