在线系统数据接口
客服考勤统计
查询客服考勤统计数据,支持按客服组或客服筛选。时间范围不超过 31 天(可配置),默认查询近 30 天。model 参数:1-全部、2-按客服组、3-按客服。pageSize 上限 1000(可配置)。
请求参数
| 名称 | 类型 | 必填 | 描述 | 示例值 |
|---|---|---|---|---|
| appKey | string | 是 | 应用 AppKey | |
| time | int64 | 是 | 请求时间戳(秒) | |
| checksum | string | 是 | 请求签名校验和 |
请求体
| 名称 | 类型 | 必填 | 描述 | 示例值 |
|---|---|---|---|---|
| model | int64 | 否 | 查询模式:1-全部、2-按客服组、3-按客服 | 1 |
| startTime | int64 | 否 | 开始时间(毫秒时间戳),不传默认 30 天前 | 1685548800000 |
| endTime | int64 | 否 | 结束时间(毫秒时间戳),不传默认昨天 23:59:59 | 1688140799000 |
| staffGroupList | int64[] | 否 | 客服组 ID 列表(model=2 时有效) | |
| staffIdList | int64[] | 否 | 客服 ID 列表(model=3 时有效) | |
| page | int32 | 否 | 页码,从 1 开始 | 1 |
| pageSize | int32 | 否 | 每页条数,上限 1000(可配置) | 100 |
返回参数
| 名称 | 类型 | 描述 | 示例值 |
|---|---|---|---|
| code | int32 | 状态码,200 表示成功 | 200 |
| message | object | 客服考勤统计分页数据 | |
| └total | int32 | 符合条件的记录总数 | 150 |
| └result | object[] | 客服考勤统计记录列表 | |
| └id | int64 | 客服 ID | 10001 |
| └name | string | 客服姓名 | 张三 |
| └account | string | 客服账户 | agent01@example.com |
| └date | int64 | 统计日期,毫秒时间戳 | 1685548800000 |
| └firstLoginTs | int64 | 首次登录时间,毫秒时间戳 | 1720087200000 |
| └firstOnlineTs | int64 | 首次上线时间,毫秒时间戳 | 1720087200000 |
| └lastHangTs | int64 | 最后挂起时间,毫秒时间戳 | 1720087200000 |
| └lastLogoutTs | int64 | 最后登出时间,毫秒时间戳 | 1720087200000 |
| └loginDuration | int64 | 值班总时长,单位毫秒 | |
| └onlineDuration | int64 | 在线时长,单位毫秒 | |
| └onlineSessionDuration | int64 | 在线会话时长,单位毫秒 | |
| └onlineFreeDuration | int64 | 在线空闲时长,单位毫秒 | |
| └pcOnlineDuration | int64 | 电脑端在线时长,单位毫秒 | |
| └mobileOnlineDuration | int64 | 手机端在线时长,单位毫秒 | |
| └restDuration | int64 | 小休时长,单位毫秒 | |
| └restSessionDuration | int64 | 小休会话时长,单位毫秒 | |
| └breakTimes | int32 | 小休次数 | 1720087200000 |
| └restMealDuration | int64 | 就餐小休时长,单位毫秒 | |
| └restMettingDuration | int64 | 会议小休时长,单位毫秒 | |
| └restTrainDuration | int64 | 培训小休时长,单位毫秒 | |
| └restShortDuration | int64 | 休息小休时长,单位毫秒 | |
| └restWashroomDuration | int64 | 洗手间小休时长,单位毫秒 | |
| └restOtherDuration | int64 | 其他小休时长,单位毫秒 | |
| └hangDuration | int64 | 挂起时长,单位毫秒 | |
| └hangReceptionDuration | int64 | 挂起被动接待时长,单位毫秒 | |
| └hangNoneDuration | int64 | 挂起不接待时长,单位毫秒 | |
| └hangSessionDuration | int64 | 挂起会话时长,单位毫秒 | |
| └hangReceptionTimes | int32 | 挂起被动接待次数 | 1720087200000 |
| └hangNoneTimes | int32 | 挂起不接待次数 | 1720087200000 |
| └hangTimes | int32 | 挂起次数 | 1720087200000 |
| └restCustomeDuration | object | 自定义小休时长,key 为小休类型名称,value 为时长 | {"示例":1} |
错误码
| 状态码 | 描述 |
|---|---|
| 14001 | AppKey 不存在 |
| 14002 | checksum 校验失败 |
| 14003 | 请求时间戳与服务器时间误差超过 10 分钟 |
| 14004 | 请求体 JSON 格式错误或参数缺失 |
| 14500 | 服务内部异常 |
| 14501 | 时间范围超过限制(>31 天);结束时间不合法 |
postEndpoint
/openapi/statistic/staffAttendancecurl -X POST "https://qiyukf.com/openapi/statistic/staffAttendance?appKey=string&time=1739347200&checksum=a1b2c3d4e5f607182930abcdefabcdef" \ -H "Content-Type: application/json" \ -d '{}'{
"code": 200,
"message": {
"total": 150,
"result": [
{
"id": 10001,
"name": "张三",
"account": "agent01@example.com",
"date": 1685548800000,
"firstLoginTs": 1720087200000,
"firstOnlineTs": 1720087200000,
"lastHangTs": 1720087200000,
"lastLogoutTs": 1720087200000,
"loginDuration": 0,
"onlineDuration": 0,
"onlineSessionDuration": 0,
"onlineFreeDuration": 0,
"pcOnlineDuration": 0,
"mobileOnlineDuration": 0,
"restDuration": 0,
"restSessionDuration": 0,
"breakTimes": 1720087200000,
"restMealDuration": 0,
"restMettingDuration": 0,
"restTrainDuration": 0,
"restShortDuration": 0,
"restWashroomDuration": 0,
"restOtherDuration": 0,
"hangDuration": 0,
"hangReceptionDuration": 0,
"hangNoneDuration": 0,
"hangSessionDuration": 0,
"hangReceptionTimes": 1720087200000,
"hangNoneTimes": 1720087200000,
"hangTimes": 1720087200000,
"restCustomeDuration": {
"示例": 1
}
}
]
}
}{
"code": 14001,
"message": "AppKey 不存在"
}{
"code": 14002,
"message": "checksum 校验失败"
}{
"code": 14003,
"message": "请求时间戳与服务器时间误差超过 10 分钟"
}{
"code": 14004,
"message": "请求体 JSON 格式错误或参数缺失"
}{
"code": 14500,
"message": "服务内部异常"
}{
"code": 14501,
"message": "时间范围超过限制(>31 天);结束时间不合法"
}这篇文档有帮助吗?