Skip to main content
Documentação
CENTRO DE APRENDIZAGEM

Domine a moderação de conteúdo com guias completos, tutoriais e documentação da API

Links rápidos

Solicitações combinadas com múltiplas verificações

Você não precisa fazer uma chamada de API para cada verificação. Um único POST /api/v2/check pode executar verificações de texto, imagem, palavras proibidas e antivírus em conjunto sobre conteúdo misto, retornando uma única resposta com um resultado para cada uma. Essa é a forma mais eficiente de moderar, de uma só vez, uma publicação que tem legenda, imagem e anexo.

Por que moderar tudo em uma única chamada?

O envio de um usuário geralmente é um conjunto: texto mais mídia e links. Chamar a API separadamente para cada parte significa mais idas e vindas, mais latência e mais cota consumida. Uma solicitação combinada executa as verificações habilitadas em paralelo e fornece uma única decisão para você agir.

Como executar várias verificações de uma vez?

Coloque cada tipo de conteúdo em content, habilite as verificações desejadas em settings e leia os resultados de cada verificação. Cada verificação habilitada é executada sobre o conteúdo correspondente.

curl -X POST https://api.discuse.com/api/v2/check \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{
    "content": {
      "text": "Great deal, check my profile!",
      "image_urls": ["https://example.com/post-image.jpg"],
      "document_urls": ["https://example.com/attachment.pdf"]
    },
    "settings": {
      "check_spam": true,
      "check_sentiment": true,
      "check_images": true,
      "check_antivirus": true
    }
  }'

Resposta

{
  "has_violations": true,
  "cached": false,
  "results": {
    "hits": true,
    "spamfinder": { "label": "spam", "confidence": 0.91, "is_spam": true, "hit": true },
    "sentiment": { "is_negative": false, "is_toxic": false, "score": 0.1, "hit": false },
    "images": { "status": "OK", "porn": 0.02, "sexual": 0.05, "neutral": 0.93, "hit": false },
    "antivirus": { "status": "OK", "hit": false, "details": [] }
  },
  "usage": {
    "api_requests_used": 530,
    "api_requests_limit": 10000,
    "api_requests_remaining": 9470
  }
}

Como interpretar o resultado combinado?

Use has_violations para a decisão geral e, em seguida, observe cada results.<check>.hit para ver qual verificação foi acionada e por quê:

Campo Significado
has_violations Verdadeiro se qualquer verificação habilitada sinalizou o conteúdo — sua decisão em uma linha
results.hits O mesmo sinal geral dentro do objeto de resultados
results.spamfinder.hit Spam foi acionado (considera o limite; use hit como critério, não o is_spam bruto)
results.sentiment.hit Sentimento tóxico/negativo acima dos seus limites
results.images.hit Uma imagem ultrapassou seu limite de NSFW
results.antivirus.hit Malware encontrado em um documento
results.badwords.hit Uma palavra proibida configurada foi encontrada
results.skipped_features Verificações solicitadas, mas não executadas (por exemplo, um recurso cuja cota se esgotou)

Apenas as verificações que você habilitou (e que tinham conteúdo correspondente) aparecem em results. Uma verificação sem conteúdo para analisar — check_images sem image_urls — simplesmente não é executada.

Qual conteúdo corresponde a qual verificação?

Verificação Conteúdo lido
check_sentiment, check_spam, check_badwords, check_language content.text
check_images content.image_urls
check_antivirus content.document_urls

Uma única solicitação pode conter até 10 URLs de imagem, 5 URLs de documento e texto com até 10.000 caracteres. Envie as partes de um envio juntas, em vez de dividi-las em várias chamadas.

E quanto a falhas parciais?

Se uma verificação gerar erro (por exemplo, se uma URL de imagem estiver inacessível), as outras ainda retornam — você recebe os resultados que tiveram sucesso, e a verificação com falha informa seu erro/resultado vazio em vez de fazer a solicitação inteira falhar. Decida por verificação: bloqueie com base em um hit confirmado e escolha se uma verificação com erro deve ser aprovada por padrão ou enviada para análise.

Boas práticas

Habilite apenas o que você precisa

Cada verificação habilitada adiciona trabalho. Ative as verificações que correspondem ao conteúdo que você realmente recebe — não há benefício em executar check_antivirus em mensagens apenas de texto.

Uma decisão, depois aprofunde

Primeiro ramifique com base em has_violations para o caminho rápido; depois, inspecione results somente quando precisar saber qual verificação foi acionada (para registros, contestações ou encaminhamento ao revisor certo).

const res = await check(content, settings);
if (!res.has_violations) return allow();

const r = res.results;
if (r.antivirus?.hit) return quarantine();      // most severe first
if (r.images?.hit)    return blockMedia();
if (r.spamfinder?.hit || r.badwords?.hit) return shadowban();
return queueForReview(r);

Relacionados

Escrito por Equipe Discuse · Última atualização em June 2026

Artigos relacionados

Análise de texto e detecção de sentimento

Detecte spam, toxicidade, palavrões e analise o sentimento em conteúdo de texto

Detecção de NSFW em imagens

Detecte e filtre automaticamente imagens inadequadas e conteúdo adulto

Detecção de spam

Filtragem de spam com tecnologia de AI para textos e mensagens