API URL
POST /api/analyze
Headers
Code
Content-Type: application/jsonBody Parameters
Param
Type
Description
text
required
string
Yes | Required. Max length: 3000 chars. Plain text to analyze.
texts
required
array
Array of texts for batch processing (1-100 items each 1-10000 characters)
severity
optional
string
Severity level filter: low medium high critical
language
optional
string
Language code (Tier 3 supports en only)
Example Request
Code
{'text': 'You little shit'}Successful Response
Status
HTML
200 OKBody
Code
{'source': 'flat', 'input': 'You little shit', 'profanity_count': 1, 'profanities': [{'term': 'shit', 'language': 'en', 'severity': 'high', 'definition': 'expletive'}]}Field
Type
Description
success
boolean
profanities[].term | string | Specific inappropriate language detected for content filtering and user education
data
object
profanities[].severity | string | Content severity classification (low, medium, high) for proportional moderation actions
data.filtered
object
profanities[].category | string | Content violation type (harassment, explicit, hate speech) for policy enforcement tracking
data.detected
object
—
data.analyzed
object
—
data.text
string
—
data.hasProfanity
boolean
—
data.severity
string
—
data.positions
array
—
data.count
number
—
data.analysis
object
—
meta
object
—
meta.tier
number
—
meta.correlationId
string
—
meta.timestamp
string
—
meta.processingTime
string
—
error
string
—
Error Response
Example
Code
400 INVALID_INPUT | If "text" field is missing, not a string, or too long
500 INTERNAL_ERROR | If LLM fails or other internal errorLast Updated: May 4, 2026