What it does
The CheckText Profanity API is a profanity filter API that checks text for swear words and offensive language. Send a comment, message or username and find out whether it contains profanity, how many times, and which words were matched.
It is one POST endpoint. Send the text to check, and optionally a language code such as en, which is the default. The response tells you contains_profanity as true or false, gives a match_count, and lists the exact words found in matches, so you can block the text, mask the words, or send it to a moderator with the problem highlighted.
Matching is based on a published list of profane words, so results are predictable and easy to explain to users: a word is either on the list or it is not. Common uses include checking usernames and display names at sign-up, screening comments, reviews and chat messages before they are published, filtering in-game chat, and flagging user content for a moderation queue.
A word list catches explicit language but not insults, threats or harassment written in polite words. For that, use the Detect Text Toxicity API, or the AI Text Moderation API for broader content moderation. If you do not know the language of the text in advance, detect it first with the Language Detection API and pass the result as language.
You can try it right here in the playground. Start for free with 5 API calls a day, no card required, and check your own text before you commit.
The API is also available through ApyHub MCP, so AI agents can screen text for profanity directly before they publish or reply.