内容审核接口 V2
单次提交文本、图片或视频并返回多模态审核结论,支持按需检查与外链安全策略。
接口说明
单次请求提交文本、图片或视频,返回多模态审核结论。检查项按需开启,包含 V2 新增的外链安全策略。
接口地址
text
POST https://la-otter.inaiai.com/v1/workflows/run请求头
| Header | 值 |
|---|---|
| Authorization | Bearer {API_KEY},按接入方分配 |
| Content-Type | application/json |
请求参数
顶层参数
| 字段 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| inputs.query | object | 是 | 审核请求体 |
| response_mode | string | 是 | 固定传 blocking,同步返回结果 |
| user | string | 是 | 调用方用户唯一标识,用于链路追踪与用量归属 |
inputs.query
| 字段 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| type | string | 是 | 审核任务固定填 review |
| text | string | 择一 | 待审核文本,无则传空字符串 |
| images | array | 择一 | 待审核图片地址列表,无则传空数组 |
| video | string | 择一 | 待审核视频地址,无则传空字符串 |
| channel | string | 是 | 业务渠道标识,由平台分配 |
| checks | object | 是 | 检查项开关 |
text、images、video 按内容形态至少传一项有效值,也可以同时传入做多模态联合审核。
checks
| 字段 | 类型 | 说明 |
|---|---|---|
| minor | boolean | 未成年人 |
| age_limit | number | 年龄阈值,配合 minor 使用,如 18 |
| qrcode | boolean | 二维码 |
| ad | boolean | 广告 |
| blood_violence | boolean | 血腥暴力 |
| contact | boolean | 联系方式 |
| external_link | boolean | 外链检查总开关 |
| link_policy | object | 外链策略配置 |
各检查项相互独立,可任意组合;未开启的检查项不参与判定。
checks.link_policy
| 字段 | 类型 | 说明 |
|---|---|---|
| mode | string | 策略档位,常规场景使用 standard |
| action | string | 命中处置,reject 表示直接审核拒绝 |
| whitelist | array | 域名白名单,命中不判违规;支持 *. 通配子域 |
外链检查覆盖 IP 地址、裸域名、短链、变形网址和跳转地址。
*.inaiai.com只覆盖子域,不包含裸域名inaiai.com;需要同时放行时,两条都要写入 whitelist。
调用示例
bash
curl -X POST 'https://la-otter.inaiai.com/v1/workflows/run' \
-H "Authorization: Bearer {API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"inputs": {
"query": {
"text": "加我 t.cn/A6xxxx 详聊",
"images": [],
"video": "",
"channel": "B",
"type": "review",
"checks": {
"minor": false,
"qrcode": false,
"ad": true,
"blood_violence": false,
"contact": false,
"external_link": true,
"link_policy": {
"mode": "standard",
"action": "reject",
"whitelist": [
"*.inaiai.com",
"inaiai.com"
]
}
}
}
},
"response_mode": "blocking",
"user": "d7e7dd9f-9170-4892-b639-36020cc32571"
}' | jq .响应
json
{
"task_id": "b467342a-df60-4176-b39b-dd31eac2efbe",
"workflow_run_id": "f98561c6-4f8c-43e1-a105-34314b9b7646",
"data": {
"id": "f98561c6-4f8c-43e1-a105-34314b9b7646",
"workflow_id": "6ae8b0d4-2122-44c5-b615-fc96b3fe0ebf",
"status": "succeeded",
"outputs": {
"approved": true,
"message": "审核没问题(执行审核项:ad、external_link;age_limit不生效(minor=false))",
"error": 0,
"error_message": "",
"reasons": [
"审核通过"
],
"id": "f98561c6-4f8c-43e1-a105-34314b9b7646"
},
"error": null,
"elapsed_time": 1.888882,
"total_tokens": 0,
"total_steps": 18,
"created_at": 1788443667,
"finished_at": 1788443669
}
}接入建议
- API Key 按接入方分配,存放于服务端配置或密钥管理,不要写入前端与代码库;疑似泄露时请联系平台轮换。
- 开启 external_link 前先把自有域名写入 whitelist,再灰度一部分流量观察拒绝率,确认无误后全量。
- 所有检查项在同一次请求内完成,不额外增加调用与计费次数。
- 请记录每次调用的 user、task_id 和 workflow_run_id,便于定位误拒或漏拒问题。