直播服务端API文档

1 接口概述

1.1 请求说明

1.1.1 服务地址

网易云通信直播服务使用的域名访问地址为:vcloud.163.com。

1.1.2 通信协议

网易云通信直播服务的所有接口均通过HTTPS进行通信,提供高安全性的通信通道。

1.1.3 请求方法

所有接口都只支持POST请求。

1.1.4 字符编码

所有接口均使用UTF-8编码。

1.2 公共参数

所有接口均需要放置以下公共参数在请求头中,用于标识用户和接口鉴权。后续的接口说明不再对这些参数进行说明,但每次发起请求均需要携带。

参数 类型 必须 说明
AppKey String 开发者平台分配的AppKey
Nonce String 随机数(随机数,最大长度128个字符)
CurTime String 当前UTC时间戳,从1970年1月1日0点0分0秒开始到现在的秒数
CheckSum String 服务器认证需要,SHA1(AppSecret+Nonce+CurTime),16进制字符小写

1.3 接口鉴权

接口通过请求头中的公共参数进行鉴权。用户通过在用户中心->安全中心获取到的一对安全凭证进行SHA1(AppSecret+Nonce+CurTime)计算。

重要提示: 本文档中提供的所有接口均面向开发者服务器端调用,用于计算CheckSum的AppSecret开发者应妥善保管,可在应用的服务器端存储和使用,但不应存储或传递到客户端,也不应在网页等前端代码中嵌入。

计算CheckSum的java代码举例如下:

import java.security.MessageDigest;
public class CheckSumBuilder {
    public static String getCheckSum(String appSecret, String nonce, String curTime) {
        return encode("sha1", appSecret + nonce + curTime);
    }
    private static String encode(String algorithm, String value) {
        if (value == null) {
            return null;
        }
        try {
            MessageDigest messageDigest = MessageDigest.getInstance(algorithm);
            messageDigest.update(value.getBytes());
            return getFormattedText(messageDigest.digest());
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
    private static String getFormattedText(byte[] bytes) {
        int len = bytes.length;
        StringBuilder buf = new StringBuilder(len * 2);
        for (int j = 0; j < len; j++) {
            buf.append(HEX_DIGITS[(bytes[j] >> 4) & 0x0f]);
            buf.append(HEX_DIGITS[bytes[j] & 0x0f]);
        }
        return buf.toString();
    }
    private static final char[] HEX_DIGITS = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
}

1.4 返回说明

所有接口返回类型为JSON。返回字段如下:

名称 类型 说明
code Int 返回结果的状态码
ret String 返回的结果集
msg String 当返回结果的状态码不为200时,包含的错误信息

2 频道管理

2.1 创建频道

2.1.1 接口说明

创建一个直播频道

2.1.2 请求说明

POST https://vcloud.163.com/app/channel/create HTTP/1.1
Content-Type: application/json;charset=utf-8

2.1.3 参数说明

参数 类型 说明 必须
name String 频道名称(最大长度64个字符,只支持中文、字母、数字和下划线)
type int 频道类型(0:rtmp)

2.1.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"name":"channel_name", "type":0}' https://vcloud.163.com/app/channel/create

Java示例,以下各接口的HttpClient调用方式参考此处:

import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
import org.apache.http.Consts;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class Test {
    public static void main(String[] args) throws Exception{
        DefaultHttpClient httpClient = new DefaultHttpClient();
        String url = "https://vcloud.163.com/app/channel/create";
        HttpPost httpPost = new HttpPost(url);

        String appKey = "94kid09c9ig9k1loimjg012345123456";
        String appSecret = "123456789012";
        String nonce =  "1";
        String curTime = String.valueOf((new Date()).getTime() / 1000L);
        String checkSum = CheckSumBuilder.getCheckSum(appSecret, nonce ,curTime);//参考 计算CheckSum的java代码

        // 设置请求的header
        httpPost.addHeader("AppKey", appKey);
        httpPost.addHeader("Nonce", nonce);
        httpPost.addHeader("CurTime", curTime);
        httpPost.addHeader("CheckSum", checkSum);
        httpPost.addHeader("Content-Type", "application/json;charset=utf-8");

        // 设置请求的参数
        StringEntity params = new StringEntity("{\"name\":\"netease_vcloud\", \"type\":0}",Consts.UTF_8);
        httpPost.setEntity(params);

        // 执行请求
        HttpResponse response = httpClient.execute(httpPost);

        // 打印执行结果
        System.out.println(EntityUtils.toString(response.getEntity(), "utf-8"));
    }
}

2.1.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
cid String 频道ID,32位字符串
ctime Long 创建频道的时间戳
name String 频道名称
pushUrl String 推流地址
httpPullUrl String http拉流地址
hlsPullUrl String hls拉流地址
rtmpPullUrl String rtmp拉流地址
msg String 错误信息
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX,
    "ret" : {
        "cid" : XXX,
        "ctime" : XXX,
        "pushurl" : XXX,
        "httpPullUrl" : XXX,
        "hlsPullUrl" : XXX,
        "rtmpPullUrl" : XXX
    }
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "ret":{
        "httpPullUrl":"http://v1.live.126.net/live/cidxxxxxxxxx.flv",
        "hlsPullUrl":"http://pullhls1.live.126.net/live/cidxxxxxxxxx/playlist.m3u8",
        "rtmpPullUrl":"rtmp://v1.live.126.net/live/cidxxxxxxxxx",
        "name":"channel_name",
        "pushUrl":"rtmp://p1.live.126.net/live/cidxxxxxxxxx?wsSecret=312e11af6136a77b46afd0ebbb3102af&wsTime=1469411599",
        "ctime":1469411598850,
        "cid":"cidxxxxxxxxx"
    },
    "code":200
}

