API Basics
Data Tools
WWW
Browser Bot
HTML Clean
URL Info
Telephony
Geolocation
Security and Networking
E-commerce
Imaging
Legacy APIs

Bad Word Filter

Detect bad words, swear words and profanity in a given text

The Bad Word Filter API uses natural language processing (NLP) to decode content into logical words ignoring punctuation, case, accent and other formatting details. We also apply word transformations to detect obfuscation of bad words, for example converting "leetspeak" and repeating or spurious character sequences. We then scan for words and sentences using several large catalogs of known and verified bad words. You can select from two main word catalogs depending on your use-case and how strict you want the filter to behave. You can also use this API to censor (mask) out bad words from the supplied text using the specified censor character.

This API uses a mostly English based catalog with some common swear words from other languages too, official support for more languages is currently in the pipeline.

API Endpoint

https://neutrinoapi.net/bad-word-filter
Test API
API Request
ParameterRequiredTypeDefaultDescription
contentyesstringThe content to scan. This can be either a URL to load from, a file upload (multipart/form-data) or an HTML content string
censor-characternostringThe character to use to censor out the bad words found
catalognostringstrictWhich catalog of bad words to use, we currently maintain two bad word catalogs:
  • strict - the largest database of bad words which includes profanity, obscenity, sexual, rude, cuss, dirty, swear and objectionable words and phrases. This catalog is suitable for environments of all ages including educational or children's content
  • obscene - like the strict catalog but does not include any mild profanities, idiomatic phrases or words which are considered formal terminology. This catalog is suitable for adult environments where certain types of bad words are considered OK
API Response
ParameterTypeDescription
is-badbooleanDoes the text contain bad words
bad-words-totalintegerTotal number of bad words detected
bad-words-listarrayAn array of the bad words found
censored-contentstringThe censored content (only set if censor-character has been set)
API Performance
CharacteristicValueDescription
Avg Latency15msAverage RTT for requests within the same data center/region
Max Rate200/secondMaximum inbound request rate. Exceeding this will result in request throttling
Max Concurrency250Maximum concurrent/simultaneous requests. Exceeding this will result in error code 06 [TOO MANY CONNECTIONS]

API Example
curl https://neutrinoapi.net/bad-word-filter \ --header "User-ID: <your-user-id>" \ --header "API-Key: <your-api-key>" \ --data-urlencode "censor-character=" \ --data-urlencode "catalog=strict" \ --data-urlencode "content=https://en.wikipedia.org/wiki/Profanity"