Message Callback Service
Provides Meta business-related push notifications to the specified webhook address (currently supports Message Reply and Message Receipt)
Message Reply
Pushes end-user reply content to messages sent by customers (currently only supports user replies to sent messages)
- URL:
message_webhook
- Method:
POST
- Content-Type:
application/json
Reply Parameters
Parameter |
Type |
Description |
sender |
Object |
Sender information |
recipient |
Object |
Recipient information |
sendTime |
Long |
Message timestamp (milliseconds) |
appkey |
String |
Application identifier |
message |
Object |
Message content |
- sender/recipient parameters:
Parameter |
Type |
Description |
id |
String |
User/Page ID |
Parameter |
Type |
Description |
text |
String |
Text message content (exists for text messages) |
url |
String |
Media file URL (exists for media messages) |
type |
String |
Media type (image/audio/video) |
Message Reply Examples
Text
{
"sender": {
"id": "xxxid"
},
"recipient": {
"id": "xxxid"
},
"sendTime": 1736834239000,
"appkey": "xxkey",
"message": {
"text": "is a text"
}
}
Image
{
"sender": {
"id": "xxxid"
},
"recipient": {
"id": "xxxid"
},
"sendTime": 1736834621000,
"appkey": "xxkey",
"message": {
"url": "https://example.com/image",
"type": "image"
}
}
Audio
{
"sender": {
"id": "xxxid"
},
"recipient": {
"id": "xxxid"
},
"sendTime": 1736834291000,
"appkey": "xxkey",
"message": {
"url": "https://example.com/audio",
"type": "audio"
}
}
Video
{
"sender": {
"id": "xxxid"
},
"recipient": {
"id": "xxxid"
},
"sendTime": 1736834506000,
"appkey": "xxkey",
"message": {
"url": "https://example.com/video",
"type": "video"
}
}
Message Receipt
Message delivery status notification
- URL:
message_webhook
- Method:
POST
- Content-Type:
application/json
Receipt Parameters
Parameter |
Type |
Description |
status |
String |
Message status (success: successful) |
requestId |
String |
Message unique identifier |
code |
Integer |
Status code (0: successful) |
message |
String |
Status description |
sendTime |
String |
Send time (format: yyyy-MM-dd HH:mm:ss) |
Message Receipt Examples
Delivered
{
"status": "delivered",
"requestId": "metamid.xxx",
"code": 16001,
"message": "message has delivered",
"sendTime": "yyyy-MM-dd HH:mm:ss"
}
read
{
"status": "read",
"requestId": "metamid.xxx",
"code": 16002,
"message": "message has seen",
"sendTime": "yyyy-MM-dd HH:mm:ss"
}
failed
{
"status": "failed",
"requestId": "metamid.xxx",
"code": 16000,
"message": "send error(api unavailable)",
"sendTime": "yyyy-MM-dd HH:mm:ss"
}