CLI
Mengelola postingan
Buat, jadwalkan, daftar, ubah, dan hapus postingan dari terminal: draf, beberapa jaringan, media, uji coba, dan isi JSON lengkap.
Setiap postingan milik sebuah usaha, jadi Anda memberi id-nya dengan -e. Temukan dengan sofia establishments:list (lihat akun).
Membuat postingan
Publikasikan postingan
Tanpa tanggal, postingan langsung terbit.
sofia posts:create -e $ESTABLISHMENT_ID -p instagram -c "Tarte tatin du jour"Opsi
| Opsi | Fungsi |
|---|---|
-e, --establishment | Id usaha (wajib, kecuali dengan --json). |
-p, --platforms | Jaringan, dipisahkan koma (instagram,facebook,x,linkedin,tiktok); wajib, kecuali dengan --json. |
-c, --content | Teks postingan. |
-s, --date | Tanggal jadwal (ISO 8601); tanpa tanggal, postingan langsung terbit. |
-m, --media | Id media atau alamat https, dipisahkan koma. |
-f, --format | Format: post, reel, story, carousel… |
-a, --account | Akun terhubung yang dipakai untuk menerbitkan. |
--draft | Menyimpan draf yang tidak dikirim ke mana pun. |
--dry-run | Memeriksa postingan tanpa menulis apa pun. |
--idempotency-key | Mengulang permintaan yang sama sebagai satu permintaan. |
-j, --json | File berisi body lengkap; menggantikan opsi konten. |
Jadwalkan postingan
Berikan tanggal ISO 8601 dengan -s, --date.
sofia posts:create -e $ESTABLISHMENT_ID -p instagram -c "Brunch ce samedi" -s 2026-11-07T09:00:00ZSimpan draf
--draft menyimpan postingan tanpa memublikasikan atau menjadwalkannya.
sofia posts:create -e $ESTABLISHMENT_ID -p instagram -c "Brunch ce samedi" --draftTambahkan media
-m, --media menerima id media dari pustaka Anda atau alamat https, dipisahkan koma.
sofia posts:create -e $ESTABLISHMENT_ID -p instagram -c "Tarte tatin du jour" \
-m $MEDIA_ID,https://images.example.com/tarte-tatin.jpgUntuk alamat, jenisnya diambil dari ekstensi: video untuk mp4, mov, webm, dan m4v, selain itu gambar. Untuk mengunggah dulu, lihat media.
Beberapa jaringan sekaligus
Tulis jaringan dipisahkan koma di -p, --platforms. Masing-masing menerima teks yang sama.
sofia posts:create -e $ESTABLISHMENT_ID -p instagram,facebook,linkedin -c "Tarte tatin du jour"Uji coba
--dry-run memeriksa postingan sesuai aturan tiap jaringan dan tidak memublikasikan apa pun. Lihat Uji coba.
sofia posts:create -e $ESTABLISHMENT_ID -p instagram -c "Tarte tatin du jour" --dry-runIdempotensi
Jalankan ulang perintah dengan aman lewat --idempotency-key: kunci yang sama menghasilkan postingan yang sama, tidak pernah dua. Lihat Idempotensi.
sofia posts:create -e $ESTABLISHMENT_ID -p instagram -c "Tarte tatin du jour" \
--idempotency-key brunch-2026-11-07Isi lengkap dari berkas
Untuk teks per jaringan, beberapa media, atau jadwal sekaligus, tulis seluruh isi di berkas lalu berikan dengan -j, --json. Ini menggantikan opsi konten.
sofia posts:create --json post.json{
"establishmentId": "$ESTABLISHMENT_ID",
"targets": [
{
"platform": "instagram",
"text": "Tarte tatin du jour",
"media": [{ "id": "$MEDIA_ID" }],
"format": "post"
},
{
"platform": "tiktok",
"text": "Tarte tatin du jour",
"media": [{ "url": "https://images.example.com/tarte-tatin.mp4", "type": "video" }]
}
],
"scheduledAt": "2026-11-07T09:00:00Z",
"status": "scheduled"
}Daftar postingan
Saring daftar dengan opsi berikut. Jawabannya berhalaman: lihat Paginasi.
-e, --establishment: hanya usaha ini.--status: hanya postingan dengan status ini.--limitdan--cursor: ukuran halaman dan titik lanjut.
sofia posts:list -e $ESTABLISHMENT_ID --status scheduled --limit 20Memfilter menurut periode
--from dan --to: rentang tanggal.
sofia posts:list -e $ESTABLISHMENT_ID --from 2026-11-01 --to 2026-11-30Memfilter menurut penulis
--created-by me|app: postingan buatan Anda sendiri atau yang dibuat lewat API.
sofia posts:list -e $ESTABLISHMENT_ID --created-by appMembaca dan mengubah postingan
posts:update mengubah tanggal (-s), status (draft atau scheduled), atau seluruh isi dengan -j.
sofia posts:get $POST_ID
sofia posts:update $POST_ID -s 2026-11-08T09:00:00Z
sofia posts:update $POST_ID --json post.jsonMengubah status postingan
posts:update --status memindahkan postingan dari draf ke terjadwal, dan sebaliknya.
sofia posts:update $POST_ID --status draft
sofia posts:update $POST_ID --status scheduled -s 2026-11-08T09:00:00Z--status scheduled -s <tanggal>menjadwalkan draf pada tanggal itu.--status draftmengembalikan postingan terjadwal menjadi draf: kontennya tetap, tanggalnya hilang, dan postingan tidak akan terbit lagi.
Menghapus postingan
sofia posts:delete $POST_IDSkrip dengan jq
Karena keluarannya JSON, jq bisa mengambil yang Anda butuhkan: id, status, kursor halaman berikutnya.
sofia posts:list -e $ESTABLISHMENT_ID --status scheduled | jq '.data[] | {id, status}'
sofia posts:list -e $ESTABLISHMENT_ID | jq -r '.nextCursor'