配置 Custom API 与事件推送
配置 Custom API 的 Callback 或本地 Pull,以及签名和事件推送。
更新于 2026-08-29
嵌入聊天气泡,主题可白标
通过 API 对接自有系统收发消息
把客户邮件汇成工单,统一回复
连接 WhatsApp 商业号接待客户
连接 Facebook 主页,接待私信
接收并回复 Instagram 私信
连接 LINE 官方账号接待客户
连接 Telegram 机器人,自动收发客户消息
连接 Zalo 官方账号接待客户
评论接收与回复
接入企业官方微信客服帐号
使用 Facebook 安全授权
无需复制 App Secret、校验令牌或主页令牌;YundaDesk 会自动列出可管理主页并检查连接。
由我授权
当前成员是 Facebook 主页管理员。
使用 Facebook 连接选择要接入的 Facebook 主页
授权会在新标签页完成;标签页随后自动关闭,结果回到当前工作台。
系统会订阅 messages、postbacks、delivery 和 read 事件,并立即检查真实连接。
完成接入选择你的邮箱服务商
Microsoft Outlook连接 Outlook 或 Microsoft 365 邮箱渠道维护按邮箱预填收发设置,也可手动修改。
未匹配到预设,下一步可手动填写收发信设置。
高级设置
imap.yourbrand.com · 993smtp.yourbrand.com · 465先以禁用状态保存,再实测 IMAP 与 SMTP;两项通过后才启用渠道。
连接并启用选择要接入的客服帐号
每个所选帐号会成为立即启用的独立渠道,AI 回复默认关闭。
DEMO_REDACTED_IDENTITY_KEY关闭后,客户会排队等客服接待。
在渠道配置中查看客户身份签名密钥,由主网站后端根据当前登录用户签发 HS256 JWT。密钥只保留在后端。
必填 user_id、widget_key、iat、exp;aud 固定为 yundadesk-widget-identity,时间使用 Unix 秒,建议 token 有效期 5 分钟。
主网站登录后执行以下代码。将 /support/identity 替换为你的网站接口,该接口返回 { token }。
const loginSupport = () => YundaDesk.login({
getToken: () => fetch('/support/identity', { credentials: 'same-origin' })
.then(response => {
if (!response.ok) throw new Error('Identity request failed');
return response.json();
})
.then(({ token }) => token),
});
if (window.YundaDesk?.login) loginSupport();
else window.addEventListener('yundadesk:ready', loginSupport, { once: true });主网站退出登录或切换账号前,调用 YundaDesk.logout() 清除 Widget 中的客户身份。
可附带 name、email、phone、avatar、locale;custom_attributes 只接受已启用的客户自定义字段,按字段标识传入。
<script src="https://cdn.yundadesk.com/widget.js" data-yd-key="yd_widget_main" async></script>- Widget Key
- yd_widget_main
- 脚本地址
- https://cdn.yundadesk.com/widget.js
- 直达链接
- https://cdn.yundadesk.com/?widget_key=yd_widget_main
Telegram Bot 配置指南
只需三步:① 找 @BotFather 创建 Bot 拿 Token → ② 左侧粘贴 Token → ③ 保存并启用,系统自动接收新消息。
1. 创建 Telegram Bot
- 在 Telegram 中搜索 @BotFather 并打开对话。
- 发送 /newbot 创建新 Bot。
- 按提示填入显示名 + 用户名(以 _bot 结尾)。
- 复制 BotFather 返回的 Bot Token 备用。
2. 在左侧填入 Token 并启用
- 把 Token 粘贴到左侧「Bot Token」。
- 点击顶部的「保存」→ 再点「启用」。
- 点击「测试连接」验证 Bot Token 是否有效。
3. 测试 Bot
- 在 Telegram 搜索 Bot 用户名并开始对话。
- 发送任意消息,AI / 坐席将自动回复。
- 参考 Telegram Bot API 文档。
入站 Webhook URL
复制此完整 URL 到第三方平台后台的 Webhook 配置处,客户消息才能进入 YundaDesk。
https://api.example.invalid/hooks/channel/line/demo-only复制LINE 官方账号接入指南
1. 启用 Messaging API
- 登录 LINE Official Account Manager,选择要接入的官方账号,在「设定 → Messaging API」中启用 Messaging API。
- 在同一页面复制 Channel ID 和 Channel Secret。
2. 在 YundaDesk 保存并启用
- 在左侧填写 Channel ID 和 Channel Secret 并保存。系统会向 LINE 验证,通过后显示对应的 LINE 官方账号。
- 点击「启用」,渠道开始接收消息。
3. 设置 Webhook 并测试
- 复制上方的入站 Webhook URL,粘贴到 LINE Official Account Manager「设定 → Messaging API」的 Webhook 网址并保存。
- 在「设定 → 回应设定」中开启 Webhook。建议同时关闭自动回应讯息和加入好友的欢迎讯息,避免客户收到重复回复。
- 回到 YundaDesk 点击「测试连接」。通过后,用 LINE 向官方账号发送一条消息,确认它出现在收件箱。
Telegram Bot Token 无效,请检查。
连接失败机器人接收冲突
机器人已启用 Webhook
Telegram Bot 配置指南
只需三步:① 找 @BotFather 创建 Bot 拿 Token → ② 左侧粘贴 Token → ③ 保存并启用,系统自动接收新消息。
1. 创建 Telegram Bot
- 在 Telegram 中搜索 @BotFather 并打开对话。
- 发送 /newbot 创建新 Bot。
- 按提示填入显示名 + 用户名(以 _bot 结尾)。
- 复制 BotFather 返回的 Bot Token 备用。
2. 在左侧填入 Token 并启用
- 把 Token 粘贴到左侧「Bot Token」。
- 点击顶部的「保存」→ 再点「启用」。
- 点击「测试连接」验证 Bot Token 是否有效。
3. 测试 Bot
回调会经 YundaDesk 固定安全出口发送。如接收端限制来源,请将出口 IP 加入白名单。
回调会经 YundaDesk 固定安全出口发送。请将以下 IP 加入白名单:203.0.113.10, 203.0.113.11
查看白名单 IPCustom API 接入指南
1. 创建 Custom API 渠道
- 左侧填写渠道名与「你的系统回调 URL」。
- 保存后系统会生成接入 Key 与签名密钥,用于确认消息归属和请求真实性。
- (可选)填写 IP 白名单,限制来源。
2. 转发客户消息到 YundaDesk
- 把消息以 JSON 格式 POST 到上方 Webhook URL。
- 请求头带上接入 Key、时间戳、签名和幂等键。
- 返回 200 表示已接收;其它状态视为失败,系统会重试。
3. 接收回复推送
- 启用后 YundaDesk 把坐席 / AI 回复推送到左侧填写的「你的系统回调 URL」。
- 请按外部消息 ID 做幂等去重。
| 事件 | 时间 | 状态 |
|---|---|---|
| message.created | 2026/07/28 14:20 | 已送达 |
| message.created | 2026/07/28 14:06 | 连接超时 · 重试中 |
| conversation.assigned | 2026/07/28 13:41 | 签名失败 |
发布公开帮助中心文档站,让客户自助查找答案、减少重复咨询。
安装一个 YundaDesk 插件,为 WordPress 站点启用在线客服、AI 客服和安全的 Widget 绑定。
复用同一个 YundaDesk WordPress 插件;检测并只读授权 WooCommerce 后,同步店铺、客户、订单、商品和当前购物车上下文。
连接 SHOPLINE 店铺,同步订单、客户和商品数据;需要时可在主题中开启 YundaDesk 在线聊天。
连接 BigCommerce 店铺,同步客户订单上下文,并在工作台侧栏展示最近订单。
没找到想要的应用?
待批准的店铺操作
批准前请核对店铺生成的最新预览。批准会触发一次受控提交;修改参数必须重新生成预览。
创建挽回折扣 · DEMO-SAVE10店铺实时预览 · 10% · Demo Yundastore
店铺尚未给出确定结果。请勿重复提交;这里只会查询结果,不会再次执行操作。
核对结果请求
输入参数
返回字段
使用规则
☑ 需要已验证的客户身份
仅允许当前会话中已验证的客户调用;未验证时暂停执行。
请求
此 POST 接口仅查询、不修改数据时开启。
输入参数
参数设置
发送为 JSON 请求体字段。填写有效 JSON,并在参数说明中描述内部结构。
请求
输入参数
使用规则
结果核验(可选)默认根据接口返回判断结果;需要额外确认时,可配置只读查询核验。
查看此功能的测试与 Agent 调用记录。
选择计划使用的工具。保存选择不会授予 Agent 执行权限。
密钥安全保存,不会回显。
连接器
选择此智能体可使用的功能,调用时遵循功能配置和技能中的业务规则。
搜索连接或功能
☑ lookup_order
☐ lookup_order 请先选择提供给 Agent 的返回字段。
☐ lookup_refund 配置已变更,请重新勾选授权。
| 客户 | 渠道 / 来源 | 地区 / 语言 | 标签 | 最近互动 | 加入时间 | |
|---|---|---|---|---|---|---|
| MMaria Garciamaria@example.com | Web Widget | 🇪🇸 西班牙西班牙语 | 2026/05/22 | 2026/05/18 | ||
| LLukas Schneider+49 30 123456 | Telegram | 🇩🇪 德国德语 | 2026/05/20 | 2026/05/16 | ||
| AAna Silva | 🇧🇷 巴西葡萄牙语 | 2026/05/22 | 2026/05/16 |
| Agent | 角色 | 接待渠道 | 就绪状态 | 状态 |
|---|---|---|---|---|
| AAlex内置 AI | 综合接待 | Website · WhatsApp | 已就绪 | 运行中 |
| NNova内置 AI | 综合接待 | Messenger | 已就绪 | 运行中 |
| SSam外接 AI | 综合接待 | — | 配置未完成 | 草稿 |
选择这个 Agent 可以调用的工具与操作。这里的开关不替代执行时权限、审批和审计。
客户问订单到哪了时,先查询订单,再用品牌话术回复。
Yuna 从真实接待中发现可改进内容;你确认后才会更新对应知识或技能。
↳Yes, Brazil shipping usually takes 7-12 business days.
人工答的·1↳自动识别 VIP 客户 · 识别 VIP 身份并提示坐席优先跟进。
人工答的·1·L2 风险↳Opened items can be returned within 30 days if the package is complete.
人工答的·1↳DHL 超过 72 小时未更新时,先查订单,再转人工确认补偿。
你纠正过·1·L2 风险管理客户发起问题时 Agent 使用的处理方法;模拟通过并发布后,才用于真实接待。
2 项| 技能 | 状态 | 应用场景 | 近 7 天 | 操作 |
|---|---|---|---|---|
| 订单物流查询客户问订单到哪了时,先查询订单,再用品牌话术回复。 | 启用中 | 查询处理 | 使用 12 次成功率 92% | |
| 自动识别 VIP 客户识别 VIP 身份并提示坐席优先跟进。 | 测试中 | 问题分流 | 尚未使用 |
会话量、响应效率与 AI 服务质量一览。
近 7 日近 30 日近 90 日| 维度 | 会话量 | 消息量 | 平均首响 | 解决数 | 占比 |
|---|---|---|---|---|---|
| Web Widget | 712 | 4,128 | 38s | 496 | 60% |
| Telegram | 284 | 1,620 | 45s | 219 | 24% |
| 198 | 980 | 3m 12s | 146 | 17% |
语言与时区
当地时间 16:30 · UTC+00:00
外观
账户操作
危险区域
申请注销后工作区立即停用;2 小时内可联系平台恢复,逾期永久删除。
注销工作区坐席身份
支持 PNG、JPG 或 WebP,最大 5 MB
项目身份
回复条目
创建第一条快捷回复,坐席输入 / 即可唤起。
新建快捷回复品牌配置
推荐 256×256 PNG / SVG,上传后可裁剪为正方形
通知权限
通知设置
通知场景
测试通知
发送测试发送一条测试通知以验证功能是否正常。
发送键
会话接待
翻译设置
新建一条订阅,把事件推送到你自己的后端做集成或数据归档。
AI Credit
购买 AI Credit本周期于 2026/09/30 重置
套餐额度 10,000
知识导入、解析和离线编译不消耗 AI Credit
记录列表