//失败结果示例
{
    "code":611,
    "msg":"频道名称已经存在"
}

2.1.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
604 频道添加失败
607 用户信息不存在
610 频道名称为空
611 频道名称已经存在
612 频道类型错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
635 服务未开通,请联系商务申请开通!

2.2 修改频道

2.2.1 接口说明

修改直播频道信息

2.2.2 请求说明

POST https://vcloud.163.com/app/channel/update HTTP/1.1
Content-Type: application/json;charset=utf-8

2.2.3 参数说明

参数 类型 说明 必须
name String 频道名(最大长度64个字符)
cid String 频道ID,32位字符串
type int 频道类型 ( 0 : rtmp)

2.2.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"name":"channel_name", "cid":"cidxxxxxxxxx", "type":0}' https://vcloud.163.com/app/channel/update

2.2.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
msg String 错误信息
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX,
    "ret" : {

    }
}

//错误返回示例
"Content-Type": "application/json; charset=utf-8"
{
    "code":609,
    "msg":"频道ID为空"
}

2.2.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
605 频道更新失败
607 用户信息不存在
609 频道ID为空
610 频道名称为空
611 频道名称已经存在
612 频道类型错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空

2.3 删除频道

2.3.1 接口说明

删除一个直播频道

2.3.2 请求说明

POST https://vcloud.163.com/app/channel/delete HTTP/1.1
Content-Type: application/json;charset=utf-8

2.3.3 参数说明

参数 类型 说明 必须
cid String 频道ID,32位字符串

2.3.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid":"1452b15e9b6941a384a6a5688d478620"}' https://vcloud.163.com/app/channel/delete

2.3.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
msg String 错误信息
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX,
    "ret" : {

    }
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "code" : 200,
    "ret" : {}
}

2.3.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
603 频道删除失败
607 用户信息不存在
609 频道ID为空
613 CheckSum为空
614 AppKey为空
615 CurTime为空

2.4 获取频道状态

2.4.1 接口说明

获取一个直播频道的信息

2.4.2 请求说明

POST https://vcloud.163.com/app/channelstats HTTP/1.1
Content-Type: application/json;charset=utf-8

2.4.3 参数说明

参数 类型 说明 必须
cid String 频道ID,32位字符串

2.4.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid":"cidxxxxxxxxx"}' https://vcloud.163.com/app/channelstats

2.4.5 返回说明

http 响应:json

参数 类型 说明
ctime Long 创建频道的时间戳
cid String 频道ID,32位字符串
name String 频道名称
status int 频道状态(0:空闲; 1:直播; 2:禁用; 3:直播录制)
type int 频道类型 ( 0 : rtmp, 1 : hls, 2 : http)
uid Long 用户ID,是用户在网易云视频与通信业务的标识,用于与其他用户的业务进行区分。通常,用户不需关注和使用。
needRecord int 1-开启录制; 0-关闭录制
format int 1-flv; 0-mp4
duration int 录制切片时长(分钟),默认120分钟
filename String 录制后文件名
recordStatus String 网易云内部维护用字段,用户不需关注。后续版本将删除,请勿调用
msg String 错误信息
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX,
    "ret" : {
        "ctime" : XXX,
        "cid" : XXX,
        "name" : XXX,
        "status" : XXX,
        "uid" : XXX,
        "needRecord" : XXX,
        "format" : XXX,
        "duration" : XXX,
        "filename" : XXX
    }
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "ret":{
        "needRecord":0,
        "uid":10001,
        "duration":120,
        "status":0,
        "name":"channel_name",
        "filename":"channel_name",
        "format":1,
        "type":0,
        "ctime":1469411598850,
        "cid":"cidxxxxxxxxx"
    },
    "code":200
}

2.4.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
602 查询失败
607 用户信息不存在
609 频道ID为空
613 CheckSum为空
614 AppKey为空
615 CurTime为空
617 频道信息与当前用户不匹配

2.5 获取频道列表

