Claude Platform Docs

Organization

Get Current Organization
$client->beta->organization->retrieve(): BetaOrganization
GET/v1/organizations/me

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

Models
class BetaOrganization { $type = 'organization'; $id; $name; }
"organization" type

Object type.

For Organizations, this is always "organization".

string id

ID of the Organization.

string name

Name of the Organization.

One of the following:
"admin"
"billing"
"claude_code_user"
"developer"
"managed"
"membership_admin"
"owner"
"primary_owner"
"user"

OrganizationAPI Keys

List API Keys
$client->beta->organization->apiKeys->list(?string afterID, ?string beforeID, ?string createdByUserID, ?int limit, ?Status status, ?string workspaceID): Page<APIKey>
GET/v1/organizations/api_keys
Retrieve API Key (Admin API)
$client->beta->organization->apiKeys->retrieve(string apiKeyID): APIKey
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(string apiKeyID, ?string name, ?Status status): APIKey
POST/v1/organizations/api_keys/{api_key_id}

OrganizationExternal Keys

Create External Key
$client->beta->organization->externalKeys->create(ProviderConfig providerConfig, ?string displayName, ?Geo geo): ExternalKey
POST/v1/organizations/external_keys

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

List External Keys
$client->beta->organization->externalKeys->list(?int limit, ?string page): PageCursor<ExternalKey>
GET/v1/organizations/external_keys

List external key configs in the caller's organization.

Get External Key
$client->beta->organization->externalKeys->retrieve(string externalKeyID): ExternalKey
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(string externalKeyID, ?string displayName, ?Geo geo, ?ProviderConfig providerConfig): ExternalKey
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(string externalKeyID): ExternalKeyDeleteResponse
DELETE/v1/organizations/external_keys/{external_key_id}

Delete an external key config.

Validate External Key
$client->beta->organization->externalKeys->validate(string externalKeyID): ExternalKeyValidateResponse
POST/v1/organizations/external_keys/{external_key_id}/validate

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

OrganizationFederationIssuers

Create Federation Issuer
$client->beta->organization->federation->issuers->create(string issuerURL, string name, ?bool checkJTI, ?JWKS jwks, ?int maxJWTLifetimeSeconds, ?list<AnthropicBeta> betas): 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(?bool includeArchived, ?int limit, ?string page, ?list<AnthropicBeta> betas): 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(string federationIssuerID, ?list<AnthropicBeta> betas): 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(string federationIssuerID, ?bool checkJTI, ?string issuerURL, ?JWKS jwks, ?bool jwksPollingDisabled, ?int maxJWTLifetimeSeconds, ?string name, ?list<AnthropicBeta> betas): 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(string federationIssuerID, ?list<AnthropicBeta> betas): 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.

OrganizationFederationRules

Create Federation Rule
$client->beta->organization->federation->rules->create(string issuerID, BetaFederationRuleMatch match, string name, string oauthScope, BetaServiceAccountTarget target, ?bool appliesToAllWorkspaces, ?array<string,string> attributes, ?string description, ?int tokenLifetimeSeconds, ?string workspaceID, ?list<AnthropicBeta> betas): 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(?bool includeArchived, ?string issuerID, ?int limit, ?string page, ?list<AnthropicBeta> betas): 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(string federationRuleID, ?list<AnthropicBeta> betas): 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(string federationRuleID, ?bool appliesToAllWorkspaces, ?array<string,string> attributes, ?string description, ?BetaFederationRuleMatch match, ?string name, ?string oauthScope, ?BetaServiceAccountTarget target, ?int tokenLifetimeSeconds, ?string workspaceID, ?list<AnthropicBeta> betas): 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(string federationRuleID, ?list<AnthropicBeta> betas): 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.

OrganizationFederationRulesWorkspaces

Add Federation Rule Workspace
$client->beta->organization->federation->rules->workspaces->add(string federationRuleID, string workspaceID, ?list<AnthropicBeta> betas): 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(string federationRuleID, ?int limit, ?string page, ?list<AnthropicBeta> betas): 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(string workspaceID, string federationRuleID, ?list<AnthropicBeta> betas): 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.

