Profanity Filter API logo
UtilitiesMAINTAINED1 token / call

Profanity Filter API

Detect and censor profanity in English and Spanish with three severity tiers, so you filter only what you mean to

Detect and censor profanity in user-generated text, in English and Spanish. 550+ curated words across three severity tiers — mild (hell, crap), strong (ordinary profanity and sexual vulgarity) and slur (identity-based slurs) — so you choose what to filter with min_severity instead of over-censoring: at min_severity=strong, "jerk chicken" and "door knob" pass clean. Whole-word, case-insensitive matching with leetspeak normalization (sh!t, @ss, d1ck), censor-evasion handling (f*ck, f.u.c.k, fuk, fuuuck) and accent folding for Spanish (cabrón matches cabron). No false positives on clean words like "classic" or "Scunthorpe". Returns matched words with per-word severity, an overall max_severity, a count, and a censored version of the text.

Every call needs an X-Api-Key header. A free key includes 500 tokens a month, no card required. 1 token per call, so the free plan covers about 500 calls a month.

No credit card requiredAccess to 125+ APIsCancel anytime
response.json
{
  "text": "Oh damn, this is bullsh1t",
  "is_profane": true,
  "profanity_count": 2,
  "max_severity": "strong",
  "matches": [
    "damn",
    "bullshit"
  ],
  "match_details": [
    {
      "word": "damn",
      "severity": "mild"
    },
    {
      "word": "bullshit",
      "severity": "strong"
    }
  ],
  "censored": "Oh ****, this is ********"
}
Production Ready
Battle-tested infrastructure with a 99.9% uptime SLA. Rate limits are generous, responses are consistent.
Simple Integration
Standard REST + JSON. Works with any HTTP client. Copy-ready code snippets in 4 languages.
One Key, 125+ APIs
Your DataAndAPIs subscription unlocks every API on the platform — anime, finance, sports, and more.

Use cases for Profanity Filter API

  • Censor usernames, comments and chat messages before they are shown to others.

  • Reject or hold user content that contains slurs while letting mild language through.

  • Score messages for moderation queues by the strongest term they contain.

  • Apply the same policy in English and Spanish communities with one call.

Profanity Filter API endpoints

Every endpoint with its parameters and a real example response.

GETCheck Text

https://api-profanity-filter.dataandapis.com/v1/check

Query parameters

ParameterExample
censor*Optional
langenOptional
min_severitystrongOptional
textOh damn, this is crapRequired

Example request

curl "https://api-profanity-filter.dataandapis.com/v1/check?censor=*&lang=en&min_severity=strong&text=Oh%20damn%2C%20this%20is%20crap" \
  -H "X-Api-Key: YOUR_API_KEY"
Example response
{
  "text": "Oh damn, this is bullsh1t",
  "is_profane": true,
  "profanity_count": 2,
  "max_severity": "strong",
  "matches": [
    "damn",
    "bullshit"
  ],
  "match_details": [
    {
      "word": "damn",
      "severity": "mild"
    },
    {
      "word": "bullshit",
      "severity": "strong"
    }
  ],
  "censored": "Oh ****, this is ********"
}

POSTCheck Text (POST)

https://api-profanity-filter.dataandapis.com/v1/check

Request body

{
  "text": "Oh damn, this is crap",
  "censor": "*"
}

Example request

curl -X POST "https://api-profanity-filter.dataandapis.com/v1/check" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "text": "Oh damn, this is crap", "censor": "*" }'
Example response
{
  "text": "eres un gilipollas",
  "is_profane": true,
  "profanity_count": 1,
  "max_severity": "strong",
  "matches": [
    "gilipollas"
  ],
  "match_details": [
    {
      "word": "gilipollas",
      "severity": "strong"
    }
  ],
  "censored": "eres un ##########"
}

Where the data comes from

Source
Curated English and Spanish word list in three severity tiers, bundled in the worker.
Freshness
Word list updated with API releases.

One install. Every endpoint.

No proprietary SDKs needed. Any HTTP client works. Pick your language and paste.

3languages
2endpoints
RESTarchitecture
1key for all APIs
  • Fully typed responses — auto-completion in your IDE
  • Tracks the API in lockstep — new endpoints land same day
  • One key works across 125+ APIs on the platform
import axios from 'axios';

const { data } = await axios.get(
  'https://api-profanity-filter.dataandapis.com/v1/check',
  { headers: { 'X-Api-Key': process.env.API_KEY } }
);

Profanity Filter API · X-Api-Key

Explore the endpoints

Browse request parameters and inspect live example responses.

Available Endpoints

Request Parameters

API URL

Headers

X-Api-Key

Query Parameters

censor(Optional)
lang(Optional)
min_severity(Optional)
text(Required)
import axios from 'axios';

const url = 'https://api-profanity-filter.dataandapis.com/v1/check';
const { data } = await axios.get(url, {
  headers: { 'X-Api-Key': 'YOUR_API_KEY' }
});

One subscription. Every API.

Tokens unlock this API and 125+ others on DataAndAPIs. Switch APIs any time — we promote.

FREE

$0/mo

500 tokens / month

  • Access to all APIs
  • Tokens reset monthly
  • Community support
Start free
Most Popular

STARTER

$6.99/mo

25,000 tokens / month

  • Access to all APIs
  • Tokens reset monthly
  • Email support
Subscribe

PRO

$24.99/mo

100,000 tokens / month

  • Access to all APIs
  • Tokens reset monthly
  • Priority email support
Subscribe

ULTRA

$99.99/mo

1,000,000 tokens / month

  • Access to all APIs
  • Tokens reset monthly
  • Priority support
Subscribe

Need higher volume, dedicated infra, or a custom contract? Talk to sales →

Questions about Profanity Filter API

Ship Profanity Filter API this afternoon.

500 free tokens. No card. Plus 125+ other APIs on the same key.