Dokumen ini sudah diperbarui.
Terjemahan ke Bahasa Indonesia belum selesai.
Bahasa Inggris diperbarui: 9 Des 2023

Referensi API Unggah Lampiran

API Unggah Lampiran memungkinkan Anda untuk mengunggah aset yang dapat dikirim dalam pesan nantinya. Hal ini memungkinkan Anda agar tidak perlu mengunggah file yang umum digunakan berkali-kali. API mendukung menyimpan aset dari URL dan dari sistem file lokal Anda.

Anda juga dapat menggunakan Send API untuk mengirim pesan secara bersamaan dengan lampiran dan menyimpan lampiran untuk digunakan nanti. Untuk informasi selengkapnya, lihat Referensi Send API.

Mengunggah lampiran

Untuk mengunggah lampiran, kirim permintaan POST ke endpoint /Your-page-id/message_attachment dengan message.attachment dengan type dan payload. Agar dapat menggunakan aset di beberapa pesan, atur payload.is_reusable ke true.

Contoh permintaan untuk unggahan dari URL

Diformat agar mudah dibaca. Ganti nilai cetak tebal, cetak miring, seperti page_access_token, dengan nilai Anda.

curl -X POST "https://graph.facebook.com/v19.0/Your-page-id/message_attachment" \
     -H "Content-Type: application/json" \
     -d '{
           "access_token":"Your_page_access_token",
           "message":{
             "attachment":{
               "type":"image", 
               "payload":{
                 "url":"https.your-url.com/image.jp",
                 "is_reusable": true
               }
             }
           }
         }'

Contoh permintaan untuk unggahan dari file

Diformat agar mudah dibaca. Ganti nilai cetak tebal, cetak miring, seperti page_access_token, dengan nilai Anda.

curl -X POST "https://graph.facebook.com/v19.0/Your-page-id/message_attachment" \
     -H "Content-Type: application/json" \
     -d '{
           "access_token":"Your_page_access_token",
           "message":{
             "attachment":{
               "type":"image"
             }
           },
           "filedata":"@/path-to-your-file/image.png";"type":"image/png"
         }'

Jika berhasil, aplikasi Anda akan menerima objek JSON dengan attachment_id disetel ke ID lampiran Anda untuk digunakan dalam pesan Anda.

{"attachment_id": "Your-attachment-ID"}

Mengirim pesan dengan aset yang diunggah

Untuk mengirim pesan dengan aset yang telah Anda unggah sebelumnya, unggah dengan message.attachment.payload.is_reusable diatur ke true, kirim permintaan POST ke endpoint /Your-page-id/messages dengan recipient.id, dan objek message.attachment dengan type dan payload.attachment_id.

Contoh permintaan untuk unggahan dari file

Diformat agar mudah dibaca. Ganti nilai cetak tebal, cetak miring, seperti page_access_token, dengan nilai Anda.

curl -X POST "https://graph.facebook.com/v19.0/Your-page-id/messages" \
     -H "Content-Type: application/json" \
     -d '{
           "access_token":"Your_page_access_token",
           "message":{
             "attachment":{
               "type":"image",
               "payload":{
                 "attachment_id":"Your-attachment-ID"
               }
             }
           }
         }'

Setelah berhasil, aplikasi Anda akan menerima objek JSON dengan success diatur ke true.

{"success": "true"}

Properti

Untuk lampiran dari URL, sediakan properti berikut di isi permintaan sebagai objek JSON. Untuk lampiran dari file, kirim properti sebagai data formulir.

message

Description of the message to be sent.
Property Type Description

message.attachment

Object

An object describing attachments to the message.

message.attachment

Properti Jenis Deskripsi

type

String

Jenis lampiran. Harus berupa salah satu dari berikut:

  • gambar
  • video
  • audio
  • file

payload

Objek

objek payload yang mendeskripsikan lampiran.

message.attachment.payload

Properti Jenis Deskripsi

url

String

Opsional. URL file yang akan diunggah. Ukuran file maksimum adalah 8MB untuk gambar dan 25MB untuk semua jenis file lainnya (setelah enkode). Waktu habis diatur menjadi 75 detik untuk video dan 10 detik untuk semua jenis file lainnya.

is_reusable

Boolean

Opsional. Atur ke true untuk membuat aset tersimpan dapat dikirim ke penerima pesan lain. Default-nya adalah false.

Kode Kesalahan

Kode kesalahanSubkodePesan

100

2018074

Kemungkinan ID tidak valid atau Anda tidak memiliki lampiran.

100

2018008

Gagal mengambil file dari URL. Periksa apakah URL tersebut valid, dengan sertifikat SSL yang valid, ukuran file valid, dan server menanggapi dengan cukup cepat agar terhindar dari waktu habis.

100

2018294

Waktu unggah video habis atau video rusak. Perhatikan bahwa jika video tidak dapat diambil dalam 75 detik, waktunya akan habis

100

2018047

Gagal mengunggah lampiran. Cara umum untuk memicu kesalahan ini adalah bahwa jenis media yang disediakan tidak sesuai dengan jenis file yang disediakan di URL