Claude Platform Docs
AdminPemantauan

Rate Limits API

Kueri batas laju API organisasi Anda secara terprogram dengan Rate Limits API.

Rate Limits API menyediakan akses terprogram ke batas laju yang dikonfigurasi untuk organisasi Anda dan workspace-nya. Ini adalah informasi yang sama yang ditampilkan pada halaman Rate limits di Claude Console.

Gunakan API ini untuk:

  • Menjaga gateway dan proxy tetap sinkron: Baca batas Anda saat ini pada startup dan secara terjadwal alih-alih melakukan hardcode nilai yang bergeser ketika Anthropic menyesuaikannya.
  • Menggerakkan peringatan internal: Bandingkan data penggunaan dari Usage and Cost API terhadap batas yang Anda konfigurasi.
  • Mengaudit konfigurasi workspace: Verifikasi bahwa override workspace sesuai dengan yang diharapkan oleh otomatisasi provisioning Anda.

Contoh SDK dan CLI pada halaman ini membangun klien default, yang membaca kunci API Admin dari variabel lingkungan ANTHROPIC_API_KEY. SDK mengekspos endpoint ini sebagai client.beta.organization.rate_limits dan client.beta.organization.workspaces.rate_limits; metode list Python, TypeScript, C#, Go, dan Java mengembalikan iterator yang mengikuti next_page untuk Anda, sementara contoh PHP, Ruby, dan curl membaca satu halaman.

Mulai cepat

Daftar batas laju yang dikonfigurasi untuk organisasi Anda:

client = anthropic.Anthropic()

rate_limits = client.beta.organization.rate_limits.list()

for group in rate_limits:
    models = f" ({', '.join(group.models)})" if group.models else ""
    print(f"{group.group_type}{models}")
    for limit in group.limits:
        print(f"  {limit.type}: {limit.value}")

Batas laju organisasi

Endpoint /v1/organizations/rate_limits mengembalikan batas laju yang diterapkan pada tingkat organisasi untuk Messages API dan sumber daya pendukungnya. Batas untuk produk lain, seperti Claude Managed Agents, tidak disertakan.

Konsep utama

  • Grup batas laju: Setiap entri dalam respons mewakili satu grup batas laju. Batas laju model dikelompokkan sehingga beberapa versi model berbagi satu set batas, dan grup lain mencakup sumber daya seperti Message Batches API, Files API, Token Counting API, agent skills, dan alat web search.
  • group_type: Mengidentifikasi kategori batas mana yang dicakup oleh entri. Lihat Memfilter berdasarkan tipe grup untuk daftar nilai.
  • Daftar models: Untuk entri model_group, field models mencantumkan setiap ID model dan alias yang dihitung terhadap batas grup tersebut. Gunakan daftar ini untuk mencari grup mana yang mencakup string model apa pun. Untuk tipe grup lain, models adalah null.
  • Daftar limits: Setiap grup membawa daftar pasangan {type, value}. Field type mengidentifikasi limiter (seperti requests_per_minute, input_tokens_per_minute, atau output_tokens_per_minute) dan value adalah batas yang dikonfigurasi. Lihat Rate limits untuk bagaimana setiap limiter diukur dan diberlakukan.

Untuk detail parameter lengkap dan skema respons, lihat referensi Organization Rate Limits API.

Daftar semua batas laju organisasi

client = anthropic.Anthropic()

rate_limits = client.beta.organization.rate_limits.list()

for group in rate_limits:
    models = f" ({', '.join(group.models)})" if group.models else ""
    print(f"{group.group_type}{models}")
    for limit in group.limits:
        print(f"  {limit.type}: {limit.value}")
{
  "data": [
    {
      "type": "rate_limit",
      "group_type": "model_group",
      "models": ["claude-opus-5"],
      "limits": [
        { "type": "requests_per_minute", "value": 4000 },
        { "type": "input_tokens_per_minute", "value": 10000000 },
        { "type": "output_tokens_per_minute", "value": 800000 }
      ]
    },
    {
      "type": "rate_limit",
      "group_type": "model_group",
      "models": [
        "claude-opus-4-5",
        "claude-opus-4-5-20251101",
        "claude-opus-4-6",
        "claude-opus-4-7",
        "claude-opus-4-8"
      ],
      "limits": [
        { "type": "requests_per_minute", "value": 4000 },
        { "type": "input_tokens_per_minute", "value": 10000000 },
        { "type": "output_tokens_per_minute", "value": 800000 }
      ]
    },
    {
      "type": "rate_limit",
      "group_type": "batch",
      "models": null,
      "limits": [{ "type": "enqueued_batch_requests", "value": 500000 }]
    }
  ],
  "next_page": null
}

