Unprofane

Raw HTTP.

One POST from whatever you already have.

Runs in any server. Every name is checked with context: "username" and the teen policy; change the policy to suit the audience. Replace the key.

curl https://api.unprofane.com/v1/check \
  -H "Authorization: Bearer up_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"sh1tH3ad_69","context":"username","policy":"teen"}'

Notes

Keep the secret key on the server. The response’s `allowed` is the decision; `matches[0].category` tells a reserved name from a profane one.

What the response holds, and how to read a reserved name apart from a profane one, is in the API reference. The other recipes are on the username page.