2.5.1 接口说明

获取用户直播频道列表

2.5.2 请求说明

POST https://vcloud.163.com/app/channellist HTTP/1.1
Content-Type: application/json;charset=utf-8

2.5.3 参数说明

参数 类型 说明 必须
records int 单页记录数,默认值为10
pnum int 要取第几页,默认值为1
ofield String 排序的域,支持的排序域为:ctime(默认)
sort int 升序还是降序,1升序,0降序,默认为desc

2.5.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"records":10, "pnum":1, "ofield": "ctime", "sort": 0}' https://vcloud.163.com/app/channellist

2.5.5 返回说明

http 响应:json

参数 类型 说明
ctime Long 创建频道的时间戳
cid String 频道ID,32位字符串
name String 频道名称
status int 频道状态(0:空闲; 1:直播; 2:禁用; 3:直播录制)
type int 频道类型 ( 0 : rtmp, 1 : hls, 2 : http)
uid Long 用户ID,是用户在网易云视频与通信业务的标识,用于与其他用户的业务进行区分。通常,用户不需关注和使用。
needRecord int 1-开启录制; 0-关闭录制
format int 1-flv; 0-mp4
duration int 录制切片时长(分钟),默认120分钟
filename String 录制后文件名
msg String 错误信息
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX,
    "ret" : {
        "list" : [
            {
                "ctime" : XXX,
                "cid" : XXX,
                "name" : XXX,
                "status" : XXX,
                "uid" : XXX,
                "needRecord" : XXX,
                "format" : XXX,
                "duration" : XXX,
                "filename" : XXX
            },

            {
                "ctime" : XXX,
                "cid" : XXX,
                "name" : XXX,
                "status" : XXX,
                "uid" : XXX,
                "needRecord" : XXX,
                "format" : XXX,
                "duration" : XXX,
                "filename" : XXX
            },

            ...

        ]
    }
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"        
{
    "ret":{
        "pnum":1,
        "list":[
            {
                "needRecord":0,
                "uid":10001,
                "duration":120,
                "status":0,
                "name":"channel_name",
                "filename":"channel_name",
                "format":1,
                "type":0,
                "ctime":1469411598850,
                "cid":"cidxxxxxxxxx"
            },
            {
                "needRecord":0,
                "uid":10001,
                "duration":120,
                "status":0,
                "name":"11111",
                "filename":"11111",
                "format":1,
                "type":0,
                "ctime":1458701553160,
                "cid":"614a2eb9741f46658f400e681e9bdee0"
            }
        ],
        ...
    },
    "code":200
}

2.5.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
602 查询失败
607 用户信息不存在
613 CheckSum为空
614 AppKey为空
615 CurTime为空
618 查询数据信息不存在
631 请求参数错误

2.6 重新获取推流地址

2.6.1 接口说明

用户创建频道时获取的推流地址失效时,重新获取推流地址。

2.6.2 请求说明

POST https://vcloud.163.com/app/address HTTP/1.1
Content-Type: application/json;charset=utf-8

2.6.3 参数说明

参数 类型 说明 必须
cid String 频道ID,32位字符串

2.6.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid":"cidxxxxxxxxx"}' https://vcloud.163.com/app/address

2.6.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
pushUrl String 推流地址
httpPullUrl String http拉流地址
hlsPullUrl String hls拉流地址
rtmpPullUrl String rtmp拉流地址
msg String 错误信息
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX,
    "ret" : {
        "pushUrl" : XXX,
        "httpPullUrl" : XXX,
        "hlsPullUrl" : XXX,
        "rtmpPullUrl" : XXX
    }
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "ret":{
        "httpPullUrl":"http://v1.live.126.net/live/cidxxxxxxxxx.flv",
        "hlsPullUrl":"http://pullhls1.live.126.net/live/cidxxxxxxxxx/playlist.m3u8",
        "rtmpPullUrl":"rtmp://v1.live.126.net/live/cidxxxxxxxxx",
        "name":"channel_name",
        "pushUrl":"rtmp://p1.live.126.net/live/cidxxxxxxxxx?wsSecret=582e02209271e6bf7fc762e68a7c51cc&wsTime=1469416637"
    },
    "code":200
}

2.6.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
602 查询失败:获取直播地址失败
607 用户信息不存在
609 频道ID为空
613 CheckSum为空
614 AppKey为空
615 CurTime为空
617 频道信息与当前用户不匹配

2.7 设置频道为录制状态

2.7.1 接口说明

设置频道为录制状态,用户推流时,即可录制为视频文件。如无需改变频道录制状态,仅修改频道录制的格式、文件名、切片时长等信息,请调用2.20

2.7.2 请求说明

POST https://vcloud.163.com/app/channel/setAlwaysRecord HTTP/1.1
Content-Type: application/json;charset=utf-8

2.7.3 参数说明