OrganizationInvites

Create Invite
$client->beta->organization->invites->create(string email, Role role, ?list<string> rbacGroupIDs): OrganizationInvite
POST/v1/organizations/invites

Invite a user to join the organization by email.

List Invites
$client->beta->organization->invites->list(?string afterID, ?string beforeID, ?string email, ?int limit, ?list<string> roles, ?list<Status> statuses): Page<OrganizationInvite>
GET/v1/organizations/invites

List the organization's invites.

Get Invite
$client->beta->organization->invites->retrieve(string inviteID): OrganizationInvite
GET/v1/organizations/invites/{invite_id}

Retrieve an invite by ID.

Delete Invite
$client->beta->organization->invites->delete(string inviteID): InviteDeleteResponse
DELETE/v1/organizations/invites/{invite_id}

Delete a pending invite.

OrganizationService Accounts

Create Service Account
$client->beta->organization->serviceAccounts->create(string name, ?string description, ?OrganizationRole organizationRole, ?list<AnthropicBeta> betas): ServiceAccount
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(?bool includeArchived, ?int limit, ?string page, ?list<AnthropicBeta> betas): PageCursor<ServiceAccount>
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(string serviceAccountID, ?list<AnthropicBeta> betas): ServiceAccount
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(string serviceAccountID, ?string description, ?OrganizationRole organizationRole, ?list<AnthropicBeta> betas): ServiceAccount
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(string serviceAccountID, ?list<AnthropicBeta> betas): ServiceAccount
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.

OrganizationService AccountsWorkspaces

Add Workspace To Service Account
$client->beta->organization->serviceAccounts->workspaces->add(string serviceAccountID, string workspaceID, NoBillingWorkspaceRole workspaceRole, ?list<AnthropicBeta> betas): ServiceAccountWorkspaceMember
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(string serviceAccountID, ?int limit, ?string page, ?list<AnthropicBeta> betas): PageCursor<ServiceAccountWorkspaceMember>
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(string workspaceID, string serviceAccountID, ?list<AnthropicBeta> betas): 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.

OrganizationUsers

List Users
$client->beta->organization->users->list(?string afterID, ?string beforeID, ?string email, ?int limit, ?list<string> roles): Page<OrganizationUser>
GET/v1/organizations/users

List the organization's members.

Get User
$client->beta->organization->users->retrieve(string userID): OrganizationUser
GET/v1/organizations/users/{user_id}

Retrieve a member of the organization by user ID.

Update User
$client->beta->organization->users->update(string userID, Role role): OrganizationUser
POST/v1/organizations/users/{user_id}

Update a member's organization role.

Remove User
$client->beta->organization->users->remove(string userID): UserRemoveResponse
DELETE/v1/organizations/users/{user_id}

Remove a member from the organization.

OrganizationWorkspaces

List Workspaces
$client->beta->organization->workspaces->list(?string afterID, ?string beforeID, ?bool includeArchived, ?bool includeDefault, ?int limit): Page<Workspace>
GET/v1/organizations/workspaces
Create Workspace
$client->beta->organization->workspaces->create(string name, ?DataResidencyCreateConfig dataResidency, ?string displayColor, ?string externalKeyID, ?array<string,string> tags, ?list<AnthropicBeta> betas): Workspace
POST/v1/organizations/workspaces
Get Workspace
$client->beta->organization->workspaces->retrieve(string workspaceID): Workspace
GET/v1/organizations/workspaces/{workspace_id}
Update Workspace
$client->beta->organization->workspaces->update(string workspaceID, ?DataResidencyUpdateConfig dataResidency, ?string displayColor, ?string externalKeyID, ?string name, ?array<string,string> tags): Workspace
POST/v1/organizations/workspaces/{workspace_id}
Archive Workspace
$client->beta->organization->workspaces->archive(string workspaceID): Workspace
POST/v1/organizations/workspaces/{workspace_id}/archive

OrganizationWorkspacesRate Limits

