我一直在 Zapier 上使用 Twilio API 来发送 WhatsApp 消息,但遇到了一个持续存在的问题。尽管进行了大量的故障排除,我仍然收到以下错误:
Data Message:
The 'To' number whatsapp: 923002459677 is not a valid phone number.
已验证电话号码的格式是否正确:
+countrycodephonenumber
确保接收者选择通过 WhatsApp 接收消息。
确认在Postman上使用相同的API时,电话号码可以正常工作(消息已成功发送)。
在实时环境上进行了测试,并仔细检查了所有 API 详细信息,包括帐户 SID、身份验证令牌和请求正文。
已验证内容变量与我批准的 Twilio 内容模板中的变量相匹配。
确认了生产用途(非沙箱)的端点 URL:
https://api.twilio.com/2010-04-01/Accounts/<AccountSID>/Messages.json
使用Base64编码作为授权标头并确认其准确性。
检查发件人是否已验证,我的 Twilio 帐户已升级为实时状态,并且内容模板已获得批准。
交叉检查我的Zapier 设置,以确保它反映了成功的 Postman 请求,包括所有变量和标头:
Content-Type: application/x-www-form-urlencoded
Authorization: Basic <Base64_encoded(AccountSID:AuthToken)>
我希望消息能够通过 Zapier 成功发送,就像在 Postman 中一样。
Zapier 返回以下错误:
The 'To' number whatsapp: 923002459677 is not a valid phone number.
即使这样,此错误仍然存在:
相同的号码在 Postman 中完美运行。
收件人已选择加入并正确配置为接收 WhatsApp 消息。
电话号码已验证有效。
我的 Twilio 帐户已升级为实时帐户,并且发件人已通过验证。
内容变量与批准的 Twilio 模板相匹配。
相同的 API 请求在 Postman 上成功,但在 Zapier 上始终失败。
我附上了 Zapier 中 API 设置的屏幕截图以供参考。
为什么 Zapier 可能会拒绝请求,而 Postman 工作正常,以及如何解决此问题?
我相信您还需要将整个请求正文内容包装在
{}
中,因为通过 Zapier 发出自定义 API 请求时的“正文”部分是原始传递的。您需要以正确的格式对其进行适当的格式化。
尝试类似:
{
from="whatsapp:+number",
to="whatsapp:+number",
...
}
这里有一个涉及该主题的指南: https://help.zapier.com/hc/en-us/articles/12899607716493-Set-up-an-API-Request-action#h_01JD2EGAHRRMRVNCZVXMEVFEG5