参数 类型 说明 必须
cid String 频道ID,32位字符串
needRecord int 1-开启录制; 0-关闭录制
format int 1-flv; 0-mp4
duration int 录制切片时长(分钟),5~120分钟
filename String 录制后文件名(只支持中文、字母和数字),格式为filename_YYYYMMDD-HHmmssYYYYMMDD-HHmmss, 文件名录制起始时间(年月日时分秒) -录制结束时间(年月日时分秒)

2.7.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx", "needRecord": 1, "format":1, "duration":20, "filename":"record"}' https://vcloud.163.com/app/channel/setAlwaysRecord

2.7.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
msg String 错误信息
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX
}

//错误返回示例
"Content-Type": "application/json; charset=utf-8"
{
    "code":723,
    "msg":"使用直播录制功能需开通云点播服务"
}

2.7.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
617 频道信息与当前用户不匹配
618 查询数据信息不存在
631 请求参数错误
723 使用直播录制功能需开通云点播服务

2.8 禁用频道

2.8.1 接口说明

禁用用户正在直播的频道。

2.8.2 请求说明

POST https://vcloud.163.com/app/channel/pause HTTP/1.1
Content-Type: application/json;charset=utf-8

2.8.3 参数说明

参数 类型 说明 必须
cid String 频道ID,32位字符串

2.8.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid":"cidxxxxxxxxx"}' https://vcloud.163.com/app/channel/pause

2.8.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
msg String 错误信息
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "code" : 200
}

2.8.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
617 频道信息与当前用户不匹配
618 查询数据信息不存在
629 频道禁用失败
631 请求参数错误
638 访问频率超限,每个应用每天对禁用和恢复频道的接口总调用上限为400次。单次和批量接口统一计算,批量操作每频道每次操作计一次调用。

2.9 批量禁用频道

2.9.1 接口说明

禁用一组用户正在直播的频道。(注意:每应用每天对禁用和恢复频道的接口总调用上限为400次。单次和批量接口统一计算,批量操作每频道每次操作计一次调用。超限后,批量禁用或恢复接口可能部分执行失败,请以successList返回内容为准。)

2.9.2 请求说明

POST https://vcloud.163.com/app/channellist/pause HTTP/1.1
Content-Type: application/json;charset=utf-8

2.9.3 参数说明

参数 类型 说明 必须
cidList JsonArray 频道ID列表

2.9.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cidList": ["cidxxxxxxxxx", "cidxxxxxxxxx1", "cidxxxxxxxxx2"]}' https://vcloud.163.com/app/channellist/pause

2.9.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
msg String 错误信息
successList JsonArray 成功禁用cid列表
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX,
    "ret" : {
        "successList" : [
             XXX,
             XXX,
             XXX,
             ...
         ]
    }
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "ret":{
        "successList":[
            "cidxxxxxxxxx",
            "cidxxxxxxxxx1",
            "cidxxxxxxxxx2"
        ]
    },
    "code":200
}

2.9.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
631 请求参数错误

2.10 恢复频道

2.10.1 接口说明

恢复用户被禁用的频道。

2.10.2 请求说明

POST https://vcloud.163.com/app/channel/resume HTTP/1.1
Content-Type: application/json;charset=utf-8

2.10.3 参数说明

参数 类型 说明 必须
cid String 频道ID,32位字符串

2.10.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid":"cidxxxxxxxxx"}' https://vcloud.163.com/app/channel/resume

2.10.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
msg String 错误信息
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "code" : 200
}

2.10.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
617 频道信息与当前用户不匹配
618 查询数据信息不存在
630 频道恢复失败
631 请求参数错误
638 访问频率超限,每个应用每天对禁用和恢复频道的接口总调用上限为400次。单次和批量接口统一计算,批量操作每频道每次操作计一次调用。

2.11 批量恢复频道

2.11.1 接口说明

恢复一组用户正在直播的频道。(注意:每应用每天对禁用和恢复频道的接口总调用上限为400次。单次和批量接口统一计算,批量操作每频道每次操作计一次调用。超限后,批量禁用或恢复接口可能部分执行失败,请以successList返回内容为准。)

2.11.2 请求说明

POST https://vcloud.163.com/app/channellist/resume HTTP/1.1
Content-Type: application/json;charset=utf-8

2.11.3 参数说明

参数 类型 说明 必须
cidList JsonArray 频道ID列表

2.11.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cidList": ["cidxxxxxxxxx", "cidxxxxxxxxx1", "cidxxxxxxxxx2"]}' https://vcloud.163.com/app/channellist/resume

2.11.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
msg String 错误信息
successList JsonArray 成功禁用cid列表
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX,
    "ret" : {
        "successList" : [
             XXX,
             XXX,
             XXX,
             ...
         ]
    }
}

