API-Dokumentation
PrivateRouter bietet eine OpenAI-kompatible REST-API. Wenn Sie bereits die OpenAI-SDK verwenden, müssen Sie nur base_url und api_key ersetzen.
Base URL:
https://api.privaterouter.de/v1Authentifizierung
Alle API-Anfragen müssen mit einem Bearer-Token authentifiziert werden. Erstellen Sie API-Schlüssel im Dashboard.
HTTP-Header:
HTTP-Header
Authorization: Bearer sk-pr-IHR_SCHLÜSSEL
Sicherheitshinweis: Übertragen Sie API-Schlüssel niemals im Frontend-Code oder in öffentlichen Repositories. Verwenden Sie Umgebungsvariablen.
Modelle & Preise
Preise in EUR pro 1 Million Token (zzgl. MwSt). Verfügbare Modelle können Sie auch per API abfragen: GET /v1/models
| Modell-ID | Input/1M | Output/1M |
|---|---|---|
glm-5.2GLM-5.2 | € 8.00 | € 16.00 |
glm-4GLM-4 | € 2.00 | € 4.00 |
Code-Beispiele
Python
from openai import OpenAI
client = OpenAI(
api_key="sk-pr-IHR_SCHLÜSSEL",
base_url="https://api.privaterouter.de/v1",
)
response = client.chat.completions.create(
model="glm-5.2",
messages=[
{"role": "system", "content": "Du bist ein hilfreicher Assistent."},
{"role": "user", "content": "Erkläre mir DSGVO in 3 Sätzen."}
],
temperature=0.7,
max_tokens=512,
)
print(response.choices[0].message.content)Streaming
Server-Sent Events (SSE) werden unterstützt. Übergeben Sie stream=True.
Python (Streaming)
from openai import OpenAI
client = OpenAI(
api_key="sk-pr-IHR_SCHLÜSSEL",
base_url="https://api.privaterouter.de/v1",
)
stream = client.chat.completions.create(
model="glm-5.2",
messages=[{"role": "user", "content": "Zähle bis 10."}],
stream=True,
)
for chunk in stream:
delta = chunk.choices[0].delta.content or ""
print(delta, end="", flush=True)Rate Limits
Rate Limits variieren je nach Modell und werden in den Response-Headern zurückgegeben:
| Header | Bedeutung |
|---|---|
X-RateLimit-Limit-Requests | Max. Anfragen pro Minute |
X-RateLimit-Limit-Tokens | Max. Token pro Minute |
X-RateLimit-Remaining-Requests | Verbleibende Anfragen |
X-RateLimit-Remaining-Tokens | Verbleibende Token |
X-RateLimit-Reset-Requests | Reset-Zeitstempel (ISO 8601) |
Bei Überschreitung erhalten Sie HTTP 429 Too Many Requests. Implementieren Sie exponential backoff.
Fehlercodes
| Code | Ursache | Lösung |
|---|---|---|
400 | Ungültige Anfrage | Request-Body prüfen, Pflichtfelder ergänzen |
401 | Nicht authentifiziert | API-Schlüssel prüfen oder neu erstellen |
402 | Unzureichendes Guthaben | Guthaben im Dashboard aufladen |
404 | Modell nicht gefunden | Modell-ID anhand der Modellliste prüfen |
422 | Validierungsfehler | Antwort-Body enthält genaue Fehlerdetails |
429 | Rate Limit erreicht | Anfrage-Rate reduzieren, Retry mit Backoff |
500 | Serverfehler | Erneut versuchen; bei anhaltenden Problemen Support kontaktieren |