API for Retrieving Channel Push URL
Updated: 2022-09-02 18:08:07
API URL
https://api.polyv.net/live/v3/channel/stream/get-push-url
API Description
1、接口用于获取频道推流地址
2、接口支持https
Response Format
JSON
Request Method
GET
Request Parameters
| Parameter | Required | Type | Description |
|---|---|---|---|
| appId | Yes | string | Obtained from API settings, the appId registered in the live streaming system |
| timestamp | Yes | long | Current 13-digit Unix timestamp |
| sign | Yes | String | Signature, a 32-character uppercase MD5 value. The appSecret key used to generate the signature is critical for communication data security. It must never be used directly on the client side. All APIs must be called through the customer's own server to relay requests to the POLYV server for response data. See signature generation rules |
| channelId | Yes | int | Channel ID |
Successful Response JSON Example:
{
"code": 200,
"status": "success",
"message": "",
"data": "rtmp://push-c1.videocc.net/recordf/streamname"
}
Failed Response JSON Examples:
Parameter error
{
"code": 400,
"status": "error",
"message": "param validate error",
"data": 400
}
Missing appId
{
"code": 400,
"status": "error",
"message": "appId is required.",
"data": ""
}
Incorrect appId
{
"code": 400,
"status": "error",
"message": "application not found.",
"data": ""
}
Timestamp error
{
"code": 400,
"status": "error",
"message": "invalid timestamp.",
"data": ""
}
Signature error
{
"code": 403,
"status": "error",
"message": "invalid signature.",
"data": ""
}
Field Description
| Parameter | Type | Description |
|---|---|---|
| code | int | Response code: 200 for success, 400 for failure, 401 for signature error, 500 for server error |
| status | string | "success" for success, "error" for failure |
| message | string | Error message when applicable |
| data | Channel push URL |
Java Request Example
public static void test() {
String url = "https://api.polyv.net/live/v3/channel/stream/get-push-url";
// 用户对应的appId和加密串
String appId = "xxxxxxxxx";
String appSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxx";
Map<String, String> params = new HashMap<>();
params.put("channelId", 100001);
PolyvTool.setLiveSign(params, appId, appSecret);
// 调用Polyv的httpClient工具类发送请求
HttpClientUtil.getInstance()
.sendHttpGet(url + "?" + PolyvTool.mapJoinNotEncode(params));
System.out.println(content);
}
