WhatsApp API(新版)
# WhatsApp API
# 接口声明
在调用接口时必须在 https 请求的 header 中携带 "token" 参数。
Token 是智齿客服接口开放平台全局唯一的接口调用凭据。 开发者在调用各业务接口时都需使用 Token,开发者需要进行妥善保存。 Token 的存储至少要保留 32 个字符空间。Token 的有效期目前为 24 个小时,需定时刷新,或根据接口返回的 Token 失效提示,进行重新获取。请求 Token 接口,无论 Token 是否存在,都会返回新的 Token,并重置 Token 的过期时间(目前 24 小时)。
Token 使用方式说明: 1、开发者需要统一获取和管理 Token,在调用智齿客服各个业务开放接口时都应该使用同一个的 Token,不应该每个业务都刷新获取新的 Token,否则容易导致 Token 失效,影响接口的正常调用; 2、目前 Token 的有效期通过返回的 expire_in 来传达,目前是 86,400 秒之内的值。开发者需要根据这个有效时间提前去刷新新 Token。 3、开发者需要根据接口返回的 Token 失效提示,进行重新获取 Token。
# 接口调用
# ● 获取Token
接口说明:
获取 API 开放接口 Token,此 Token 仅适用于智齿开放平台 5.0 版本全部 API 接口 。API 接口中的参数 appid 、 app_key 请联系智齿售后人员获取。
请求方式:
GET
请求地址:
https://sg.sobot.com/api/get_token
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
appid | String | 是 | 接口凭证 Id,第三方用户接口调用唯一凭证 id |
create_time | String | 是 | 10位数时间戳 |
sign | String | 是 | 签名 md5(appid+create_time+app_key) |
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | 是 | 返回编码 |
ret_msg | String | 是 | 返回信息 |
item | Object | 否 | 返回对象 |
item 对象:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
token | String | 是 | token 编码 |
expires_in | String | 是 | 凭证有效时间,单位:秒 |
时间戳转换参考工具:
http://tool.chinaz.com/Tools/unixtime.aspx
sign 签名生成示例:
例如,appid = "1"; create_time="1569397773"; app_key="2"
sign = Md5("115693977732") 为 258eec3118705112b2c53dc8043d4d34。
请求示例:
curl https://sg.sobot.com/api/get_token?appid=1&create_time=1569397773&sign=258eec3118705112b2c53dc8043d4d34
返回示例:
{
"item": {
"token": "4ac37cb2e9c740dba4b75a34d5358802",
"expires_in": "86400"
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
# ● 获取 WhatsApp phone number id
登录智齿客服系统后台,打开【在线客服->对接渠道设置->WhatsApp】,获取 WhatsApp 号码对应 phone number id
# 发送消息
# ● 发送模板消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | template (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
template | Object | 是 | 模板内容 |
template参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
name | String | 是 | 模板名称 |
language | Object | 是 | 模板语言 |
components | List | 是 | 模板创建变量 |
language参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
code | String | 是 | 模板语言编码 |
components参数:
注:
如果在whatsApp后台没有创建变量, 则components为空数组
如果存在变量,变量内容不能为空内容或者空字符串
# 1. Header示例
1.1 Header变量为文本
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"content": {
"template": {
"components": [{
"type": "header",
"parameters": [{
"text": "CONTENT",
"type": "text"
}]
}],
"language": {
"code": "TEMPLATE_LANGUAGE_CODE"
},
"name": "TEMPLATE_NAME"
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "template"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
1.2 Header变量为媒体
image = 图片 | video = 视频 | document = 文档 (可传filename参数,与link同级)
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"content": {
"template": {
"components": [{
"type": "header",
"parameters": [{
"image": {
"link": "https://img.sobot.com/console/common/face/robot.png"
},
"type": "image"
}]
}],
"language": {
"code": "TEMPLATE_LANGUAGE_CODE"
},
"name": "TEMPLATE_NAME"
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "template"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
1.3 Header变量为位置
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"content": {
"template": {
"components": [{
"type": "header",
"parameters": [{
"location": {
"address": "your address",
"latitude": "-12.283171",
"name": "your location name",
"longitude": "130.501951"
},
"type": "LOCATION"
}]
}],
"language": {
"code": "TEMPLATE_LANGUAGE_CODE"
},
"name": "TEMPLATE NAME"
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "template"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# 2. Body变量示例
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"content": {
"template": {
"components": [{
"type": "body",
"parameters": [{
"text": "CONTENT1",
"type": "text"
}, {
"text": "CONTENT2",
"type": "text"
}]
}],
"language": {
"code": "TEMPLATE_LANGUAGE_CODE"
},
"name": "TEMPLATE NAME"
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "template"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# 3. Button变量示例
如果当前按钮变量在模板中第一个,index=0,第二个,index=1
如果当前按钮变量有中文,需要将中文进行encode转换
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"content": {
"template": {
"components": [{
"sub_type": "URL",
"index": 0,
"type": "button",
"parameters": [
{
"payload": "BUTTON CONTENT",
"type": "payload"
}
]
}],
"language": {
"code": "TEMPLATE_LANGUAGE_CODE"
},
"name": "TEMPLATE_NAME"
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "template"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# 4. 完整的请求示例(非OTP)
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"content": {
"template": {
"components": [{
"type": "header",
"parameters": [
{
"document": {
"filename": "xxx.txt",
"link": "https://example/xxx.txt"
},
"type": "document"
}
]
},
{
"type": "body",
"parameters": [
{
"text": "CONTENT",
"type": "text"
}
]
},
{
"sub_type": "URL",
"index": 0,
"type": "button",
"parameters": [
{
"payload": "BUTTON CONTENT",
"type": "payload"
}
]
}],
"language": {
"code": "TEMPLATE_LANGUAGE_CODE"
},
"name": "TEMPLATE_NAME"
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "template"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# 5. OTP模板消息
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"content": {
"template": {
"components": [{
"type": "body",
"parameters": [{
"type": "text",
"text": "<ONE-TIME PASSWORD>"
}]
},
{
"type": "button",
"sub_type": "url",
"index": "0",
"parameters": [{
"type": "text",
"text": "<ONE-TIME PASSWORD>"
}]
}
],
"language": {
"code": "TEMPLATE_LANGUAGE_CODE"
},
"name": "TEMPLATE NAME"
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "template"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# 6. 带Flow的模板消息
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '
{
"content": {
"messaging_product": "whatsapp",
"recipient_type": "individual",
"template": {
"language": {
"code": "LANGUAGE_AND_LOCALE_CODE"
},
"name": "TEMPLATE_NAME",
"components": [
{
"type": "button",
"sub_type": "flow",
"index": "0",
"parameters": [
{
"type": "action",
"action": {
"flow_token": "FLOW_TOKEN", //optional, default is "unused"
"flow_action_data": {
...
} // optional, json object with the data payload for the first screen
}
}
]
}
]
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "template"
}
'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# 7. 使用媒体Id发送消息
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '
{
"content": {
"template": {
"components": [{
"type": "header",
"parameters": [{
"image": {
"id": "1234567890"
},
"type": "image"
}]
}],
"language": {
"code": "en_US"
},
"name": "template_name"
}
},
"from": "1234567890",
"to": "8618888888888",
"type": "template"
}
'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# ● 发送自由格式消息
# 1. 发送文本类型消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | text (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
text | String | 是 | 内容 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d ' {
"content": {
"text": "this is text"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "text"
} '
2
3
4
5
6
7
8
9
10
11
12
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 2. 发送图片类型消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | image (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
media_url | String | 是 | 资源链接 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d ' {
"content": {
"media_url": "https://img.sobot.com/console/common/face/robot.png"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "image"
} '
2
3
4
5
6
7
8
9
10
11
12
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 3. 发送文件类型消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | document (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
media_url | String | 是 | 资源链接 |
file_name | String | 否 | 文件名称 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d ' {
"content": {
"media_url": "https://img.sobot.com/console/common/face/robot.png",
"file_name": "example.txt"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "document"
} '
2
3
4
5
6
7
8
9
10
11
12
13
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 4. 发送视频类型消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | video (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
media_url | String | 是 | 资源链接 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d ' {
"content": {
"media_url": "https://img.sobot.com/console/common/face/robot.png"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "video"
} '
2
3
4
5
6
7
8
9
10
11
12
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 5. 发送音频类型消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | audio(固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
media_url | String | 是 | 资源链接 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d ' {
"content": {
"media_url": "https://img.sobot.com/console/common/face/robot.png"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "audio"
} '
2
3
4
5
6
7
8
9
10
11
12
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 6. 发送贴图类型消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | sticker (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
media_url | String | 是 | 资源链接 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d ' {
"content": {
"media_url": "https://img.sobot.com/console/common/face/robot.png"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "sticker"
} '
2
3
4
5
6
7
8
9
10
11
12
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 7. 发送位置类型消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | location (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
latitude | String | 是 | 纬度 |
longitude | String | 是 | 经度 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d ' {
"content": {
"latitude": "LAT_NUMBER",
"longitude": "LONG_NUMBER"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "location"
} '
2
3
4
5
6
7
8
9
10
11
12
13
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 8. 发送联系人类型消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | contacts (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
contacts | List | 是 | 联系人 |
contacts参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
name | Object | 是 | 联系人姓名 |
phones | List | 否 | 联系电话号码 |
name参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
formatted_name | String | 是 | 显示的全名 |
first_name | String | 否 | 姓名 |
phones参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
phone | String | 否 | 电话号码 |
type | String | 否 | 可选CELL、MAIN、IPHONE、HOME和WORK |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d ' {
"content": {
"contacts": [{
"name": {
"formatted_name": "NAME",
"first_name": "NAME"
},
"phones": [{
"phone": "PHONE_NUMBER",
"type": "CELL"
}]
}]
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "contacts"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 9. 发送按钮类型消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | interactive (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
interactive | Object | 是 | 按钮内容 |
interactive参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
type | String | 是 | (button)类型 |
body | Object | 是 | 按钮内容 |
action | Object | 是 | 回复按钮 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"content": {
"interactive": {
"type": "button",
"body": {
"text": "BUTTON_TEXT"
},
"action": {
"buttons": [{
"type": "reply",
"reply": {
"id": "UNIQUE_BUTTON_ID_1",
"title": "BUTTON_TITLE_1"
}
},
{
"type": "reply",
"reply": {
"id": "UNIQUE_BUTTON_ID_2",
"title": "BUTTON_TITLE_2"
}
}
]
}
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "interactive"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 10. 发送列表类型消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | interactive (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
interactive | Object | 是 | 列表内容 |
interactive参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
type | String | 是 | 类型(list) |
header | Object | 否 | 页眉内容 |
body | Object | 是 | 正文内容 |
footer | Object | 否 | 页脚内容 |
action | Object | 是 | 列表内容 |
action参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
button | String | 是 | 按钮内容 |
sections | Array | 是 | 价格 |
sections参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
title | String | 是 | 标题 |
rows | Array | 是 | 选择内容 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"content": {
"interactive": {
"type": "list",
"header": {
"type": "text",
"text": "HEADER_TEXT"
},
"body": {
"text": "BODY_TEXT"
},
"footer": {
"text": "FOOTER_TEXT"
},
"action": {
"button": "BUTTON_TEXT",
"sections": [{
"title": "SECTION_1_TITLE",
"rows": [{
"id": "SECTION_1_ROW_1_ID",
"title": "SECTION_1_ROW_1_TITLE",
"description": "SECTION_1_ROW_1_DESCRIPTION"
},
{
"id": "SECTION_1_ROW_2_ID",
"title": "SECTION_1_ROW_2_TITLE",
"description": "SECTION_1_ROW_2_DESCRIPTION"
}
]
},
{
"title": "SECTION_2_TITLE",
"rows": [{
"id": "SECTION_2_ROW_1_ID",
"title": "SECTION_2_ROW_1_TITLE",
"description": "SECTION_2_ROW_1_DESCRIPTION"
},
{
"id": "SECTION_2_ROW_2_ID",
"title": "SECTION_2_ROW_2_TITLE",
"description": "SECTION_2_ROW_2_DESCRIPTION"
}
]
}
]
}
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "interactive"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 11. 发送FLOW类型消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | interactive (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
interactive | Object | 是 | 列表内容 |
interactive参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
type | String | 是 | flow |
header | Object | 否 | 页眉内容 |
body | Object | 是 | 正文内容 |
footer | Object | 否 | 页脚内容 |
action | Object | 是 | 列表内容 |
header参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
type | String | 是 | text |
text | String | 是 | 文本内容 |
body参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
text | String | 是 | 文本内容 |
footer参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
text | String | 是 | 文本内容 |
action参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
name | String | 是 | flow |
parameters | Object | 是 | 参数 |
parameters参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
flow_message_version | String | 是 | 固定是3 |
flow_token | String | 是 | 选择内容 |
flow_id | String | 是 | WhatsApp 提供的流程的唯一 ID |
flow_cta | String | 是 | CTA 按钮上的文本。例如:“注册” |
flow_action | String | 是 | navigate或者data_exchange。(默认值:navigate) |
flow_action_payload | Object | 否 | 仅当 flow_action 为 navigate 时,此对象为必要项 |
flow_action_payload参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
screen | String | 是 | 流程的第一个画面的 id |
data | String | 否 | 流程第一个画面的输入数据。必须为非空白对象 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"content": {
"interactive": {
"type": "flow",
"header": {
"type": "text",
"text": "HEADER_TEXT"
},
"body": {
"text": "BODY_TEXT"
},
"footer": {
"text": "FOOTER_TEXT"
},
"action": {
"name": "flow",
"parameters": {
"flow_message_version": "3",
"flow_token": "AQAAAAACS5FpgQ_cAAAAAD0QI3s.",
"flow_id": "1",
"flow_cta": "Book!",
"flow_action": "navigate",
"flow_action_payload": {
"screen": "<SCREEN_NAME>",
"data": {
"product_name": "name",
"product_description": "description",
"product_price": 100
}
}
}
}
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "interactive"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
返回示例:
{
"item": {
"contacts": [{
"Input": "+447385911146",
"wa_id": "447385911146"
}],
"messages": [{
"id": "gHTRETHRTHTRTH-av4Y"
}],
"meta": {
"api_status": "stable",
"version": "2.44.0.27"
}
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 12. 发送回复消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
from | String | 是 | 发送方 |
to | String | 是 | 接收方 |
type | String | 是 | replyText (固定值) |
content | Object | 是 | 消息内容 |
content参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
text | String | 是 | 回复内容 |
replyText | String | 是 | 需要回复的消息Id |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/forword
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"content": {
"text": "this is replyText",
"replyText": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "replyText"
}'
2
3
4
5
6
7
8
9
10
11
12
13
返回示例:
{
"item": {
"messaging_product": "whatsapp",
"messages": [{
"id": "wamid.HBgNODYxODIxMDMzNTIzNBUCABEYEkQ4RTJGRUI0QTA3MDFEMDY4RAA="
}],
"contacts": [{
"input": "11111111",
"wa_id": "11111111"
}]
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 接收用户消息
请求地址:
webhook通知消息返回示例, 在智齿管理中心后台配置
# ● 文本类型消息
返回示例:
{
"content": {
"text": "this is text"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "text",
"name": "NAME"
}
2
3
4
5
6
7
8
9
# ● 图片类型消息
返回示例:
{
"content": {
"mediaUrl": "https://img.sobot.com/console/common/face/robot.png"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "image",
"name": "NAME"
}
2
3
4
5
6
7
8
9
# ● 文件类型消息
返回示例:
{
"content": {
"mediaUrl": "https://img.sobot.com/console/common/face/robot.png",
"filename": "example.txt"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "document",
"name": "NAME"
}
2
3
4
5
6
7
8
9
10
# ● 视频类型消息
返回示例:
{
"content": {
"mediaUrl": "https://img.sobot.com/console/common/face/robot.png"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "video",
"name": "NAME"
}
2
3
4
5
6
7
8
9
# ● 音频类型消息
返回示例:
{
"content": {
"mediaUrl": "https://img.sobot.com/console/common/face/robot.png"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "audio",
"name": "NAME"
}
2
3
4
5
6
7
8
9
# ● 贴图类型消息
返回示例:
{
"content": {
"mediaUrl": "https://img.sobot.com/console/common/face/robot.png"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "sticker",
"name": "NAME"
}
2
3
4
5
6
7
8
9
# ● 位置类型消息
返回示例:
{
"content": {
"latitude": "LAT_NUMBER",
"longitude": "LONG_NUMBER"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "location",
"name": "NAME"
}
2
3
4
5
6
7
8
9
10
# ● 联系人类型消息
返回示例:
{
"content": {
"contacts": [
{
"name": {
"formatted_name": "NAME",
"first_name": "NAME"
},
"phones": [
{
"phone": "PHONE_NUMBER",
"wa_id": "8618888888888",
"type": "CELL"
}
]
}
]
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "contacts",
"name": "NAME"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# ● 按钮类型消息
返回示例:
{
"content": {
"button": {
"payload": "No-Button-Payload",
"text": "No",
"messageid": "123456789qazwsxedcrfvhbhsfdgsfgsb"
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "button",
"name": "NAME"
}
2
3
4
5
6
7
8
9
10
11
12
13
# ● 订单类型消息
返回示例:
{
"content": {
"order": {
"catalog_id": "the-catalog_id",
"text": "text-message-sent-along-with-the-order",
"product_items": [
{
"quantity": "number-of-item",
"product_retailer_id": "the-product-SKU-identifier",
"item_price": "unitary-price-of-item",
"currency": "price-currency"
}
]
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "order",
"name": "NAME"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# ● 互动类型消息
返回示例:
{
"content": {
"interactive": {
"type": "button_reply",
"button_reply": {
"id": "unique-button-identifier-here",
"title": "button-text"
}
}
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "interactive",
"name": "NAME"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# ● 包含广告的消息
返回示例:
{
"content": {
"referral": {
"media_type": "image or video",
"video_url": "RAW_VIDEO_URL",
"image_url": "https://img.sobot.com/console/common/face/robot.png",
"source_type": "ad or post",
"source_id": "ADID",
"body": "AD_DESCRIPTION",
"headline": "AD_TITLE",
"source_url": "AD_OR POST_FB URL",
"thumbnail url": "RAW_THUMBNAIL URL"
},
"text": "body"
},
"from": "FROM_PHONE_NUMBER_ID",
"to": "PHONE_NUMBER",
"type": "text",
"name": "NAME"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# ● Flow 回调消息
返回示例:
{
"content": {
"interactive": {
"nfm_reply": {
"name": "flow",
"response_json": "{\"flow_token\":\"unused\",\"screen_0_firstName_0\":\"王\",\"screen_1_TextInput_1\":\"123\",\"screen_1_TextInput_0\":\"11\",\"screen_0_lastName_1\":\"TESTNAME\"}",
"body": "Sent"
},
"type": "nfm_reply"
}
},
"from": "8618210323232",
"name": "TESTNAME",
"to": "110243462020762",
"type": "interactive"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# ● Welcome Message 回调消息
返回示例:
{
"content": {
"contacts": [{
"profile": {
"name": "666"
},
"wa_id": "8618518444333"
}]
},
"from": "8618210323232",
"name": "TESTNAME",
"to": "110243462020762",
"type": "request_welcome"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 消息模板管理
# ● 获取消息模板
接口说明:检索当前wabaId下所有的模板
请求方式:
GET
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/templateList
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
wabaid | String | 是 | WhatsApp商业账户唯一标识 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/templateList?wabaid=12345
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
2
返回示例:
{
"item": {
"data": [
{
"components": [
{
"format": "DOCUMENT",
"type": "HEADER",
"example": {
"header_handle": [
"https://scontent.whatsapp.net/v/t61.29466-34/224083690_601486205046207_3953929358019518287_n.pdf?ccb=1-7&_nc_sid=57045b&_nc_ohc=ANcodTypUrsAX_c3ME8&_nc_ht=scontent.whatsapp.net&edm=AH51TzQEAAAA&oh=01_AdRen_9v352EcZ7FFjoA6bVf0fUODwqoIfRjDa1PE0Uicw&oe=63931F4C"
]
}
},
{
"text": "This is {{1}} content, and also have {{2}} params.",
"type": "BODY",
"example": {
"body_text": [
[
"rick",
"2"
]
]
}
},
{
"text": "这里是页脚",
"type": "FOOTER"
},
{
"buttons": [
{
"phone_number": "+86184xxxx7413",
"text": "call me",
"type": "PHONE_NUMBER"
},
{
"text": "访问聊天页面",
"type": "URL",
"url": "https//xxx.html?name=text&partnerid={{1}}",
"example": [
"https//xxx.html?name=text&partnerid=1234"
]
}
],
"type": "BUTTONS"
}
],
"name": "templates_test",
"language": "zh_CN",
"id": "601486201712874",
"category": "TRANSACTIONAL",
"status": "APPROVED"
}
],
"namespace": "9eb0ceda_9fc9_42ad_ad5a_5dd9d905a15a"
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | 是 | 返回编码 |
ret_msg | String | 是 | 返回信息 |
item | Object | 否 | 返回对象 |
item 对象:
参数 | 类型 | 描述 |
---|---|---|
namespace | String | 模板命名空间 |
id | String | 模板编码 |
name | String | 模板名称 |
language | String | 模板语言 |
status | String | 模板状态 |
category | String | 模板类别 |
components | List | 模板内容 |
# ● 创建消息模板
接口说明:创建消息模板
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/createTemplateInfo
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
wabaid | String | 是 | WhatsApp商业账户唯一标识 |
name | String | 是 | 模板名称 |
category | String | 是 | 模板类别(选项:UTILITY, MARKETING, AUTHENTICATION) |
language | String | 是 | 模板语言编码 |
components | List | 是 | 模板内容 |
更多模板参数信息,您可以在这里查看 WhatsApp Business API (opens new window)
模板支持的语言,您可以在这里查询 支持的语言-WhatsApp Business API (opens new window)
1.请求示例: 1.创建 MARKETING 的消息模板请求示例
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/createTemplateInfo
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"name": "seasonal_promotion",
"language": "en_US",
"wabaid": "123456789",
"category": "MARKETING",
"components": [{
"type": "HEADER",
"format": "TEXT",
"text": "Our {{1}} is on!",
"example": {
"header_text": [
"Summer Sale"
]
}
},
{
"type": "BODY",
"text": "Shop now through {{1}} and use code {{2}} to get {{3}} off of all merchandise.",
"example": {
"body_text": [
[
"the end of August", "25OFF", "25%"
]
]
}
},
{
"type": "FOOTER",
"text": "Use the buttons below to manage your marketing subscriptions"
},
{
"type": "BUTTONS",
"buttons": [{
"type": "QUICK_REPLY",
"text": "Unsubscribe from Promos"
},
{
"type": "QUICK_REPLY",
"text": "Unsubscribe from All"
}
]
}
]
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
2.创建带Flow的消息模板请求示例
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/createTemplateInfo
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '
{
"wabaid": "123456789",
"name": "template_name",
"language": "LANGUAGE_AND_LOCALE_CODE",
"category": "MARKETING",
"components": [
{
"type": "body",
"text": "This is a flows as template demo"
},
{
"type": "BUTTONS",
"buttons": [
{
"type": "FLOW",
"text": "Open flow!",
"flow_id": "<flow-id>",
"navigate_screen": "Flows Json screen name",
"flow_action": "navigate"
}
]
}
]
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
3.创建 AUTHENTICATION 的消息模板请求示例
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/createTemplateInfo
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '
{
"category": "AUTHENTICATION",
"message_send_ttl_seconds": 360,
"components": [{
"example": {
"body_text": [
[
"123456"
]
]
},
"add_security_recommendation": true,
"type": "BODY"
},
{
"code_expiration_minutes": 5,
"type": "FOOTER"
},
{
"type": "BUTTONS",
"buttons": [{
"type": "otp",
"otp_type": "copy_code"
}]
}
],
"language": "en_US",
"name": "template_name",
"wabaid": "123456778"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
4.带页眉的消息模板创建
4.1 文件和按钮
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/createTemplateInfo
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"name": "document_demo001",
"language": "en_US",
"wabaid": "1234567890",
"category": "MARKETING",
"components": [{
"type": "HEADER",
"format": "document",
"example": {
"header_handle": [
"4::XXX:YYYY-AAAA:e:11:22:33:OOOO"
]
}
},
{
"type": "BODY",
"text": "Nice to meet you{{1}}! My number is {{2}}. ",
"example": {
"body_text": [
[
"Pablo", "86123456789"
]
]
}
},
{
"type": "BUTTONS",
"buttons": [{
"type": "PHONE_NUMBER",
"text": "Call",
"phone_number": "86123456789"
},
{
"type": "URL",
"text": "Contact Support",
"url": "https://xxx.com"
}
]
}
]
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
4.2 视频和按钮
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/createTemplateInfo
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"name": "video_demo001",
"language": "en_US",
"wabaid": "1234567890",
"category": "MARKETING",
"components": [{
"type": "HEADER",
"format": "VIDEO",
"example": {
"header_handle": [
"4::XXX:YYYY-AAAA:e:11:22:33:OOOO"
]
}
},
{
"type": "BODY",
"text": "Nice to meet you{{1}}! My number is {{2}}. ",
"example": {
"body_text": [
[
"Pablo", "86123456789"
]
]
}
},
{
"type": "BUTTONS",
"buttons": [{
"type": "PHONE_NUMBER",
"text": "Call",
"phone_number": "86123456789"
},
{
"type": "URL",
"text": "Contact Support",
"url": "https://xxx.com"
}
]
}
]
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
4.3 图片和按钮
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/createTemplateInfo
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"name": "image_demo001",
"language": "en_US",
"wabaid": "1234567890",
"category": "MARKETING",
"components": [{
"type": "HEADER",
"format": "IMAGE",
"example": {
"header_handle": [
"4::XXX:YYYY-AAAA:e:11:22:33:OOOO"
]
}
},
{
"type": "BODY",
"text": "Nice to meet you{{1}}! Your order number is {{2}}. it is great.",
"example": {
"body_text": [
[
"Pablo", "1234567890"
]
]
}
},
{
"type": "BUTTONS",
"buttons": [{
"type": "PHONE_NUMBER",
"text": "Call",
"phone_number": "86123456789"
},
{
"type": "URL",
"text": "Contact Support",
"url": "https://xxx.com"
}
]
}
]
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
返回示例:
{
"item": {
"id": "43182111222804988"
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
# ● 删除消息模板
接口说明:如果此名称的消息模板有多种语言版本,则所有语言的版本均会被删除。
请求方式:
GET
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/deleteTemplate
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
wabaid | String | 是 | WhatsApp商业账户唯一标识 |
template_name | String | 是 | 模板名称 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/deleteTemplate?wabaid=12345&template_name=test
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
2
返回示例:
{
"item": {
"success": true
},
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | 是 | 返回编码 |
ret_msg | String | 是 | 返回信息 |
item | Object | 否 | 返回对象 |
item 对象:
参数 | 类型 | 描述 |
---|---|---|
success | boolean | true 代表删除成功 |
# Webhook状态通知
请求地址:
webhook通知消息返回示例, 在智齿管理中心后台配置
# ● 消息发送状态通知
状态属性 | 状态含义 |
---|---|
sent | 已发送 |
delivered | 已送达 |
read | 已阅读 |
failed | 发送失败 |
返回示例:
{
"errorCode": "",
"errorTitle": "",
"from": "FROM_PHONE_NUMBER_ID",
"messageId": "wamid.HBgNNTIxNjE0MjEwNjE1MhUCABEYEjhDQzc2RjNENjIwMjVGODA3RQA=",
"status": "sent",
"timestamp": "1667453467",
"to": "PHONE_NUMBER",
"type": "status"
}
2
3
4
5
6
7
8
9
10
# ● 模板消息状态通知
# 1. 审核状态变更
返回示例:
{
"entry": [{
"id": "100564172792081",
"time": 1689846344,
"changes": [{
"field": "message_template_status_update",
"value": {
"event": "APPROVED",
"message_template_id": 12345678,
"message_template_name": "my_message_template",
"message_template_language": "pt-BR",
"reason": "NONE"
}
}]
}],
"object": "whatsapp_business_account"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 2. 质量变更
返回示例:
{
"entry": [{
"id": "100564172792081",
"time": 1689847615,
"changes": [{
"field": "message_template_quality_update",
"value": {
"previous_quality_score": "GREEN",
"new_quality_score": "YELLOW",
"message_template_id": 12345678,
"message_template_name": "my_message_template",
"message_template_language": "pt-BR"
}
}]
}],
"object": "whatsapp_business_account"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# ● 帐号状态
# 1. 帐号质量更新
返回示例:
{
"entry": [{
"id": "1111111111111",
"time": 1689927355,
"changes": [{
"field": "phone_number_quality_update",
"value": {
"display_phone_number": "1234567890",
"event": "FLAGGED",
"current_limit": "TIER_10K"
}
}]
}],
"object": "whatsapp_business_account"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 2. 帐号状态更新
返回示例:
{
"entry": [{
"id": "1111111111",
"time": 1690179982,
"changes": [{
"field": "account_update",
"value": {
"phone_number": "111111111",
"event": "VERIFIED_ACCOUNT"
}
}]
}],
"object": "whatsapp_business_account"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
# 上传媒体附件-用于创建消息模版
接口说明:上传媒体附件-用于创建消息模版
请求方式:
GET
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/get_handle_id
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
importUrl | String | 是 | 媒体链接 |
返回参数:
参数 | 类型 | 描述 |
---|---|---|
ret_code | String | 返回编码 |
ret_msg | String | 返回信息 |
item | String | header_handle |
请求示例:
curl -H 'token: 4ac37cb2e9c740dba4b75a34d5358802' https://sg.sobot.com/chat-whatsapp/api/whatsapp/get_handle_id?importUrl=https://xxxxx.com/image/20230323165317730.jpg
返回示例:
{
"page_no": null,
"page_count": null,
"total_count": null,
"page_size": null,
"items": null,
"item": "4::2==:1-1:e:1730433757:1134351617166827:2:3",
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
# 上传媒体附件-用发送媒体消息
接口说明:上传媒体附件-用发送媒体消息
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/media_upload
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
phone_numberid | String | 是 | |
url | String | 是 | 媒体附件路径 |
返回参数:
参数 | 类型 | 描述 |
---|---|---|
ret_code | String | 是 |
ret_msg | String | 是 |
item | Object | 否 |
item 对象:
参数 | 类型 | 描述 |
---|---|---|
id | String | 是 |
请求示例:
curl -H 'token: 4ac37cb2e9c740dba4b75a34d5358802' https://sg.sobot.com/chat-whatsapp/api/whatsapp/media_upload?phone_numberid=1102434620&url=https://sg.sobot.io/console/c72d7e67c0f64d38879/kb/file/d736d26d756e420eac7ef8a6fe4d934f.mp4
返回示例:
{
"item": {
"id": "1011461420318338"
},
"ret_code": "000000",
"ret_msg": "成功"
}
2
3
4
5
6
7
# 查询群发任务数据
接口说明:查询群发任务数据
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/api_query_task_list
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
task_start_time | String | 否 | 任务开始时间(形如:2024-04-29 18:18:18) |
task_end_time | String | 否 | 任务结束时间(形如:2024-04-29 18:18:18) |
sender | String | 否 | sender |
template_name | String | 否 | 模板名称 |
template_category | String | 否 | 模板类别 (见:template_category参数) |
template_language | String | 否 | 模板语言 (见:template_language参数) |
templateid | String | 否 | 模板id |
task_status | Integer | 否 | (1.未开始 2.进行中 3.已结束) |
task_name | String | 否 | 任务名称 |
page_no | Integer | 是 | 开始页 (默认1) |
page_size | Integer | 是 | 查询条数(默认15,最大100) |
返回参数:
参数 | 类型 | 描述 |
---|---|---|
task_name | String | 任务名称 |
task_status | Integer | 任务状态 |
task_source | Integer | 任务来源(1.whatsapp 2.crm) |
taskid | Integer | 任务ID |
time_zone | String | 时区 |
template_category | String | 模板类别 |
template_language | String | 模板语言 |
template_name | String | 模板名称 |
templateid | String | 模板ID |
task_start_time | String | 任务开始时间 |
task_end_time | String | 任务结束时间 |
send_time_type | Integer | 1.立即发送 2定时发送 |
estimate_send_num | Long | 预计发送数 |
send_success_num | Long | 发送成功数 |
send_error_num | Long | 发送失败数 |
already_send_num | Long | 已送达数 |
already_read_num | Long | 已阅读数 |
click_button_num | Long | 点击按钮数 |
reply_data_num | Long | 已回复数 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/api_query_task_list
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-H 'language: zh'
-d '{
"page_no": 1,
"page_size": 15,
"task_start_time": "2024-03-29 00:00:00",
"task_end_time": "2024-04-29 00:00:00",
"sender": "123456",
"template_category": "AUTHENTICATION",
"template_language": "en_US",
"templateid": "1234567890",
"task_status": 3,
"task_name": "测试"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
返回示例:
{
"items": [
{
"task_name": "1233",
"estimate_send_num": 1,
"task_status": 3,
"task_source": 1,
"taskid": 1759,
"reply_data_num": 0,
"time_zone": "GMT+08:00",
"task_start_time": "2024-04-28 13:32:30",
"click_button_num": 0,
"send_error_num": 1,
"template_category": "MARKETING",
"template_name": "sample_purchase_feedback",
"task_end_time": "2024-04-28 13:33:00",
"send_success_num": 0,
"templateid": "1136323480647385",
"already_send_num": 0,
"send_time_type": 1,
"template_language": "en_US",
"already_read_num": 0
},
{
"task_name": "123321",
"estimate_send_num": 5,
"task_status": 3,
"task_source": 1,
"taskid": 1740,
"reply_data_num": 0,
"time_zone": "GMT+08:00",
"task_start_time": "2024-04-18 11:59:54",
"click_button_num": 0,
"send_error_num": 5,
"template_category": "UTILITY",
"template_name": "lgtest0804",
"task_end_time": "2024-04-18 12:00:00",
"send_success_num": 0,
"templateid": "986766405895201",
"already_send_num": 0,
"send_time_type": 1,
"template_language": "zh_CN",
"already_read_num": 0
}
],
"page_count": 14,
"page_no": 1,
"page_size": 2,
"ret_code": "000000",
"ret_msg": "操作成功",
"total_count": 28
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# 查询发送记录
接口说明:查询发送记录数据
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/send_record_list
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
send_start_time | Long | 否 | 发送开始时间(形如:1714295033250)[默认查询最近一个月] |
send_end_time | Long | 否 | 发送结束时间(形如:1714295033250)[默认查询最近一个月] |
messageid | String | 否 | 消息id |
message_status | String | 否 | 消息状态(见:message_status参数) |
taskid | Integer | 否 | 任务id |
task_name | String | 否 | 任务名称 |
send_agentid | String | 否 | 发送人 |
sender | String | 否 | sender |
template_name | Integer | 否 | 模板名称 |
template_language | String | 否 | 模板语言(见:template_language参数) |
recipient_tel | String | 否 | 接收人号码 |
page_no | Integer | 是 | 开始页 (默认1) |
page_size | Integer | 是 | 查询条数(默认15,最大100) |
返回参数:
参数 | 类型 | 描述 |
---|---|---|
task_name | String | 任务名称 |
error_code | String | 错误日志 |
timezone | String | 时区 |
regionid | String | 地区ID |
messageid | String | 消息ID |
taskid | String | 任务ID |
recipient_tel | String | 接收人号码 |
send_agentid | String | 发送人 |
template_category | String | 模板类别 |
message_status | String | 消息状态 |
template_name | String | 模板名称 |
send_time | Long | 发送时间 |
partnerid | String | 对接ID |
sender | String | sender |
templateid | String | 模板ID |
region | String | 地区 |
businessid | String | 业务ID |
status_update_time | Long | 状态更新时间 |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/send_record_list
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-H 'language: zh'
-d '{
"page_no": 1,
"page_size": 15,
"send_start_time": "1714295033250",
"send_end_time": "1714295033250",
"sender": "123456",
"messageid": "wamid.HBgNODYxO1234AFFEFEWEFEWTUyMDM12345A=",
"template_language": "en_US",
"template_name": "测试",
"task_status": 3,
"send_agentid":"4ac37cb2e9c740dba4b75a34d5358802",
"recipient_tel":"12345678,
"message_status":"2",
"taskid": 15,
"task_name": "测试"
}'
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
返回示例:
{
"items": [
{
"task_name": "test变量等_copy_copy_copy",
"error_code": "100",
"timezone": "GMT+08:00",
"region": "OTHER",
"taskid": 1732,
"recipient_tel": "11",
"send_agentid": "56a9063a0e8f4ef0aa21edcb7a692da2",
"template_category": "MARKETING",
"message_status": "9",
"template_name": "sample_issue_resolution",
"send_time": 1713247680329,
"partnerid": "MTFfMTA0M1fda1NzUyNTUx",
"sender": "8618435117413",
"templateid": "1073729713514860",
"businessid": "",
"status_update_time": 1713247680329
},
{
"task_name": "test变量等_copy_copy_copy",
"error_code": "000000",
"timezone": "GMT+08:00",
"region": "CN",
"messageid": "wamid.HBgNODYxadfasdfasfasf1fdsfdsaCNDM4NEU4RkNFRQA=",
"taskid": 1732,
"recipient_tel": "8615369303026",
"send_agentid": "56a9063a0e8f4ef0aa21edcb7a692da2",
"template_category": "MARKETING",
"message_status": "0",
"template_name": "sample_issue_resolution",
"send_time": 1713247680634,
"partnerid": "ODYxNTM2fasdfAzMjU3NTI1NTE=",
"sender": "8618435117413",
"templateid": "1073729713514860",
"businessid": "123",
"status_update_time": 1713247683305
}
],
"page_no": 1,
"page_size": 15,
"ret_code": "000000",
"ret_msg": "操作成功",
"total_count": 2
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# webhook回调异常查询
接口说明:webhook回调异常查询
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-set/api/webhook/response_list
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
product_type | String | 否 | 产品类型(WhatsApp、Facebook、Line) |
sender | String | 否 | Sender |
http_code | int | 否 | http响应code |
push_start_time | Long | 否 | 推送开始时间[默认查询最近7天] |
push_end_time | Long | 否 | 推送结束时间[默认查询最近7天] |
response_start_time | Long | 否 | 响应开始时间[默认查询最近7天] |
response_end_time | Long | 否 | 响应结束时间[默认查询最近7天] |
page_no | Integer | 否 | 开始页 (默认1) |
page_size | Integer | 否 | 查询条数(默认15) |
返回参数:
参数 | 类型 | 描述 |
---|---|---|
ret_code | String | 返回编码 |
ret_msg | String | 返回信息 |
items | List | 返回对象 |
page_count | Integer | 总页数 |
page_no | Integer | 开始页 |
page_size | Integer | 条数 |
total_count | Integer | 总条数 |
items 对象:
参数 | 类型 | 描述 |
---|---|---|
configid | String | 数据Id |
product_type | String | 产品类型 |
sender | String | Sender |
webhook_url | String | Webhook地址 |
push_content | String | 推送的消息内容 |
http_code | String | http响应code |
push_time | String | 消息推送时间 |
response_time | String | http响应时间 |
请求示例:
curl https://sg.sobot.com/chat-set/api/webhook/response_list
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"http_code": 302,
"sender": "111111",
"product_type": "WhatsApp"
}'
2
3
4
5
6
7
8
9
返回示例:
{
"items": [
{
"configid": "3d448933e2e34e32a150aaeba73bc466",
"http_code": 302,
"product_type": "WhatsApp",
"push_content": "{\"entry\":[{\"changes\":[{\"field\":\"account_update\",\"value\":{\"phone_number\":\"111\",\"event\":\"VERIFIED_ACCOUNT\"}}],\"id\":\"111111\",\"time\":1690179982}],\"type\":\"account_update\",\"object\":\"whatsapp_business_account\"}",
"push_time": 1729759869957,
"response_time": 1729759869989,
"sender": "111111111",
"webhook_url": "https://www.baidu.com"
}
],
"page_count": 1,
"page_no": 1,
"page_size": 15,
"ret_code": "000000",
"ret_msg": "操作成功",
"total_count": 5
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# webhook回调异常补推
接口说明:webhook回调异常补推
请求方式:
POST
请求地址:
https://sg.sobot.com/chat-set/api/webhook/again_push_response
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
product_type | String | 否 | 产品类型(WhatsApp、Facebook、Line) |
sender | String | 否 | Sender |
webhook_url | String | 否 | webhook地址 |
http_code | int | 否 | http响应code |
push_start_time | Long | 否 | 推送开始时间[默认查询最近7天] |
push_end_time | Long | 否 | 推送结束时间[默认查询最近7天] |
response_start_time | Long | 否 | 响应开始时间[默认查询最近7天] |
response_end_time | Long | 否 | 响应结束时间[默认查询最近7天] |
page_no | Integer | 否 | 开始页 (默认1) |
page_size | Integer | 否 | 查询条数(默认15,最大500) |
返回参数:
参数 | 类型 | 描述 |
---|---|---|
ret_code | String | 返回编码 |
ret_msg | String | 返回信息 |
items | List | 返回对象 |
page_count | Integer | 总页数 |
page_no | Integer | 开始页 |
page_size | Integer | 条数 |
total_count | Integer | 总条数 |
success_count | Integer | 推送成功数 |
error_count | Integer | 推送失败数 |
items 对象:
参数 | 类型 | 描述 |
---|---|---|
configid | String | 数据Id |
product_type | String | 产品类型 |
sender | String | Sender |
webhook_url | String | Webhook地址 |
push_content | String | 推送的消息内容 |
http_code | String | http响应code |
push_time | String | 消息推送时间 |
response_time | String | http响应时间 |
请求示例:
curl https://sg.sobot.com/chat-set/api/webhook/again_push_response
-X POST
-H 'content-type:application/json'
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
-d '{
"http_code": 302,
"sender": "1111111",
"product_type": "WhatsApp"
}'
2
3
4
5
6
7
8
9
返回示例:
{
"total_count": 5,
"success_count": 2,
"error_count": 3,
"page_no": 1,
"page_size": 15,
"ret_msg": "操作成功",
"ret_code": "000000",
"items": [
{
"configid": "c5c2c7a4ef4044f997fc3c746864b8a8",
"http_code": 302,
"product_type": "WhatsApp",
"push_content": "{\"entry\":[{\"changes\":[{\"field\":\"account_update\",\"value\":{\"phone_number\":\"1111\",\"event\":\"VERIFIED_ACCOUNT\"}}],\"id\":\"1111\",\"time\":1690179982}],\"type\":\"account_update\",\"object\":\"whatsapp_business_account\"}",
"push_time": 1729759090657,
"response_time": 1729759090689,
"sender": "1111",
"webhook_url": "https://www.baidu.com"
},
{
"configid": "960aab0efe7e4272aa4036c02a5eeed8",
"http_code": 302,
"product_type": "WhatsApp",
"push_content": "{\"entry\":[{\"changes\":[{\"field\":\"account_update\",\"value\":{\"phone_number\":\"1111\",\"event\":\"VERIFIED_ACCOUNT\"}}],\"id\":\"111\",\"time\":1690179982}],\"type\":\"account_update\",\"object\":\"whatsapp_business_account\"}",
"push_time": 1729752894690,
"response_time": 1729752894723,
"sender": "11111",
"webhook_url": "https://www.baidu.com"
}
]
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# 账单费用
# ● 获取账单费用详情
请求方式:
GET
请求地址:
https://sg.sobot.com/chat-whatsapp/api/whatsapp/billDetailList
请求参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
month | String | 是 | 查询月份 (yyyy-MM) |
query_type | String | 是 | 查询对话类型 (user:代表用户,business:代表企业) |
sender | String | 否 | sender号码 |
language | String | 否 | 语言类型(zh:中文,en:英文) |
请求示例:
curl https://sg.sobot.com/chat-whatsapp/api/whatsapp/billDetailList?month=2022-10&query_type=user
-H 'token: 4ac37cb2e9c740dba4b75a34d5358802'
2
返回示例:
{
"items": [
{
"area_code": "971",
"total_price": 0.1440,
"country_code": "AE",
"country_name": "United Arab Emirates",
"conversation": 6
},
{
"area_code": "880",
"total_price": 0.0274,
"country_code": "BD",
"country_name": "Bangladesh",
"conversation": 1
}
],
"ret_code": "000000",
"ret_msg": "操作成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
返回参数:
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
ret_code | String | 是 | 返回编码 |
ret_msg | String | 是 | 返回信息 |
items | Object | 否 | 返回对象 |
items 对象:
参数 | 类型 | 描述 |
---|---|---|
area_code | String | 地区代码 |
total_price | double | 计费金额(美元) |
country_code | String | 地区编码 |
country_name | String | 地区名称 |
conversation | int | 对话数量 |
# 枚举值
# ● template_category
参数 | 描述 |
---|---|
MARKETING | 市场营销 |
UTILITY | 交易相关 |
AUTHENTICATION | 身份验证 |
# ● template_language
参数 | 描述 |
---|---|
de | 德语 |
hi | 印地语 |
lo | 老挝语 |
fil | 菲律宾语 |
lt | 立陶宛语 |
hr | 克罗地亚语 |
lv | 拉脱维亚语 |
pt_BR | 葡萄牙语(巴西) |
hu | 匈牙利语 |
uk | 乌克兰语 |
es_MX | 西班牙语(墨西哥) |
id | 印尼语 |
es_ES | 西班牙语(西班牙) |
ur | 乌尔都语 |
mk | 马其顿语 |
ml | 马拉雅拉姆语 |
af | 南非荷兰语 |
mr | 马拉地语 |
uz | 乌兹别克语 |
ms | 马来语 |
es_AR | 西班牙语(阿根廷) |
el | 希腊语 |
en | 英语 |
it | 意大利语 |
es | 西班牙语 |
et | 爱沙尼亚语 |
ar | 阿拉伯语 |
vi | 越南语 |
nb | 挪威语 |
en_US | 英语(美国) |
ja | 日语 |
az | 阿塞拜疆语 |
fa | 波斯语 |
zu | 祖鲁语 |
ro | 罗马尼亚语 |
nl | 荷兰语 |
fi | 芬兰语 |
ru | 俄语 |
bg | 保加利亚语 |
bn | 孟加拉语 |
fr | 法语 |
zh_HK | 中国(香港) |
zh_TW | 中国(台湾) |
sk | 斯洛伐克语 |
sl | 斯洛文尼亚语 |
ga | 爱尔兰语 |
sq | 阿尔巴尼亚语 |
ca | 加泰罗尼亚语 |
sr | 塞尔维亚语 |
kk | 哈萨克语 |
kn | 卡纳达语 |
sv | 瑞典语 |
ko | 韩语 |
sw | 斯瓦希里语 |
ta | 泰米尔语 |
gu | 古吉拉特语 |
cs | 捷克语 |
pa | 旁遮普语 |
te | 泰卢固语 |
en_GB | 英语(英国) |
th | 泰语 |
ha | 豪萨语 |
zh_CN | 中国大陆 |
pl | 波兰语 |
da | 丹麦语 |
he | 希伯来语 |
tr | 土耳其语 |
pt_PT | 葡萄牙语(葡萄牙) |
# ● message_status
参数 | 描述 |
---|---|
0 | 已发送 |
1 | 已送达 |
2 | 已阅读 |
9 | 发送失败 |
# ● error_code
参数 | 描述 |
---|---|
1 | 请求无效或服务器错误 |
2 | 服务异常 |
4 | API 调用过多 |
33 | 参数无效 |
100 | 参数无效 |
131000 | 未知错误 |
131005 | WhatsApp权限不足 |
131008 | 必要参数缺失 |
131009 | 参数值无效 |
131016 | 服务不可用 |
131021 | 收信人不能是发信人 |
131026 | 收信人号码不存在/用户未接受隐私政策/用户WhatsApp版本较低 |
131042 | 商业帐号支付账户问题 |
131045 | 电话号码注册错误 |
131047 | 会话超过24小时窗口期 |
131051 | 消息类型不受支持 |
131052 | 媒体下载出错 |
131053 | 媒体上传出错 |
132000 | 传参变量与模板变量不一致 |
132001 | 模板不存在 |
132002 | 模板填充文字过长 |
132007 | 违反模板格式字符政策 |
132012 | 模板参数格式不一致 |
132015 | 模板参数无效 |
133000 | 注销未完成 |
133004 | 服务器暂时不可用 |
135000 | 一般用户错误 |
132005 | 模板填充文字过长 |
131056 | 同一用户发送次数过多 |
130429 | 达到发送次数限制 |
131048 | 达到垃圾信息发送次数限制 |
80007 | 发送次数限制问题 |
368 | 因违反政策被暂时禁用 |
131031 | 帐号已锁定 |
130472 | 用户编号涉及实验 |
133010 | 电话号码未注册 |
000000 | -- |
999996 | WhatsApp号码不存在 |
999997 | WhatsApp 套餐余额不足 |
999998 | 未知错误-网络超时 |
999999 | WhatsApp 号码为空 |
# ● region
参数 | 描述 |
---|---|
ARG | 阿根廷 |
BR | 巴西 |
CL | 智利 |
CO | 哥伦比亚 |
EG | 埃及 |
FR | 法国 |
DE | 德国 |
IN | 印度 |
ID | 印度尼西亚 |
IL | 以色列 |
IT | 意大利 |
MY | 马来西亚 |
MX | 墨西哥 |
NL | 荷兰 |
NG | 尼日利亚 |
PK | 巴基斯坦 |
PE | 秘鲁 |
RU | 俄罗斯联邦 |
SA | 沙特阿拉伯 |
ZA | 南非 |
ES | 西班牙 |
TR | 土耳其 |
AE | 阿拉伯联合酋长国 |
GB | 大不列颠联合王国 |
CA | 加拿大 |
US | 美国 |
DZ | 阿尔及利亚 |
AO | 安哥拉 |
BJ | 贝宁 |
BW | 博茨瓦纳 |
BF | 布基纳法索 |
BI | 布隆迪 |
CM | 喀麦隆 |
TD | 乍得 |
CD | 刚果 |
ER | 厄立特里亚 |
ET | 埃塞俄比亚 |
GA | 加蓬 |
GM | 冈比亚 |
GH | 加纳 |
GN | 几内亚比绍 |
CIV | 科特迪瓦 |
KE | 肯尼亚 |
LS | 莱索托 |
LR | 利比里亚 |
LY | 利比亚 |
MG | 马达加斯加 |
MW | 马拉维 |
ML | 马里 |
MR | 毛里塔尼亚 |
MA | 摩洛哥 |
MZ | 莫桑比克 |
NA | 纳米比亚 |
NE | 尼日尔 |
R | 卢旺达 |
SN | 塞内加尔 |
SL | 塞拉利昂 |
SO | 索马里 |
SD | 南苏丹 |
SD | 苏丹 |
SZ | 斯威士兰 |
TZ | 坦桑尼亚 |
TG | 多哥 |
TN | 突尼斯 |
UG | 乌干达 |
ZM | 赞比亚 |
AF | 阿富汗 |
AU | 澳大利亚 |
BD | 孟加拉国 |
KH | 柬埔寨 |
CN | 中国 |
HK | 香港 |
JP | 日本 |
LA | 老挝 |
MN | 蒙古 |
NP | 尼泊尔 |
NZ | 新西兰 |
PG | 巴布亚新几内亚 |
PH | 菲律宾 |
SG | 新加坡 |
LK | 斯里兰卡 |
TW | 台湾 |
TJ | 塔吉克斯坦 |
TH | 泰国 |
TM | 土库曼斯坦 |
UZ | 乌兹别克斯坦 |
VN | 越南 |
AL | 阿尔巴尼亚 |
AM | 亚美尼亚 |
AZ | 阿塞拜疆 |
BY | 白俄罗斯 |
BG | 保加利亚 |
HR | 克罗地亚 |
CS | 捷克共和国 |
GE | 格鲁吉亚 |
GR | 希腊 |
HU | 匈牙利 |
LV | 拉脱维亚 |
LT | 立陶宛 |
MK | 马其顿 |
MD | 摩尔多瓦 |
PL | 波兰 |
RO | 罗马尼亚 |
RS | 塞尔维亚 |
SK | 斯洛伐克 |
SI | 斯洛文尼亚 |
UA | 乌克兰 |
BO | 玻利维亚 |
CR | 哥斯达黎加 |
DO | 多米尼加共和国 |
EC | 厄瓜多尔 |
SV | 萨尔瓦多 |
GT | 危地马拉 |
HT | 海地 |
HN | 洪都拉斯 |
JM | 牙买加 |
NI | 尼加拉瓜 |
PA | 巴拿马 |
PY | 巴拉圭 |
PR | 波多黎各 |
UY | 乌拉圭 |
VE | 委内瑞拉 |
BH | 巴林 |
IQ | 伊拉克 |
JO | 约旦 |
KW | 科威特 |
LB | 黎巴嫩 |
OM | 阿曼 |
QA | 卡塔尔 |
YE | 也门 |
AT | 奥地利 |
BE | 比利时 |
DK | 丹麦 |
FI | 芬兰 |
IE | 爱尔兰 |
NO | 挪威 |
PT | 葡萄牙 |
SE | 瑞典 |
CH | 瑞士 |
OTHER | 其他 |