Polyv Help Center

Help Center

Search Videos

Updated: 2022-05-23 19:02:59

Interface URL

http://api.polyv.net/v2/video/search-videos

Interface Description

Search for videos

Supported Format

JSON

Request Method

GET

Request Limit

TRUE

Request Parameters

Parameter Required Type & Scope Description
userid Yes string User ID
ptime Yes long Current 13-digit millisecond timestamp, valid for 3 minutes
sign Yes String Signature, a 40-character uppercase SHA1 value [See Signature Generation Rules]
filters No string Video information to return, separated by commas. Values: basicInfo, metaData, transcodeInfo, snapshotInfo. Default returns only basicInfo
cateId No long Video category ID
title No string Fuzzy search by title
tag No string Fuzzy search by video tag
uploader No string Uploader
status No string Video status, multiple statuses separated by commas. To query published videos, pass either 61 or 60, e.g., "61,50"
containSubCate No boolean Whether to include subcategories. true: include, false: exclude
startTime No long Query by creation time range, start timestamp, 13-digit timestamp
endTime No long End timestamp, 13-digit timestamp
encrypted No boolean Whether encrypted
playAuthEnable No boolean Whether playback authorization is enabled
sort No string Result sorting. Values: creationTimeAsc, creationTimeDesc, playTimesAsc, playTimesDesc. Default is creationTimeAsc
page No int Page number, default is 1
pageSize No int Page size, default is 10, maximum is 1000

JSON Example

{
    "code": 200,
    "status": "success",
    "message": "success",
    "data": {
        "pageNumber": 1,
        "totalPages": 13,
        "pageSize": 1,
        "contents": [
            {
                "vid": "a2dc4f25173df1362065bd0d3732a30e_a",
                "basicInfo": {
                    "title": "a2dc4f25175d64f185bf631591fb08d0",
                    "description": "",
                    "duration": 78.0,
                    "coverURL": "https://img.videocc.net/uimage/a/a2dc4f2517/e/a2dc4xxxxxxxf1362065bd0d3732a30e_0_b.jpg",
                    "creationTime": "2021-04-16 11:50:34",
                    "updateTime": "2021-04-16 11:52:45",
                    "size": 36251552,
                    "status": 61,
                    "cateId": 1,
                    "cateName": "默认分类",
                    "tags": "",
                    "uploader": "主账号",
                    "playTimes": 1
                },
                "metaData": {
                    "size": 36251552,
                    "format": "mp4",
                    "duration": 78.0,
                    "bitrate": 3549,
                    "fps": 29,
                    "height": 720,
                    "width": 1280,
                    "codec": "h264"
                },
                "transcodeInfos": [
                    {
                        "playUrl": null,
                        "definition": "LD",
                        "bitrate": 548,
                        "duration": 78.0,
                        "encrypt": true,
                        "format": "pdx",
                        "fps": 29,
                        "height": 720,
                        "width": 1280,
                        "status": "normal"
                    },
                    {
                        "playUrl": "https://hls.videocc.net/a2dc4f2517/e/a2dc4xxxxxxxf1362065bd0d3732a30e_1.m3u8",
                        "definition": "LD",
                        "bitrate": 548,
                        "duration": 78.0,
                        "encrypt": true,
                        "format": "hls",
                        "fps": 29,
                        "height": 720,
                        "width": 1280,
                        "status": "normal"
                    },
                    {
                        "playUrl": null,
                        "definition": "SD",
                        "bitrate": 997,
                        "duration": 78.0,
                        "encrypt": true,
                        "format": "pdx",
                        "fps": 29,
                        "height": 720,
                        "width": 1280,
                        "status": "normal"
                    },
                    {
                        "playUrl": "https://hls.videocc.net/a2dc4f2517/e/a2dc4xxxxxxxf1362065bd0d3732a30e_2.m3u8",
                        "definition": "SD",
                        "bitrate": 997,
                        "duration": 78.0,
                        "encrypt": true,
                        "format": "hls",
                        "fps": 29,
                        "height": 720,
                        "width": 1280,
                        "status": "normal"
                    },
                    {
                        "playUrl": null,
                        "definition": "HD",
                        "bitrate": 1404,
                        "duration": 78.0,
                        "encrypt": true,
                        "format": "pdx",
                        "fps": 29,
                        "height": 720,
                        "width": 1280,
                        "status": "normal"
                    },
                    {
                        "playUrl": "https://hls.videocc.net/a2dc4f2517/e/a2dc4xxxxxxxf1362065bd0d3732a30e_3.m3u8",
                        "definition": "HD",
                        "bitrate": 1404,
                        "duration": 78.0,
                        "encrypt": true,
                        "format": "hls",
                        "fps": 29,
                        "height": 720,
                        "width": 1280,
                        "status": "normal"
                    }
                ],
                "snapshotInfo": {
                    "imageUrl": [
                        "https://img.videocc.net/uimage/a/a2dc4f2517/e/a2dc4xxxxxxxf1362065bd0d3732a30e_0.jpg",
                        "https://img.videocc.net/uimage/a/a2dc4f2517/e/a2dc4xxxxxxxf1362065bd0d3732a30e_1.jpg",
                        "https://img.videocc.net/uimage/a/a2dc4f2517/e/a2dc4f25173df1362065bd0d3732a30e_2.jpg",
                        "https://img.videocc.net/uimage/a/a2dc4f2517/e/a2dc4xxxxxxxf1362065bd0d3732a30e_3.jpg",
                        "https://img.videocc.net/uimage/a/a2dc4f2517/e/a2dc4xxxxxxxf1362065bd0d3732a30e_4.jpg",
                        "https://img.videocc.net/uimage/a/a2dc4f2517/e/a2dc4xxxxxxxf1362065bd0d3732a30e_5.jpg"
                    ]
                }
            }
        ],
        "totalItems": 13
    }
}

