Rate Limits API
Frage die API-Ratenlimits deiner Organisation programmatisch mit der Rate Limits API ab.
Die Rate Limits API bietet programmatischen Zugriff auf die Ratenlimits, die für deine Organisation und ihre Workspaces konfiguriert sind. Dies sind dieselben Informationen, die auf der Seite Rate limits in der Claude Console angezeigt werden.
Verwende diese API, um:
- Gateways und Proxys synchron zu halten: Lies deine aktuellen Limits beim Start und nach einem Zeitplan, anstatt Werte fest zu codieren, die abweichen, wenn Anthropic sie anpasst.
- Interne Benachrichtigungen zu betreiben: Vergleiche Nutzungsdaten aus der Usage and Cost API mit deinen konfigurierten Limits.
- Die Workspace-Konfiguration zu prüfen: Überprüfe, ob Workspace-Überschreibungen mit dem übereinstimmen, was deine Provisionierungsautomatisierung erwartet.
Die SDK- und CLI-Beispiele auf dieser Seite erstellen den Standard-Client, der den Admin-API-Key aus der Umgebungsvariable ANTHROPIC_API_KEY liest. Die SDKs stellen diese Endpunkte als client.beta.organization.rate_limits und client.beta.organization.workspaces.rate_limits bereit; die List-Methoden für Python, TypeScript, C#, Go und Java geben einen Iterator zurück, der next_page für dich verfolgt, während die PHP-, Ruby- und curl-Beispiele eine Seite lesen.
Schnellstart
Liste die für deine Organisation konfigurierten Ratenlimits auf:
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}")Ratenlimits der Organisation
Der Endpunkt /v1/organizations/rate_limits gibt die Ratenlimits zurück, die auf Organisationsebene für die Messages API und ihre unterstützenden Ressourcen angewendet werden. Limits für andere Produkte, wie Claude Managed Agents, sind nicht enthalten.
Schlüsselkonzepte
- Ratenlimit-Gruppen: Jeder Eintrag in der Antwort repräsentiert eine Ratenlimit-Gruppe. Modell-Ratenlimits werden so gruppiert, dass mehrere Modellversionen einen einzigen Satz von Limits teilen, und andere Gruppen decken Ressourcen wie die Message Batches API, die Files API, die Token Counting API, Agent-Skills und das Web-Suchtool ab.
group_type: Identifiziert, welche Kategorie von Limits der Eintrag abdeckt. Siehe Filtern nach Gruppentyp für die Liste der Werte.models-Liste: Fürmodel_group-Einträge listet das Feldmodelsjede Modell-ID und jeden Alias auf, der auf die Limits dieser Gruppe angerechnet wird. Verwende diese Liste, um nachzuschlagen, unter welche Gruppe ein beliebiger Modell-String fällt. Für andere Gruppentypen istmodelsgleichnull.limits-Liste: Jede Gruppe trägt eine Liste von{type, value}-Paaren. Das Feldtypeidentifiziert den Limiter (wierequests_per_minute,input_tokens_per_minuteoderoutput_tokens_per_minute) undvalueist das konfigurierte Limit. Siehe Rate limits dafür, wie jeder Limiter gemessen und durchgesetzt wird.
Vollständige Parameterdetails und Antwortschemata findest du in der Organization Rate Limits API-Referenz.
Alle Ratenlimits der Organisation auflisten
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
}Die Limits für ein bestimmtes Modell nachschlagen
Übergib eine beliebige Modell-ID oder einen Alias als model-Query-Parameter, um nur den Eintrag zurückzugeben, der ihn enthält:
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}")Wenn der Modell-String mit keiner Gruppe übereinstimmt, gibt der Endpunkt einen 404-Fehler zurück. Der model-Parameter wird nur auf dem Organisationsendpunkt unterstützt; der Workspace-Endpunkt akzeptiert ihn nicht.
Workspace-Ratenlimits
Der Endpunkt /v1/organizations/workspaces/{workspace_id}/rate_limits gibt die Ratenlimit-Überschreibungen zurück, die für einen einzelnen Workspace konfiguriert sind.
Die Antwort enthält nur Überschreibungen, sodass alles, was darin fehlt, von der Organisation geerbt wird:
- Eine Gruppe, die in
datafehlt, hat überhaupt keine Workspace-Überschreibung. Der Workspace erbt die Limits auf Organisationsebene für diese Gruppe (er ist nicht unbegrenzt). - Innerhalb einer vorhandenen Gruppe hat ein Limiter-Typ, der in
limits[]fehlt, keine Workspace-Überschreibung für diesen Limiter. Der Workspace erbt den Organisationswert dafür. - Für jeden vorhandenen Limiter ist
org_limitder Wert auf Organisationsebene für denselben Limiter odernull, wenn die Organisation kein konfiguriertes Limit für diesen Limiter-Typ hat.
Vollständige Parameterdetails und Antwortschemata findest du in der Workspace Rate Limits API-Referenz.
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
}Filtern nach Gruppentyp
Beide Endpunkte akzeptieren einen optionalen group_type-Query-Parameter, der die Antwort auf eine einzelne Kategorie beschränkt:
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}")Gültige Werte sind model_group, batch, token_count, files, skills und web_search.
Paginierung
Beide Endpunkte akzeptieren einen page-Query-Parameter und geben ein next_page-Feld zurück. Antworten sind derzeit immer eine einzelne Seite, daher ist next_page gleich null. Iteriere über next_page, damit dein Client ohne Änderungen korrekt paginiert, wenn die Antwort wächst.
Häufig gestellte Fragen
Welche Modell-Strings erscheinen in der models-Liste?
Jede Modell-ID und jeder Alias, der auf die Gruppe angerechnet wird, einschließlich datierter IDs (wie claude-sonnet-4-5-20250929) und undatierter Aliase (wie claude-sonnet-4-5). Schlage einen beliebigen Modell-String nach, den du an die Messages API übergibst, und du findest ihn in genau einem model_group-Eintrag.
Was bedeutet es, wenn eine Gruppe in der Workspace-Antwort fehlt?
Der Workspace hat keine Überschreibung für diese Gruppe und erbt das Limit auf Organisationsebene. Frage den Organisationsendpunkt ab, um die geerbten Werte zu sehen.
Kann ich Ratenlimits mit dieser API aktualisieren?
Nein. Um Workspace-Ratenlimits festzulegen, öffne den Workspace in der Claude Console und verwende den Tab Rate limits.
Siehe auch
Was this page helpful?