保利威文档中心

帮助中心

查询观众报名及审核状态

更新时间:2026-11-09 17:32:49

供接入方在观众进入观看前,按频道号 + 接入方观众ID查询该观众的报名状态,判断是否满足报名观看条件。配合查询频道报名观看配置、提交观众报名信息使用。

接口描述

1、按频道号和接入方观众ID查询该观众的报名及审核状态,无需获取频道全部报名记录
2、观众无有效报名记录时返回未报名(hasEnroll=N),不作为接口调用失败
3、提交报名成功或保利威后台完成审核后,再次查询即可获取更新后的状态(接口有短暂缓存,提交报名后立即查询返回最新值,后台审核结果最长延迟约1分钟)
4、接口支持https协议

接口URL

http://api.polyv.net/live/v4/channel/enroll/record/get

在线API调用

请求方式

GET

接口约束

1、接口同时支持HTTP 、HTTPS ,建议使用HTTPS 确保接口安全,接口调用有频率限制,详细请查看

2、建议按观众进入观看页的时机调用(如进入直播页前查询一次),避免以固定间隔高频轮询

请求参数描述

参数名 必选 类型 说明
appId true String 账号appId【详见获取密钥】
timestamp true Long 当前13位毫秒级时间戳,3分钟内有效
sign true String 签名,为32位大写的MD5值,生成签名的appSecret密钥作为通信数据安全的关键信息,严禁保存在客户端直接使用,所有API都必须通过客户自己服务器中转调用POLYV服务器获取响应数据【详见签名生成规则】
channelId true Integer 频道号
viewerId true String 接入方观众ID,提交报名时传入的观众ID

示例

http://api.polyv.net/live/v4/channel/enroll/record/get?appId=frlr1zazn3&sign=16DC042339E27BAD00452D004C1FA9CA&channelId=5588786&viewerId=viewer001&timestamp=1731128494801

响应参数描述

参数名 类型 说明
code Integer 响应状态码,200为成功返回,非200为失败
status String 响应结果,成功返回success,失败返回error
success Boolean 响应结果,成功返回true,失败返回false
data Object 报名状态【详见data字段说明】
error Object 状态码非200时的错误信息【详见Error字段说明】
requestId String 请求ID,每次请求生成的唯一的 UUID,仅可用于排查、调试,不应该和业务挂上钩

Error参数描述

参数名 类型 说明
code Integer 错误代码,用于确定具体的错误原因
desc String 错误描述,与 error.code 对应

data参数描述

参数名 类型 说明
enabled String 频道报名观看开关,Y:开启,N:关闭
auditEnabled String 报名审核开关,Y:开启,N:关闭
hasEnroll String 观众是否已报名,Y:已报名,N:未报名(未报名不算接口调用失败)
auditStatus String 审核状态,W:待审核,P:已通过,F:已拒绝;未报名时为空。
频道未开启审核(auditEnabled=N)时报名成功即为完成观看条件,无需关注此字段

Java请求示例

快速接入基础代码请下载相关依赖源码, 点击下载源代码 ,下载后加入到自己的源码工程中即可。测试用例中的HttpUtil.java 和 LiveSignUtil.java 都包含在下载文件中。

强烈建议您使用直播Java SDK完成API的功能对接,直播Java SDK 对API调用逻辑、异常处理、数据签名、HTTP请求线程池进行了统一封装和优化。

private static final Logger log = LoggerFactory.getLogger(ChannelEnrollControllerTest.class);
/**
 * 查询观众报名及审核状态
 * @throws IOException
 * @throws NoSuchAlgorithmException
 */
@Test
public void testGetEnrollStatus() throws IOException, NoSuchAlgorithmException {
    // 公共参数,填写自己的实际参数
    String appId = super.appId;
    String appSecret = super.appSecret;
    String timestamp = String.valueOf(System.currentTimeMillis());

    // 业务参数
    String url = "http://api.polyv.net/live/v4/channel/enroll/record/get";
    Integer channelId = 5588786;
    String viewerId = "viewer001";

    Map<String, String> requestMap = new HashMap<>();
    requestMap.put("appId", appId);
    requestMap.put("timestamp", timestamp);
    requestMap.put("channelId", String.valueOf(channelId));
    requestMap.put("viewerId", viewerId);
    requestMap.put("sign", LiveSignUtil.getSign(requestMap, appSecret));

    String response = HttpUtil.get(url, requestMap);

    log.info("查询观众报名及审核状态,返回值:{}", response);
    // do somethings
}

响应示例

系统全局错误说明详见全局错误说明

成功示例(未报名)

{
    "code": 200,
    "status": "success",
    "success": true,
    "data": {
        "enabled": "Y",
        "auditEnabled": "N",
        "hasEnroll": "N",
        "auditStatus": null
    }
}

成功示例(已报名,待审核)

{
    "code": 200,
    "status": "success",
    "success": true,
    "data": {
        "enabled": "Y",
        "auditEnabled": "Y",
        "hasEnroll": "Y",
        "auditStatus": "W"
    }
}

异常示例

{
    "code": 400,
    "status": "error",
    "success": false,
    "error": {
        "code": 400,
        "desc": "找不到频道"
    }
}
联系客服,在线咨询
在线咨询