订阅生效中
当前周期至 2026/09/30。
AI Credit
Pro 及以上套餐支持在 Agent 中接入自有 AI。外接 AI 不额外收费、不消耗 YundaDesk AI Credit,第三方 AI 服务费用由您自行承担;内置 AI 仍按 Credit 规则计费。
已使用 2,400
本周期于 2026/09/30 重置
已使用 1,000
其他用量
已使用席位
3已接入渠道
2本月成功完成的 Yuna 请求
42本月新会话
128本月消息
580已入库文档
12本月推送次数
0这些规则在工作区内共用,仅约束向客户的主动触达,不影响发送给你的内部汇报。
同一客户冷却 24 小时;7 天最多触达 2 次。
免打扰时段
触达频率
团队成员
| 成员 | 角色 | 状态与技能 | 最后登录 | 最后使用 | 操作 |
|---|---|---|---|---|---|
| ACAnna Chen我anna@yundadesk.test在线 | 管理员 | 已激活英语退款最大并发 12 | 今天 09:42 | 2 分钟前 | |
| LWLeo Wangleo@yundadesk.test在线 | 坐席 | 已激活英语售后最大并发 6 | 昨天 18:20 | 今天 10:06 | |
| MGMaria Garciamaria@yundadesk.test离线 | 坐席 | 邀请中西语售前最大并发 8 | — | — |
无法建立安全连接;若网站只提供 HTTP,请使用 http:// 地址重新抓取
| 文档 | 大小 | 标签 | 更新时间 | 状态 | 操作 |
|---|---|---|---|---|---|
| demo-owner/support-guide 2 | — | — | 最近更新 2026/06/03 16:00 | 正常 |
| 文档 | 大小 | 标签 | 更新时间 | 状态 | 操作 |
|---|---|---|---|---|---|
| https://tgo.ai/help/shipping· 47 篇 | — | — | — | 已可检索 | ⋯ |
| 客服知识 · Notion · 128 篇 | — | — | 最近同步 2026/07/29 03:10 | 已可检索 | ⋯ |
| Brazil shipping timelines | — | 最近更新 2026/06/03 16:00 | 已可检索 | ⋯ | |
| EU customs & duties | — | 最近更新 2026/06/04 14:30 | 正在索引 | ⋯ | |
| 30-day refund policy | — | 最近更新 2026/06/02 20:00 | 已可检索 | ⋯ |
| 文档 | 大小 | 标签 | 更新时间 | 状态 | 操作 |
|---|---|---|---|---|---|
| Brazil shipping timelineshttps://tgo.ai/help/shipping/brazil | — | shipping | 10/04 | 已可检索 | ⋯ |
| 加载更多 | |||||
| 文档 | 大小 | 标签 | 更新时间 | 状态 | 操作 |
|---|---|---|---|---|---|
| Brazil shipping policy | — | 最近更新 2026/06/03 16:05 | 等待索引 | ⋯ | |
| EU customs & duties | — | 最近更新 2026/06/04 14:30 | 正在索引 | ⋯ | |
| Brazil shipping timelines | — | 最近更新 2026/06/03 16:00 | 已可检索 | ⋯ | |
| Import restrictions PDF错误:PDF 文件没有可读取文字 | — | 最近更新 2026/06/07 16:30 | 索引失败 | ⋯ |
| 文档 | 大小 | 标签 | 更新时间 | 状态 | 操作 |
|---|---|---|---|---|---|
| https://tgo.ai/help/shipping · 0 篇已处理 3 / 已发现 50 页 | — | — | 抓取任务运行中 | 抓取中 | ⋯ |
| https://tgo.ai/help/shipping · 47 篇上次同步成功 · 共 47 页 | — | — | 最近同步 2026/06/20 16:00 | 已可检索 | ⋯ |
| 客户问题 | 标准回答 | 来源 | 标签 | 状态 | 操作 |
|---|---|---|---|---|---|
| Do you ship to Brazil? | Shipping to Brazil usually takes 7-12 business days. | 编译生成 · Brazil shipping policy | 已启用 | ⋯ |
停止同步,保留此来源的 2 篇文档;已有资料仍可参与 AI 回答。
停止同步,并将此来源的 2 篇文档移入回收站;它们将不再参与 AI 回答。不会修改远端仓库或其他来源。
用逗号分隔;支持 * 和 **。排除优先,至少选择一种文件类型。
将导入 2 个文件
- help/shipping.md
- help/returns.md
没有匹配的文件,请调整选择或筛选条件后重新预览。
连接 Notion 后,选择要同步的页面并自动导入文档。
连接 Notion尚未连接 Notion
以访客身份验证当前已保存的接待配置,不创建真实工单。
今天有什么需要我处理的?
有 3 件事:2 条学习建议待确认、1 个主动触达待你确认。昨天 AI 自动解决率 84%,比上周高 3 个点。
Support Agent · 外接 AI
外接配置
编辑外接 AI- 接入方式
- OpenAI Chat Completions
- 接口地址
- https://api.example.com/v1
- 密钥
- 已配置 · DEMO-REDACTED
人设、知识与回答逻辑在第三方平台维护。接口或密钥可通过“编辑外接 AI”修改,右侧可试聊调试。
外接 AI 只处理自动回复,不会写入 YundaDesk AI学习库,也不会生成 AI 技能。
当前套餐不支持自有 AI,外接接待已暂停,配置仍保留。升级 Pro 后可恢复;也可以新建内置 Agent 并重新绑定渠道。
选择这个 Agent 可以调用的工具与操作。这里的开关不替代执行时权限、审批和审计。
客户问订单到哪了时,先查询订单,再用品牌话术回复。
访客和坐席都会看到这个名字
在线排队、无人在线和坐席接入提示仅用于即时消息渠道;邮件渠道不会发送这三类接待话术。
只允许这个 Agent 检索明确选中的知识内容。接待方向不会自动增加知识权限。
知识检索推荐问题生成失败,请重新生成。
选中的渠道由当前 AI 自动接待;没选中的渠道不会走 AI 回复开关。
选择Custom API 渠道和事件推送统一归入「开发者集成」,Pro、Enterprise 及继承相应权益的定制套餐可以创建和启用。
Custom API 渠道和事件推送用于把自有系统与 YundaDesk 连接起来。当前可用能力以产品中的套餐页为准。
套餐变化时会发生什么#
如果工作区切换到不再包含某项开发者集成能力的套餐:
- 已有配置、签名密钥和历史投递记录不会被删除。
- 对应的 Custom API 渠道或事件推送会被停用,不再接收或发送新的集成流量。
- 你仍可以查看、禁用或删除已有配置,但不能创建、启用、测试、重放或轮换密钥。
- 再次获得权益后不会自动恢复,请检查配置后手动启用。
选择回复方式#
创建 Custom API 渠道时,选择一种客服回复方式:
- Callback:YundaDesk 主动把客服回复推送到你的公网回调地址。适合已有公网 HTTPS 服务的系统。
- Pull(本地 Connector):本地 Connector 主动长轮询 YundaDesk,再把回复转发到本机服务。适合开发机、门店电脑或没有公网入口的系统。
两种方式会长期并存,不是迁移关系。一个渠道只能选择一种回复方式;不同渠道可以分别使用 Callback 和 Pull。客户消息的入站地址不受此选择影响,仍使用页面显示的 Custom API 入站地址。
创建页不会显示 Channel Key 和签名密钥;这两个值会在保存渠道后由系统自动生成,并在已保存渠道的详情中提供。
配置 Callback 地址#
仅 Callback 模式需要填写回调地址。回调地址或事件推送地址必须满足:
- 使用公网
https://地址,端口为 443。 - 地址中不能包含用户名、密码或
#片段。 - 域名必须与保存的允许域名一致;如需允许多个子域,请显式配置受控的通配子域。
- 目标服务器需要能够从 YundaDesk 公布的固定出口 IP 接收请求。
保存后使用页面上的“测试”操作验证连接。测试成功只代表当前请求可达;正式使用前还应在目标系统核对签名、事件内容和来源 IP。
配置 Pull API#
- 创建或编辑 Custom API 渠道,把回复方式设为 Pull(本地 Connector),然后保存。
- 选择 Pull 后,右侧会显示“发送给你的开发 Agent”。提示词会明确两个公开地址:向 Custom API 入站地址发送客户消息,向 Pull 地址拉取客服回复,并包含鉴权头、请求体和 offset 处理要求。创建前 Channel Key 使用占位符;保存后会自动带入当前渠道的真实值。
- 提示词不会包含签名密钥。保存渠道后,从渠道详情把签名密钥放入项目的安全配置;不要把它粘贴到 Agent 对话、源码、日志或 offset 状态文件。
- 你的系统直接请求 Pull 地址。成功响应为
{ "success": true, "data": { "updates": [...], "next_offset": 1 }, "error": null }:首次提交offset=0,处理完data.updates后持久化data.next_offset,并在下一次请求中提交。任一条更新处理失败时不要推进 offset;data.updates为空是正常的长轮询超时。 - 如果不想自行实现轮询,也可以安全设置
YD_CUSTOM_API_SIGNING_SECRET,使用本地 Connector 把回复转发到本机 HTTP 地址,例如http://127.0.0.1:8080/yundadesk/callback:
``bash customapi-pull \ --pull-url "<页面显示的 Pull URL>" \ --channel-key "<页面显示的 Channel Key>" \ --forward-url "http://127.0.0.1:8080/yundadesk/callback" \ --consumer-id "my-local-connector" ``
Connector 会在用户配置目录保存非敏感 offset。只有本机接收地址返回 2xx 后,它才确认该条回复;进程中断后可能重复转发最后一条,但不会因提前确认而丢失。接收端应使用 Idempotency-Key 或 X-YD-Update-ID 请求头去重。
同一渠道不要同时运行多个 Connector。需要迁移本机时,先停止旧 Connector,再把 offset 状态文件安全迁移到新机器;如果无法迁移,应准备接收端按幂等键处理可能的重复。
固定出口 IP#
YundaDesk 通过固定出口 IP 发送 Custom API Callback 和事件 Webhook。Pull 是本地 Connector 主动出站访问 YundaDesk,不需要为 Pull 配置 YundaDesk 出口 IP。页面默认不直接展开 Callback/Event Webhook 的出口 IP;需要配置接收端时,点击蓝色的“查看白名单 IP”,再将显示的地址加入目标服务器白名单。
如果页面显示尚未公布出口 IP,请联系 YundaDesk 支持,不要自行放开所有来源。页面可能同时显示多个 IP,应全部加入白名单。
验证请求#
请在目标系统验证 YundaDesk 提供的签名和时间戳,并使用事件 ID 或投递 ID 做幂等处理。不要仅依赖来源 IP 作为身份验证。
Custom API 的公网入站地址以产品页面显示为准。重复提交同一条已签名的回执不会重复更新投递状态。
排查投递失败#
先在对应的 Custom API 或事件推送页面查看投递状态和错误类型:
- 套餐或额度限制:检查当前套餐和用量。
- 地址或域名被拒绝:检查 HTTPS、端口、域名和 URL 内容。
- 连接超时或目标不可用:确认目标服务在线,并允许所有已公布出口 IP。
- 签名失败:重新核对当前密钥;轮换后确保目标系统已使用新密钥。
- Pull 返回 401:检查 Channel Key、签名密钥、本机时间,以及每次请求是否使用了新的 Nonce。
- Pull 返回 409:仅
CUSTOM_API_PULL_BUSY可在等待后重试;其他 409 先确认渠道仍为 Pull 模式,且没有把本地 offset 改到尚未收到的位置,不要盲目重试。 - Pull 返回 429:按
Retry-After等待后重试,不要提高并发轮询数量。 - 本地接收地址持续失败:Connector 不会推进 offset;恢复本机服务并返回 2xx 后会继续处理。
临时网络或 DNS 故障会进入自动重试。达到最大重试次数后,再按页面提供的重放操作处理。
