Claude Platform Docs

Set Spend Limit

beta.organization.spend_limits.set(**kwargs) -> BetaSpendLimit
POST/v1/organizations/spend_limits

Set a spend limit.

Upsert keyed on (scope, period): setting a limit that already exists overwrites it in place. A Claude Enterprise organization sets user limits. Its seat-tier, group, and organization-level defaults are configured in claude.ai. A Claude Console organization sets organization and workspace limits, which are monthly and always carry an amount. Setting those limits is in an early access preview. To request access, contact your Anthropic account team.

Parameters
amount: Optional[str]

Limit amount as a non-negative integer decimal string in the minor unit of the organization's billing currency (cents for USD): "50000" is $500.00. null sets an explicit no-limit override for this scope and period only — each period resolves independently, so caps for other periods still apply.

scope: Scope

What the limit applies to. Claude Enterprise organizations set user limits. Claude Console organizations set organization and workspace limits. Any other combination returns 400. Setting organization and workspace limits through the API is in an early access preview. To request access, contact your Anthropic account team.

One of the following:
class BetaSpendLimitUserScope: type: "user"; user_id

Scope selecting a single member of the organization.

type: Literal["user"]

Scope type. Always user for this scope.

defaultuser
user_id: str

Tagged ID of the member the spend limit applies to.

class BetaSpendLimitOrganizationScope: type: "organization"
type: Literal["organization"]
defaultorganization
class BetaSpendLimitWorkspaceScope: type: "workspace"; workspace_id

Scope selecting one workspace of a Claude Console organization.

type: Literal["workspace"]

Scope type. Always workspace for this scope.

defaultworkspace
workspace_id: str

Tagged ID of the workspace the spend limit applies to.

period: Optional[BetaSpendLimitPeriod]
One of the following:
"daily"
"monthly"
"weekly"
betas: Optional[List[AnthropicBetaParam]]⁠Header parameter

Optional header to specify the beta version(s) you want to use.

One of the following:
str
"message-batches-2024-09-24"
"prompt-caching-2024-07-31"
"computer-use-2024-10-22"
"computer-use-2025-01-24"
"pdfs-2024-09-25"
"token-counting-2024-11-01"
"token-efficient-tools-2025-02-19"
"output-128k-2025-02-19"
"files-api-2025-04-14"
"mcp-client-2025-04-04"
"mcp-client-2025-11-20"
"dev-full-thinking-2025-05-14"
"interleaved-thinking-2025-05-14"
"code-execution-2025-05-22"
"extended-cache-ttl-2025-04-11"
"context-1m-2025-08-07"
"context-management-2025-06-27"
"model-context-window-exceeded-2025-08-26"
"skills-2025-10-02"
"fast-mode-2026-02-01"
"output-300k-2026-03-24"
"user-profiles-2026-03-24"
"user-profiles-2026-08-18"
"user-profiles-2026-09-04"
"advisor-tool-2026-03-01"
"managed-agents-2026-04-01"
"cache-diagnosis-2026-04-07"
"dreaming-2026-04-21"
"thinking-token-count-2026-05-13"
"server-side-fallback-2026-06-01"
"server-side-fallback-2026-07-01"
"fallback-credit-2026-06-01"
"fallback-credit-2026-07-01"
"agent-memory-2026-07-22"
"mid-conversation-tool-changes-2026-07-01"
"compact-2026-01-12"
"computer-use-2025-11-24"
"mcp-tunnels-2026-06-22"
"structured-outputs-2025-11-13"
"task-budgets-2026-03-13"
"thinking-display-updates-2026-08-18"
"ce-user-management-2026-07-13"
"mid-conversation-output-config-2026-07-01"
"thinking-binding-controls-2026-08-01"
"mid-conversation-system-clear-at-2026-08-21"
"compact-2026-09-04"
"inline-tools-2026-09-15"
"mcp-client-2026-09-15"
"ce-plugins-2026-09-01"
"spend-limit-reads-2026-09-26"
Returns
class BetaSpendLimit: type: "spend_limit"; id; amount; ... # 6 more

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

Set Spend Limit
import os
from anthropic import Anthropic

client = Anthropic(
    api_key=os.environ.get(
        "ANTHROPIC_API_KEY"
    ),  # This is the default and can be omitted
)
beta_spend_limit = client.beta.organization.spend_limits.set(
    amount="50000",
    scope={
        "type": "user",
        "user_id": "user_01WCz1FkmYMm4gnmykNKUu3Q",
    },
)
print(beta_spend_limit.id)
Returns Examples
Response 200
{
  "id": "id",
  "amount": "50000",
  "created_at": "2019-12-27T18:11:19.117Z",
  "currency": "USD",
  "is_enabled": true,
  "period": "daily",
  "scope": {
    "type": "user",
    "user_id": "user_01WCz1FkmYMm4gnmykNKUu3Q"
  },
  "type": "spend_limit",
  "updated_at": "2019-12-27T18:11:19.117Z"
}