//成功返回示例
"Content-Type": "application/json; charset=utf-8"
{
    "ret":{
        "successList":[
            "cidxxxxxxxxx",
            "cidxxxxxxxxx1",
            "cidxxxxxxxxx2"
        ]
    },
    "code":200
}

2.11.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
631 请求参数错误

2.12 获取录制视频文件列表

2.12.1 接口说明

获取某频道录制视频文件列表,按生成时间由近至远提供分页。

2.12.2 请求说明

POST https://vcloud.163.com/app/videolist HTTP/1.1
Content-Type: application/json;charset=utf-8

2.12.3 参数说明

参数 类型 说明 必须
cid String 频道ID,32位字符串
records int 单页记录数,默认值为10
pnum int 要取第几页,默认值为1

2.12.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid":"cidxxxxxxxxx","records":xx, "pnum":xx}' https://vcloud.163.com/app/videolist
curl -X POST -H "Content-Type: application/json" -H "AppKey: 027338bf05cc4a65b5d98bc9d6af80b3" -H "Nonce: 12345" -H "CurTime: 1469427735815" -H "CheckSum: 86d9602149544997a86769a8d6088cabb12b212b" -d '{"cid":"c82a2b4afe124f53b41b30296768103b","records":10, "pnum":1}' https://vcloud.163.com/app/videolist

2.12.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
msg String 错误信息
videoList JsonArray 录制视频列表
video_name String 录制后文件名,格式为filename_YYYYMMDD-HHmmssYYYYMMDD-HHmmss, 文件名录制起始时间(年月日时分秒) -录制结束时间(年月日时分秒)
orig_video_key String 视频文件在点播桶中的存储路径
uid Long 用户ID,是用户在网易云视频与通信业务的标识,用于与其他用户的业务进行区分。通常,用户不需关注和使用。
vid Long 视频文件ID
pnum Long 当前页
totalRecords Long 总记录数
totalPnum Long 总页数
records Long 单页记录数
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX,
     "ret" : {
        "pnum" : XXX,
        "totalRecords" : XXX,
        "totalPnum" : XXX,
        "records" : XXX,
        "videoList" : [
            {
                "video_name" : XXX,
                "orig_video_key" : XXX,
                "uid" : XXX,
                "vid" : XXX
            },

            {
                "video_name" : XXX,
                "orig_video_key" : XXX,
                "uid" : XXX,
                "vid" : XXX
            },

            ...

        ]
    }
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "ret":{
        "pnum" : 1,
        "totalRecords" : 69,
        "totalPnum" : 7,
        "records" : 10,
        "videoList":[
            {
                "video_name":"new_20160628-113352_20160628-133351",
                "orig_video_key":"1_291e3a9d662c4cfaa672bad689f0750b_1467084832593_1467092031353_1312-00001.flv",
                "uid":24133,
                "vid":42
            },
            {
                "video_name":"new_20160628-093349_20160628-113352",
                "orig_video_key":"1_291e3a9d662c4cfaa672bad689f0750b_1467077629013_1467084832593_1312-00000.flv",
                "uid":24133,
                "vid":41
            },
            ...
        ]
    },
    "code":200
}

2.12.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
617 频道信息与当前用户不匹配
618 频道信息不存在
631 请求参数错误

2.13 获取某一时间范围的录制视频文件列表

2.13.1 接口说明

通过开始和结束的时间点,获取某频道录制视频文件列表。(时间跨度不能超过1周)

2.13.2 请求说明

POST https://vcloud.163.com/app/vodvideolist HTTP/1.1
Content-Type: application/json;charset=utf-8

2.13.3 参数说明

参数 类型 说明 必须
cid String 频道ID,32位字符串
beginTime long 查询的起始时间戳(毫秒)
endTime long 查询的结束时间戳(毫秒)
sort int 排序字段,取值为0时降序,为1时升序,默认降序

2.13.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid":"cidxxxxxxxxx", "beginTime":begintime, "endTime":endTime}' https://vcloud.163.com/app/vodvideolist
curl -X POST -H "Content-Type: application/json" -H "AppKey: 027338bf05cc4a65b5d98bc9d6af80b3" -H "Nonce: 12345" -H "CurTime: 1469427735815" -H "CheckSum: 86d9602149544997a86769a8d6088cabb12b212b" -d '{"cid":"291e3a9d662c4cfaa672bad689f0750b", "beginTime":1476115200000, "endTime":1476201600000}' https://vcloud.163.com/app/vodvideolist

