Guide · Updated 13 October 2026

Can AI moderate text for hate speech and harassment?

Yes, for most of it. A model reads every message as it is sent and says which kinds of abuse it finds, each with how sure it is; people decide the cases it is unsure about. Detectivision does this for Turkish and English text, with one API call per message.

Kinds of abuse

Which flag finds what

Every account has these text flags. Ask for the ones your rules cover.

AbuseFlagWhat it finds
InsultsinsultWords that attack or demean a person.
HatehateHostility toward a group of people.
RacismracismAbuse about race, ethnicity or origin.
SexismsexismAbuse about sex or gender.
Sexual harassmentsexualSexual language, such as unwanted sexual remarks.
Self-harmself_harmTalk of suicide or self-harm, so someone can reach out.
Where people still decide

What a model cannot settle alone

A model judges the text it is given. These need a person, or context the text does not carry.

  • Context across messages

    Each text is judged alone. A threat spread over several messages, or a reply that is only abusive next to what it answers, needs the thread.

  • Quoting and reporting

    A message that quotes abuse to report it can read like the abuse itself.

  • New slang and coded words

    Words invented to get past filters change faster than any model.

  • Other languages

    Turkish and English. Text in other languages is checked, but the results are not reliable.

How it works
  1. Check before it is posted

    Send each message as it is written and hold it when one of your flags is raised: an answer comes at once.

  2. Draw your own line

    Every flag comes with its confidence, 0 to 1. Block above one line, send what falls between to a moderator, let the rest through.

  3. Review what can wait

    Comments held for review can go with "async": true, at half the price; each result comes by webhook.

  4. Act and keep a record

    Moderators act on each request from the dashboard’s Logs, and your system gets every action by webhook.

In code

Check one message

Request
curl https://api.detectivision.ai/api/v1/moderation \
  -H "Api-Key: $DETECTIVISION_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "text_moderation",
    "input": "You are an idiot",
    "mode": "detect",
    "flags": ["insult", "hate", "racism", "sexism", "sexual"]
  }'
Response
{
  "id": 1051,
  "type": "text_moderation",
  "mode": "detect",
  "status": "completed",
  "flagged": true,
  "flags": [{ "flag": "insult", "confidence": 0.97 }],
  "checked": ["insult", "hate", "racism", "sexism", "sexual"],
  "unchecked": [],
  "tookMs": 90,
  "usage": { "charged": 2, "remaining": 9998 }
}

A text of up to 2,500 characters is 1 credit by webhook, 2 for an answer at once.

Questions

Frequently asked

Can AI detect harassment in chat messages?

Yes: insults, hate, racism, sexism and sexual language, each as its own flag with a confidence. Harassment spread over many messages needs the thread, which a person reads.

Will it replace human moderators?

It replaces reading every message. People still decide what the model is unsure about, and the appeals.

How do I know it works on my community’s language?

Try it on your own messages first: start the free trial and send them through the dashboard’s playground or the API.

Which languages are supported?

Turkish and English. Text in other languages is checked, but the results are not reliable.

Does Detectivision remove messages itself?

Every request shows in the dashboard’s Logs. You define your own actions, such as Approve or Ban; when a moderator takes one, your system gets a moderation.action webhook and carries it out. Detectivision never acts on your platform itself.

Related