CLIAutentikasi

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 ditambah offline_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-browser

Tempat 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:logout

auth: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:list

Mana 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

VariabelBawaanFungsi
SOFIA_API_KEY—Kunci API pribadi (Pengaturan › API › Akses pribadi).
SOFIA_API_URLhttps://api.sofia-post.comInstans API lain (staging, lokal).
SOFIA_CLIENT_IDKlien “Sofia CLI”Klien OAuth publik lain untuk auth:login.

Siap memublikasikan? Lanjut ke postingan.

Apakah halaman ini membantu?