WhatsApp API updateTemplate - nxtele/http-api-document GitHub Wiki

编辑消息模板

在WhatsApp应用下的指定的单个号码编辑指定的消息模板。 需要注意的是,如果创建模板时使用了富媒体交互模板,需要同时提交富媒体示例文件,富媒体示例文件通过“模板示例媒体上传”API接口上传。

  • URL:https://api2.nxcloud.com/api/wa/updateTemplate
  • Method:POST
  • Content-Type:application/json
  • 需要鉴权:

鉴权机制

鉴权规则请参考地址:API接口调用约定

请求参数

header参数:

参数名 类型 必选 示例值 说明
accessKey String fmexxx3ki 用户身份标识
ts String 1655710885431 当前请求的时间戳(单位是毫秒),牛信服务端允许用户端请求最大时间误差为60秒
bizType String 2 WhatsApp业务类型,取固定值“2”
action String updateTemplate WhatsApp业务操作,取固定值“updateTemplate”
sign String 6e95xxx826 API入参参数签名,签名算法

body参数:

参数名 类型 必选 示例值 说明
appkey String 牛信云WhatsApp应用的appkey
business_phone String 86158xxx1795 商户的WhatsApp号码列表,需要带国码,如185xxx99
messaging_product String whatsapp 发送消息的通道,应用于WhatsApp消息的发送时,值必须为“whatsapp”
category String MARKETING 模板类型,模板被拒时可修改类型 枚举值: "MARKETING" : "包括促销或优惠、信息更新或邀请客户回应/采取行动的信息。任何不符合效用或身份验证用途均为营销","UTILITY" : "促成商定的某个具体请求或交易,或向客户提供与进行中的交易相关的最新信息,包括售后通知和定期账单","AUTHENTICATION" :"使商家可以使用一次性密码验证用户身份,可能会在登录过程的多个步骤中出现(如帐号认证、帐号找回、诚信挑战)"
template_id String 模板id
components array[component object] 模板组件
  • component object参数:
参数名 类型 是否必须 说明
type string 必须 组件类型,取值包括:HEADER, BODY, FOOTER, BUTTONS
format string 必须/无 仅type= HEADER时有此项且为必须项,type!=HEADER时,无此项。描述HEADER里内容的类型。取值范围包括:TEXT,DOCUMENT,IMAGE, VIDEO
text string 必须/无 type= HEADER且format=text时,为必须项;type=BODY时,为必须项;type=FOOTER时,为必须项;type=BUTTONS时,无此项。
example object 必须/无 变量示例,当HEADER或者BODY内容中配置了变量时,为必须项。否则无此项。
buttons array[button object] 必须/无 仅type=BUTTONS时,为必须项,否则无此项。
add_security_recommendation boolean 必须/无 添加安全建议 身份验证模板 type = BODY 时可选 值为 true/false。
code_expiration_minutes integer 必须/无 验证码的失效时间 身份验证模板 type = FOOTER 时可选 值的可填范围是 1-90。
cards array[card object] 必须/无 仅type=CAROUSEL 必填,轮播模板卡片.
  • card object参数:
参数名 类型 是否必须 说明
components array[component object] 必须/无 轮播模板组件. 且component的type取值为HEADER, BODY, BUTTONS.
  • example object参数:
参数名 类型 是否必须 说明
header_handle string 必须/无 当HEADER中 format=DOCUMENT或format=IMAGE或format=VIDEO时,与custom_header_handle_url二选一,否则无此项,如果与custom_header_handle_url同时存在时,以custom_header_handle_url为准。上传文件模板示例 获取 header_handle 值
custom_header_handle_url string 必须/无 当HEADER中 format=DOCUMENT或format=IMAGE或format=VIDEO时,与header_handle二选一,否则无此项,示例媒体url建议小于1M,否则会超时。如果与header_handle同时存在时,以custom_header_handle_url为准
header_text array[string] 必须/无 当HEADER中 format=TEXT时为必须项,否则无此项
body_text array[array[string]] 必须/无 当BODY内容文本中配置了变量时为必须项,根据变量配置,数组中可能有1个或多个值。当BODY内容文本中未配置变量则无此项。
  • button object参数:
参数名 类型 是否必须 说明
type string 必须/无 按钮类型,包括QUICK_REPLY, URL , PHONE_NUMBER,COPY_CODE,FLOW . 1. QUICK_REPLY即快速回复按钮;2. URL即行动号召url按钮;3. PHONE_NUMBER即行动号召phone_number按钮; 4. COPY_CODE 复制优化码 5. FLOW
text string 必须 按钮的显示文字
url string 必须/无 行动号召按钮上配置的网址,仅type=URL时为必须项。如果是动态url,则需带上后缀变量{{1}}。
phone_number string 必须/无 行动号召按钮上配置的电话,仅type= PHONE_NUMBER时为必须项
example array[string] 必须/无 必须/无
otp_type string 必须/无 验证码按钮类型 固定值 ONE_TAP 或者 COPY_CODE ;ONE_TAP的含义是一键填充 COPY_CODE的含义是复制验证码
autofill_text string 必须/无 自动填充按钮文本,展示在按钮上的文案,仅otp_type = ONE_TAP 时为必须项
package_name string 必须/无 安卓包名,仅otp_type = ONE_TAP 时为必须项
signature_hash string 必须/无 应用hash,仅otp_type = ONE_TAP 时为必须项
flow_id string 必须/无 当type =Flow时有值, WhatsApp 提供的流程的唯一标识符。流程必须已发布
flow_action string 必须/无 当type =Flow时有值, navigate 或 data_exchange 默认:navigate
navigate_screen string 必须/无 当type =Flow时有值, 仅在 flow_action 为 navigate 时,此为必要项。流程的第一个屏幕的.

请求示例

body(application/json) 参数:

{
    "appkey": "8exxxs",
    "messaging_product": "whatsapp",
    "business_phone": "185xxx99",
    "template_id": "15125xxxx5168",
    "category": "MARKETING",
    "components": [
        {
            "type": "BODY",
            "text": "Your code is {{1}}.",
            "example": {
                "body_text": [
                    [
                        "10086"
                    ]
                ]
            }
        }
    ]
}

响应参数

参数名 类型 说明
code Integer 结果编码
data JsonObject 请求结果
message String 请求结果说明
  • data JsonObject 参数:
参数名 类型 说明
success Boolean 修改结果

响应示例

成功示例

{
    "code": 0,
    "data": {
        "success": true
    },
    "message": "请求成功"
}

失败示例

{
    "code": -1,
    "message": "请求失败",
    "data": null
}

响应码说明

code message 解决办法
0 请求成功
-1 请求失败 请联系技术人员排除问题
1000~100X 鉴权问题 详情查看API鉴权部分
9000 参数异常 参数遗漏,请检查必须的参数
9001 系统业务错误 请联系技术人员排除问题
9002 商户手机号错误 请确认商户号码是否属于whatsapp号码
9006 该whatsapp号码未绑定应用 请联系业务人员处理应用和手机号绑定操作