Saltar para o conteúdo principal
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

ModeloDescriçãoEntradas suportadas
omni-moderation-latestModelo geral de moderação de conteúdoTexto, imagem, misto texto+imagem

Authorizations

Authorization
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

model
string
obrigatório
Nome do modelo de moderação.
  • omni-moderation-latest - Modelo geral de moderação de conteúdo
input
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 texto
  • image_url - Bloco de conteúdo de URL de imagem
stream
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, true nã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

  1. Quando input é um array de blocos de conteúdo, cada elemento usa type para distinguir o tipo de conteúdo.
  2. 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}.
  3. Salvo necessidade específica, mantenha stream: false de forma consistente.