发送带Flow的WhatsApp模板遇参数错误(#131009)求解决方案
解决WhatsApp Flow模板发送时的参数错误问题
问题场景
发送包含Flow按钮的WhatsApp模板时,尝试传递初始化payload以完成Flow数据交互,触发参数错误。相关请求及错误信息如下:
请求URL
https://graph.facebook.com/v21.0/{{Phone-Number-ID}}/messages
请求体
{ "messaging_product": "whatsapp", "to": "4234234234", "type": "template", "template": { "name": "order_completation_without_registered_user", "language": { "code": "en_US" }, "components": [ { "type": "button", "sub_type": "flow", "index": "0", "parameters": [ { "type": "action", "action": { "flow_token": "234234234", "flow_action_data": { "is_registered_user": true } } } ] } ] } }
错误信息
{ "error": { "message": "(#131009) Parameter value is not valid", "type": "OAuthException", "code": 131009, "error_data": { "messaging_product": "whatsapp", "details": "Unexpected key \"flow_action_payload\" when \"flow_action\" is \"data_exchange\"." }, "fbtrace_id": "AnVLLVsSsEu7O6HPeKeem85" } }
错误原因
错误提示明确:当flow_action为data_exchange时,参数命名不符合API要求。请求中使用的flow_action_data并非正确的参数名,导致API识别异常。
修复方案
将请求体中的flow_action_data替换为flow_action_payload,同时显式声明flow_action为data_exchange(避免默认值歧义)。修改后的请求体如下:
{ "messaging_product": "whatsapp", "to": "4234234234", "type": "template", "template": { "name": "order_completation_without_registered_user", "language": { "code": "en_US" }, "components": [ { "type": "button", "sub_type": "flow", "index": "0", "parameters": [ { "type": "action", "action": { "flow_token": "234234234", "flow_action": "data_exchange", "flow_action_payload": { "is_registered_user": true } } } ] } ] } }
核心修改点:
- 替换参数名:
flow_action_data→flow_action_payload - 新增显式声明:
"flow_action": "data_exchange"
修改后API可正确识别初始化payload,完成Flow的数据交互初始化。
内容的提问来源于stack exchange,提问作者OnPrint Cloud
相关产品推荐
相关产品推荐

