Zum Hauptinhalt springen
4 Min. Lesedauer

API-Authentifizierung

Die Zenovay API authentifiziert sich über API-Anmeldedaten. Alle API-Anfragen müssen gültige Anmeldedaten enthalten.

Persönliche Tokens und Workspace-Keys

Zenovay bietet zwei Arten von API-Anmeldedaten. Beide authentifizieren sich auf die gleiche Weise (siehe unten); sie unterscheiden sich darin, wem sie gehören und wie lange sie gültig sind.

Persönliche API-Tokens handeln in Ihrem Namen über alle Teams hinweg, denen Sie angehören. Erstellen Sie diese unter Settings → Account → Security & access. Sie tragen Ihren eigenen Zugriff, können begrenzt werden (siehe Scopes) und werden automatisch widerrufen, wenn Sie ein Team verlassen. Verwenden Sie diese für Ihre eigenen Skripte, die CLI oder lokale Entwicklung.

Workspace-API-Keys gehören zu einem Workspace, nicht zu einer Person. Besitzer und Administratoren erstellen und verwalten diese unter Settings → Security → API keys. Sie bleiben bestehen, wenn sich die Mitgliedschaft ändert, daher sind sie die richtige Wahl für gemeinsame Integrationen und CI. Ein Workspace-Key kann vollständigen Zugriff haben oder auf eine einzelne Website begrenzt sein.

Ein Workspace-Besitzer oder Administrator kann einschränken, wer persönliche Tokens erstellen darf, die ihren Workspace erreichen: alle Mitglieder, nur Besitzer und Administratoren oder niemand. Dies wird unter Settings → Security → API keys konfiguriert. Workspace-Keys selbst sind immer nur für Besitzer und Administratoren verfügbar.

API-Key abrufen

  1. Melden Sie sich bei Ihrem Zenovay Dashboard an
  2. Navigieren Sie zu Settings → Security → API keys
  3. Klicken Sie auf Create New API Key
  4. Geben Sie Ihrem Key einen aussagekräftigen Namen
  5. Kopieren Sie den generierten Key (er wird nur einmal angezeigt)

Speichern Sie Ihren API-Key sicher und geben Sie ihn niemals in Code auf der Clientseite preis. Verwenden Sie Umgebungsvariablen in Ihren serverseitigen Anwendungen.

API-Keys verwenden

Fügen Sie Ihren API-Key im X-API-Key-Header jeder Anfrage ein:

Beispiel-API-AnfrageBash
curl -X GET "https://api.zenovay.com/api/external/v1/websites" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"

Bearer-Token-Authentifizierung

Als Alternative zum X-API-Key-Header können Sie sich mit dem Standard-Header Authorization: Bearer authentifizieren:

Bearer-Token-AuthentifizierungBash
curl -X GET "https://api.zenovay.com/api/external/v1/websites" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"

Beide Methoden verwenden denselben API-Key. Wählen Sie die Methode, die am besten zu Ihrer Anwendung oder Ihrem HTTP-Client passt.

JavaScript-Beispiel

Mit fetch()JavaScript
const apiKey = process.env.ZENOVAY_API_KEY;

const response = await fetch('https://api.zenovay.com/api/external/v1/websites', {
headers: {
  'X-API-Key': apiKey,
  'Content-Type': 'application/json'
}
});

const data = await response.json();

Scopes

Anmeldedaten können verschiedene Berechtigungsstufen haben:

full_access - Die Standardeinstellung. Alles, was der Anmeldedaten-Besitzer tun kann
read - Anzeigen von Analysedaten und Website-Konfiguration
write - Ändern von Website-Einstellungen und Konfiguration
admin - Erweiterte Zugriffe einschließlich Verwaltungsaktionen

Bei persönlichen Tokens wird der admin-Scope nur für Teams gewährt, in denen Sie bereits Besitzer oder Administrator sind. Ein Token, das ein Team abdeckt, in dem Sie kein Administrator sind, kann nicht mit dem admin-Scope erstellt werden.

Ratenbegrenzung

Alle API-Keys unterliegen einer Ratenbegrenzung. Weitere Informationen finden Sie in unserer Dokumentation zu Ratenbegrenzungen.

Best Practices für Sicherheit

  • Committen Sie niemals API-Keys zur Versionskontrolle
  • Verwenden Sie Umgebungsvariablen zum Speichern von Keys
  • Rotieren Sie Keys regelmäßig
  • Erstellen Sie separate Keys für verschiedene Umgebungen (dev, staging, prod)
  • Löschen Sie ungenutzte Keys sofort

Häufige Fehler

Status CodeFehlerBeschreibung
401invalid_api_keyDer API-Key fehlt oder ist ungültig
403insufficient_permissionsDer API-Key hat keine erforderlichen Berechtigungen
429rate_limit_exceededZu viele Anfragen in kurzer Zeit
War diese Seite hilfreich?