Komut satırı arayüzü

keenauth komut satırı arayüzü (CLI), yönetim API'sini bir terminalden veya betikten çağırır. Her komut Go SDK'sının tipli bir yöntemini sarmalar; bu nedenle CLI ile API aynı şekilde davranır. Henüz bir kurulum paketi yok.

Kimlik doğrulama ve hedef

CLI kimlik bilgilerini yalnızca ortam değişkenlerinden okur. API anahtarı hiçbir zaman bayrak olarak kabul edilmez; böylece kabuk geçmişinize düşmez.

Değişken Zorunlu Açıklama
KEENAUTH_API_KEY evet Yönetim API anahtarı. Eksikse komut 3 çıkış koduyla sonlanır.
KEENAUTH_BASE_URL evet, --base-url verilmediği sürece Ortamınızın yönetim API temel URL'si.

API anahtarı yerine kontrol paneli hesabınızla da giriş yapabilirsiniz: keenauth login, ardından keenauth env use <environment_id>. Oturum yalnızca KEENAUTH_API_KEY ayarlanmadığında kullanılır ve ortam adresi bu durumda kontrol düzleminden alınır (bkz. keenauth login ile giriş yapma).

--base-url bayrağı tek bir komut için KEENAUTH_BASE_URL değerini geçersiz kılar. CLI API anahtarını hiçbir zaman yazdırmaz; bir sunucu yanıtı anahtarı yansıtırsa, anahtar [redacted] ile değiştirilir.

Komutlar

Komutlar keenauth <group> <action> [arguments] [flags] kalıbını izler. Tam liste için keenauth --help veya keenauth <group> --help çalıştırın.