List Workspace Rate Limits
$client->beta->organization->workspaces->rateLimits->list(string workspaceID, ?GroupType groupType, ?bool includeInherited, ?int limit, ?string page): PageCursor<BetaWorkspaceRateLimit>
GET/v1/organizations/workspaces/{workspace_id}/rate_limits

List a workspace's rate limits.

OrganizationWorkspacesMembers

List Workspace Members
$client->beta->organization->workspaces->members->list(string workspaceID, ?string afterID, ?string beforeID, ?int limit): Page<WorkspaceMember>
GET/v1/organizations/workspaces/{workspace_id}/members
Create Workspace Member
$client->beta->organization->workspaces->members->add(string workspaceID, string userID, NoBillingWorkspaceRole workspaceRole): WorkspaceMember
POST/v1/organizations/workspaces/{workspace_id}/members
Get Workspace Member
$client->beta->organization->workspaces->members->retrieve(string userID, string workspaceID): WorkspaceMember
GET/v1/organizations/workspaces/{workspace_id}/members/{user_id}
Update Workspace Member
$client->beta->organization->workspaces->members->update(string userID, string workspaceID, WorkspaceRole workspaceRole): WorkspaceMember
POST/v1/organizations/workspaces/{workspace_id}/members/{user_id}
Delete Workspace Member
$client->beta->organization->workspaces->members->remove(string userID, string workspaceID): MemberRemoveResponse
DELETE/v1/organizations/workspaces/{workspace_id}/members/{user_id}

OrganizationWorkspacesService Accounts

List Service Account Workspace Members
$client->beta->organization->workspaces->serviceAccounts->list(string workspaceID, ?int limit, ?string page, ?list<AnthropicBeta> betas): PageCursor<ServiceAccountWorkspaceMember>
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(string workspaceID, string serviceAccountID, NoBillingWorkspaceRole workspaceRole, ?list<AnthropicBeta> betas): ServiceAccountWorkspaceMember
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(string serviceAccountID, string workspaceID, ?list<AnthropicBeta> betas): ServiceAccountWorkspaceMember
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(string serviceAccountID, string workspaceID, NoBillingWorkspaceRole workspaceRole, ?list<AnthropicBeta> betas): ServiceAccountWorkspaceMember
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(string serviceAccountID, string workspaceID, ?list<AnthropicBeta> betas): 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.

OrganizationRate Limits

List Organization Rate Limits
$client->beta->organization->rateLimits->list(?GroupType groupType, ?int limit, ?string model, ?string page): PageCursor<OrganizationRateLimit>
GET/v1/organizations/rate_limits

List Messages API rate limits for your organization.

OrganizationCompliance Settings

Get Compliance Settings
$client->beta->organization->complianceSettings->retrieve(): ComplianceSettings
GET/v1/organizations/compliance_settings

Retrieve your organization's Compliance Settings.

Update Compliance Settings
$client->beta->organization->complianceSettings->update(ComplianceSettingsStateParam state): ComplianceSettings
POST/v1/organizations/compliance_settings

Update your organization's Compliance Settings.

OrganizationAnalyticsSummaries

Get Activity Summaries
$client->beta->organization->analytics->summaries->list(\Datetime startingDate, ?\Datetime endingDate, ?list<string> filter, ?int limit, ?string page): PageCursor<AnalyticsSingleDayActivitySummary>
GET/v1/organizations/analytics/summaries

Get organization-wide activity summaries for a date range.

OrganizationAnalyticsUsers

List User Activity
$client->beta->organization->analytics->users->list(?\Datetime date, ?\Datetime endingDate, ?list<string> filter, ?list<GroupBy> groupBy, ?int limit, ?Order order, ?string orderBy, ?string page, ?\Datetime startingDate): PageCursor<AnalyticsUserActivity>
GET/v1/organizations/analytics/users

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

OrganizationAnalyticsAppsChatProjects

Get Chat Project Usage
$client->beta->organization->analytics->apps->chat->projects->list(?\Datetime date, ?\Datetime endingDate, ?list<string> filter, ?list<GroupBy> groupBy, ?int limit, ?Order order, ?string orderBy, ?string page, ?\Datetime startingDate): PageCursor<AnalyticsProjectActivity>
GET/v1/organizations/analytics/apps/chat/projects

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

