Kotlin Profanity Filter

Moderate content from Kotlin backends (or Android via your server) using OkHttp.

Quick start in Kotlin

val body = """{"text":"$text","context":"chat","mode":"balanced"}"""
    .toRequestBody("application/json".toMediaType())

val request = Request.Builder()
    .url("https://api.theprofanityapi.com/v1/check")
    .header("Authorization", "Bearer ${System.getenv("PROFANITY_API_KEY")}")
    .post(body)
    .build()

OkHttpClient().newCall(request).execute().use { res ->
    val json = JSONObject(res.body!!.string())
    // json.getBoolean("flagged"), json.getString("intent")
}

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 →