Node.js Profanity Filter

Add context-aware profanity detection to any Node.js or Express app with a single fetch call — no model hosting, no word lists to maintain.

Quick start in Node.js

const res = await fetch("https://api.theprofanityapi.com/v1/check", {
  method: "POST",
  headers: {
    "Authorization": "Bearer " + process.env.PROFANITY_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ text, context: "chat", mode: "balanced" }),
});

const { flagged, intent, score } = await res.json();
if (flagged) { /* block, warn, or queue for review */ }

Why context-aware matters

A plain word list flags "this game is sick" or medical text full of anatomical terms. The Profanity API runs a five-layer pipeline that scores intent, so "die" in a gaming taunt and "die" in a real threat are handled differently. Pick a context and the engine adjusts strictness automatically.


Other integrations

Ready to ship moderation?

Get an API key and 300 free requests a month. No credit card required.

Get started free →