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/v1

Authentifizierung

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-IDInput/1MOutput/1M
glm-5.2
GLM-5.2
€ 8.00€ 16.00
glm-4
GLM-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:

HeaderBedeutung
X-RateLimit-Limit-RequestsMax. Anfragen pro Minute
X-RateLimit-Limit-TokensMax. Token pro Minute
X-RateLimit-Remaining-RequestsVerbleibende Anfragen
X-RateLimit-Remaining-TokensVerbleibende Token
X-RateLimit-Reset-RequestsReset-Zeitstempel (ISO 8601)

Bei Überschreitung erhalten Sie HTTP 429 Too Many Requests. Implementieren Sie exponential backoff.

Fehlercodes

CodeUrsacheLösung
400Ungültige AnfrageRequest-Body prüfen, Pflichtfelder ergänzen
401Nicht authentifiziertAPI-Schlüssel prüfen oder neu erstellen
402Unzureichendes GuthabenGuthaben im Dashboard aufladen
404Modell nicht gefundenModell-ID anhand der Modellliste prüfen
422ValidierungsfehlerAntwort-Body enthält genaue Fehlerdetails
429Rate Limit erreichtAnfrage-Rate reduzieren, Retry mit Backoff
500ServerfehlerErneut versuchen; bei anhaltenden Problemen Support kontaktieren