WhatsApp Business Platform交互式消息标记已读API报错求助
解决WhatsApp Cloud API交互式消息标记已读报错问题
当用户点击按钮/列表选项后,webhook收到的回调里,wamid字段是你之前发送的那条交互式消息的ID(属于outgoing消息),而标记已读API要求传入的是用户触发的incoming消息的ID,这就是报错的核心原因。
正确的处理方式:
- 从webhook payload的
entry[].changes[].value.messages[].id字段提取真实的incoming消息ID,用这个ID调用标记已读API。 - 回调payload关键部分示例:
{ "entry": [ { "changes": [ { "value": { "messages": [ { "id": "wamid.1234567890ABCDEF", // 这是要用于标记已读的incoming消息ID "from": "987654321", "interactive": { "type": "button_reply", "button_reply": { "id": "btn_confirm", "title": "确认" } }, "wamid": "wamid.OUTGOING_OLD_ID" // 这个是你发的原消息ID,不能用 } ] } } ] } ] }
- 建议存储回调数据时,同时保存
id和wamid两个字段:id用于标记已读,wamid用来关联用户是对哪条原交互式消息做出的响应。
内容的提问来源于stack exchange,提问作者Demo
相关产品推荐
相关产品推荐

