Passer au contenu principal
POST
/
v1
/
moderations
curl https://api.cometapi.com/v1/moderations \
  -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <COMETAPI_KEY>" \
  -d '{
  "model": "omni-moderation-latest",
  "input": "I want to bake cookies for my family."
}'
{
  "id": "modr-1594",
  "model": "omni-moderation-latest",
  "results": [
    {
      "flagged": false,
      "categories": {
        "harassment": false,
        "harassment/threatening": false,
        "hate": false,
        "hate/threatening": false,
        "illicit": false,
        "illicit/violent": false,
        "self-harm": false,
        "self-harm/intent": false,
        "self-harm/instructions": false,
        "sexual": false,
        "sexual/minors": false,
        "violence": false,
        "violence/graphic": false
      },
      "category_scores": {
        "harassment": 0.0001,
        "harassment/threatening": 0.0001,
        "hate": 0.0001,
        "hate/threatening": 0.0001,
        "illicit": 0.0001,
        "illicit/violent": 0.0001,
        "self-harm": 0.0001,
        "self-harm/intent": 0.0001,
        "self-harm/instructions": 0.0001,
        "sexual": 0.0001,
        "sexual/minors": 0.0001,
        "violence": 0.0001,
        "violence/graphic": 0.0001
      },
      "category_applied_input_types": {
        "harassment": [
          "text"
        ],
        "harassment/threatening": [
          "text"
        ],
        "hate": [
          "text"
        ],
        "hate/threatening": [
          "text"
        ],
        "illicit": [
          "text"
        ],
        "illicit/violent": [
          "text"
        ],
        "self-harm": [
          "text"
        ],
        "self-harm/intent": [
          "text"
        ],
        "self-harm/instructions": [
          "text"
        ],
        "sexual": [
          "text"
        ],
        "sexual/minors": [
          "text"
        ],
        "violence": [
          "text"
        ],
        "violence/graphic": [
          "text"
        ]
      }
    }
  ],
  "usage": {
    "prompt_tokens": 12,
    "completion_tokens": 0,
    "total_tokens": 12,
    "input_tokens": 12,
    "output_tokens": 0,
    "prompt_tokens_details": {
      "cached_tokens": 0
    },
    "completion_tokens_details": {
      "reasoning_tokens": 0
    },
    "input_tokens_details": null,
    "claude_cache_creation_1_h_tokens": 0,
    "claude_cache_creation_5_m_tokens": 0
  }
}

Documentation Index

Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt

Use this file to discover all available pages before exploring further.

Utilisez ce endpoint pour vérifier le contenu généré par les utilisateurs avant de l’envoyer à un endpoint de modèle. Envoyez une requête de modération compatible OpenAI avec une valeur model et une valeur input.
Utilisez une clé API CometAPI dans l’en-tête bearer : Authorization: Bearer <COMETAPI_KEY>.

Corps de la requête

FieldTypeRequiredDescription
inputstring or arrayYesLe contenu à vérifier. Utilisez une chaîne pour une seule entrée texte, un tableau de chaînes pour des vérifications de texte par lot, ou des éléments multimodaux de style OpenAI comme du texte plus image_url.
modelstringYesmodel ID de modération. Utilisez omni-moderation-latest pour la modération de texte et d’image, sauf si vous avez une exigence spécifique concernant un modèle de modération.
Pour la modération multimodale, envoyez une entrée multimodale de style OpenAI avec un modèle qui la prend en charge, comme omni-moderation-latest. Les URL d’images publiques doivent pouvoir être téléchargées par les serveurs CometAPI. Pour un test d’image copiable, utilisez une URL de données base64.

Exemples de requête

Envoyez une seule chaîne de texte lorsque vous devez classifier une seule entrée texte :
curl https://api.cometapi.com/v1/moderations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <COMETAPI_KEY>" \
  -d '{
    "model": "omni-moderation-latest",
    "input": "I want to bake cookies for my family."
  }'
Envoyez un tableau de chaînes lorsque vous souhaitez vérifier plusieurs entrées texte dans une seule requête :
curl https://api.cometapi.com/v1/moderations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <COMETAPI_KEY>" \
  -d '{
    "model": "omni-moderation-latest",
    "input": [
      "I want to bake cookies.",
      "I want to kill someone."
    ]
  }'
Envoyez du texte plus une URL d’image lorsque votre entrée de modération inclut une image que CometAPI peut télécharger :
curl https://api.cometapi.com/v1/moderations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <COMETAPI_KEY>" \
  -d '{
    "model": "omni-moderation-latest",
    "input": [
      { "type": "text", "text": "...text to classify goes here..." },
      {
        "type": "image_url",
        "image_url": {
          "url": "https://www.gstatic.com/webp/gallery/1.png"
        }
      }
    ]
  }'
Utilisez une URL de données base64 lorsque vous avez besoin d’une requête d’image autonome :
curl https://api.cometapi.com/v1/moderations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <COMETAPI_KEY>" \
  -d '{
    "model": "omni-moderation-latest",
    "input": [
      { "type": "text", "text": "...text to classify goes here..." },
      {
        "type": "image_url",
        "image_url": {
          "url": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAAAAAA6fptVAAAADElEQVR4nGP4//8/AAX+Av4N70a4AAAAAElFTkSuQmCC"
        }
      }
    ]
  }'

Format de la réponse

La réponse inclut id, model, results et usage. Chaque élément de results indique si l’entrée correspondante a été signalée, les booléens de catégorie, les scores de catégorie et les types d’entrée appliqués à chaque catégorie. Pour une requête de texte par lot, results contient un élément par chaîne d’entrée. Utilisez usage pour les champs de facturation et de surveillance.

Autorisations

Authorization
string
header
requis

CometAPI API key used for model requests. Send it as Authorization: Bearer <COMETAPI_KEY>.

Corps

application/json
model
string
requis

Required moderation model ID. Use omni-moderation-latest for text and image moderation unless you have a specific moderation model requirement.

Exemple:

"omni-moderation-latest"

input
requis

Content to check. Use a string for one text input, an array of strings for batch text checks, or OpenAI-style multimodal parts such as text plus image_url when the selected model supports it.

Exemple:

"I want to check this text before sending it to a model."

Réponse

Moderation decisions and token usage.

id
string
requis

Moderation request ID.

Exemple:

"modr-1594"

model
string
requis

Model used for moderation.

Exemple:

"omni-moderation-latest"

results
object[]
requis

Moderation decisions. For batch text input, this array contains one result per input string.

usage
object
requis

Token usage for the moderation request. Additional provider accounting fields can be present.