10 分钟完成对接,将 AI 营销与客服流程接入企业业务系统。

基础查询

获取项目列表

对接前的第一步:拉取企业下所有项目及其运行状态(运行中/已暂停)和执行模式(流式自动外呼/手动批次),后续所有接口都要用到这里返回的项目 ID。

GET /api/v1/external/programs

获取项目下数字员工列表

按项目查出可用的数字员工及其轮次、启用状态和话术升级状态,上传线索、AI 呼入都要指定具体是哪个数字员工接听。

GET /programs/:programId/bots

查询线路状态

实时查看项目当前的并发占用和空闲线路数。建议推送线索前先查一次,确认有空闲线路且项目在运行中,再批量推送。

GET /programs/:programId/line-status

获取线路列表

拉取企业名下及对本企业开放的共享线路,包含运营商、外显号码类型、并发数、每日拨打频次上限等信息,创建项目前先挑好线路。

  • China Mobile (CMCC)
  • China Unicom (CUCC)
  • China Telecom (CTCC)
  • Landline / virtual number / verified mobile

获取音色列表

查看企业可用的全部音色,含全局共享音色与专属克隆音色,每个音色都带试听地址,配置数字员工声音时直接参考。

GET /api/v1/external/voices

创建项目

一次调用即可创建外呼项目:指定线路、最大并发、拨打时间窗口、每日上限口径等,默认以暂停状态创建,避免刚建好就开始拨打。

POST /api/v1/external/programs

关联数字员工

为项目绑定按轮次跟进的数字员工。该接口为整体替换而非增量添加,仅需新增一个时,请先读取现有配置再合并提交。

PUT /programs/:programId/bots

AI 外呼

下载线索模板

按数字员工当前话术配置生成对应的 Excel 模板,表头列名即后续上传的字段映射依据,请勿修改列名。

GET /programs/:programId/leads/template

批量上传线索

上传 Excel 或 CSV(最大 100MB),系统按项目内手机号自动去重,返回成功写入与跳过的数量,方便核对导入结果。

POST /programs/:programId/leads/upload

查询线索字段定义

推送线索前调用,获取该数字员工 variables 所需的准确字段 key(而非 Excel 模板中的中文列名),避免因字段不匹配被拒绝。

GET /programs/:programId/leads/fields

实时单条线索导入

适用于用户提交表单后需立即外呼的场景。支持以 contextId 作为业务标识:同号同 contextId 覆盖并重新排队,同号不同 contextId 可并存、互不影响。

POST /api/v1/external/leads

撤销线索

线索推送后情况有变(如会议取消)时,可撤销仍在排队中的记录;已开始拨打或已完成的线索不受影响,接口亦不报错。

POST /api/v1/external/leads/cancel

启动 / 暂停项目

线索上传后需要显式启动项目才会开始拨打;暂停期间推送的线索会正常入队等待,不会丢失,恢复运行后自动继续拨打。

POST /programs/:programId/run-state

拨打配置

随时调整最大并发、拨打顺序(先进先出/后进先出)、允许拨打的时间段和绝对禁呼时段,字段全部可选,只改需要的部分。

PUT /programs/:programId/dialing-config

查询线索通话结果

按线索 ID 或手机号查询通话记录,包含接通状态、AI 意向判断、意向评分、通话摘要、录音地址和结构化提取数据。

  • Connection status
  • Intent score
  • Call summary
  • Recordings valid for 7 days

批量查询线索

一次查询多条线索,或按项目 + 日期获取当天全部拨打记录,可替代逐条轮询,批量核对未接通线索。

GET /api/v1/external/leads/batch

AI 呼入与话单回调

呼入自定义参数

呼入时可通过 SIP Header 传入自定义参数,系统自动填入提示词模板,实现「来电即识别身份」的个性化开场。

SIP Header 透传

X-BotId 指定接听的数字员工,X-Call-Params 携带业务参数,X-Call-ID 作为本次呼入的全局唯一标识,事后可凭它接收或查询结果。

sip_h_X-BotId / X-Call-Params / X-Call-ID

参数 Base64 编码

所有自定义参数先组成 JSON 对象,再整体做 Base64 编码放入 X-Call-Params,几行代码即可完成编码。

Buffer.from(JSON.stringify(params)).toString("base64")

FreeSWITCH 转发对接

提供标准的 originate + bridge 转发示例,呼入网关按此拼接 Header 即可把电话转接到对应的 AI 数字员工线路。

话单主动推送

通话结束后系统主动向接入方的 HTTPS 地址推送话单,5 秒内返回 200 视为接收成功,超时会被判定失败并按配置重推。

话单字段:通话与意向

话单包含接通时间、通话时长、录音地址、AI 通话摘要、意向状态与评分、完整对话记录,以及按话术配置提取的结构化标签。

  • Call duration
  • Intent score
  • Recording URL
  • Full conversation

签名验签机制

每次推送都带 X-Sign 签名,按时间戳、随机串、应用 ID、正文和密钥拼接后取 MD5 或 SHA256,接入方可据此验证请求确实来自平台。

X-Sign = hash(timestamp&nonce&appId&data&appSecret)

失败重推与幂等

推送失败会按配置重试,接入方应以话单 ID 做幂等处理避免重复入库;即使重推全部失败,也能用查询接口兜底核对遗漏的话单。

管理与话术

权限分级(Scopes)

创建 API Key 时按最小权限原则勾选:只读查询、线索管理、项目控制、话术改写;权限不足时接口返回 403,杜绝误操作。

  • READ only
  • LEADS
  • CONTROL
  • SCRIPT

读取话术配置

获取数字员工当前的提示词、开场白、线索字段定义和转人工配置,话术版本号每次更新自动 +1,可用来判断是否有变更。

GET /bots/:botId/script

动态更新话术

通过 API 直接更新提示词与开场白,保存后即时刷新缓存生效,无需在平台手动执行「重新初始化」。

PUT /bots/:botId/script

配置数字员工音色

切换音色模型,并调整语速、音量、音调乃至情绪(视所选音色供应商是否支持),修改同样立即生效。

PUT /bots/:botId/voice

读取提取配置

查看当前配置的信息提取字段和意向推送规则——推送到飞书、企微、钉钉还是自定义 API,是否只推送高意向数据。

GET /bots/:botId/extract

更新提取字段与意向推送

调整 AI 从对话里提取哪些结构化字段,以及提取结果推送到哪个群或哪个人;推送时间窗口等其它配置仍需在平台上手动设置。

PUT /bots/:botId/extract

Ready to get started?