Sử dụng nút messages
để gửi tin nhắn có chứa âm thanh, tài liệu, hình ảnh, nhãn dán hoặc video cho khách hàng của bạn.
Về cơ bản, khi gửi tin nhắn có chứa file phương tiện, bạn phải cung cấp ID của file phương tiện đã tải lên hoặc một liên kết đến file phương tiện trong phần nội dung yêu cầu. Ngoài ra, bạn phải chỉ định loại file phương tiện mà mình đang gửi: audio
, document
, image
, sticker
hoặc video
. Khi nhận được yêu cầu, hệ thống sẽ tải file phương tiện lên máy chủ WhatsApp và gửi cho người dùng có tên trong trường to
.
Hiện tại, bạn có thể gửi tin nhắn có chứa file phương tiện bằng API WhatsApp Business theo 2 cách:
media
để lấy ID cần thiết cho lệnh gọi API messages
.Bạn cần:
POST
đến /messages
Sau khi bạn tải file phương tiện lên, hãy sử dụng ID được trả về cho trường id
trong lệnh gọi API gửi tin nhắn có chứa file phương tiện. Ngoài ra, bạn có thể cung cấp thông số link
trỏ đến file phương tiện mà bạn muốn gửi (hiện chúng tôi chỉ hỗ trợ các liên kết HTTP/HTTPS).
Bạn cần có id
hoặc link
nhưng không nên sử dụng đồng thời cả hai thông số này.
Mẫu bên dưới hiển thị nhiều đối tượng khác nhau, chẳng hạn như audio
, document
, image
, sticker
và video
chỉ nhằm mục đích minh họa. Phần nội dung yêu cầu hợp lệ chỉ chứa một đối tượng trong số này.
POST /v1/messages { "recipient_type": "individual", "to": "whatsapp-id", "type": "audio" | "contact" | "document" | "image" | "location" | "sticker" | "text" | "video", "audio": { "id": "your-media-id" } "document": { "id": "your-media-id", "filename": "your-document-filename" } "document": { "link": "the-provider-name/protocol://the-url", "provider": { "name" : "provider-name" } } "document": { "link": "http(s)://the-url.pdf" } "video": { "id": "your-media-id" } "image": { "link": "http(s)://the-url", "provider": { "name" : "provider-name" } } "image": { "id": "your-media-id" } "sticker": { "id": "your-media-id" } "sticker": { "link": "http(s)://the-url", "provider": { "name" : "provider-name" } } }
Để biết thêm thông tin về các thông số, hãy xem:
Phản hồi thành công sẽ bao gồm một đối tượng messages
cùng với ID tin nhắn.
{ "messages": [{ "id": "gBEGkYiEB1VXAglK1ZEqA1YKPrU" }] }
Trong trường hợp phản hồi không thành công, hệ thống sẽ gửi lệnh gọi lại đến URL Webhook, ngay cả khi phản hồi đó tạo ra một ID tin nhắn tương tự như tin nhắn gửi thành công. Đó là lý do bạn cần phải thiết lập máy chủ Webhook.
Hãy xem phần Mã lỗi và mã trạng thái để biết thêm thông tin về lỗi.