Skip to content

Text moderation

This page documents the content moderation endpoint in models-model.md style: overview, auth, params table, request examples, response example.


Overview

  • Method: POST
  • Path: /v1/moderations
  • Content-Type: application/json

Authentication

  • Use HTTP Bearer Token, e.g. Authorization: Bearer sk-xxxxx

Request parameters

ParameterTypeRequiredDescription
modelstringyesModeration model name, e.g. text-moderation-latest (see the site's model list for moderation models)
inputstringyesText content to be moderated

Request example

json
{
  "model": "text-moderation-latest",
  "input": "She is very beautiful and likes..."
}

curl

bash
curl -X POST "https://api.gpt.ge/v1/moderations" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-xxxx" \
  -d '{"model":"text-moderation-latest","input":"She is very beautiful and likes..."}'

JavaScript (fetch)

javascript
fetch('https://api.gpt.ge/v1/moderations', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer sk-xxxx' },
  body: JSON.stringify({ model: 'text-moderation-latest', input: 'She is very beautiful and likes...' })
}).then(r => r.json()).then(console.log)

Python (requests)

python
import requests

payload = { 'model': 'text-moderation-latest', 'input': 'She is very beautiful and likes...' }
resp = requests.post('https://api.gpt.ge/v1/moderations', headers={'Content-Type':'application/json','Authorization':'Bearer sk-xxxx'}, json=payload)
print(resp.json())

Response example (200)

json
{
  "id": "modr-970d409ef3bef3b70c73d8232df86e7d",
  "model": "text-moderation-latest",
  "results": [
    {
      "flagged": true,
      "categories": {
        "sexual": false,
        "sexual/minors": false,
        "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,
        "violence": true,
        "violence/graphic": false
      },
      "category_scores": {
        "sexual": 2.34135824776394e-7,
        "sexual/minors": 1.6346470245419304e-7,
        "harassment": 0.0011643905680426018,
        "harassment/threatening": 0.0022121340080906377,
        "hate": 3.1999824407395835e-7,
        "hate/threatening": 2.4923252458203563e-7,
        "illicit": 0.0005227032493135171,
        "illicit/violent": 3.682979260160596e-7,
        "self-harm": 0.0011175734280627694,
        "self-harm/intent": 0.0006264858507989037,
        "self-harm/instructions": 7.368592981140821e-8,
        "violence": 0.8599265510337075,
        "violence/graphic": 0.37701736389561064
      },
      "category_applied_input_types": {
        "sexual": ["image"],
        "sexual/minors": [],
        "harassment": [],
        "harassment/threatening": [],
        "hate": [],
        "hate/threatening": [],
        "illicit": [],
        "illicit/violent": [],
        "self-harm": ["image"],
        "self-harm/intent": ["image"],
        "self-harm/instructions": ["image"],
        "violence": ["image"],
        "violence/graphic": ["image"]
      }
    }
  ]
}