Modify Channel Player Pre-Roll Ad
API Description
1、管理系统设置频道播放器的片头广告:频道管理-观看页设置-营销-广告
2、接口URL中的{channelId}为频道号
3、接口支持https协议
API URL
http://api.polyv.net/live/v2/channelAdvert/{channelId}/updateHead
Request Method
POST
API Constraints
The API supports both HTTP and HTTPS. HTTPS is recommended for security. API calls have frequency limits. See details
When the
enabledparameter is passed to set the switch, only the switch status is set; other setting parameters are invalid.
Request Parameter Description
| Parameter | Required | Type | Description |
|---|---|---|---|
| appId | true | String | Account appId [See Get Secret Key] |
| timestamp | true | Long | Current 13-digit millisecond timestamp, valid within 3 minutes |
| sign | true | String | Signature, a 32-character uppercase MD5 value. The appSecret used to generate the signature is critical for communication data security. It must not be stored or used directly on the client. 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] |
| enabled | false | String | Set switch status Y: Enable N: Disable |
| headAdvertType | false | String | Ad type NONE: No ad IMAGE: Image ad FLV: Video ad |
| headAdvertMediaUrl | false | String | Ad media URL |
| headAdvertHref | false | String | Ad click-through URL |
| headAdvertDuration | false | Integer | Ad duration, in seconds |
| headAdvertWidth | false | Integer | Ad width |
| headAdvertHeight | false | Integer | Ad height |
Example
http://api.polyv.net/live/v2/channelAdvert/2191532/updateHead
Form parameters:
headAdvertHref=https%3A%2F%2Fbaidu123.com&headAdvertMediaUrl=http%3A%2F%2Fliveimages.videocc.net%2Fuploadimage%2F20210318%2Fchat_img_1b448be323_16160330722736.jpeg&appId=frlr1zazn3&headAdvertWidth=200&headAdvertHeight=200&sign=8AEE1A3F6027F43F36F4205CACA2ECF2&headAdvertType=IMAGE&headAdvertDuration=5&enabled=Y×tamp=1621844243585
Response Parameter Description
| Parameter | Type | Description |
|---|---|---|
| code | Integer | Response status code, 200 for success, non-200 for failure [See Global Error Description] |
| status | String | Response status text |
| message | String | Response description message, provides error details when code is 400 or 500 |
| data | String | Returns true on success, empty string on failure |
Java Request Example
For quick integration of basic code, download the relevant dependency source code. Click to download source code. After downloading, add it to your own source project. HttpUtil.java and LiveSignUtil.java in the test cases are included in the download file.
It is strongly recommended to use the Live Java SDK for API integration. The Live Java SDK provides unified encapsulation and optimization for API call logic, exception handling, data signing, and HTTP request thread pools.
private static final Logger log = LoggerFactory.getLogger(PlayerTest.class);
/**
* 修改频道播放器片头广告
* @throws IOException
* @throws NoSuchAlgorithmException
*/
@Test
public void testUpdateHead() throws IOException, NoSuchAlgorithmException {
//公共参数,填写自己的实际参数
String appId = super.appId;
String appSecret = super.appSecret;
String timestamp = String.valueOf(System.currentTimeMillis());
//业务参数
String url = "http://api.polyv.net/live/v2/channelAdvert/%s/updateHead";
String channelId = "2191532";
String enabled = "Y";
String headAdvertType = "IMAGE";
String headAdvertMediaUrl = "http://liveimages.videocc.net/uploadimage/20210318/chat_img_1b448be323_16160330722736.jpeg";
String headAdvertHref = "https://baidu123.com";
String headAdvertDuration = "5";
String headAdvertWidth = "200";
String headAdvertHeight = "200";
url = String.format(url, channelId);
Map<String, String> requestMap = new HashMap<>();
requestMap.put("appId", appId);
requestMap.put("timestamp", timestamp);
requestMap.put("enabled", enabled);
requestMap.put("headAdvertType", headAdvertType);
requestMap.put("headAdvertMediaUrl", headAdvertMediaUrl);
requestMap.put("headAdvertHref", headAdvertHref);
requestMap.put("headAdvertDuration", headAdvertDuration);
requestMap.put("headAdvertWidth", headAdvertWidth);
requestMap.put("headAdvertHeight", headAdvertHeight);
requestMap.put("sign", LiveSignUtil.getSign(requestMap, appSecret));
String response = HttpUtil.postFormBody(url, requestMap);
log.info("测试修改频道播放器片头广告,返回值:{}", response);
//do somethings
}
Response Example
See Global Error Description for system-wide error descriptions.
Success Example
{
"code": 200,
"status": "success",
"message": "",
"data": true
}
Error Example
{
"code": 400,
"status": "error",
"message": "invalid signature.",
"data": ""
}
