接口URL
https://api.polyv.net/live/v3/user/playback/list
接口说明
(接口调用有频率限制,详细请查看)
1、接口用于获取账号下回放列表和点播列表, 注意:不包括暂存列表
2、接口支持https
返回结果格式
JSON
请求方式
GET
请求参数
参数名 | 必选 | 类型 | 说明 |
---|---|---|---|
appId | 是 | string | 从API设置中获取,在直播系统登记的appId |
timestamp | 是 | long | 当前13位毫秒级时间戳,3分钟内有效 |
sign | 是 | string | 签名,为32位大写的MD5值 |
page | 否 | string | 页码,默认为1 |
pageSize | 否 | string | 每页条数,默认为20,合法范围为1-1000 |
order | 否 | string | 排序规则,取值:timeDesc(按createdTime降序)、rankDesc(按rank降序)、time(按createdTime升序)、rank(按rank升序),默认是timeDesc |
listType | 否 | string | playback:回放列表,vod:点播列表,默认是 playback |
响应成功JSON示例:
{
"code": 200,
"status": "success",
"message": "",
"data": {
"pageSize": 100,
"pageNumber": 1,
"totalItems": 3,
"contents": [
{
"videoId": "88c40acaa6",
"videoPoolId": "a2dc4f2517fd872d6b2a4b1e470a91cb_a",
"userId": "a2dc4f2517",
"channelId": 1234567,
"title": "保利威",
"firstImage": "http://img.videocc.net/uimage/a/a2dc4f2517/b/a2dc4f2517fd872d6b2a4b1e470a91cb_0.jpg",
"duration": "00:00:56",
"myBr": "1",
"qid": null,
"seed": 0,
"ordertime": 0,
"createdTime": 1592040864000,
"lastModified": 1592040864000,
"rank": 2,
"asDefault": "N",
"url": "https://hls.videocc.net/source/a2dc4f2517/b/a2dc4f2517fd872d6b2a4b1e470a91cb_1.m3u8",
"channelSessionId": "fo76et1ftb",
"status": "Y",
"fileId": "d2c55e369aad1fd5f732141cb4779f4a",
"startTime": "20200609100810",
"liveType": "alone",
"errorCount": null,
"mergeinfo": "[\"20200609100810,56,fo76et1ftb\"]",
"watchUrl": "//live.polyv.cn/watch/1762629?vid=88c40acaa6"
},
{
"videoId": "c70649db67",
"videoPoolId": "a2dc4f25177fc4fcb389e871b2d5ee04_a",
"userId": "a2dc4f2517",
"channelId": 1810121,
"title": "保利威",
"firstImage": "http://img.videocc.net/uimage/a/a2dc4f2517/4/a2dc4f25177fc4fcb389e871b2d5ee04_0.jpg",
"duration": "00:01:08",
"myBr": "1",
"qid": null,
"seed": 0,
"ordertime": 0,
"createdTime": 1593417163000,
"lastModified": 1593417163000,
"rank": 1,
"asDefault": "N",
"url": "https://hls.videocc.net/source/a2dc4f2517/4/a2dc4f25177fc4fcb389e871b2d5ee04_1.m3u8",
"channelSessionId": "fothpt2mpv",
"status": "Y",
"fileId": "5db4c890929c4aa71503e7ef2615c6c3",
"startTime": "20200629153802",
"liveType": "alone",
"mergeinfo": null,
"watchUrl": "//live.polyv.cn/watch/1810121?vid=c70649db67"
}
],
"startRow": 1,
"firstPage": true,
"lastPage": true,
"prePageNumber": 1,
"totalPages": 1,
"endRow": 3,
"nextPageNumber": 1,
"limit": 3,
"offset": 0
}
}
响应失败JSON示例:
未输入appId
{
"code": 400,
"status": "error",
"message": "appId is required.",
"data": ""
}
appId不正确
{
"code": 400,
"status": "error",
"message": "application not found.",
"data": ""
}
时间戳错误
{
"code": 400,
"status": "error",
"message": "invalid timestamp.",
"data": ""
}
签名错误
{
"code": 403,
"status": "error",
"message": "invalid signature.",
"data": ""
}
pageSize范围错误,合法值为1-1000
{
"code": 403,
"status": "error",
"message": "number range error",
"data": ""
}
字段说明
参数名 | 说明 |
---|---|
code | 响应代码,成功为200,失败为400,签名错误为403,异常错误500 |
status | 成功为success,失败为error |
data | 响应结果 |
message | 异常错误信息 |
videoId | 直播系统生成的id |
videoPoolId | 点播视频vid |
userId | 点播后台用户id |
channelId | 回放视频对应的直播频道id |
title | 视频标题 |
firstImage | 视频首图 |
duration | 视频长度 |
myBr | 默认视频的播放清晰度,1为流畅,2为高清,3为超清 |
qid | 访客信息收集id |
seed | 视频加密状态,1表示为加密状态,0为非加密 |
createdTime | 添加为回放视频的日期 |
lastModified | 视频最后修改日期 |
rank | 排序值,值越大优先级越高 |
asDefault | 是否为默认播放视频,值为Y/N |
url | 视频播放地址,注:如果视频为加密视频,则此地址无法访问 |
channelSessionId | 用于PPT请求数据,与PPT直播的回放相关,普通直播回放值为null |
mergeInfo | 视频合并信息 |
startTime | 直播开始时间 |
watchUrl | 观看回放视频的地址 |
qid | 关联点播视频的访客信息收集设置 |
ordertime | 关联点播视频的排序字段 |
status | 关联点播视频的状态,60、61审核通过 |
fileUr1 | 视频地址 |
fileId | 回放视频转存前的暂存fileId |
liveType | 直播类型:alone(活动直播);ppt(三分屏);topclass(大班课);seminar(研讨会) |
width | 视频宽度 |
height | 视频高度 |
origin | 转存文件来源:manual(手动录制);auto(自动录制);merge(合并);clip(裁剪) |
callbackUrl | 转存视频时设置的回调地址 |
errorCount | 处理失败的次数 |
lang | 语言 zh_CN中文、EN英文 |
videoIdEN | 英文回放videoId |
enFileUrl | 英文回放文件地址 |
data.status | 只返回状态为Y的视频 |
pageNumber | 视频列表页数(默认以20条数据为1页) |
totalItems | 回放视频总个数 |
firstPage | 是否为第一页,值为:true/false |
lastPage | 是否为最后一页,值为:true/false |
nextPageNumber | 下一页编号 |
prePageNumber | 上一页编号 |
totalPages | 总页数 |
startRow | 当前页第一个视频在回放视频中的位置 |
endRow | 当前页最后一个视频在回放视频中的位置 |
limit | 当前页视频个数 |
Java请求示例
public void test() {
String url = "https://api.polyv.net/live/v3/user/playback/list";
// 用户对应的appId和加密串
String appId = "xxxxxxxxx";
String appSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxx";
Map<String, String> params = new HashMap<>();
params.put("order", "timeDesc");
params.put("listType", "playback");
PolyvTool.setLiveSign(params, appId, appSecret);
// 调用Polyv的httpClient工具类发送请求
String content = HttpClientUtil.getInstance()
.sendHttpGet(url + "?" + PolyvTool.mapJoinNotEncode(params));
System.out.println(content);
}
签名规则(PolyvTool.java文件代码查看)
https://dev.polyv.net/2020/liveproduct/l-api/rule/live-api-java-detail/