---
title: List Effective Spend Limits
url: https://platform.claude.com/docs/en/api/java/beta/organization/spend_limits/effective/list
---

# List Effective Spend Limits

`EffectiveListPage beta().organization().spendLimits().effective().list(params = EffectiveListParams.none(), requestOptions = RequestOptions.none())`

**GET** `/v1/organizations/spend_limits/effective`

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

Returns one row per (member, period) the member resolves a spend limit
for, with the `source` scope the spend limit was inherited from.
Paginates by member, so a member's periods never split across pages.
Supported for Claude Enterprise organizations only, not for Claude Console
organizations.

## Parameters

- `EffectiveListParams params`

  - `Optional<Long> limit` (query parameter)

    Maximum number of members per page. A member's period rows never split across pages, so a page may carry more rows than this. Defaults to `20`.

    minimum: 1, maximum: 1000

  - `Optional<String> page` (query parameter)

    Opaque cursor from a previous response's `next_page` field.

  - `Optional<List<Period>> period` (query parameter)

    Restrict the report to these limit periods. Omit to return one row per period each member resolves a spend limit for.

    maxItems: 3

    - `DAILY("daily")`

    - `MONTHLY("monthly")`

    - `WEEKLY("weekly")`

  - `Optional<List<String>> userIds` (query parameter)

    Restrict the report to these members, by tagged user ID (`user_...`). At most 100 entries.

    maxItems: 100

## Returns

- `class BetaSpendSummary`

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

  - `Actor actor`

    - `class BetaSpendLimitUserActor`

      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.

      - `JsonValue type = "user_actor"`

        Actor type. Always `user_actor`.

      - `boolean deleted`

        True only when the underlying account has been deleted.

      - `Optional<String> emailAddress`

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

      - `Optional<String> name`

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

      - `String userId`

        Tagged ID of the user.

    - `class BetaSpendLimitScopedApiKeyActor`

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

      - `JsonValue type = "scoped_api_key_actor"`

      - `String scopedApiKeyId`

  - `Optional<String> amount`

    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.

  - `String currency`

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

  - `BetaSpendLimitPeriod period`

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

    - `DAILY("daily")`

    - `MONTHLY("monthly")`

    - `WEEKLY("weekly")`

  - `String periodToDateSpend`

    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.

  - `Scope scope`

    - `class BetaSpendLimitUserScope`

      Scope selecting a single member of the organization.

      - `JsonValue type = "user"`

        Scope type. Always `user` for this scope.

      - `String userId`

        Tagged ID of the member the spend limit applies to.

    - `class BetaSpendLimitSeatTierScope`

      - `JsonValue type = "seat_tier"`

      - `String seatTier`

    - `class BetaSpendLimitRbacGroupScope`

      - `JsonValue type = "rbac_group"`

      - `String rbacGroupId`

    - `class BetaSpendLimitOrganizationServiceScope`

      - `JsonValue type = "organization_service"`

      - `String service`

    - `class BetaSpendLimitOrganizationScope`

      - `JsonValue type = "organization"`

    - `class BetaSpendLimitWorkspaceScope`

      Scope selecting one workspace of a Claude Console organization.

      - `JsonValue type = "workspace"`

        Scope type. Always `workspace` for this scope.

      - `String workspaceId`

        Tagged ID of the workspace the spend limit applies to.

    - `class BetaSpendLimitUsageTierScope`

      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.

      - `JsonValue type = "usage_tier"`

        Scope type. Always `usage_tier` for this scope.

  - `Source source`

    - `class BetaSpendLimitUserScope`

      Scope selecting a single member of the organization.

    - `class BetaSpendLimitSeatTierScope`

    - `class BetaSpendLimitRbacGroupScope`

    - `class BetaSpendLimitOrganizationServiceScope`

    - `class BetaSpendLimitOrganizationScope`

    - `class BetaSpendLimitWorkspaceScope`

      Scope selecting one workspace of a Claude Console organization.

    - `class BetaSpendLimitUsageTierScope`

      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.

  - `String spendLimitId`

## Example

```java
package com.anthropic.example;

import com.anthropic.client.AnthropicClient;
import com.anthropic.client.okhttp.AnthropicOkHttpClient;
import com.anthropic.models.beta.organization.spendlimits.effective.EffectiveListPage;
import com.anthropic.models.beta.organization.spendlimits.effective.EffectiveListParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        AnthropicClient client = AnthropicOkHttpClient.fromEnv();

        EffectiveListPage page = client.beta().organization().spendLimits().effective().list();
    }
}
```

### Response (200)

```json
{
  "data": [
    {
      "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"
    }
  ],
  "next_page": "next_page"
}
```
