Query Channel Audio Moderation Records
API Description
1、<p>查询频道音频审核记录</p>
2、接口支持https协议
3、按账号开通版本返回记录:audioModerationFunctionEnable 为 Y(金融版)或 AI(大模型版)即视为已开通;未开通(N、空或其他值)返回错误码 1041。审核结果过滤统一使用 resultType 参数,金融版与大模型版取值不同【详见[请求参数描述](__PLV_KEEP_0__)】
API URL
http://api.polyv.net/live/v4/channel/audio-moderation/list
Request Method
GET
API Constraints
- The API supports both HTTP and HTTPS. HTTPS is recommended to ensure security. API calls have frequency limits. See details
Request Parameters Description
| Parameter | Required | Type | Description |
|---|---|---|---|
| appId | true | String | Account appId See Get Secret Key |
| channelId | true | String | Channel ID |
| sign | true | 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 your own server to relay requests to the POLYV server. See Signature Generation Rules |
| timestamp | true | String | Current 13-digit millisecond timestamp, valid for 3 minutes |
| startTime | false | Long | Start time, millisecond timestamp. Default is the last 3 days. If provided, tasks between this time and the endTime will be filtered |
| endTime | false | Long | End time, millisecond timestamp. Default is empty. If provided, tasks between the startTime and this time will be filtered. When both startTime and endTime are provided, the maximum query span is 30 days |
| resultType | false | String | Moderation result filter, multiple values separated by commas. Financial version: pass, block, review; Large model version: pass, low_risk, medium_risk, high_risk. Example: resultType=medium_risk,high_risk. If not provided, returns all records visible under the current account version |
| moderationStrategy | false | String | (Legacy parameter, deprecated, use resultType instead) Moderation result filter, multiple values separated by commas (pass: approved, block: violation, review: suspected). If provided together with resultType, resultType takes precedence |
| pageNumber | false | String | Current page number |
| pageSize | false | String | Page size |
| sessionId | false | String | Session ID |
Example
http://api.polyv.net/live/v4/channel/audio-moderation/list?pageNumber=1&moderationStrategy=&appId=gga9dadhzm&sign=B64A05B71680D23161511CF0B9617254&pageSize=10&startTime=&endTime=&sessionId=&channelId=3775168×tamp=1678087662266
Response Parameters Description
| Parameter | Type | Description |
|---|---|---|
| code | Integer | Status code, same as HTTP status code, used to determine the basic response status |
| data | Object | See Data Parameter Description |
| error | Object | Error information when status code is not 200 See Error Parameter Description |
| requestId | String | Request ID, a unique UUID generated for each request, only for troubleshooting and debugging, not for business logic |
| status | String | Response result, determined by business logic. Returns success on success, error on failure |
| success | Boolean | Whether the response was successful |
Data Parameter Description
| Parameter | Type | Description |
|---|---|---|
| contents | Array | Paginated data collection See Contents Parameter Description |
| pageNumber | Integer | Current page number |
| pageSize | Integer | Page size |
| totalItems | Integer | Total number of records |
| totalPages | Integer | Total number of pages |
Contents Parameter Description
| Parameter | Type | Description |
|---|---|---|
| audioText | String | Audio transcription text |
| audioUrl | String | Audio clip URL |
| badword | String | Matched prohibited word |
| createTime | String | Moderation time |
| duration | Integer | Audio file duration |
| id | Integer | Moderation task ID |
| keyword | String | Matched sensitive word |
| label | String | Identification type. Financial version: Normal, Porn, Abuse, Ad, Custom; Large model version: AiAudit, Badword, Keyword, Normal; and other offensive, unsafe, or inappropriate content types |
| labelDesc | String | Identification type description |
| moderationStrategy | String | (Financial version) Moderation strategy: easy, normal, strict. Large model version should not use this field to determine moderation results |
| moderationStrategyDesc | String | Moderation strategy description. Large model version should not use this field to determine moderation results |
| reason | String | Violation reason (large model version) |
| resultType | Integer | Moderation result. Financial version: 1-approved, 2-violation, 3-suspected; Large model version: 1-approved, 4-low risk, 5-medium risk, 6-high risk |
| score | Integer | Risk score/confidence, 0-100 |
| sessionId | String | Session ID, may be empty. Empty means the moderation result has not yet been assigned to a session |
| startTime | String | Task start time |
Error Parameter Description
| Parameter | Type | Description |
|---|---|---|
| code | Integer | Error code, used to determine the specific error reason |
| desc | String | Error description, corresponding to error.code |
Java Request Example
For quick integration of basic code, please download the relevant dependency source code. Click here to download the source code. After downloading, add it to your own source code project. HttpUtil.java and LiveSignUtil.java in the test cases are included in the downloaded file.
It is strongly recommended to use the Live Java SDK for API integration. The Live Java SDK provides unified packaging and optimization for API call logic, exception handling, data signing, and HTTP request thread pools.
private static final Logger log = LoggerFactory.getLogger(getClass());
/**
* 查询频道审核记录
* @throws IOException
* @throws NoSuchAlgorithmException
*/
@Test
public void audioModerationListTest() 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/audio-moderation/list";
String channelId = "";
String endTime = "";
String moderationStrategy = "";
String pageNumber = "";
String pageSize = "";
String sessionId = "";
String startTime = "";
//http 调用逻辑
Map<String, String> requestMap = new HashMap<>();
requestMap.put("appId", appId);
requestMap.put("channelId", channelId);
requestMap.put("timestamp", timestamp);
requestMap.put("endTime", endTime);
requestMap.put("moderationStrategy", moderationStrategy);
requestMap.put("pageNumber", pageNumber);
requestMap.put("pageSize", pageSize);
requestMap.put("sessionId", sessionId);
requestMap.put("startTime", startTime);
requestMap.put("sign", LiveSignUtil.getSign(requestMap, appSecret));
String response = HttpUtil.get(url, requestMap);
log.info("测试查询频道审核记录成功:{}", response);
//do somethings
}
Response Example
For global system error descriptions, see Global Error Description
Financial version success example
{
"code": 200,
"status": "success",
"requestId": "efbb877ed57a430390b23f7e341d3364.66.16780876444232085",
"data": {
"pageNumber": 1,
"pageSize": 10,
"totalPages": 1,
"totalItems": 1,
"contents": [
{
"id": 10001,
"sessionId": "u7vp3k8f",
"audioUrl": "https://example.com/audio/20260620.mp3",
"audioText": "直播过程中出现的音频转写文本",
"duration": 30,
"label": "Abuse",
"labelDesc": "谩骂",
"moderationStrategy": "normal",
"moderationStrategyDesc": "一般审核策略",
"resultType": 2,
"score": 88,
"badword": "",
"keyword": "",
"reason": "",
"createTime": "2026-06-20 10:00:00",
"startTime": "2026-06-20 09:59:30"
}
]
},
"success": true
}
Large model version success example (resultType=medium_risk, label=AiAudit, includes reason)
{
"code": 200,
"status": "success",
"requestId": "efbb877ed57a430390b23f7e341d3364.66.16780876444232085",
"data": {
"pageNumber": 1,
"pageSize": 10,
"totalPages": 1,
"totalItems": 1,
"contents": [
{
"id": 10001,
"sessionId": "u7vp3k8f",
"audioUrl": "https://example.com/audio/20260620.mp3",
"audioText": "本课程涉及未授权软件破解方法,请谨慎处理。",
"duration": 30,
"label": "AiAudit",
"labelDesc": "AI审核",
"moderationStrategy": "easy",
"moderationStrategyDesc": "宽松审核策略",
"resultType": 5,
"score": 72,
"badword": "",
"keyword": "",
"reason": "涉及未授权软件破解方法",
"createTime": "2026-06-20 10:00:00",
"startTime": "2026-06-20 09:59:30"
}
]
},
"success": true
}
Error example
{
"code": 400,
"status": "error",
"requestId": "d310b70bc329403f87f77f9203d50f89.128.16360831552223589",
"error": {
"code": 20001,
"desc": "application not found."
},
"success": false
}
Account not enabled for audio moderation (audioModerationFunctionEnable is N, empty, or other values), returns error code 1041
{
"code": 400,
"status": "error",
"requestId": "d310b70bc329403f87f77f9203d50f89.128.16360831552223589",
"error": {
"code": 1041,
"desc": "账号未开启音频审核功能"
},
"success": false
}
