Erste Schritte
Authentifizierung
Authentifizieren Sie Anfragen mit API-Schlüsseln, beachten Sie Sicherheitspraktiken und behandeln Sie Authentifizierungsfehler.
Alle Anfragen an die APIs der Felo API Platform erfordern eine Authentifizierung mit einem API-Schlüssel. Diese Anleitung erklärt, wie Sie Ihre Anfragen authentifizieren und häufige Authentifizierungsprobleme behandeln.
Authentifizierung mit API-Schlüssel
Felo verwendet für alle v2-Endpoints die Authentifizierung per API-Schlüssel. Ihr API-Schlüssel identifiziert Ihre Anwendung und gewährt Zugriff auf die Funktionen der Plattform.
So funktioniert es
- Sie rufen einen API-Schlüssel auf der Seite „API-Schlüssel“ der Felo API Platform ab.
- Sie fügen den API-Schlüssel in den
Authorization-Header jeder API-Anfrage ein. - Die Plattform validiert Ihren API-Schlüssel und verarbeitet Ihre Anfrage.
Header-Format
Fügen Sie Ihren API-Schlüssel mit dem Bearer-Authentifizierungsschema in den Authorization-Header ein:
Authorization: Bearer YOUR_API_KEYBeispielanfrage
curl -X POST https://openapi.felo.ai/v2/chat \
-H "Authorization: Bearer sk_live_abc123xyz789" \
-H "Content-Type: application/json" \
-d '{"query": "What is machine learning?"}'API-Schlüssel abrufen
So erhalten Sie Ihren API-Schlüssel:
- Öffnen Sie die Seite „API-Schlüssel“ der Felo API Platform.
- Melden Sie sich bei Aufforderung mit Ihrem Felo-Konto an.
- Geben Sie einen Schlüsselnamen ein und klicken Sie auf Create Key.
- Kopieren Sie den vollständigen Schlüssel, sobald er angezeigt wird. Er wird nur einmal angezeigt.
- Bewahren Sie den Schlüssel sicher auf und verwenden Sie ihn als
FELO_API_KEY.
Bewährte Sicherheitsverfahren
1. API-Schlüssel sicher speichern
Tun Sie nicht Folgendes: API-Schlüssel im Quellcode fest kodieren:
# ❌ Bad - API Key exposed in code
api_key = "sk_live_abc123xyz789"Tun Sie stattdessen Folgendes: Umgebungsvariablen oder eine sichere Konfiguration verwenden:
# ✅ Good - API Key from environment
import os
api_key = os.environ.get('FELO_API_KEY')2. Umgebungsvariablen verwenden
Speichern Sie Ihren API-Schlüssel in Umgebungsvariablen:
Linux/macOS:
export FELO_API_KEY="sk_live_abc123xyz789"Windows (Eingabeaufforderung):
set FELO_API_KEY=sk_live_abc123xyz789Windows (PowerShell):
$env:FELO_API_KEY="sk_live_abc123xyz789"3. Schlüssel regelmäßig rotieren
Erzeugen Sie regelmäßig neue API-Schlüssel und widerrufen Sie alte, um Sicherheitsrisiken zu minimieren.
4. Unterschiedliche Schlüssel für unterschiedliche Umgebungen verwenden
Erstellen Sie separate API-Schlüssel für Entwicklungs-, Staging- und Produktionsumgebungen.
5. Schlüssel niemals in clientseitigem Code preisgeben
API-Schlüssel sollten ausschließlich in serverseitigem Code verwendet werden. Fügen Sie sie niemals in folgende Bereiche ein:
- Frontend-JavaScript-Code
- Quellcode mobiler Apps
- Öffentliche Repositories
- Clientseitige Konfigurationsdateien
Authentifizierungsfehler
Das vollständige Fehlerformat, die Rate-Limit-Header und die Wiederholungsrichtlinie finden Sie unter Fehler, Limits und Wiederholungen.
Häufige Fehlercodes
| HTTP | Code | Bedeutung |
|---|---|---|
| 401 | UNAUTHORIZED | Schlüssel fehlt, ist ungültig, abgelaufen oder widerrufen |
| 429 | RATE_LIMITED | Zu viele Anfragen; siehe Anleitung Fehler, Limits und Wiederholungen |
Eine abgelehnte Anfrage gibt den Schlüsselstatus in message zurück:
{
"status": 401,
"code": "UNAUTHORIZED",
"message": "API Key is required",
"request_id": "..."
}status ist der HTTP-Statuscode. Ein widerrufener Schlüssel meldet API Key has been revoked (keyPrefix=...). Werten Sie den HTTP-Status und code aus, nicht den genauen Wortlaut von message.
Fehlerbehebung
Wenn die Authentifizierung fehlschlägt:
- Prüfen Sie, ob der Header genau
Authorization: Bearer YOUR_API_KEYlautet. - Bestätigen Sie auf der Seite „API-Schlüssel“, dass der Schlüssel nicht widerrufen wurde.
- Bestätigen Sie, dass die Umgebung den erwarteten Schlüssel verwendet.
- Erzeugen Sie einen neuen Schlüssel, wenn der alte gelöscht oder rotiert wurde. Ein vollständiger Schlüssel wird nur einmal angezeigt, und zwar bei der Erstellung.
Eine symptomorientierte Checkliste für die Authentifizierung und den Rest der Plattform finden Sie unter Fehlerbehebung.
Beispiel: Authentifizierung debuggen
import requests
url = "https://openapi.felo.ai/v2/chat"
api_key = "YOUR_API_KEY"
# Correct format
headers = {
"Authorization": f"Bearer {api_key}",
"Content-Type": "application/json"
}
response = requests.post(url, headers=headers, json={"query": "test"})
if response.status_code == 401:
error = response.json()
print(f"Authentication failed: {error['code']}")
print(f"Message: {error['message']}")
print(f"Request ID: {error['request_id']}")
else:
print("Authentication successful!")Rate-Limits
Rate-Limits gelten pro Endpoint, nicht global pro API-Schlüssel. Derzeit erzwingt nur `/v2/chat` diese Limits; Benutzer mit einem wirksamen bezahlten Felo-Abonnement sind ausgenommen. Für andere /v2/**-Endpoints gelten keine erzwungenen Rate-Limits.
Eine 429-Antwort enthält X-RateLimit-*-Header und Retry-After. Lesen Sie die wirksamen Limits immer aus den Antwort-Headern, nicht aus der Dokumentation.
Die vollständigen Rate-Limit-Dimensionen, Header und die Wiederholungsrichtlinie finden Sie unter Fehler, Limits und Wiederholungen.
Sie brauchen Hilfe?
Wenn bei der Authentifizierung Probleme auftreten:
- Lesen Sie diese Anleitung sorgfältig.
- Prüfen Sie die Anleitung Erste Schritte.
- Verifizieren Sie Ihren API-Schlüssel auf der Seite „API-Schlüssel“.
- Kontaktieren Sie den Support unter [email protected] und geben Sie Ihre Request-ID an.
Nächste Schritte
- Anleitung „Erste Schritte“ – Erfahren Sie, wie Sie Ihren ersten API-Aufruf durchführen.
- Chat API-Referenz – Entdecken Sie die Dokumentation der Chat API.