OrganizationAnalyticsConnectors

Get Connector Usage
$client->beta->organization->analytics->connectors->list(?\Datetime date, ?\Datetime endingDate, ?list<string> filter, ?list<GroupBy> groupBy, ?int limit, ?Order order, ?string orderBy, ?string page, ?\Datetime startingDate): PageCursor<AnalyticsConnectorActivity>
GET/v1/organizations/analytics/connectors

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

OrganizationAnalyticsPlugins

Get Plugin Usage
$client->beta->organization->analytics->plugins->list(?\Datetime date, ?\Datetime endingDate, ?list<string> filter, ?list<GroupBy> groupBy, ?int limit, ?Order order, ?string orderBy, ?string page, ?\Datetime startingDate): PageCursor<AnalyticsPluginActivity>
GET/v1/organizations/analytics/plugins

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

OrganizationAnalyticsSkills

Get Skill Usage
$client->beta->organization->analytics->skills->list(?\Datetime date, ?\Datetime endingDate, ?list<string> filter, ?list<GroupBy> groupBy, ?int limit, ?Order order, ?string orderBy, ?string page, ?\Datetime startingDate): PageCursor<AnalyticsSkillActivity>
GET/v1/organizations/analytics/skills

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

OrganizationAnalyticsArtifacts

Get Artifact Activity
$client->beta->organization->analytics->artifacts->list(\Datetime date, ?list<string> filter, ?list<GroupBy> groupBy, ?int limit, ?string page): PageCursor<AnalyticsArtifactActivity>
GET/v1/organizations/analytics/artifacts

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

OrganizationAnalyticsUsage Report

Get Token Usage Over Time
$client->beta->organization->analytics->usageReport->list(\Datetime startingAt, ?BucketWidth bucketWidth, ?list<AnalyticsClaudeTagCategory> claudeTagCategories, ?list<string> claudeTagUserIDs, ?list<AnalyticsContextWindow> contextWindows, ?\Datetime endingAt, ?list<GroupBy> groupBy, ?list<AnalyticsInferenceGeoFilter> inferenceGeos, ?int limit, ?list<string> models, ?string page, ?list<AnalyticsProductFilter> products, ?list<string> rbacGroupIDs, ?list<string> slackChannelIDs, ?list<Speed> speeds, ?list<string> userIDs): PageCursor<AnalyticsUsageReportTimeBucket>
GET/v1/organizations/analytics/usage_report

Get token usage over time across a date range.

OrganizationAnalyticsUser Usage Report

Get Per-User Token Usage
$client->beta->organization->analytics->userUsageReport->list(\Datetime startingAt, ?BucketWidth bucketWidth, ?list<AnalyticsClaudeTagCategory> claudeTagCategories, ?list<string> claudeTagUserIDs, ?list<AnalyticsContextWindow> contextWindows, ?\Datetime endingAt, ?bool excludeDeletedUsers, ?list<GroupBy> groupBy, ?list<AnalyticsInferenceGeoFilter> inferenceGeos, ?int limit, ?list<string> models, ?Order order, ?OrderBy orderBy, ?string page, ?list<AnalyticsProductFilter> products, ?list<string> rbacGroupIDs, ?list<string> slackChannelIDs, ?list<Speed> speeds, ?list<string> userIDs): PageCursor<AnalyticsUsageUsersItem>
GET/v1/organizations/analytics/user_usage_report

Get per-user token usage across a date range.

OrganizationAnalyticsCost Report

Get Cost Over Time
$client->beta->organization->analytics->costReport->list(\Datetime startingAt, ?BucketWidth bucketWidth, ?list<AnalyticsClaudeTagCategory> claudeTagCategories, ?list<string> claudeTagUserIDs, ?list<AnalyticsContextWindow> contextWindows, ?\Datetime endingAt, ?list<GroupBy> groupBy, ?list<AnalyticsInferenceGeoFilter> inferenceGeos, ?int limit, ?list<string> models, ?string page, ?list<AnalyticsProductFilter> products, ?list<string> rbacGroupIDs, ?list<string> slackChannelIDs, ?list<Speed> speeds, ?list<string> userIDs): PageCursor<AnalyticsCostReportTimeBucket>
GET/v1/organizations/analytics/cost_report