Cari batas untuk model tertentu

Berikan ID model atau alias apa pun sebagai parameter kueri model untuk mengembalikan hanya entri yang memuatnya:

client = anthropic.Anthropic()

rate_limits = client.beta.organization.rate_limits.list(model="claude-opus-5")

for group in rate_limits:
    models = f" ({', '.join(group.models)})" if group.models else ""
    print(f"{group.group_type}{models}")
    for limit in group.limits:
        print(f"  {limit.type}: {limit.value}")

Jika string model tidak cocok dengan grup mana pun, endpoint mengembalikan error 404. Parameter model hanya didukung pada endpoint organisasi; endpoint workspace tidak menerimanya.

Batas laju workspace

Endpoint /v1/organizations/workspaces/{workspace_id}/rate_limits mengembalikan override batas laju yang dikonfigurasi untuk satu workspace.

Respons hanya menyertakan override, jadi apa pun yang hilang darinya diwarisi dari organisasi:

  • Grup yang tidak ada dalam data sama sekali tidak memiliki override workspace. Workspace mewarisi batas tingkat organisasi untuk grup tersebut (bukan tidak terbatas).
  • Dalam grup yang ada, tipe limiter yang tidak ada dalam limits[] tidak memiliki override workspace untuk limiter tersebut. Workspace mewarisi nilai organisasi untuknya.
  • Untuk setiap limiter yang ada, org_limit adalah nilai tingkat organisasi untuk limiter yang sama, atau null jika organisasi tidak memiliki batas yang dikonfigurasi untuk tipe limiter tersebut.

Untuk detail parameter lengkap dan skema respons, lihat referensi Workspace Rate Limits API.

client = anthropic.Anthropic()

rate_limits = client.beta.organization.workspaces.rate_limits.list(
    "wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ"
)

for group in rate_limits:
    models = f" ({', '.join(group.models)})" if group.models else ""
    print(f"{group.group_type}{models}")
    for limit in group.limits:
        print(f"  {limit.type}: {limit.value}")
{
  "data": [
    {
      "type": "workspace_rate_limit",
      "group_type": "model_group",
      "models": ["claude-opus-5"],
      "limits": [
        { "type": "requests_per_minute", "value": 1000, "org_limit": 4000 },
        { "type": "input_tokens_per_minute", "value": 500000, "org_limit": 10000000 }
      ]
    },
    {
      "type": "workspace_rate_limit",
      "group_type": "model_group",
      "models": [
        "claude-opus-4-5",
        "claude-opus-4-5-20251101",
        "claude-opus-4-6",
        "claude-opus-4-7",
        "claude-opus-4-8"
      ],
      "limits": [
        { "type": "requests_per_minute", "value": 1000, "org_limit": 4000 },
        { "type": "input_tokens_per_minute", "value": 500000, "org_limit": 10000000 }
      ]
    }
  ],
  "next_page": null
}

Memfilter berdasarkan tipe grup

Kedua endpoint menerima parameter kueri opsional group_type yang membatasi respons ke satu kategori:

client = anthropic.Anthropic()

rate_limits = client.beta.organization.rate_limits.list(group_type="batch")

for group in rate_limits:
    models = f" ({', '.join(group.models)})" if group.models else ""
    print(f"{group.group_type}{models}")
    for limit in group.limits:
        print(f"  {limit.type}: {limit.value}")

Nilai yang valid adalah model_group, batch, token_count, files, skills, dan web_search.

Paginasi

Kedua endpoint menerima parameter kueri page dan mengembalikan field next_page. Respons saat ini selalu satu halaman, jadi next_page adalah null. Lakukan loop pada next_page agar klien Anda melakukan paginasi dengan benar tanpa perubahan ketika respons bertambah.

Pertanyaan yang sering diajukan

String model mana yang muncul dalam daftar models?

Setiap ID model dan alias yang dihitung terhadap grup, termasuk ID bertanggal (seperti claude-sonnet-4-5-20250929) dan alias tidak bertanggal (seperti claude-sonnet-4-5). Cari string model apa pun yang Anda berikan ke Messages API dan Anda akan menemukannya dalam tepat satu entri model_group.

Apa artinya jika sebuah grup hilang dari respons workspace?

Workspace tidak memiliki override untuk grup tersebut dan mewarisi batas tingkat organisasi. Kueri endpoint organisasi untuk melihat nilai yang diwarisi.

Bisakah saya memperbarui batas laju dengan API ini?

Tidak. Untuk mengatur batas laju workspace, buka workspace di Claude Console dan gunakan tab Rate limits.

Lihat juga

Was this page helpful?