2.13.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
msg String 错误信息
videoList JsonArray 录制视频列表
name String 录制后文件名,格式为filename_YYYYMMDD-HHmmssYYYYMMDD-HHmmss, 文件名录制起始时间(年月日时分秒) -录制结束时间(年月日时分秒)
url String 视频文件在点播桶中的存储路径
vid Long 视频文件ID
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX,
     "ret" : {
        "videoList" : [
            {
                "name" : XXX,
                "url" : XXX,
                "vid" : XXX
            },

            {
                "name" : XXX,
                "url" : XXX,
                "vid" : XXX
            },

            ...

        ]
    }
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "ret":{
        "videoList":[
            {
                "name":"new_20160628-113352_20160628-133351",
                "url":"1_291e3a9d662c4cfaa672bad689f0750b_1467084832593_1467092031353_1312-00001.flv",
                "vid":42
            },
            {
                "name":"new_20160628-093349_20160628-113352",
                "url":"1_291e3a9d662c4cfaa672bad689f0750b_1467077629013_1467084832593_1312-00000.flv",
                "vid":41
            },
            ...
        ]
    },
    "code":200
}

2.13.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
617 频道信息与当前用户不匹配
618 频道信息不存在
631 请求参数错误

2.14 设置视频录制回调地址

2.14.1 接口说明

用户录制文件生成后,会将生成文件信息推送到该地址, 目前支持HTTP POST方式。

2.14.2 请求说明

POST https://vcloud.163.com/app/record/setcallback HTTP/1.1
Content-Type: application/json;charset=utf-8

2.14.3 参数说明

参数 类型 说明 必须
recordClk String 录制文件生成回调地址(http开头)

2.14.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"recordClk":"http://xxxxxxxxx"}' https://vcloud.163.com/app/record/setcallback

2.14.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
result boolean 是否设置成功
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "ret" : {
        result : XXX
    }
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "ret":{
        "result":true
    },
    "code":200
}

2.14.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
618 频道信息不存在
631 请求参数错误

2.14.7 回调内容示例

{"vid":"7563","orig_video_key":"8bfe052367414ef1bf8baa5b118111_1480499359291_1480499570111_2541778-00002.flv","video_name":"创建频道1_20161130-174919_20161130-175250","uid":"10000","nId":"nId1144","beginTime":"1480499359291","endTime":"1480499570111","cid":"1234XXX"}

注意:计算MD5签名时须考虑body所有字段,请以实际收到的body字段为准,以下仅为body字段示例。

参数 说明
video_name 录制后文件名,格式为filename_YYYYMMDD-HHmmssYYYYMMDD-HHmmss, 文件名录制起始时间(年月日时分秒) -录制结束时间(年月日时分秒)
origUrl 视频文件原地址
orig_video_key 视频文件在点播桶中的存储路径
uid 用户ID,是用户在网易云视频与通信业务的标识,用于与其他用户的业务进行区分。通常,用户不需关注和使用。
vid 视频文件ID
cid 频道ID
beginTime 录制文件起始时间戳(毫秒)
endTime 录制文件结束时间戳(毫秒)
nId 消息ID,同一条消息nId全局唯一,网络超时或接收方返回非200状态码时根据业务规则进行重发,接收方接到多条通知情况下可用于进行消息去重
sign(http请求头) 对回调body内容按指定格式转换后进行MD5加密生成的签名,sign字段为http请求头内容。
签名规则:将body所有字段按key进行字典排序(升序)组成待签名字符串content,对字符串content+signKey进行MD5签名,如:beginTime=1483406830579&cid=6355099987a648bfb8fb265847&endTime=1483406857109&nId=nId1000&origUrl=http://bucket.vod.126.net/bucket/6355099987a648bfbec0c53.mp4&orig_video_key=6355099987a648bfbec0c53.mp4&uid=100&vid=1000&video_name=092710_20170103signKey,对其进行MD5签名

2.15 设置回调的加签秘钥

2.15.1 接口说明

用该秘钥对回调内容生成MD5签名,用于用户接口的校验。可以不设置,默认为“vcloud”。该秘钥对用户所有设置的回调地址生效。

2.15.2 请求说明

POST https://vcloud.163.com/app/callback/setSignKey HTTP/1.1
Content-Type: application/json;charset=utf-8

2.15.3 参数说明

参数 类型 说明 必须
signKey String 加签秘钥

2.15.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"signKey":"xxxxxxxxx"}' https://vcloud.163.com/app/callback/setSignKey

2.15.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
result boolean 是否设置成功
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "ret" : {
        result : XXX
    }
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "ret":{
        "result":true
    },
    "code":200
}

2.15.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
618 频道信息不存在
631 请求参数错误

2.16 录制文件合并

2.16.1 接口说明

对于同一次录制产生的切片文件,合并成一个文件,通过查询录制文件列表接口可获取。目前支持同MP4格式间或同flv格式间的文件合并,待合并文件的分辨率、音视频轨道数编码格式要求一致,且同时在合并的任务数不能超过3个, 待合并视频总时长不得超过8小时,1分钟接口调用不能超过10次。如果用户设置了回调地址,也会将合并好的视频回调给用户(回调内容不包含beginTime,endTime),参看接口2.14 (设置视频录制回调地址)。

2.16.2 请求说明

