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

查询消息模板

通过API查询WhatsApp应用下的单个号码绑定的消息模板

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

鉴权机制

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

请求参数

header参数:

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

body参数:

参数名 类型 必选 示例值 说明
appkey String 牛信云WhatsApp应用的appkey
business_phone String 86158xxx1795 商户的WhatsApp号码列表,需要带国码,如185xxx99
messaging_product String whatsapp 发送消息的通道,应用于WhatsApp消息的发送时,值必须为“whatsapp”
after String 向后分页游标值
before String 向前分页游标值
limit integer 每页模板数量 (为空 limit则默认值为20)
name String 模板名称(会返回同名的不同语言模板)

同一名称下的多个不同语言版本,视为1个模板

请求示例

body(application/json) 参数:

{
    "business_phone": "185xxx99",
    "appkey": "jh42xxxd434",
    "messaging_product": "whatsapp"
}

响应参数

参数名 类型 说明
code Integer 结果编码
data JsonObject 请求结果
message String 请求结果说明
  • data JsonObject参数:
参数名 类型 说明
data array[templateInfo object] 模板信息数组
paging object 分页信息
  • templateInfo object参数:
参数名 类型 说明
id string 模板ID
category string 模板类型
language string 模板语言
name string 模板名称
status string 审核状态枚举 枚举值: APPROVED: 使用中 IN_APPEAL: 已提出上诉 PENDING: 待处理 REJECTED: 已拒绝 PENDING_DELETION: 待删除 DELETED: 已删除 DISABLED: 不可用 PAUSED: 暂时停用 LIMIT_EXCEEDED: 超出限制
rejected_reason string 拒绝原因
quality_score object 模板质量
components array[component object] 模板组件
  • quality_score object参数:
参数名 类型 说明
score string 模板质量枚举 枚举值: GREEN: 高 YELLOW: 中 RED: 低 UNKNOWN: 质量待定
  • component object参数:
参数名 类型 说明
type string 组件类型,取值包括:HEADER, BODY, FOOTER, BUTTONS
format string 仅type= HEADER时有此项,描述HEADER里内容的类型,类型包括TEXT,DOCUMENT,IMAGE, VIDEO
text string type= HEADER且format=text时,为HEADER文本内容;type=BODY时,为BODY的文本内容;type=FOOTER时,为FOOTER的文本内容。
example object 变量示例,当HEADER或者BODY内容中配置了变量及示例值时,有此项
buttons array[button object] 仅type=BUTTONS时有此项,描述模板按钮的配置信息
  • example object参数:
参数名 类型 说明
header_handle string 头部媒体资源链接
custom_header_handle_url string 自定义头部媒体资源链接,当创建/编辑时选择custom_header_handle_url 有值
header_text array[string] 头部文本变量示例,数组中仅有1个值
body_text array[array[string]] 内容文本变量示例,根据模板BODY的内容配置,数组中可能有1个或多个值
  • 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时有此项
phone_number string 行动号召按钮上配置的电话,仅type= PHONE_NUMBER时有此项
example array[string] 示例的URL,例如:https://www.baidu.com/user
flow_id string 当type =Flow时有值, WhatsApp 提供的流程的唯一标识符。流程必须已发布
flow_action string 当type =Flow时有值, navigate 或 data_exchange 默认:navigate
navigate_screen string 当type =Flow时有值, 仅在 flow_action 为 navigate 时,此为必要项。流程的第一个屏幕的.
  • paging object参数:
参数名 类型 说明
cursors object 游标
next string next 不为空可向后翻页
previous string previous不为空可向前翻页
  • cursors object参数:
参数名 类型 说明
before string 游标值(上一页)
after string 游标值(下一页)

响应示例

成功示例

{
    "code": 0,
    "data": {
        "data": [
            {
                "components": [
                    {
                        "format": "TEXT",
                        "text": "ni{{1}}hao",
                        "type": "HEADER",
                        "example": {
                            "header_text": [
                                "AA"
                            ]
                        }
                    },
                    {
                        "text": "hello{{1}}world{{2}}hahah",
                        "type": "BODY",
                        "example": {
                            "body_text": [
                                [
                                    "BB",
                                    "CC"
                                ]
                            ]
                        }
                    },
                    {
                        "text": "I am footer",
                        "type": "FOOTER"
                    },
                    {
                        "buttons": [
                            {
                                "text": "I am QR1",
                                "type": "QUICK_REPLY"
                            },
                            {
                                "text": "I am QR2",
                                "type": "QUICK_REPLY"
                            }
                        ],
                        "type": "BUTTONS"
                    }
                ],
                "rejected_reason": "INVALID_FORMAT",
                "quality_score": {
                    "score": "UNKNOWN"
                },
                "name": "normal_text3",
                "language": "en_US",
                "id": "15xxxx67",
                "category": "OTP",
                "status": "REJECTED"
            }
        ],
        "paging": {
            "next": "https://graph.facebook.com/v15.0/10xxx925/message_templates?fields=id%2Ccategory%2Clanguage%2Cname%2Cstatus%2Ccomponents%2Crejected_reason%2Cquality_score&limit=20&after=MTkZD",
            "cursors": {
                "before": "MAZDZD",
                "after": "MTkZD"
            }
        }
    },
    "message": "请求成功"
}

失败示例

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

响应码说明

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