Skip to content

Moderation

Classify text for potentially harmful content.

Create Moderation

POST https://api.3xcoder.com/v1/moderations

Checks whether text content violates content policies.

Request Body

ParameterTypeRequiredDescription
modelstringNoModel to use (e.g., text-moderation-latest, text-moderation-stable)
inputstring/arrayYesText to classify. Can be a single string or array of strings

Response

json
{
  "id": "modr-abc123",
  "model": "text-moderation-latest",
  "results": [
    {
      "flagged": false,
      "categories": {
        "sexual": false,
        "hate": false,
        "harassment": false,
        "self-harm": false,
        "sexual/minors": false,
        "hate/threatening": false,
        "violence/graphic": false,
        "self-harm/intent": false,
        "self-harm/instructions": false,
        "harassment/threatening": false,
        "violence": false
      },
      "category_scores": {
        "sexual": 0.000012,
        "hate": 0.000008,
        "harassment": 0.000015,
        "self-harm": 0.000002,
        "sexual/minors": 0.000001,
        "hate/threatening": 0.000001,
        "violence/graphic": 0.000003,
        "self-harm/intent": 0.000001,
        "self-harm/instructions": 0.000001,
        "harassment/threatening": 0.000002,
        "violence": 0.000005
      }
    }
  ]
}

Examples

bash
curl https://api.3xcoder.com/v1/moderations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -d '{
    "input": "This is a sample text to check for content policy violations."
  }'
python
from openai import OpenAI

client = OpenAI(
    api_key="your-api-key",
    base_url="https://api.3xcoder.com/v1"
)

response = client.moderations.create(
    input="This is a sample text to check for content policy violations."
)

result = response.results[0]
print(f"Flagged: {result.flagged}")
for category, flagged in result.categories:
    if flagged:
        print(f"  {category}: flagged")
javascript
const response = await fetch('https://api.3xcoder.com/v1/moderations', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': `Bearer ${process.env.OPENAI_API_KEY}`
  },
  body: JSON.stringify({
    input: 'This is a sample text to check for content policy violations.'
  })
})

const data = await response.json()
console.log('Flagged:', data.results[0].flagged)

Batch Moderation

Check multiple texts at once:

json
{
  "input": [
    "First text to check.",
    "Second text to check.",
    "Third text to check."
  ]
}

The response will contain a result for each input text in order.

3xCoder — Unified AI API Endpoint