跳转到主要内容
POST
Omni Moderation 使用 OpenAI omni-moderation-latest 审核文本、最多一张 HTTPS 图像,或两者同时审核。通过统一的生成接口提交审核,然后用返回的 task_id 轮询查询任务状态,或接收可选的回调。 提交后会立即返回 status: "not_started"。审核异步执行,状态经过 running 后变为 finished 或 failed。
通过可选的外层 callback_url 字段支持回调。不支持流式输出;请勿传入 stream。

输入

prompt 和 image_urls 至少提供一个,也可以同时提供。 使用非空白文本、一个 HTTPS 图像 URL,或两者都用。image_urls 仍为数组,最多接受一张图像。多张图像请分别提交为独立任务。空输入会被拒绝。

提交审核

同时审核图像和文本:
只审核图像时,省略 prompt。如需通过 Webhook 接收已完成的任务,请在 input 之外提供 callback_url:

提交响应

获取结果

持续轮询,直到 data.status 变为 finished 或 failed。审核完成后,data.output 中返回完整的 OpenAI 响应;data.files 为空,data.credits_amount 为 0。 status: "finished" 表示审核已完成。flagged: true 的结果是一次检测到相关内容的成功审核,不会使任务变为 failed。只有任务本身失败时才需要查看 data.error_message。

回调请求体

提供 callback_url 时,任务变为 finished 或 failed 后,PoYo 会发送 POST 请求。请求体是状态响应中的 data 对象,不含外层的 code 和 data 包装。其中包括 task_id、status、credits_amount: 0、files: [],以及可用时位于 output 中的完整 OpenAI 响应。失败的任务会提供 error_message。 签名验证见 Webhook 回调。

已完成状态响应示例

授权

Authorization
string
header
必填

所有 API 接口都需要 Bearer Token 认证。

创建 API Key:登录 PoYo,进入 仪表盘 → API 密钥(poyo.ai/zh/dashboard/api-key),点击创建 Key。

在请求头中添加:

请求体

application/json

将 Omni Moderation 审核加入异步队列。可提供可选的 callback_url 接收完成通知。不支持流式输出。

model
enum<string>
必填

公开的模型标识。

可用选项:
omni-moderation-latest
示例:

"omni-moderation-latest"

input
object
必填

prompt 和 image_urls 至少提供一个,也可同时提供。请提供非空白文本或一个 HTTPS 图片 URL。image_urls 最多接受一个 HTTPS 图片 URL,prompt 可与图片一起提供。

callback_url
string<uri>

可选的 Webhook 回调 URL。任务完成或失败时,POST 请求体为状态响应中的 data 对象,不含外层 code/data 包装。

示例:

"https://your-domain.com/callback"

响应

任务已入队,状态为 not_started。可轮询 GET /api/generate/status/{task_id},或在完成后接收可选的回调。

code
enum<integer>
必填

业务状态码。200 表示成功,其他值都表示请求失败。请务必检查这个字段:部分参数校验错误会以 HTTP 200 返回,响应体里的 code 为 400。

  • 200:成功
  • 400:请求参数无效
  • 401:API Key 缺失或无效
  • 402:积分不足
  • 403:没有权限
  • 404:资源不存在
  • 408:请求超时
  • 429:请求频率超限
  • 500:服务器内部错误
  • 502:上游服务错误
  • 503:服务暂不可用

详见错误码。

可用选项:
200,
400,
401,
402,
403,
404,
408,
429,
500,
502,
503
示例:

200

data
object
必填