POST https://vcloud.163.com/app/video/merge HTTP/1.1
Content-Type: application/json;charset=utf-8

2.16.3 参数说明

参数 类型 说明 必须
outputName String 合并文件的名称(不能含有空格)
vidList JsonArray 待合并的视频文件的ID列表(文件ID类型为long),视频文件数量限制为2-20个

2.16.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"outputName":"xxxxxxxxx", "vidList": [vidxxxxxxxxx0, vidxxxxxxxxx1, vidxxxxxxxxx2]}' https://vcloud.163.com/app/video/merge

2.16.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
result boolean 请求是否成功
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "ret" : {
        result : XXX
    }
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{
    "ret":{
        "result":true
    },
    "code":200
}

2.16.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
618 频道信息不存在
631 请求参数错误
638 访问频率超限
639 任务数量已达上限
1667 合并总时长超过8小时限制

2.16.7 合并视频回调内容示例

//视频合并成功的回调示例
{"vid":"5898","orig_video_key":"aafbf25d-1a40-4097-aa6e-f4a2fd692xxx.mp4","video_name":"合并成功测试","uid":"2900","nId":"nId46514","cid":"a285cxxxxxxx"}       

//视频合并失败的回调示例        
{"outputName":"hello.mp4","nId":"nId1144","devMsg":"Merge Video Fail"}

2.17 录制重置

2.17.1 接口说明

该接口用于:在直播录制过程中,结束正在进行的录制,开启一个新的录制任务。可用来对录制进行主动分片。

2.17.2 请求说明

POST https://vcloud.163.com/app/channel/resetRecord HTTP/1.1
Content-Type: application/json;charset=utf-8

2.17.3 参数说明

参数 类型 说明 必须
cid String 频道ID,32位字符串

2.17.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx"}' https://vcloud.163.com/app/channel/resetRecord

2.17.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
msg String 错误信息
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg": XXX,
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{        
    "code":200
}

//错误返回示例
"Content-Type": "application/json; charset=utf-8"
{
    "code":723,
    "msg":"使用直播录制功能需开通云点播服务"
}

2.17.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
607 用户信息不存在
609 频道ID为空
613 CheckSum为空
614 AppKey为空
615 CurTime为空
617 频道信息与当前用户不匹配
618 查询数据信息不存在
631 请求参数错误
647 频道不存在
648 频道未开启录制
723 使用直播录制功能需开通云点播服务

2.18 直播实时转码地址

2.18.1 接口说明

该接口用于:获取直播实时转码相关地址。

2.18.2 请求说明

POST https://vcloud.163.com/app/transcodeAddress HTTP/1.1
Content-Type: application/json;charset=utf-8

2.18.3 参数说明

参数 类型 说明 必须
cid String 频道ID

2.18.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx"}' https://vcloud.163.com/app/transcodeAddress

2.18.5 返回说明

参数 类型 说明
code int 错误码
msg String 错误信息
requestId String 全局唯一请求id
status int 拉流转码状态0->暂未开通,1->已开通
pushUrl String 推流地址
httpPullUrl String http拉流地址
hlsPullUrl String hls拉流地址
rtmpPullUrl String rtmp拉流地址
transcodeHttpPullUrl String 实时转码http拉流地址,当status=0时该数据结点不存在
transcodeRtmpPullUrl String 实时转码rtmp拉流地址,当status=0时该数据结点不存在
transcodeHlsPullUrl String 实时转码hls拉流地址,当status=0时该数据结点不存在
1280 String 16:9,1280x720,1600k格式拉流地址
960 String 16:9,960x540,1000k格式拉流地址
640 String 16:9,640x360,600k格式拉流地址
320 String 16:9,320x180,300k格式拉流地址
540 String 9:16,540x960,1000k格式拉流地址
360 String 9:16,360x640,600k格式拉流地址
180 String 9:16,180x320,300k格式拉流地址
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg": XXX,
}