Get cost in USD over time across a date range.

OrganizationAnalyticsUser Cost Report

Get Per-User Cost
$client->beta->organization->analytics->userCostReport->list(\Datetime startingAt, ?BucketWidth bucketWidth, ?list<AnalyticsClaudeTagCategory> claudeTagCategories, ?list<string> claudeTagUserIDs, ?list<AnalyticsContextWindow> contextWindows, ?\Datetime endingAt, ?bool excludeDeletedUsers, ?list<GroupBy> groupBy, ?list<AnalyticsInferenceGeoFilter> inferenceGeos, ?int limit, ?list<string> models, ?Order order, ?OrderBy orderBy, ?string page, ?list<AnalyticsProductFilter> products, ?list<string> rbacGroupIDs, ?list<string> slackChannelIDs, ?list<Speed> speeds, ?list<string> userIDs): PageCursor<AnalyticsCostUsersItem>
GET/v1/organizations/analytics/user_cost_report

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

OrganizationSpend Limits

Set Spend Limit
$client->beta->organization->spendLimits->set(?string amount, Scope scope, ?SpendLimitPeriod period, ?list<AnthropicBeta> betas): SpendLimit
POST/v1/organizations/spend_limits

Set a spend limit.

Get Spend Limit
$client->beta->organization->spendLimits->retrieve(string spendLimitID): SpendLimit
GET/v1/organizations/spend_limits/{spend_limit_id}

Retrieve a spend limit by ID.

Delete Spend Limit
$client->beta->organization->spendLimits->delete(string spendLimitID): SpendLimitDeleteResponse
DELETE/v1/organizations/spend_limits/{spend_limit_id}

Delete a spend limit.

List Spend Limits
$client->beta->organization->spendLimits->list(?int limit, ?string page, ?list<ScopeType> scopeType, ?list<AnthropicBeta> betas): PageCursor<SpendLimit>
GET/v1/organizations/spend_limits

List the organization's spend limits.

OrganizationSpend LimitsEffective

List Effective Spend Limits
$client->beta->organization->spendLimits->effective->list(?int limit, ?string page, ?list<Period> period, ?list<string> userIDs): PageCursor<SpendSummary>
GET/v1/organizations/spend_limits/effective

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

OrganizationSpend LimitsIncrease Requests

List Spend Limit Increase Requests
$client->beta->organization->spendLimits->increaseRequests->list(?list<string> actorIDs, ?int limit, ?string page, ?list<BetaSpendLimitIncreaseRequestStatus> status): 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(string spendLimitIncreaseRequestID): 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(string spendLimitIncreaseRequestID, string amount, ?SpendLimitPeriod period, ?bool suppressNotification): 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(string spendLimitIncreaseRequestID, ?bool suppressNotification): BetaSpendLimitIncreaseRequest
POST/v1/organizations/spend_limit_increase_requests/{spend_limit_increase_request_id}/deny

Deny a pending spend limit increase request.

OrganizationRBAC Groups

Create RBAC Group
$client->beta->organization->rbacGroups->create(string name): RBACGroup
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(?int limit, ?string page): PageCursor<RBACGroup>
GET/v1/organizations/rbac_groups

List RBAC Groups in the Claude Enterprise tenant.

Get RBAC Group
$client->beta->organization->rbacGroups->retrieve(string rbacGroupID): RBACGroup
GET/v1/organizations/rbac_groups/{rbac_group_id}

Retrieve an RBAC Group by ID.

Update RBAC Group
$client->beta->organization->rbacGroups->update(string rbacGroupID, ?string name): RBACGroup
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(string rbacGroupID): 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.

OrganizationRBAC GroupsMembers

