API 接口 & 事件概览

本文提供 Yeastar P 系列 IPPBX API 接口列表和推送事件列表。

重要: 需注意,每个发送到 Yeastar P 系列 IPPBX API 的请求,其头域 (Headers) 中都需要携带 User Agent (UA) 信息,以便 PBX 能够识别你的应用并响应请求。例如:User-Agent: OpenAPI

API 认证

1.
HTTP 请求方式 API endpoint 说明
POST get_token 获取 API 访问 token。
POST refresh_token 刷新 API 访问 token。
GET del_token 撤销 API 访问 token。

系统

2.
HTTP 请求方式 API endpoint 说明
GET system/information 查询 PBX 信息。
GET system/capacity 查询 PBX 容量,包括分机数和通话并发数。
GET system/get_menuoptions 在创建或更新功能时查询所需的菜单选项信息。
注: 此接口支持查询特定功能的选项信息 (ID、名称或类型),支持的功能包括 FXS 端口、分机、分机组、组织架构/部门、中继、用户角色、企业联系人群组、群语音邮箱、IVR、响铃组、队列和队列坐席、会议室以及 PIN 码列表。

分机

3.
HTTP 请求方式 API endpoint 说明
GET extension/list 查询分机列表。
GET extension/search 搜索特定分机。
GET extension/get 查询单个分机信息。
GET extension/query 查询多个分机信息。
POST extension/create 添加分机。
POST extension/send_welcome_email 发送 Linkus 欢迎邮件给指定分机。
POST extension/update 编辑分机。
GET extension/delete 删除分机。

组织架构/部门

4.
HTTP 请求方式 API endpoint 说明
GET organization/list 查询部门列表。
GET organization/search 搜索特定部门。
GET organization/get 查询单个部门信息。
GET organization/query 查询多个部门信息。
POST organization/create 添加部门。
POST organization/update 编辑部门。
GET organization/delete 删除部门。

中继

5.
HTTP 请求方式 API endpoint 说明
GET trunk/list 查询中继列表。
GET trunk/search 搜索特定中继。
GET trunk/get 查询单个中继的信息。
GET trunk/query 查询多个中继的信息。
GET trunk/itsp_list 查询 SIP 中继的 SIP 运营商列表。
POST trunk/create 添加 SIP 中继。
POST trunk/update 编辑 SIP 中继。
GET trunk/delete 删除 SIP 中继。

通讯录

6.
HTTP 请求方式 API endpoint 说明
GET company_contact/list 查询企业联系人列表。
GET company_contact/search 搜索特定企业联系人。
GET company_contact/get 查询单个企业联系人信息。
GET company_contact/query 查询多个企业联系人信息。
POST company_contact/create 添加企业联系人。
POST company_contact/update 编辑企业联系人。
GET company_contact/delete 删除企业联系人。

企业联系人群组

7.
HTTP 请求方式 API endpoint 说明
GET phonebook/list 查询企业联系人群组列表。
GET phonebook/search 搜索特定企业联系人群组。
GET phonebook/get 查询单个企业联系人群组信息。
GET phonebook/query 查询多个企业联系人群组信息。
POST phonebook/create 添加企业联系人群组。
POST phonebook/update 编辑企业联系人群组。
GET phonebook/delete 删除企业联系人群组。

呼入路由

8.
HTTP 请求方式 API endpoint 说明
GET inbound_route/list 查询呼入路由列表。
GET inbound_route/search 搜索特定呼入路由。
GET inbound_route/get 查询单个呼入路由信息。
GET inbound_route/query 查询多个呼入路由信息。
POST inbound_route/create 添加呼入路由。
POST inbound_route/update 编辑呼入路由。
GET inbound_route/delete 删除呼入路由。

呼出路由

9.
HTTP 请求方式 API endpoint 说明
GET outbound_route/list 查询呼出路由列表。
GET outbound_route/search 搜索特定呼出路由。
GET outbound_route/get 查询单个呼出路由信息。
GET outbound_route/query 查询多个呼出路由信息。
POST outbound_route/create 添加呼出路由。
POST outbound_route/update 编辑呼出路由。
GET outbound_route/delete 删除呼出路由。

PIN 码列表

10.
HTTP 请求方式 API endpoint 说明
GET pin_list/list 查询 PIN 码列表。
GET pin_list/search 搜索特定 PIN 码列表。
GET pin_list/get 查询单个 PIN 码列表信息。
GET pin_list/query 查询多个 PIN 码列表信息。
POST pin_list/create 添加 PIN 码列表。
POST pin_list/update 编辑 PIN 码列表。
GET pin_list/delete 删除 PIN 码列表。

IVR

HTTP 请求方式 API endpoint 说明
GET ivr/list 查询 IVR 列表。
GET ivr/search 搜索特定的 IVR。
GET ivr/get 查询单个 IVR 信息。
GET ivr/query 查询多个 IVR 信息。
POST ivr/create 添加 IVR。
POST ivr/update 编辑 IVR。
GET ivr/delete 删除 IVR。

队列