Grup Eylemler
users list, search, get, create, update, delete, block, unblock, cancel-deletion, authenticators list, authenticators delete, authenticators reset, authenticators reactivate, send-password-reset, send-verification-email, emails send-verification, start-recovery, logs list
applications list, create, get, update, delete, get-api-grant, put-api-grant, delete-api-grant, credentials list, credentials create, credentials delete
apis list, create, get, update, delete
connections list, create, get, update, delete, activate, deactivate
identity-settings get, update
environment-settings get, update
config export (-o olmadan YAML yazdırır), plan -f <file> (terminalde okunabilir bir fark yazdırır), plans get, apply <plan_id> (onay ister; --secrets-from-env gizli bilgileri ortam değişkenlerinden okur, --confirm-deletion <kind>/<key>), promote --from <env> --to <env> (dışa aktarır, planlar, farkı gösterir ve onaydan sonra uygular; bkz. keenauth config promote ile yapılandırmayı taşıma)
api-keys list, get, create, rotate, revoke
logs list, get, tail (yeni kayıtları izler; --type, --user, --org; bkz. keenauth logs tail ile günlükleri izleme)
support-access-grants list, get, create, delete (bkz. keenauth support-access-grants ile destek erişimi verme)
directories simulate <directory_id> --scenario <name> (geliştirme ve hazırlık ortamlarında bir SCIM simülatörü senaryosu çalıştırır; bkz. keenauth directories simulate ile SCIM sağlamayı test etme)
audit verify (indirilen bir denetim dışa aktarımını çevrimdışı denetler; bkz. keenauth audit verify ile denetim dışa aktarımlarını doğrulama)
branding get, update, applications get, applications put, organizations get, organizations put, css put, page-template put, publish, rollback, versions list, texts get, texts put, texts delete
signing-keys list, rotate, policy get, policy update
events tail (olay API'si üzerinden müşteri olaylarını izler; bkz. keenauth events tail ile olayları izleme), get <event ID> (tek bir olay, sunucunun gönderdiği biçimiyle)
mock serve çevrimdışı testler için yerel bir OIDC taklit sunucusu çalıştırır; API anahtarı gerektirmez (bkz. Yerel taklit sunucu)
test login --user <+test address> sabit kodla bir test kullanıcısını development ortamında oturum açtırır ve token'ları yazdırır; API anahtarı gerektirmez (bkz. keenauth test login ile test kullanıcılarının giriş yapması)
webhooks listen --forward-to <local URL>, development veya staging ortamının olaylarını, geçici bir gizli anahtarla imzalanmış olarak makinenize iletir (bkz. keenauth webhooks listen ile webhook'ları yerelde test etme)
login, logout, whoami, env login (--web, --insecure-storage), logout, whoami, env use <environment_id>, env list: API anahtarı yerine kontrol paneli hesabınızla giriş yapın (bkz. keenauth login ile giriş yapma)

Liste komutları --limit, --after, --before ve --order seçeneklerini kabul eder. Daha fazla sonuç varsa, sonraki imleç stderr'e more results: --after <cursor> olarak yazdırılır.

Çıktı biçimi

--output (-o) table, json veya yaml seçer. Bayrak yoksa CLI terminalde tablo, aksi halde JSON yazdırır. JSON ve YAML, API yanıtını olduğu gibi içerir ve asla çevrilmez; böylece betikler bunlara güvenebilir. Sonuçlar stdout'a gider; hatalar, ipuçları ve etag satırı stderr'e gider.

İstek gövdeleri

Gövde gönderen komutlar her düz alan için bir bayrak kabul eder; bayrak adı JSON anahtarından türetilir ve tireler kullanılır (phone_number, --phone-number olur). İç içe nesneler --data ile verilir:

Bayraklar dosyadaki alanların üzerine yazar. Gövde 4 MiB ile sınırlıdır.

keenauth users create --email ada@example.com
keenauth apis create --data @api.json
echo '{"name":"Orders"}' | keenauth apis update api_123 --data - --if-match '"v3"'

Eşzamanlılık kontrolü: --if-match ve etag

Uygulamalar, API'ler ve bağlantılar için güncelleme ve silme komutları --if-match ister; users update bunu kabul eder. Değer, değiştirmek istediğiniz sürümün ETag değeridir. Kaynak bu arada değiştiyse sunucu isteği reddeder. identity-settings update de bunu ister. environment-settings update de bunu ister. Marka taslağı yazma işlemleri (branding update, branding applications put, branding organizations put, branding css put, branding page-template put) de bunu ister.

Her get komutu (users, applications, apis, connections, identity-settings, environment-settings) yanıtın ETag değerini stderr'e yazdırır; böylece stdout temiz kalır:

$ keenauth apis get api_123
{ ... }
etag: "v3"
$ keenauth apis update api_123 --name Orders --if-match '"v3"'

etag satırı JSON veya YAML çıktısına eklenmez.

Yıkıcı komutlar ve --yes

Silen veya engelleyen komutlar terminalde onay ister ([y/N]). Reddetmek 1 çıkış koduyla sonlanır ve aborted yazdırır. Standart giriş bir terminal değilse, komut --yes (-y) geçmediğiniz sürece çalışmayı reddeder; herhangi bir istek göndermeden 2 çıkış koduyla sonlanır.

Çıkış kodları

Kod Anlamı
0 Başarılı.
1 Sunucu veya işletim hatası, reddedilen onay ya da ağ hatası.
2 Kullanım hatası: bilinmeyen komut veya bayrak, eksik bağımsız değişken, geçersiz gövde ya da etkileşimsiz bir terminalde --yes eksikliği.
3 Kimlik doğrulama hatası: anahtar eksik ya da sunucu 401 veya 403 yanıtı verdi.
4 Plan bu özelliği içermiyor (403, plan_feature_unavailable ile).

Sunucu hataları için CLI, stderr'e error, code, status, detail, request_id bilgilerini ve her doğrulama hatası için bir field satırı yazdırır. Destekle iletişime geçtiğinizde request_id değerini belirtin.

Dil

İnsan tarafından okunabilir metinler (yardım, istemler, hatalar, tablo başlıkları) Türkçe (tr), İngilizce (en), Fransızca (fr), Almanca (de), Korece (ko), Japonca (ja), İtalyanca (it) ve İspanyolca (es) olarak sunulur. Dil, bu değişkenlerin ilk ayarlananından alınır: KEENAUTH_LANG, LC_ALL, LC_MESSAGES, LANG (örneğin tr_TR.UTF-8 tr dilini seçer). Boş veya desteklenmeyen bir değer İngilizceyi seçer; bir dilde eksik olan ileti İngilizceye geri döner.

Makine tarafından okunabilir çıktılar asla çevrilmez: JSON ve YAML alan adları ve değerleri, code sorunu ile code, status ve request_id etiketleri tüm dillerde aynı kalır. Sunucudan gelen iletiler, sunucunun gönderdiği şekliyle gösterilir.

KEENAUTH_LANG=de keenauth users list --help

Uygulama kimlik bilgileri

keenauth applications credentials list|create|delete bir uygulamanın istemci sırlarını ve kayıtlı genel anahtarlarını yönetir. Bu komutlar --if-match kullanmaz.

keenauth applications credentials create app_123 --type client-secret --expires-at 2027-01-01T00:00:00Z
keenauth applications credentials create app_123 --type public-key --jwk-file key.pub.jwk
keenauth applications credentials delete app_123 cred_456 --yes

Bir istemci sırrı stdout'a bir kez yazdırılır; stderr'de tek seferlik bir uyarı ile birlikte gelir. --jwk-file tek bir genel JWK kabul eder (en fazla 16 KiB); özel üyeler içeren bir dosya, herhangi bir istek gönderilmeden reddedilir.

API anahtarları

keenauth api-keys list|get|create|rotate|revoke ortamın yönetim API anahtarlarını yönetir. Bu komutlar --if-match kullanmaz.

keenauth api-keys create --name ci --type restricted --permissions users:read,users:write --expires-at 2027-10-01T00:00:00Z
keenauth api-keys rotate key_123 --overlap-hours 24
keenauth api-keys revoke key_123 --reason leaked --yes

create ve rotate işlemlerinin ham anahtarı stdout'a bir kez yazdırılır; stderr'de tek seferlik bir uyarı ile birlikte gelir ve bir daha alınamaz. list ve get yalnızca meta veri yazdırır.