Benutzerdaten-Export herunterladen

GET /v1/jobs/user-exports/{job_id}/download · Berechtigung users:export

Liefert einen einmalig verwendbaren Link zum Paket eines abgeschlossenen Benutzerdaten-Exports. Jeder Aufruf schreibt einen Eintrag user_export.downloaded in das Verwaltungs-Audit-Log, bevor der Link ausgegeben wird.

Anfrage

Parameter In Pflichtfeld Beschreibung
job_id path ja Job-ID, mit dem Präfix job_.

Ein Job, der mit include_ip: true erstellt wurde, erfordert zusätzlich die Berechtigung audit-events:read_ip für die Anmeldedaten, mit denen heruntergeladen wird.

Antwort

302 Found mit leerem Body. Location ist ein relativer Link auf demselben Host, /downloads/user-exports/{environment_id}/{job_id}/{token}. Die Antwort enthält Cache-Control: no-store und Referrer-Policy: no-referrer.

Wenn Sie dem Link mit GET folgen, antwortet der Server mit 200 OK, Content-Type: application/zip, Content-Length und Content-Disposition: attachment; filename="user-export-job_….zip". HEAD wird mit 405 abgelehnt, damit Linkvorschauen das Token nicht verbrauchen. Vergleichen Sie den SHA-256-Wert der Datei mit file.sha256 des Jobs. Wenn die Verbindung endet, bevor Content-Length Bytes übertragen wurden, ist das Paket unvollständig; verwerfen Sie es und fordern Sie einen neuen Link an. Ein ungültiger, bereits verwendeter oder abgelaufener Link liefert 404 not_found.

Fehler

Jeder Fehler ist ein application/problem+json-Body mit einem stabilen code.

HTTP code Wann
401 unauthenticated Der API-Schlüssel fehlt, ist ungültig oder widerrufen.
403 insufficient_permissions Dem Schlüssel fehlt users:export, oder der Job wurde mit include_ip erstellt und dem Schlüssel fehlt audit-events:read_ip (required_permissions listet beide auf).
404 not_found Der Job existiert nicht, gehört zu einer anderen Umgebung oder die ID ist fehlerhaft. Beim Link: Das Token ist ungültig, bereits verwendet oder abgelaufen.
409 conflict Der Job ist noch nicht abgeschlossen oder seine Datei ist abgelaufen.
429 rate_limited Das Ratenlimit wurde überschritten; beachten Sie Retry-After. Der Link selbst erlaubt 10 Anfragen pro Minute und IP-Adresse.
503 service_unavailable Eine Abhängigkeit ist vorübergehend nicht verfügbar; wiederholen Sie die Anfrage später.

Beispiel

curl -L -o user-export.zip \
  https://api.eu.keenauth.com/v1/jobs/user-exports/job_01j9xk3m7q8r2s4t6v8w0y2z4e/download \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"

Die CLI folgt dem Link selbst, schreibt das Paket in eine Datei (niemals auf die Standardausgabe), überschreibt keine vorhandene Datei und gibt Größe und SHA-256-Wert des geschriebenen Inhalts aus:

keenauth jobs user-exports download job_01j9xk3m7q8r2s4t6v8w0y2z4e --file user-export.zip

Personenbezogene Daten

Dieser Endpunkt verarbeitet personenbezogene Daten: Profil des Endbenutzers. Personenbezogene Daten in den KeenAuth-APIs beschreibt, was gespeichert wird, wie lange es aufbewahrt wird und wie es gelöscht wird. Übermitteln Sie in keinem Feld besondere Kategorien personenbezogener Daten (Gesundheit, biometrische Daten, Religion, politische Meinungen, sexuelle Orientierung).