//成功结果示例
"Content-Type": "application/json; charset=utf-8"
{

    "code":200,
    "requestId":"xxxxxxxxx",
    "ret":{

        "status":1,

        "pushUrl":"rtmp://pxxxxxx.live.126.net/live/cidxxxxxxxxx?wsSecret=582e02209271e6bf7fc762e68a7c51cc&wsTime=1469416637",
        "httpPullUrl":"http://flvxxxxx.live.126.net/live/频道id.flv",
        "hlsPullUrl":"http://pullhlsxxxxx.live.126.net/live/频道id/playlist.m3u8",
        "rtmpPullUrl":"http://vxxxxx.live.126.net/live/频道id",

        "transcodeHttpPullUrl":{
            "1280":"http://flvxxxxx.live.126.net/live/频道id_H1.flv",
            "960":"http://flvxxxxx.live.126.net/live/频道id_H2.flv",
            "640":"http://flvxxxxx.live.126.net/live/频道id_H3.flv",
            "320":"http://flvxxxxx.live.126.net/live/频道id_H4.flv",
            "540":"http://flvxxxxx.live.126.net/live/频道id_S1.flv",
            "360":"http://flvxxxxx.live.126.net/live/频道id_S2.flv",
            "180":"http://flvxxxxx.live.126.net/live/频道id_S3.flv"
        },

        "transcodeRtmpPullUrl":{
            "1280":"rtmp://vxxxxx.live.126.net/live/频道id_H1",
            "960":"rtmp://vxxxxx.live.126.net/live/频道id_H2",
            "640":"rtmp://vxxxxx.live.126.net/live/频道id_H3",
            "320":"rtmp://vxxxxx.live.126.net/live/频道id_H4",
            "540":"rtmp://vxxxxx.live.126.net/live/频道id_S1",
            "360":"rtmp://vxxxxx.live.126.net/live/频道id_S2",
            "180":"rtmp://vxxxxx.live.126.net/live/频道id_S3"
        },
        "transcodeHlsPullUrl":
        {
        "1280":"http://pullhlsxxxxx.live.126.net/live/频道id_H1/playlist.m3u8",
            "960":"http://pullhlsxxxxx.live.126.net/live/频道id_H2/playlist.m3u8",
            "640":"http://pullhlsxxxxx.live.126.net/live/频道id_H3/playlist.m3u8",
            "320":"http://pullhlsxxxxx.live.126.net/live/频道id_H4/playlist.m3u8",
            "540":"http://pullhlsxxxxx.live.126.net/live/频道id_S1/playlist.m3u8",
            "360":"http://pullhlsxxxxx.live.126.net/live/频道id_S2/playlist.m3u8",
            "180":"http://pullhlsxxxxx.live.126.net/live/频道id_S3/playlist.m3u8"
        }
    }

}

2.18.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
602 查询失败:获取直播地址失败
607 用户信息不存在
609 频道ID为空
613 CheckSum为空
614 AppKey为空
615 CurTime为空
617 频道信息与当前用户不匹配

2.19 视频录制回调地址查询

2.19.1 接口说明

用于查询视频录制回调地址。

2.19.2 请求说明

POST https://vcloud.163.com/app/record/callbackQuery HTTP/1.1
Content-Type: application/json;charset=utf-8

2.19.3 参数说明

参数 类型 必须 说明
暂无 暂无

2.19.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey:29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx"  https://vcloud.163.com/app/record/callbackQuery

2.19.5 返回说明

http 响应:json

参数 类型 说明
code int 错误码
msg String 请求结果信息,当code为200时该字段不存在,非200时msg为请求返回错误信息
ret json 主要结果集
callbackUrl String 回调地址
lastUpdateTime String 最近更新时间
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
  "ret": {
     "callbackUrl" : "xxxxxxxxxxx",
        "lastUpdateTime" : "2017-08-15 12:22:11"
  },
  "code": 200
}

2.19.6 响应状态码

HTTP状态码 含义
200 处理成功
409 用户登录认证失败
607 用户信息不存在
608 Session信息不完整
613 CheckSum为空
614 AppKey为空
615 CurTime为空
624 请求参数非法
625 appKey为空

2.20 设置录制信息

2.20.1 接口说明

设置直播录制信息。可以设定直播录制的格式、切片时长、文件名等信息。如需设定频道是否进行录制,请调用2.7 设置频道为录制状态接口。

2.20.2 请求说明

POST https://vcloud.163.com/app/channel/setupRecordInfo HTTP/1.1
Content-Type: application/json;charset=utf-8

2.20.3 参数说明

参数 类型 说明 必须
cid String 频道ID,32位字符串
format int 1-flv; 0-mp4
duration int 录制切片时长(分钟),5~120分钟
filename String 录制后文件名(只支持中文、字母和数字),格式为filename_YYYYMMDD-HHmmssYYYYMMDD-HHmmss, 文件名录制起始时间(年月日时分秒) -录制结束时间(年月日时分秒)

2.20.4 curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx",  "format":1, "duration":20, "filename":"record"}' https://vcloud.163.com/app/channel/setupRecordInfo

2.20.5 返回说明

http 响应:json

参数 类型 说明
code int 状态码
msg String 错误信息
//返回结果格式
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX
}

//错误返回示例
"Content-Type": "application/json; charset=utf-8"
{
    "code":723,
    "msg":"使用直播录制功能需开通云点播服务"
}

2.20.6 响应状态码

HTTP状态码 含义
200 操作成功
409 用户登录认证失败
501 内部错误
613 CheckSum为空
614 AppKey为空
615 CurTime为空
617 频道信息与当前用户不匹配
618 查询数据信息不存在
631 请求参数错误
650 录制文件名长度非法,长度应在1~60个字符
723 使用直播录制功能需开通云点播服务