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 entrimodel_group, fieldmodelsmencantumkan 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,modelsadalahnull. - Daftar
limits: Setiap grup membawa daftar pasangan{type, value}. Fieldtypemengidentifikasi limiter (sepertirequests_per_minute,input_tokens_per_minute, atauoutput_tokens_per_minute) danvalueadalah 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
datasama 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_limitadalah nilai tingkat organisasi untuk limiter yang sama, ataunulljika 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?