curl --request POST \
--url https://api.apimart.ai/v1/moderations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "omni-moderation-latest",
"input": [
{
"type": "text",
"text": "Por favor, modere se esta imagem está em conformidade"
},
{
"type": "image_url",
"image_url": {
"url": "https://cdn.apimart.ai/files/1779955589195-wh950j4imqd.jpeg"
}
}
],
"stream": false
}'
import requests
url = "https://api.apimart.ai/v1/moderations"
payload = {
"model": "omni-moderation-latest",
"input": [
{
"type": "text",
"text": "Por favor, modere se esta imagem está em conformidade"
},
{
"type": "image_url",
"image_url": {
"url": "https://cdn.apimart.ai/files/1779955589195-wh950j4imqd.jpeg"
}
}
],
"stream": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const url = "https://api.apimart.ai/v1/moderations";
const payload = {
model: "omni-moderation-latest",
input: [
{
type: "text",
text: "Por favor, modere se esta imagem está em conformidade",
},
{
type: "image_url",
image_url: {
url: "https://cdn.apimart.ai/files/1779955589195-wh950j4imqd.jpeg",
},
},
],
stream: false,
};
const headers = {
Authorization: "Bearer <token>",
"Content-Type": "application/json",
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(payload),
})
.then((response) => response.json())
.then((data) => console.log(data))
.catch((error) => console.error("Error:", error));
omni-moderation-latest
omni-moderation-latest Moderação de conteúdo
- Suporta moderação de conteúdo de texto, imagem e misto texto+imagem
- Compatível com entrada de texto único, array de textos e array de blocos de conteúdo
- Imagens suportam URLs públicas e Data URIs em base64
POST
/
v1
/
moderations
curl --request POST \
--url https://api.apimart.ai/v1/moderations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "omni-moderation-latest",
"input": [
{
"type": "text",
"text": "Por favor, modere se esta imagem está em conformidade"
},
{
"type": "image_url",
"image_url": {
"url": "https://cdn.apimart.ai/files/1779955589195-wh950j4imqd.jpeg"
}
}
],
"stream": false
}'
import requests
url = "https://api.apimart.ai/v1/moderations"
payload = {
"model": "omni-moderation-latest",
"input": [
{
"type": "text",
"text": "Por favor, modere se esta imagem está em conformidade"
},
{
"type": "image_url",
"image_url": {
"url": "https://cdn.apimart.ai/files/1779955589195-wh950j4imqd.jpeg"
}
}
],
"stream": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const url = "https://api.apimart.ai/v1/moderations";
const payload = {
model: "omni-moderation-latest",
input: [
{
type: "text",
text: "Por favor, modere se esta imagem está em conformidade",
},
{
type: "image_url",
image_url: {
url: "https://cdn.apimart.ai/files/1779955589195-wh950j4imqd.jpeg",
},
},
],
stream: false,
};
const headers = {
Authorization: "Bearer <token>",
"Content-Type": "application/json",
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(payload),
})
.then((response) => response.json())
.then((data) => console.log(data))
.catch((error) => console.error("Error:", error));
Use
omni-moderation-latest para realizar a moderação de segurança do conteúdo de entrada. Este modelo pertence à Série de Moderação e não faz parte das séries de geração de imagem, vídeo ou áudio.
curl --request POST \
--url https://api.apimart.ai/v1/moderations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "omni-moderation-latest",
"input": [
{
"type": "text",
"text": "Por favor, modere se esta imagem está em conformidade"
},
{
"type": "image_url",
"image_url": {
"url": "https://cdn.apimart.ai/files/1779955589195-wh950j4imqd.jpeg"
}
}
],
"stream": false
}'
import requests
url = "https://api.apimart.ai/v1/moderations"
payload = {
"model": "omni-moderation-latest",
"input": [
{
"type": "text",
"text": "Por favor, modere se esta imagem está em conformidade"
},
{
"type": "image_url",
"image_url": {
"url": "https://cdn.apimart.ai/files/1779955589195-wh950j4imqd.jpeg"
}
}
],
"stream": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const url = "https://api.apimart.ai/v1/moderations";
const payload = {
model: "omni-moderation-latest",
input: [
{
type: "text",
text: "Por favor, modere se esta imagem está em conformidade",
},
{
type: "image_url",
image_url: {
url: "https://cdn.apimart.ai/files/1779955589195-wh950j4imqd.jpeg",
},
},
],
stream: false,
};
const headers = {
Authorization: "Bearer <token>",
"Content-Type": "application/json",
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(payload),
})
.then((response) => response.json())
.then((data) => console.log(data))
.catch((error) => console.error("Error:", error));
Modelos suportados
| Modelo | Descrição | Entradas suportadas |
|---|---|---|
omni-moderation-latest | Modelo geral de moderação de conteúdo | Texto, imagem, misto texto+imagem |
Authorizations
string
obrigatório
Todos os endpoints requerem autenticação via Bearer Token.Obter uma API Key:Acesse a página de gerenciamento de API Key para obter sua API Key.Adicione o seguinte cabeçalho à requisição:
Authorization: Bearer YOUR_API_KEY
Body
string
obrigatório
Nome do modelo de moderação.
omni-moderation-latest- Modelo geral de moderação de conteúdo
string | string[] | object[]
obrigatório
Conteúdo a ser moderado. Suporta texto simples, array de textos ou array de blocos de conteúdo.Os blocos de conteúdo podem incluir:
text- Bloco de conteúdo de textoimage_url- Bloco de conteúdo de URL de imagem
boolean
padrão:"false"
Indica se a resposta deve ser retornada em streaming.
false: Resposta não-streaming (padrão; único valor suportado no momento,truenão é suportado)
Modos de requisição input
Misto texto + imagem
{
"model": "omni-moderation-latest",
"input": [
{
"type": "text",
"text": "Por favor, modere se esta imagem está em conformidade"
},
{
"type": "image_url",
"image_url": {
"url": "https://cdn.apimart.ai/files/1779955589195-wh950j4imqd.jpeg"
}
}
],
"stream": false
}
Texto simples (único)
{
"model": "omni-moderation-latest",
"input": "I want to kill someone",
"stream": false
}
Texto simples (array)
{
"model": "omni-moderation-latest",
"input": [
"hello",
"I hate you"
],
"stream": false
}
Apenas imagem (URL de imagem)
{
"model": "omni-moderation-latest",
"input": [
{
"type": "image_url",
"image_url": {
"url": "https://cdn.apimart.ai/files/1779955589195-wh950j4imqd.jpeg"
}
}
],
"stream": false
}
Apenas imagem (Data URI base64)
{
"model": "omni-moderation-latest",
"input": [
{
"type": "image_url",
"image_url": {
"url": "data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAA..."
}
}
],
"stream": false
}
Observações
- Quando
inputé um array de blocos de conteúdo, cada elemento usatypepara distinguir o tipo de conteúdo. - Para moderação de imagens, prefira URLs publicamente acessíveis. Se usar base64, siga o formato padrão Data URI:
data:image/{format};base64,{data}. - Salvo necessidade específica, mantenha
stream: falsede forma consistente.