Claude Platform Docs

Spend Limits

Set Spend Limit
client.Beta.Organization.SpendLimits.Set(ctx, params) (*BetaSpendLimit, error)
POST/v1/organizations/spend_limits

Set a spend limit.

Get Spend Limit
client.Beta.Organization.SpendLimits.Get(ctx, spendLimitID) (*BetaSpendLimit, error)
GET/v1/organizations/spend_limits/{spend_limit_id}

Retrieve a spend limit by ID.

Delete Spend Limit
client.Beta.Organization.SpendLimits.Delete(ctx, spendLimitID) (*BetaOrganizationSpendLimitDeleteResponse, error)
DELETE/v1/organizations/spend_limits/{spend_limit_id}

Delete a spend limit.

List Spend Limits
client.Beta.Organization.SpendLimits.List(ctx, params) (*PageCursor[BetaSpendLimit], error)
GET/v1/organizations/spend_limits

List the organization's spend limits.

Models
type BetaSpendLimit struct { Type: "spend_limit"; ID; Amount; /* 6 more */ }

A configured spend limit: a cap on metered spend for one scope and period.

type BetaSpendLimitOrganizationScope struct { Type: "organization" }
Type Organization
defaultorganization
type BetaSpendLimitOrganizationServiceScope struct { Type: "organization_service"; Service }
Type OrganizationService
defaultorganization_service
Service string
type BetaSpendLimitPeriod string
One of the following:
const BetaSpendLimitPeriodDaily BetaSpendLimitPeriod = "daily"
const BetaSpendLimitPeriodMonthly BetaSpendLimitPeriod = "monthly"
const BetaSpendLimitPeriodWeekly BetaSpendLimitPeriod = "weekly"
type BetaSpendLimitRBACGroupScope struct { Type: "rbac_group"; RBACGroupID }
Type RBACGroup
defaultrbac_group
RBACGroupID string
type BetaSpendLimitScopedAPIKeyActor struct { Type: "scoped_api_key_actor"; ScopedAPIKeyID }

A scoped Admin API key acting on behalf of the organization.

Type ScopedAPIKeyActor
defaultscoped_api_key_actor
ScopedAPIKeyID string
type BetaSpendLimitSeatTierScope struct { Type: "seat_tier"; SeatTier }
Type SeatTier
defaultseat_tier
SeatTier string
type BetaSpendLimitUsageTierScope struct { Type: "usage_tier" }

Scope of the monthly spend cap Anthropic sets for a Claude Console organization from its usage tier, or a higher cap Anthropic granted the organization. Read-only; its created_at and updated_at are the organization's creation time, so amount can change while updated_at stays the same.

Type UsageTier

Scope type. Always usage_tier for this scope.

defaultusage_tier
type BetaSpendLimitUserActor struct { Type: "user_actor"; Deleted; EmailAddress; /* 2 more */ }

A user within the organization. name and email_address are null when the underlying account is unavailable or has been deleted; deleted is true only for deleted accounts.

Type UserActor

Actor type. Always user_actor.

defaultuser_actor
Deleted bool

True only when the underlying account has been deleted.

defaultfalse
EmailAddress string

The user's email address. Null when the account is unavailable or has been deleted.

Name string

The user's current display name. Null when the account is unavailable, has been deleted, or has no name set.

UserID string

Tagged ID of the user.

type BetaSpendLimitUserScope struct { Type: "user"; UserID }

Scope selecting a single member of the organization.

Type User

Scope type. Always user for this scope.

defaultuser
UserID string

Tagged ID of the member the spend limit applies to.

type BetaSpendLimitWorkspaceScope struct { Type: "workspace"; WorkspaceID }

Scope selecting one workspace of a Claude Console organization.

Type Workspace

Scope type. Always workspace for this scope.

defaultworkspace
WorkspaceID string

Tagged ID of the workspace the spend limit applies to.

type BetaSpendSummary struct { Actor; Amount; Currency; /* 5 more */ }

Per-member effective-limit report row (GET /spend_limits/effective).

Spend LimitsEffective

List Effective Spend Limits
client.Beta.Organization.SpendLimits.Effective.List(ctx, query) (*PageCursor[BetaSpendSummary], error)
GET/v1/organizations/spend_limits/effective

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

Spend LimitsIncrease Requests

List Spend Limit Increase Requests
client.Beta.Organization.SpendLimits.IncreaseRequests.List(ctx, query) (*PageCursor[BetaSpendLimitIncreaseRequest], error)
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.Get(ctx, spendLimitIncreaseRequestID) (*BetaSpendLimitIncreaseRequest, error)
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(ctx, spendLimitIncreaseRequestID, body) (*BetaOrganizationSpendLimitIncreaseRequestApproveResponse, error)
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(ctx, spendLimitIncreaseRequestID, body) (*BetaSpendLimitIncreaseRequest, error)
POST/v1/organizations/spend_limit_increase_requests/{spend_limit_increase_request_id}/deny

Deny a pending spend limit increase request.