Support-Zugriff gewähren

POST /v1/support-access-grants · Berechtigung support-access-grants:write

Gewährt dem KeenAuth-Support zeitlich begrenzten Zugriff auf diese Umgebung, zum Beispiel während er an einem Support-Ticket arbeitet. Der Zugriff ist entweder nur lesend (read) oder darf zusätzlich die Konfiguration ändern (read_write_config); Support-Mitarbeiter schreiben niemals Daten von Endnutzern. Jede Nutzung der Freigabe und jede Aktion eines Mitarbeiters wird im Verwaltungs-Audit-Log protokolliert, und ein Ereignis support_access_grant.created wird veröffentlicht. Freigaben können nur im Dashboard von einem owner oder admin erstellt werden, der sich in den letzten 5 Minuten erneut angemeldet hat; API-Schlüssel und Maschinenclients erhalten 403 insufficient_permissions.

Anfrage

Feld Typ Erforderlich Beschreibung
Idempotency-Key header nein Optional. 16-64 Zeichen [A-Za-z0-9_-]; die Wiederholung desselben Schlüssels mit demselben Body liefert dieselbe Freigabe.
scope string ja read (nur lesend) oder read_write_config (darf zusätzlich die Konfiguration ändern).
duration_hours integer ja Dauer in Stunden, 1-72.
ticket_ref string ja Referenz des Support-Tickets: 1-200 druckbare ASCII-Zeichen, ohne führendes oder nachgestelltes Leerzeichen.
allowed_regions_of_staff array | null nein Nur Enterprise. Die Freigabe darf nur von Mitarbeitern in diesen Regionen (eu, us) genutzt werden; fehlt das Feld oder ist es null, gibt es keine Einschränkung.

Anfrage-Body:

{
  "scope": "read",
  "duration_hours": 24,
  "ticket_ref": "SUP-48213",
  "allowed_regions_of_staff": ["eu"]
}

Antwort

201 Created mit der neuen Freigabe.

{
  "id": "sag_01j9xk3m7q8r2s4t6v8w0y2z4a",
  "scope": "read",
  "status": "active",
  "ticket_ref": "SUP-48213",
  "allowed_regions_of_staff": ["eu"],
  "granted_by": "du_01j9xk2p5n7q9s1t3v5w7y9z1b",
  "created_at": "2026-10-12T09:30:00.123456Z",
  "expires_at": "2026-10-13T09:30:00.123456Z",
  "revoked_at": null
}

Fehler

HTTP Code Wann
400 malformed_request Der Body ist kein gültiges JSON oder Idempotency-Key ist fehlerhaft.
403 insufficient_permissions Die Anfrage wurde nicht aus dem Dashboard von einem owner oder admin gestellt, oder der Anmeldeinformation fehlt die erforderliche Berechtigung.
403 plan_feature_unavailable allowed_regions_of_staff erfordert den Enterprise-Plan.
422 validation_failed Ein Feld ist ungültig (scope, duration_hours außerhalb von 1-72, ticket_ref, allowed_regions_of_staff).
422 idempotency_key_reuse Der Idempotency-Key wurde bereits mit einem anderen Body verwendet.
401 unauthenticated Die Anmeldeinformation fehlt, ist ungültig oder widerrufen.
429 rate_limited Das Ratenlimit wurde überschritten; nach Ablauf der Retry-After-Zeit erneut versuchen.
503 service_unavailable Eine Abhängigkeit ist vorübergehend nicht verfügbar; nach Ablauf der Retry-After-Zeit erneut versuchen.

Beispiel

Erstellen und Widerrufen sind Aktionen im Dashboard. Die Anfrage, die das Dashboard sendet:

POST /v1/support-access-grants
Content-Type: application/json
Idempotency-Key: 2f1c9a7e-5b3d-4e8f-9a6c-1d2e3f4a5b6c

{
  "scope": "read",
  "duration_hours": 24,
  "ticket_ref": "SUP-48213",
  "allowed_regions_of_staff": ["eu"]
}