HTTP 请求方式 API endpoint 说明
GET queue/list 查询队列列表。
GET queue/search 搜索特定队列。
GET queue/get 查询单个队列信息。
GET queue/query 查询多个队列信息。
POST queue/create 添加队列。
POST queue/update 编辑队列。
GET queue/delete 删除队列。
GET queue/call_status 查询队列的通话状态。
GET queue/agent_status 查询队列的坐席状态。
GET queue_pause_reason/list 查询暂停原因列表。
POST queue_pause_reason/update 编辑暂停原因列表。
GET queue/agent_login 队列管理 – 批量签入或签出指定队列中的动态坐席。
GET queue/agent_pause 队列管理 – 为指定队列内的坐席暂停或恢复服务。
GET agent/login 坐席管理 – 为指定的动态坐席签入或签出单个或多个队列。
GET agent/pause 坐席管理 – 暂停或恢复坐席在单个或多个队列中的服务。

录音

11.
HTTP 请求方式 API endpoint 说明
GET recording/list 查询录音列表。
GET recording/download 获取录音文件下载 URL,用于下载录音文件。

通话记录 (CDR)

12.
HTTP 请求方式 API endpoint 说明
GET cdr/list 获取通话记录列表。
GET cdr/search 搜索特定通话记录。
GET cdr/download 获取通话记录下载 URL,用于下载通话记录文件。

通话报告

13.
HTTP 请求方式 API endpoint 说明
GET call_report/list 查询即时通话报告列表。
GET call_report/download 获取下载 URL,用于下载即时通话报告。
GET call_schedule_report/list 查询预约通话报告列表。
GET call_schedule_report/download 获取下载 URL,用于下载预约通话报告。

酒店应用

14.
HTTP 请求方式 API endpoint 说明
GET wakeupcall/list 查询闹铃列表。
GET wakeupcall/get 查询单个分机的闹铃信息。
GET wakeupcall/query 查询多个分机的闹铃信息。
POST wakeupcall/create 为指定分机添加闹铃。
POST wakeupcall/update 编辑闹铃。
GET wakeupcall/delete 删除指定分机的闹铃。
POST hotel/checkout 为酒店客人退房。

SMS

15.
HTTP 请求方式 API endpoint 说明
POST sms/create 通过 GSM/3G/4G 中继给手机号码发送短信。

呼叫操控接口

16.
HTTP 请求方式 API endpoint 说明
GET call/query 查询指定通话或指定类型的通话。
POST call/dial 发起呼叫。
POST call/accept_inbound 在呼入来电控制阶段,接听来电。
POST call/refuse_inbound 在呼入来电控制阶段,拒接来电。
POST call/listen 监听通话。
POST call/hold 保持通话。
POST call/unhold 恢复被保持的通话。
POST call/mute 通话静音。
POST call/unmute 取消通话静音。
POST call/park 停泊通话。
GET call/park_status 查询被停泊通话的信息。
POST call/transfer 呼叫转移,包括盲转和咨询转。
POST call/add_member 通话过程中,邀请新成员加入通话。
POST call/play_prompt 播放自定义提示音中的语音文件。
POST call/hangup 挂断通话。
POST call/record_start 开始通话录音。
POST call/record_pause 暂停通话录音。
POST call/record_unpause 恢复通话录音。

uaCSTA 呼叫操控接口

17.
HTTP 请求方式 API endpoint 说明
POST uacsta_call/accept 通过 uaCSTA 接听来电。
POST uacsta_call/refuse 通过 uaCSTA 拒接来电。
POST uacsta_call/hangup 通过 uaCSTA 挂断通话。

事件报告

注: 你可以通过 WebSocket 监控以下 API 事件。更多信息,请参见 使用 WebSocket 监控事件
18.
事件 说明
(30005) 组织架构/部门状态变更 表示组织架构/部门功能状态发生变更,并返回当前功能状态。
(30006) 组织架构/部门配置变更 表示组织架构/部门功能配置发生变更,并返回变更信息。
(30007) 分机注册状态变更 表示分机注册状态发生变更,并返回分机详情。
(30008) 分机通话状态变更 表示分机通话状态发生变更,并返回当前分机通话状态。
(30009) 分机出席状态变更 表示分机出席状态发生变更,并返回当前分机出席状态。
(30010) 中继注册状态变更 表示中继注册状态发生变更,并返回当前中继状态。
(30011) 通话状态变更 表示通话状态发生变更,并返回当前通话状态。
(30012) 新通话记录 表示生成新的通话记录,并返回通话详情。
(30013) 呼叫转移 表示发生呼叫转移事件,并返回通话详情。
(30014) 呼叫前转 表示发生呼叫前转事件,并返回通话详情。
(30015) 呼叫失败 表示发生呼叫失败事件,并返回通话详情。
(30016) 来电呼叫请求 表示监控的中继上有外线呼入,并返回通话详情。
(30017) DTMF 按键信息 表示通话过程中有按键事件,并返回通话信息和按键信息。
(30018) 语音播放结束 表示语音播放结束,并返回通话详情和播放的语音文件名。
(30019) 满意度调查 表示来电者完成满意度调查,并返回满意度调查结果。
(30020) uaCSTA 通话事件 表示注册在 IP 话机上的分机的通话状态发生变更,并返回 uaCSTA 通话详情。
(30022) 分机配置变更 表示分机配置发生变更,并返回变更信息。
(30023) 中继配置变更 表示中继配置发生变更,并返回变更信息。
(30024) 语音会议无主持人 表示主持人离开了语音会议,并返回语音会议 ID 和主持人分机号码。