跳转到主要内容

Wati 的 API 支持多个 WhatsApp 号码

摘要

如果您正在使用 Wati 的多 WhatsApp 号码功能,本指南将介绍如何跨不同连接的号码使用 Wati 的 API。

说明

如果您的 Wati 账户连接了多个 WhatsApp 号码,您可以使用这些号码通过 API 发送和接收消息。

为确保 API 请求使用正确的 WhatsApp 号码,您可能需要在请求负载或 URL 中包含额外的键。所需的键以及传递方式取决于您使用的 API 端点。

本指南列出了目前支持多 WhatsApp 号码的 Wati API,并说明了如何为每个 API 请求指定 WhatsApp 号码。

开始之前

身份验证:在 Connector > API > Create API Token 处创建一个作用域 API 令牌。

主机: https://live-mt-server.wati.io

  • v1 路径在主机后包含 /{tenantId}/: https://live-mt-server.wati.io/{tenantId}/api/v1/...

  • v3 路径不包含 /{tenantId}/: https://live-mt-server.wati.io/api/ext/v3/...

电话号码格式: 使用带有国家/地区代码的数字,无需“+”符号。例如: 85264318722。

注意:

  • 所有新集成推荐使用 v3。 v1 为旧版本,但仍受支持。

  • 200 响应仅表示您的请求已被接受,并不代表消息已送达。送达状态由“已送达”、“已读”或“已回复”的 Webhook 确认。失败情况由“模板消息失败”的 Webhook 报告。

v1 API 端点

1. 发送模板消息

端点: POST /{tenantId}/api/v1/sendTemplateMessage

参数

位置

备注

channel_number

正文

发送消息的号码

target

正文

收件人的电话号码、ContactId 或 BSUID。提供此项时,whatsappNumber 为可选。

2. 发送模板消息(批量)

端点: POST /{tenantId}/api/v1/sendTemplateMessages

参数

位置

备注

channel_number

正文

发送消息的号码

3. 通过 CSV 发送模板消息

端点: POST /{tenantId}/api/v1/sendTemplateMessageCSV

参数

位置

备注

channelNumber

查询

发送消息的号码

4. 更新聊天状态

端点: POST /{tenantId}/api/v1/updateChatStatus

参数

位置

备注

channelPhoneNumber

正文

您要更新其聊天状态的号码

5. 按 WhatsApp 号码获取消息

端点: GET /{tenantId}/api/v1/getMessages/{whatsappNumber}

参数

位置

备注

tenantId

路径

您的 Wati 租户 ID

whatsappNumber

路径

收件人的 WhatsApp 号码

channelPhoneNumber

查询

用于获取消息的已连接号码

6. 将 channelPhoneNumber 作为查询参数的端点

以下端点使用 channelPhoneNumber 作为查询参数来指定要使用的已连接号码。对于 sendSessionMessage,messageText 也是一个查询参数。

端点

方法

/{tenantId}/api/v1/sendSessionMessage/{whatsappNumber}

POST

/{tenantId}/api/v1/sendSessionFile/{whatsappNumber}

POST

/{tenantId}/api/v1/sendSessionFileViaUrl/{whatsappNumber}

POST

/{tenantId}/api/v1/sendInteractiveButtonsMessage/{whatsappNumber}

POST

/{tenantId}/api/v1/sendInteractiveListMessage/{whatsappNumber}

POST

/{tenantId}/api/v1/assignOperator/{whatsappNumber}

POST

对于以上所有端点:当提供 target 时,whatsappNumber(路径)为可选。

7. 无需指定号码即可工作的 API

联系人数据在所有已连接号码之间共享,因此这些端点不需要通道号码:

API

端点

添加联系人

POST /{tenantId}/api/v1/addContact/{whatsappNumber}

更新联系人属性

POST /{tenantId}/api/v1/updateContactAttributes/{whatsappNumber}

更新多个联系人的属性

POST /{tenantId}/api/v1/updateContactAttributesForMultiContacts (仅限商业计划)

获取联系人列表

GET /{tenantId}/api/v1/getContacts

v3 API — 推荐用于新集成

v3 是所有新集成的推荐版本。它不在路径中使用 /{tenantId}/。

令牌作用域 — 在 Connector > API > Create API Token 处创建:

  • contactsv3:* — 联系人操作

  • conversationsv3:* — 对话操作

  • messagetemplatev3:write — 发送模板

列出已连接号码

端点: GET https://live-mt-server.wati.io/api/ext/v3/channels

返回连接到您的 Wati 账户的所有 WhatsApp 号码。

发送模板消息 (v3)

在请求正文中使用 channel 字段来指定发送消息的号码。

target 字段接受:

  • 电话号码 — 85264318722

  • ContactId

  • BSUID

  • 通道作用域格式 — Channel:85264318722

支持多 WhatsApp 号码的 API

API

支持多号码

发送模板消息

是

发送模板消息

是

通过 CSV 发送模板消息

是

发送会话消息

是

发送会话文件

是

通过 URL 发送会话文件

是

发送交互式按钮消息

是

发送交互式列表消息

是

分配操作员

是

更新聊天状态

是

按 WhatsApp 号码获取消息

是

获取联系人列表

是

添加联系人

是

更新联系人属性

是

更新多个联系人的属性

是 (仅限商业计划)

有关 Wati API 的更多信息,请参阅我们的 官方开发者文档。

这是否解答了您的问题?