Nuxt Profanity Filter

Use a Nuxt server route (Nitro) to keep your key on the server and expose a safe endpoint to your Vue pages.

Quick start in Nuxt

// server/api/moderate.post.ts
export default defineEventHandler(async (event) => {
  const { text } = await readBody(event);
  return await $fetch("https://api.theprofanityapi.com/v1/check", {
    method: "POST",
    headers: { Authorization: `Bearer ${process.env.PROFANITY_API_KEY}` },
    body: { text, context: "comment", mode: "balanced" },
  });
});

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 →