CLI
Autentikasi
Masuk lewat browser atau dengan kunci API pribadi, dan lihat mana yang dipakai bila keduanya sama-sama ada di mesin yang sama.
CLI bisa masuk dengan dua cara: lewat browser, atau dengan kunci API pribadi. Browser paling mudah di komputer sendiri; kunci cocok untuk CI dan server.
Masuk lewat browser
auth:login membuka Sofia di browser. Anda menyetujui akses, dan CLI menerimanya di alamat lokal (http://127.0.0.1:<port>/callback). Ini adalah alur OAuth2 authorization code dengan PKCE; tidak ada kunci yang perlu disalin.
sofia auth:login--scopes "<s1 s2>": scope yang diminta. Bawaannya semua scope sumber daya ditambahoffline_access.--no-browser: menampilkan alamat tanpa membukanya, untuk mesin tanpa browser.
sofia auth:login --scopes "posts:read posts:write offline_access"
sofia auth:login --no-browserTempat kredensial disimpan
Setelah auth:login, CLI menyimpan sesi Anda di ~/.sofia/credentials.json (folder 0700, berkas 0600). Token yang kedaluwarsa diperbarui sendiri dan berkas ditulis ulang.
{
"apiUrl": "https://api.sofia-post.com",
"clientId": "…",
"accessToken": "…",
"refreshToken": "…",
"expiresAt": "…",
"scope": "…"
}Periksa dan keluar
auth:status menampilkan akun yang dipakai CLI. auth:logout menghapus berkas kredensial.
sofia auth:status
sofia auth:logoutauth:logout hanya menghapus kredensial di mesin ini: Sofia API tidak punya endpoint pencabutan, jadi akses tetap berlaku sampai Anda mencabutnya di Sofia pada Pengaturan › Aplikasi terhubung.
Gunakan kunci API pribadi
Buat kunci di Sofia pada Pengaturan › API › Akses pribadi, lalu ekspor sebagai SOFIA_API_KEY. Tidak perlu auth:login: cocok untuk CI dan server. Info kunci lebih lanjut di Autentikasi.
export SOFIA_API_KEY="sk_live_…"
sofia establishments:listMana yang dipakai
Kredensial dari browser didahulukan sebelum SOFIA_API_KEY. Untuk memakai kunci di mesin yang sudah masuk, jalankan sofia auth:logout terlebih dahulu.
Variabel lingkungan
| Variabel | Bawaan | Fungsi |
|---|---|---|
SOFIA_API_KEY | — | Kunci API pribadi (Pengaturan › API › Akses pribadi). |
SOFIA_API_URL | https://api.sofia-post.com | Instans API lain (staging, lokal). |
SOFIA_CLIENT_ID | Klien “Sofia CLI” | Klien OAuth publik lain untuk auth:login. |
Siap memublikasikan? Lanjut ke postingan.