查詢子帳號統計彙總資料
更新時間:2022-09-02 18:08:07
介面描述
1、按日期查询子账号统计汇总数据
2、接口userid为点播账号userid,具体参考菜单【使用须知】->【获取密钥】
3、接口支持https协议
介面URL
https://api.polyv.net/v2/sub-account/stats/agg/page
請求方式
POST
介面限制
1、介面同時支援HTTP、HTTPS,建議使用HTTPS確保介面安全,介面呼叫有頻率限制,詳細請查看
請求參數說明
| 參數名 | 必選 | 類型 | 說明 |
|---|---|---|---|
| userid | true | String | 保利威點播帳戶id,可參考【取得密鑰】取得,取得路徑:官網->登入->點播(開發設定) |
| ptime | true | Long | 目前時間的毫秒級時間戳記,3分鐘內有效 |
| sign | true | String | 簽名,為40位大寫的SHA1值【詳見簽名產生規則】 |
| startDate | true | String | 開始日期,格式為:yyyy-MM-dd,例如:2021-04-07,時間跨度不能超過一年 |
| endDate | true | String | 結束日期,格式為:yyyy-MM-dd,例如:2021-04-10,時間跨度不能超過一年 |
| page | false | Integer | 頁碼,預設為1 |
| pageSize | false | Integer | 每頁筆數,預設為20,最大100 |
| false | String | 要查詢的子帳號信箱,如果同時傳了email和appId,則優先使用email | |
| appId | false | String | 要查詢的子帳號appId |
範例
http://api.polyv.net/v2/sub-account/stats/agg/page
表單參數:
sign=25B8ED6CD0AF4E0058D44DA5D395A569701328F9&ptime=1623056999195&userid=cca90d24f7&startDate=2021-05-01&endDate=2021-06-01
回應參數說明
| 參數名 | 類型 | 說明 |
|---|---|---|
| code | Integer | 回應狀態碼,200為成功返回,非200為失敗【詳見全域錯誤說明】 |
| status | String | 回應狀態文字資訊 |
| message | String | 回應描述資訊,當code為400或500時,輔助描述錯誤原因 |
| data | Object | 回應成功時返回子帳號統計彙總資訊【詳見data欄位說明】 |
data參數說明
| 參數名 | 類型 | 說明 |
|---|---|---|
| pageNumber | Integer | 目前頁碼 |
| totalPages | Integer | 總頁數 |
| totalItems | Integer | 總筆數 |
| pageSize | Integer | 每頁筆數 |
| contents | Array | 子帳號彙總資料列表【詳見contents欄位說明】 |
contents欄位說明
| 欄位 | 類型 | 說明 |
|---|---|---|
| String | 子帳號信箱,如果子帳號被刪除,則該欄位為null | |
| appId | String | 子帳號appId |
| flowSize | Long | 查詢時間段內使用流量,單位:byte |
| view | Long | 播放量,單位:個 |
| duration | Long | 播放時長,單位:秒 |
Java請求範例
快速接入基礎程式碼請下載相關依賴原始碼, 點擊下載原始碼 ,下載後加入到自己的原始碼工程中即可。測試案例中的HttpUtil.java 和 VodSignUtil.java 都包含在下載檔案中。
強烈建議您使用點播Java SDK完成API的功能對接,點播Java SDK 對API呼叫邏輯、異常處理、資料簽名、HTTP請求執行緒池進行了統一封裝和最佳化。能大大提高B端的接入速度和便捷性;
/**
* 按日期查询子账号统计汇总数据
* @throws Exception
*/
@Test
public void testGetSubAccountAggregate() throws Exception {
//公共参数,填写自己的实际参数
String secretKey = super.secretKey;
String userId = super.userId;
String ptime = String.valueOf(System.currentTimeMillis());
//业务参数
String url = "http://api.polyv.net/v2/sub-account/stats/agg/page";
String startDate="2021-05-01";
String endDate="2021-06-01";
String email="xxx@polyv.net";
String appId="xxxxxxxx";
Map<String, String> requestMap = new HashMap<>();
requestMap.put("userId", userId);
requestMap.put("ptime", ptime);
requestMap.put("startDate", startDate);
requestMap.put("endDate", endDate);
requestMap.put("email", email);
requestMap.put("appId", appId);
requestMap.put("sign", VodSignUtil.getSign(requestMap, secretKey));
String response = HttpUtil.postFormBody(url, requestMap);
log.debug("按日期查询子账号统计汇总数据,{}", response);
//do somethings
}
回應範例
系統全域錯誤說明詳見全域錯誤說明
成功範例
{
"code": 200,
"status": "success",
"message": "success",
"data": {
"pageNumber": 1,
"totalPages": 1,
"pageSize": 20,
"contents": [
{
"email": null,
"appId": "XXXXXXXXXX",
"flowSize": 4370541,
"view": 1,
"duration": 12
},
{
"email": "XXXXX@polyv.net",
"appId": "XXXXXXXXXX",
"flowSize": 66267275,
"view": 3,
"duration": 502
}
],
"totalItems": 2
}
}
異常範例
{
"code":400,
"status":"error",
"message":"sign can not be empty.",
"data":""
}