List RBAC Group Members
$client->beta->organization->rbacGroups->members->list(string rbacGroupID, ?int limit, ?string page): 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(string rbacGroupID, string userID): 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(string userID, string rbacGroupID): 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.

OrganizationRBAC Roles

List RBAC Roles
$client->beta->organization->rbacRoles->list(?int limit, ?string page): PageCursor<RBACRole>
GET/v1/organizations/rbac_roles

List RBAC Roles in the organization.

Get RBAC Role
$client->beta->organization->rbacRoles->retrieve(string rbacRoleID): RBACRole
GET/v1/organizations/rbac_roles/{rbac_role_id}

Retrieve an RBAC Role by ID.

OrganizationRBAC RolesPermissions

List RBAC Role Permissions
$client->beta->organization->rbacRoles->permissions->list(string rbacRoleID, ?int limit, ?string page): PageCursor<BetaRBACRolePermission>
GET/v1/organizations/rbac_roles/{rbac_role_id}/permissions

List the permissions an RBAC Role grants.

OrganizationPlugins

Create Plugin
$client->beta->organization->plugins->create(list<string> files, ?string marketplaceID, ?string releaseNotes, ?list<AnthropicBeta> betas): Plugin
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(string pluginID, ?string organizationID, ?list<AnthropicBeta> betas): Plugin
GET/v1/organizations/plugins/{plugin_id}

Retrieve a Plugin by ID.

Update Plugin
$client->beta->organization->plugins->update(string pluginID, string servedVersionID, ?list<AnthropicBeta> betas): Plugin
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(?\Datetime createdAtGt, ?\Datetime createdAtGte, ?\Datetime createdAtLt, ?\Datetime createdAtLte, ?int limit, ?string marketplaceID, ?string organizationID, ?OwnerType ownerType, ?string ownerUserID, ?string page, ?list<AnthropicBeta> betas): PageCursor<Plugin>
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(string pluginID, ?list<AnthropicBeta> betas): DeletedPlugin
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.

OrganizationPluginsVersions

Create Plugin Version
$client->beta->organization->plugins->versions->create(string pluginID, list<string> files, ?string releaseNotes, ?list<AnthropicBeta> betas): 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(string pluginID, ?int limit, ?string organizationID, ?string page, ?list<AnthropicBeta> betas): 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(string version, string pluginID, ?string organizationID, ?list<AnthropicBeta> betas): 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(string version, string pluginID, ?string organizationID, ?list<AnthropicBeta> betas): download
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.

OrganizationPluginsInstallation Settings

List Plugin Installation Settings
$client->beta->organization->plugins->installationSettings->list(string pluginID, ?int limit, ?string organizationID, ?string page, ?TargetType targetType, ?list<AnthropicBeta> betas): 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(string target, string pluginID, InstallationPreference installationPreference, ?list<AnthropicBeta> betas): 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(string target, string pluginID, ?list<AnthropicBeta> betas): 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.

OrganizationPluginsShares

List Plugin Shares
$client->beta->organization->plugins->shares->list(string pluginID, ?int limit, ?string organizationID, ?string page, ?TargetType targetType, ?list<AnthropicBeta> betas): 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.

OrganizationPlugin Marketplaces

List Plugin Marketplaces
$client->beta->organization->pluginMarketplaces->list(?int limit, ?string organizationID, ?OwnerType ownerType, ?string page, ?Source source, ?list<AnthropicBeta> betas): PageCursor<PluginMarketplace>
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(string marketplaceID, ?string organizationID, ?list<AnthropicBeta> betas): PluginMarketplace
GET/v1/organizations/plugin_marketplaces/{marketplace_id}

Retrieve a plugin marketplace by ID.

Update Plugin Marketplace
$client->beta->organization->pluginMarketplaces->update(string marketplaceID, DefaultInstallationPreference defaultInstallationPreference, ?list<AnthropicBeta> betas): PluginMarketplace
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(string repositoryURL, ?string ref, ?list<AnthropicBeta> betas): PluginMarketplaceValidationReport
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(string archive, ?list<AnthropicBeta> betas): PluginMarketplaceValidationReport
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.