Error Response JSON

签名不正确
{
"code":400,
"status":"error",
"message":"the sign is not right",
"data":""
}
时间戳过期
{
"code":400,
"status":"error",
"message":"ptime is too old.",
"data":""
}
内部错误,或传了非法参数,程序转换异常
{
    "code": 500,
    "status": "fail",
    "message": "undefined error",
    "data": null
}

Field Description

Field Description
code Response HTTP status code
status Status
message Error description
data Returned data
data.pageNumber Current page number
data.pageSize Items per page
data.totalItems Total number of items
data.contents Result list
vid Video ID
basicInfo.title Video title
basicInfo.description Video description
basicInfo.duration Source video duration, in seconds
basicInfo.coverURL Cover image URL, large image
basicInfo.creationTime Creation time
basicInfo.updateTime Update time
basicInfo.size Source file size, in Bytes
basicInfo.status Video status code
basicInfo.cateId Category ID, e.g., 1 for root directory
basicInfo.cateName Category name
basicInfo.tags Tags
basicInfo.uploader Uploader
basicInfo.playTimes Video play count
transcodeInfos.playUrl Playback URL
transcodeInfos.definition Definition: SOURCE, LD, SD, HD
transcodeInfos.duration Duration, in seconds
transcodeInfos.encrypt true for encrypted video, false for unencrypted
transcodeInfos.format Transcoding format, e.g., mp4, flv, pdx, hls
transcodeInfos.fps Video frame rate
transcodeInfos.bitrate Bitrate in kbps
transcodeInfos.height Resolution height, in px
transcodeInfos.width Resolution width, in px
transcodeInfos.status Video status: normal or unavailable
metaData Source file size, in Bytes
metaData.size Source file size, in Bytes
metaData.format Video container type, e.g., mp4, flv
metaData.duration Source video duration, in seconds
metaData.bitrate Video bitrate, in bps
metaData.fps Video frame rate
metaData.height Resolution height, in px
metaData.width Resolution width, in px
metaData.codec Encoding format, e.g., h264, h265
snapshotInfo.imageUrl Array of screenshot URLs
Video Status Code Meaning
60/61 Published
10 Waiting for encoding
20 Encoding
50 Waiting for review
51 Review failed
-1 Deleted

Java Request Example

@Test
    public void testSearchVideos() throws Exception {
        String url = "http://api.polyv.net/v2/video/search-videos";
        long cateId = 1L;
        boolean containSubCate = true;
        String filters = "basicInfo,metaData,transcodeInfo,snapshotInfo";
        Map<String, String> params = new HashMap<>();
        params.put("userid", userid);
        params.put("filters", filters);
        params.put("containSubCate", String.valueOf(containSubCate));
        params.put("cateId", String.valueOf(cateId));
        params.put("ptime", String.valueOf(System.currentTimeMillis()));
        params.put("sign", getSign(params, secretkey));
        String response = HttpClientUtil.getInstance().sendHttpGet(url + "?" + PolyvTool.mapJoinNotEncode(params));
        System.out.println(response);
    }
联系客服,在线咨询