Claude Platform Docs

Approve Spend Limit Increase Request

$ ant beta:organization:spend-limits:increase-requests approve
POST/v1/organizations/spend_limit_increase_requests/{spend_limit_increase_request_id}/approve

Approve a pending spend limit increase request.

Writes a per-user spend limit at amount for the requester and transitions the request to approved. period defaults to the period the member was blocked on. Anthropic emails the requester unless suppress_notification is set.

Parameters
--spend-limit-increase-request-id: string⁠Path parameter

ID of the spend limit increase request.

--amount: string

New per-user spend limit as a non-negative integer decimal string (minor units).

--period: optional "daily" or "monthly" or "weekly"
--suppress-notification: optional boolean
Returns
BetaOrganizationSpendLimitIncreaseRequestApproveResponse: object{ type: "spend_limit_increase_request", id, actor, 7 more }
type: "spend_limit_increase_request"
id: string
One of the following:
beta_spend_limit_user_actor: object{ type: "user_actor", deleted, email_address, 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: "user_actor"

Actor type. Always user_actor.

deleted: boolean

True only when the underlying account has been deleted.

email_address: 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.

user_id: string

Tagged ID of the user.

beta_spend_limit_scoped_api_key_actor: object{ type: "scoped_api_key_actor", scoped_api_key_id }

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

type: "scoped_api_key_actor"
scoped_api_key_id: string
created_at: string
formatdate-time
period: "daily" or "monthly" or "weekly"
One of the following:
"daily"
"monthly"
"weekly"
resolved_at: string
formatdate-time
One of the following:
beta_spend_limit_user_actor: object{ type: "user_actor", deleted, email_address, 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: "user_actor"

Actor type. Always user_actor.

deleted: boolean

True only when the underlying account has been deleted.

email_address: 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.

user_id: string

Tagged ID of the user.

beta_spend_limit_scoped_api_key_actor: object{ type: "scoped_api_key_actor", scoped_api_key_id }

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

type: "scoped_api_key_actor"
scoped_api_key_id: string
spend_limit: object{ type: "spend_limit", id, amount, 6 more }

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

type: "spend_limit"

Object type. Always spend_limit.

id: string

Unique tagged ID of the spend limit (spl_...).

amount: string

Limit amount as a non-negative integer decimal string in the minor unit of currency (cents for USD): "50000" is $500.00. null means no numeric cap is configured at this scope — see the effective report for whether a limit applies.

created_at: string

RFC 3339 datetime at which the spend limit was created.

formatdate-time
currency: string

ISO 4217 code of the organization's billing currency; the unit for amount.

is_enabled: boolean

Read-only. false when extra usage is switched off for this organization (organization limit); amount is kept and applies again when it's switched back on. Always true for other limits.

period: "daily" or "monthly" or "weekly"

Length of the window the limit resets over. amount caps spend within each period.

One of the following:
"daily"
"monthly"
"weekly"

What the limit applies to. A tagged union on type; each variant carries the identifier for its scope.

One of the following:
beta_spend_limit_user_scope: object{ type: "user", user_id }

Scope selecting a single member of the organization.

type: "user"

Scope type. Always user for this scope.

user_id: string

Tagged ID of the member the spend limit applies to.

beta_spend_limit_seat_tier_scope: object{ type: "seat_tier", seat_tier }
type: "seat_tier"
seat_tier: string
beta_spend_limit_rbac_group_scope: object{ type: "rbac_group", rbac_group_id }
type: "rbac_group"
rbac_group_id: string
beta_spend_limit_organization_service_scope: object{ type: "organization_service", service }
type: "organization_service"
service: string
beta_spend_limit_organization_scope: object{ type: "organization" }
type: "organization"
beta_spend_limit_workspace_scope: object{ type: "workspace", workspace_id }

Scope selecting one workspace of a Claude Console organization.

type: "workspace"

Scope type. Always workspace for this scope.

workspace_id: string

Tagged ID of the workspace the spend limit applies to.

updated_at: string

RFC 3339 datetime at which the spend limit was last modified.

formatdate-time
spend_summary: object{ actor, amount, currency, 5 more }

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

One of the following:
beta_spend_limit_user_actor: object{ type: "user_actor", deleted, email_address, 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: "user_actor"

Actor type. Always user_actor.

deleted: boolean

True only when the underlying account has been deleted.

email_address: 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.

user_id: string

Tagged ID of the user.

beta_spend_limit_scoped_api_key_actor: object{ type: "scoped_api_key_actor", scoped_api_key_id }

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

type: "scoped_api_key_actor"
scoped_api_key_id: string
amount: string

Effective limit amount as a non-negative integer decimal string in the minor unit of currency (cents for USD). null means no limit applies for this row's period — each period resolves independently, so another period may still cap this member.

currency: string

ISO 4217 code of the organization's billing currency; the unit for amount and period_to_date_spend.

period: "daily" or "monthly" or "weekly"

Period this row's effective limit and spend are reported for.

One of the following:
"daily"
"monthly"
"weekly"
period_to_date_spend: string

The member's spend so far in the current period, as a non-negative decimal string in the minor unit of currency (cents for USD). May carry fractional minor units up to three decimal places (e.g. "12050.5") — metered usage is not rounded to whole cents. Reads as "0" when the spend reading is temporarily unavailable.

One of the following:
beta_spend_limit_user_scope: object{ type: "user", user_id }

Scope selecting a single member of the organization.

type: "user"

Scope type. Always user for this scope.

user_id: string

Tagged ID of the member the spend limit applies to.

beta_spend_limit_seat_tier_scope: object{ type: "seat_tier", seat_tier }
type: "seat_tier"
seat_tier: string
beta_spend_limit_rbac_group_scope: object{ type: "rbac_group", rbac_group_id }
type: "rbac_group"
rbac_group_id: string
beta_spend_limit_organization_service_scope: object{ type: "organization_service", service }
type: "organization_service"
service: string
beta_spend_limit_organization_scope: object{ type: "organization" }
type: "organization"
beta_spend_limit_workspace_scope: object{ type: "workspace", workspace_id }

Scope selecting one workspace of a Claude Console organization.

type: "workspace"

Scope type. Always workspace for this scope.

workspace_id: string

Tagged ID of the workspace the spend limit applies to.

One of the following:
beta_spend_limit_user_scope: object{ type: "user", user_id }

Scope selecting a single member of the organization.

type: "user"

Scope type. Always user for this scope.

user_id: string

Tagged ID of the member the spend limit applies to.

beta_spend_limit_seat_tier_scope: object{ type: "seat_tier", seat_tier }
type: "seat_tier"
seat_tier: string
beta_spend_limit_rbac_group_scope: object{ type: "rbac_group", rbac_group_id }
type: "rbac_group"
rbac_group_id: string
beta_spend_limit_organization_service_scope: object{ type: "organization_service", service }
type: "organization_service"
service: string
beta_spend_limit_organization_scope: object{ type: "organization" }
type: "organization"
beta_spend_limit_workspace_scope: object{ type: "workspace", workspace_id }

Scope selecting one workspace of a Claude Console organization.

type: "workspace"

Scope type. Always workspace for this scope.

workspace_id: string

Tagged ID of the workspace the spend limit applies to.

spend_limit_id: string
status: "approved" or "denied" or "pending"
One of the following:
"approved"
"denied"
"pending"
Approve Spend Limit Increase Request
ant beta:organization:spend-limits:increase-requests approve \
  --api-key my-anthropic-api-key \
  --spend-limit-increase-request-id spend_limit_increase_request_id \
  --amount 50000
Returns Examples
Response 200
{
  "id": "id",
  "actor": {
    "deleted": true,
    "email_address": "email_address",
    "name": "name",
    "type": "user_actor",
    "user_id": "user_01WCz1FkmYMm4gnmykNKUu3Q"
  },
  "created_at": "2019-12-27T18:11:19.117Z",
  "period": "daily",
  "resolved_at": "2019-12-27T18:11:19.117Z",
  "resolved_by": {
    "deleted": true,
    "email_address": "email_address",
    "name": "name",
    "type": "user_actor",
    "user_id": "user_01WCz1FkmYMm4gnmykNKUu3Q"
  },
  "spend_limit": {
    "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"
  },
  "spend_summary": {
    "actor": {
      "deleted": true,
      "email_address": "email_address",
      "name": "name",
      "type": "user_actor",
      "user_id": "user_01WCz1FkmYMm4gnmykNKUu3Q"
    },
    "amount": "50000",
    "currency": "USD",
    "period": "daily",
    "period_to_date_spend": "12050.5",
    "scope": {
      "type": "user",
      "user_id": "user_01WCz1FkmYMm4gnmykNKUu3Q"
    },
    "source": {
      "type": "user",
      "user_id": "user_01WCz1FkmYMm4gnmykNKUu3Q"
    },
    "spend_limit_id": "spend_limit_id"
  },
  "status": "approved",
  "type": "spend_limit_increase_request"
}