Kullanıcı veri dışa aktarımını indir
GET /v1/jobs/user-exports/{job_id}/download · İzin users:export
Tamamlanmış bir kullanıcı veri dışa aktarımının paketi için tek kullanımlık bir bağlantı verir. Her çağrı, bağlantı verilmeden önce yönetim denetim günlüğüne bir user_export.downloaded kaydı yazar.
İstek
| Parametre | Konum | Zorunlu | Açıklama |
|---|---|---|---|
job_id |
path | evet | job_ önekli iş kimliği. |
include_ip: true ile oluşturulan bir iş, indiren kimlik bilgisinde ayrıca audit-events:read_ip iznini de gerektirir.
Yanıt
Gövdesi boş bir 302 Found. Location, aynı ana makinedeki göreli bir bağlantıdır: /downloads/user-exports/{environment_id}/{job_id}/{token}. Yanıt Cache-Control: no-store ve Referrer-Policy: no-referrer içerir.
- Bağlantı 15 dakika geçerlidir ve yalnızca bir kez çalışır: belirteç, aktarım kesilse bile ilk istekte harcanır. Yeni bir bağlantı için bu işlemi yeniden çağırın.
- Bağlantı kimlik bilgisi gerektirmez; belirteç tek kimlik bilgisidir.
Locationdeğerini gizli tutun ve günlüğe kaydetmeyin. - Dosya, ortamın anahtarıyla bekleme durumunda şifrelenir; bu nedenle depolama alanının önceden imzalı bir URL'si kullanılmaz; KeenAuth dosyanın şifresini çözer ve akıtır.
Bağlantıyı GET ile izlemek, Content-Type: application/zip, Content-Length ve Content-Disposition: attachment; filename="user-export-job_….zip" başlıklarıyla 200 OK döndürür. HEAD isteği 405 ile reddedilir, böylece bağlantı önizlemeleri belirteci harcamaz. Dosyanın SHA-256 değerini işin file.sha256 değeriyle karşılaştırın. Content-Length kadar bayt ulaşmadan bağlantı sona ererse paket eksiktir; bunu atın ve yeni bir bağlantı isteyin. Geçersiz, kullanılmış veya süresi dolmuş bir bağlantı 404 not_found döndürür.
Hatalar
Her hata, kararlı bir code içeren bir application/problem+json gövdesidir.
| HTTP | code |
Ne zaman |
|---|---|---|
| 401 | unauthenticated |
API anahtarı eksik, geçersiz veya iptal edilmiş. |
| 403 | insufficient_permissions |
Anahtarda users:export izni yok ya da iş include_ip ile oluşturulmuş ve anahtarda audit-events:read_ip izni yok (required_permissions ikisini de listeler). |
| 404 | not_found |
İş mevcut değil, başka bir ortama ait veya kimlik hatalı biçimde. Bağlantıda: belirteç geçersiz, kullanılmış veya süresi dolmuş. |
| 409 | conflict |
İş henüz tamamlanmadı ya da dosyasının süresi doldu. |
| 429 | rate_limited |
Hız sınırı aşıldı; Retry-After değerine uyun. Bağlantının kendisi IP adresi başına dakikada 10 isteğe izin verir. |
| 503 | service_unavailable |
Bir bağımlılık geçici olarak kullanılamıyor; daha sonra yeniden deneyin. |
Örnek
curl -L -o user-export.zip \
https://api.eu.keenauth.com/v1/jobs/user-exports/job_01j9xk3m7q8r2s4t6v8w0y2z4e/download \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
CLI bağlantıyı kendisi izler, paketi bir dosyaya yazar (asla standart çıktıya yazmaz), mevcut bir dosyanın üzerine yazmayı reddeder ve yazdığı verinin boyutunu ve SHA-256 değerini yazdırır:
keenauth jobs user-exports download job_01j9xk3m7q8r2s4t6v8w0y2z4e --file user-export.zip
Kişisel veriler
Bu uç nokta kişisel veri içerir: son kullanıcı profili. KeenAuth API'lerinde kişisel veriler neyin saklandığını, ne kadar süre tutulduğunu ve nasıl silindiğini açıklar. Hiçbir alanda özel nitelikli kişisel verileri (sağlık, biyometrik veriler, din, siyasi görüşler, cinsel yönelim) göndermeyin.