tebarDocs
REST API

Post

Membuat, menjadwalkan, mengubah, dan membatalkan post.

Buat post

POST /v1/posts
Authorization: Bearer tb_live_xxx
Idempotency-Key: 6f1c2b7e-0d8a-4f7e-9a51-2c1f7b0e9d34
Content-Type: application/json

{
  "content": "Promo akhir pekan ๐ŸŽ‰",
  "media_ids": ["0b9d..."],
  "targets": [{ "account_id": "a1.." }, { "account_id": "b2.." }],
  "scheduled_at": "2026-10-15T09:00:00+07:00"
}
FieldKeterangan
contentTeks post
media_idsId media dari upload, sesuai urutan tampil
targetsAkun tujuan (account_id dari GET /v1/accounts)
scheduled_atOpsional. Tanpa field ini post langsung diterbitkan

Respons 201:

{
  "id": "p1..",
  "status": "scheduled",
  "scheduled_at": "2026-10-15T02:00:00Z",
  "targets": [
    {
      "id": "t1..",
      "account_id": "a1..",
      "platform": "instagram",
      "status": "pending",
      "permalink": null
    },
    {
      "id": "t2..",
      "account_id": "b2..",
      "platform": "threads",
      "status": "pending",
      "permalink": null
    }
  ]
}

Penerbitan berjalan di latar belakang. Cek GET /v1/posts/{id}: setiap target berubah menjadi published beserta permalink, atau failed beserta error_code.

Satu video di Instagram otomatis terbit sebagai Reels. Dua media atau lebih menjadi carousel (Instagram maks 10, Threads maks 20).

Versi per akun

Setiap target boleh punya teks dan/atau media sendiri. Field yang tidak dikirim mengikuti versi bersama. content: "" berarti sengaja tanpa teks.

{
  "content": "Kopi apa favoritmu?",
  "targets": [
    { "account_id": "th..", "options": { "poll": { "options": ["Tubruk", "Susu"] } } },
    { "account_id": "ig..", "content": "Menu baru minggu ini โ˜•", "media_ids": ["m1.."] }
  ]
}

Opsi per platform

Dikirim di targets[].options. Kunci yang tidak dikenal ditolak (400 invalid_options).

PlatformOpsiAturan
Threadsthread: string[]Utas: 1โ€“10 bagian lanjutan, masing-masing โ‰ค 500 karakter
Threadspoll: { options: string[] }2โ€“4 pilihan, 1โ€“25 karakter. Hanya post tanpa media
Threadslink_attachment: urlKartu link. Hanya post tanpa media
Threadstext_attachment: { text, link_url? }Teks panjang โ‰ค 10.000 karakter. Hanya post tanpa media
Threadstopic_tag: string1โ€“50 karakter, tanpa . dan &
Threadsreply_controleveryone, accounts_you_follow, mentioned_only, followers_only, parent_post_author_only
Instagramformat: "feed" | "story"Story: tepat 1 media, tanpa caption, video 3โ€“60 detik dan โ‰ค 100 MB
Instagramshare_to_feed: booleanReels saja (default true)
Instagramcover_media_id / thumb_offset_msCover Reels: id gambar, atau frame video dalam milidetik

Threads membatasi 5 link unik per post (400 too_many_links).

Mengelola post

RequestFungsi
PATCH /v1/posts/{id}Ubah content, media_ids, atau scheduled_at post yang belum terbit
DELETE /v1/posts/{id}Batalkan post terjadwal
POST /v1/posts/{id}/publishTerbitkan sekarang
POST /v1/posts/{id}/retryUlangi akun yang failed. Tidak memposting ulang yang sudah terbit
POST /v1/posts/{id}/removeHapus dari riwayat Tebar. Post di Instagram/Threads tidak ikut terhapus

Post yang sudah mulai diterbitkan tidak bisa diubah (409 post_not_editable).

Di halaman ini