Profanity Filter API

POST

Mask foul language across user comments and chat messages.

Profanity Filter scans text for offensive language and masks detected swear words with a chosen replacement character. It returns the sanitized text and a boolean flag indicating if profanity was present.

Try it — live request, no key required

Request
POSTapi.apiverve.com/v1/profanityfilter
Body
Verification
Format

No key required to try it. Get a key to use it in your app.

Example
{
  "status": "ok",
  "error": null,
  "data": {
    "isProfane": true,
    "filteredText": "Today is so **** hot! Why the **** would anyone go outside?",
    "mask": "*",
    "trimmed": false,
    "profaneWords": 2
  }
}

Start from a template — a working app you can deploy in a minute

About the Profanity Filter API

Submit any string with an optional single-character mask, which defaults to an asterisk. The endpoint inspects the content against a list of profane words, swaps matches with the chosen mask character, and reports whether offensive terms appeared. Paid plans also return the total count of filtered words.

What people use it for

Livestream Chat Overlay
Display clean real-time viewer comments on screen by replacing detected profanities with asterisks before rendering video overlays.
E-Commerce Review Sanitization
When shoppers submit product ratings, review pipelines scrub vulgar vocabulary and set the profanity flag before publishing feedback.
Classroom Discussion Boards
Educational platforms screen student forum posts to mask inappropriate terminology automatically across shared school assignment boards.
Support Ticket Sanitization
Flag hostile customer support messages automatically on submission by evaluating incoming complaint bodies for profane language.

Ways to call it

One endpoint, many ways in — REST with JSON, XML, YAML and CSV, plus GraphQL and an MCP interface for AI agents.

JSON
Default REST response
XML
Markup format
YAML
Human-readable
CSV
Tabular export
Beta
GraphQL
Query language
New
MCP
For AI agents

Other ways to use Profanity Filter

Same data, same APIVerve account, same credit balance — one key works on all of them.

Questions.

Common questions about the Profanity Filter API.

Read the docs →
How many text checks does the Free plan cover?
The Free plan provides 200 credits each month, which covers 100 text checks at 2 credits per call. If you need higher volume, the Starter plan provides 200,000 credits for 100,000 checks, working out to about $0.30 per 1,000 checks.
Do I get the count of detected profane words on the Free plan?
No, the total count of filtered profane words is a premium field. The Free plan returns the masked text and confirms whether profanity was found, but accessing the count of filtered words requires upgrading to any paid plan.
Can I customize the replacement character used to hide words?
Yes, you can provide any single character, such as an asterisk, to replace profane terms in the text. Profanity Filter replaces each letter of the offending word with your designated mask character.
How does the filter detect profane words?
The service checks your text against a predefined list of profanity that is updated regularly. Matches are automatically stripped out and substituted with the mask character.
What does the response return if text contains no profanity?
If no offensive words are found, the returned text matches your original input exactly, and the profanity indicator is marked false. The request still consumes 2 credits.

Ready to build with Profanity Filter? Start with 200 free credits — one key unlocks all 300+ APIs.

Explore the catalog

300+ APIs on the same key and the same response shape.

Browse all APIs