工单系统
查询工单详情(新版)
按 ticketId 查询新版工单详情。成功响应使用 data 字段承载结构化工单详情;与 /detail 相比,本接口不会把详情对象序列化到 message 字符串中。留言录音附件在满足企业配置时会返回压缩后的下载地址。
请求参数
| 名称 | 类型 | 必填 | 描述 | 示例值 |
|---|---|---|---|---|
| appKey | string | 是 | 应用 AppKey | |
| time | int64 | 是 | 请求时间戳(秒) | |
| checksum | string | 是 | 请求签名校验和 | |
| checksumAlgorithm | int32 | 否 | 签名算法:0 - 默认(SHA1),1 - SHA256 |
请求体
| 名称 | 类型 | 必填 | 描述 | 示例值 |
|---|---|---|---|---|
| ticketId | int64 | 是 | 工单 ID | 123456 |
返回参数
| 名称 | 类型 | 描述 | 示例值 |
|---|---|---|---|
| code | int32 | 状态码,200 表示成功 | 200 |
| data | object | 工单详情数据 | {"id":123456,"title":"售后咨询:订单取消后未退款","status":10,"priority":8} |
| └id | int64 | 工单 ID | 123456 |
| └templateName | string | 模板名称 | 售后投诉 |
| └templateId | int64 | 模板 ID | 30001 |
| └title | string | 工单标题 | 售后咨询:订单取消后未退款 |
| └status | int32 | 工单状态:0-未知,1-已提交,5-未受理,10-受理中,20-完结,25-已驳回,50-已挂起,999-已删除 | 10 |
| └createTime | int64 | 创建时间(毫秒时间戳) | 1720085400000 |
| └priority | int32 | 优先级:2-低,5-一般,8-紧急,10-非常紧急 | 8 |
| └groupId | int64 | 受理组 ID | 20001 |
| └holderId | int64 | 当前处理人 ID | 10002 |
| └content | string | 工单内容 | 用户反馈订单取消后 3 个工作日仍未收到退款,请协助核实。 |
| └userId | int64 | 用户 ID | 556677 |
| └userName | string | 用户姓名 | 张三 |
| └userMobile | string | 用户手机号 | 13800138000 |
| └userEmail | string | 用户邮箱 | zhangsan@example.com |
| └questionType | object | 工单问题分类 | {"id":40001,"name":"退款问题","path":"售后服务/退款问题"} |
| └id | int64 | 分类 ID | 40001 |
| └name | string | 分类名称 | 退款问题 |
| └parent | int64 | 父分类 ID | 40000 |
| └path | string | 分类完整路径 | 售后服务/退款问题 |
| └pathList | string[] | 分类各级名称列表 | ["售后服务","退款问题"] |
| └typeId | int64 | 分类 ID | 40001 |
| └properties | string | 附加属性 JSON 字符串 | {"orderId":"SO202407010001","channel":"wechat"} |
| └custom | object[] | 自定义字段列表 | [{"id":91001,"fieldId":81001,"name":"订单号","value":"SO202608090001"}] |
| └id | int64 | 字段值记录 ID | 91001 |
| └fieldId | int64 | 字段定义 ID | 81001 |
| └name | string | 字段名称 | 订单号 |
| └value | string | 字段值 | SO202608090001 |
| └followUpCustom | object[] | 回访总结自定义字段列表 | [{"id":92001,"fieldId":82001,"name":"回访结果","value":"用户已确认退款到账"}] |
| └id | int64 | 字段值记录 ID | 91001 |
| └fieldId | int64 | 字段定义 ID | 81001 |
| └name | string | 字段名称 | 订单号 |
| └value | string | 字段值 | SO202608090001 |
| └attachments | object[] | 附件列表 | [{"id":70001,"name":"退款凭证.pdf","url":"https://example.com/refund-proof.pdf","size":245760,"type":1}] |
| └id | int64 | 附件 ID | 70001 |
| └name | string | 附件文件名 | 退款凭证.pdf |
| └size | int64 | 附件大小,单位字节 | 245760 |
| └url | string | 附件下载地址 | https://nos.example.com/ticket/refund-proof.pdf |
| └type | int32 | 附件类型 | 1 |
| └staffId | int64 | 创建人坐席 ID | 10001 |
| └crmForeignId | string | CRM 外部 ID | crm_ext_001 |
| └crmId | string | CRM ID | crm_78901 |
| └crmUserName | string | CRM 用户名 | 张三 |
| └crmUserPhone | string | CRM 手机号 | 13800138000 |
| └crmUserEmail | string | CRM 邮箱 | zhangsan@example.com |
| └follower | object | 关注人映射,key 为坐席 ID,value 为显示名。数字 key 不带双引号,返回内容为非标准 JSON,使用严格 JSON 解析器时需确认兼容性 | {10003:"客服小王"} |
| └corpId | int64 | 企业 ID | 1000 |
| └isCrossCorp | int32 | 是否跨企业工单:0-否,1-是 | 0 |
| └relationCorp | int64 | 关联企业 ID | 0 |
| └relationWorksheet | int64 | 关联工单 ID | 0 |
| └holderCorp | int64 | 当前处理人所属企业 ID | 1000 |
| └sender | string | 发送人显示名 | 张三 |
| └receiver | string | 接收人显示名(废弃字段) | 李四 |
| └foreword | string | 前言/摘要 | 用户提交了新的退款咨询 |
| └lastFinishTime | int64 | 最近完结时间(毫秒时间戳) | 1720092600000 |
| └fromType | int32 | 来源类型 | 2 |
| └connectionType | int32 | 关联类型:0-无关联,1-关联会话,2-社媒渠道 | 0 |
| └connectionId | int64 | 关联 ID | 0 |
| └holderPlatformId | int64 | 当前处理人平台 ID | 0 |
| └nodeInfoList | object[] | 节点信息列表 | [{"nodeName":"售后处理","nodeCode":"after_sale","holderId":10002,"groupId":20001}] |
| └nodeName | string | 节点名称 | 售后处理 |
| └nodeCode | string | 节点编码 | after_sale |
| └nodeType | string | 节点类型 | process |
| └processInstanceExeId | int64 | 流程实例执行 ID | 60001 |
| └holderId | int64 | 当前处理人 ID | 10002 |
| └holderIds | int64[] | 当前处理人 ID 列表 | [10002,10003] |
| └worksheetTargetInfos | object[] | 节点目标对象列表 | [{"targetId":10002,"targetName":"李四","targetType":1}] |
| └targetId | int64 | 目标对象 ID | 10002 |
| └targetName | string | 目标对象名称 | 李四 |
| └targetType | int32 | 目标对象类型 | 1 |
| └holderPlatformId | int64 | 当前处理人平台 ID | 1 |
| └groupId | int64 | 当前处理客服组 ID | 20001 |
| └bizStatus | int32 | 节点业务状态 | 10 |
| └selected | int32 | 节点是否被选中:0-否、1-是 | 1 |
| └groupName | string | 当前处理客服组名称 | 售后组 |
| └holderName | string | 当前处理人名称 | 李四 |
| └holderPlatformName | string | 当前处理平台名称 | 七鱼 |
| └system | int32 | 是否为系统节点:0-否、1-是 | 0 |
| └cooperationApprover | int32 | 是否为协作审批人:0-否、1-是 | 0 |
| └worksheetStatus | int32 | 节点对应的工单状态 | 10 |
错误码
| 状态码 | 描述 |
|---|---|
| 14001 | AppKey 不存在 |
| 14002 | checksum 校验失败 |
| 14003 | time 缺失,或请求时间戳与服务器时间误差超过 10 分钟 |
| 14004 | 请求体不是合法 JSON |
| 14106 | ticketId 缺失、为 0、企业管理员不存在、工单不存在或工单已删除 |
| 14500 | 服务内部异常;请求字段类型不符合要求或服务处理失败 |
postEndpoint
/openapi/v2/ticket/new/detailcurl -X POST "https://qiyukf.com/openapi/v2/ticket/new/detail?appKey=9f1d7c2b8a6e4d3c&time=1739347200&checksum=a1b2c3d4e5f607182930abcdefabcdef&checksumAlgorithm=0" \ -H "Content-Type: application/json" \ -d '{ "ticketId": 123456 }'{
"code": 200,
"data": {
"id": 123456,
"title": "售后咨询:订单取消后未退款",
"status": 10,
"priority": 8
}
}{
"code": 14001,
"message": "AppKey 不存在"
}{
"code": 14002,
"message": "checksum 校验失败"
}{
"code": 14003,
"message": "time 缺失,或请求时间戳与服务器时间误差超过 10 分钟"
}{
"code": 14004,
"message": "请求体不是合法 JSON"
}{
"code": 14106,
"message": "ticketId 缺失、为 0、企业管理员不存在、工单不存在或工单已删除"
}{
"code": 14500,
"message": "服务内部异常;请求字段类型不符合要求或服务处理失败"
}这篇文档有帮助吗?
获取工单详情
获取单张工单的完整信息。成功响应的 message 字段为工单详情 JSON 字符串,调用方需要按 JSON 再解析一次。响应包含:创建附件列表(attachments)、全部流转评论及其附件(comments)、自定义字段值列表(custom)。跨企业工单满足关联条件时,自定义字段从关联工单所在企业查询。
查询访客工单状态
查询指定访客的某张工单当前状态及流转历史。工单 userId 必须与访客匹配,否则视为无效工单返回错误。history=2 时返回最新一条有 comment 的流转记录,history=3 返回全部;默认不含历史。details=true 时追加标题、内容、优先级、分类、关注人、附加属性及附件列表。