Runbase wendet Ratenlimits pro API-Schlüssel an, um faire Nutzung und Plattformstabilität sicherzustellen.
Standardlimits
| Bereich | Limit |
|---|---|
| API-Schlüssel (runs endpoints) | 20 Anfragen pro 10 Sekunden |
| Auth-Endpunkte | 5 Anfragen pro 60 Sekunden |
| Sitzungsprüfung | 60 Anfragen pro 60 Sekunden |
Das Ratenlimit für runs endpoints gilt für POST /api/v1/runs und GET /api/v1/runs/:id zusammen, pro API-Schlüssel.
Antwort bei Ratenlimit
Wenn Sie das Limit überschreiten, gibt die API HTTP 429 zurück:
{
"error": {
"message": "Rate limit exceeded",
"code": "RATE_LIMITED"
}
}Umgang mit Ratenlimits
Implementieren Sie exponentielles Backoff, wenn Sie eine 429-Antwort erhalten:
import time
import requests
def create_run(api_key, model, input_data, max_retries=3):
url = "https://runbase.net/api/v1/runs"
headers = {
"Authorization": f"Bearer {api_key}",
"Content-Type": "application/json"
}
body = {"model": model, "input": input_data}
for attempt in range(max_retries):
response = requests.post(url, json=body, headers=headers)
if response.status_code == 429:
wait = 2 ** attempt
time.sleep(wait)
continue
return response.json()
raise Exception("Rate limit exceeded after retries")Tipps
- Verwenden Sie separate Schlüssel für unterschiedliche Dienste oder Worker, um das Teilen eines Ratenlimits zu vermeiden
- Pollen Sie in angemessenen Intervallen, wenn Sie den Ausführungsstatus prüfen — alle 1–2 Sekunden sind für die meisten Modelle ausreichend
- Bündeln Sie Arbeit, statt viele Anfragen gleichzeitig zu senden
- Versuchen Sie es bei 429 nicht sofort erneut — warten Sie immer vor dem erneuten Versuch
Benötigen Sie höhere Limits?
Kontaktieren Sie support@runbase.net, wenn Ihr Anwendungsfall höhere Ratenlimits erfordert.

