🎉 100% FREE FOREVER

NSFW Detection API

Detect nudity and unsafe content in images with our simple REST API.
No API key required. No rate limits. Free forever.

🆓

100% Free

No payment, no API key, no hidden costs. Free forever.

Lightning Fast

Average response time under 2 seconds.

🔒

Privacy First

Images are processed and immediately deleted.

📡 API Endpoint

POST https://api.nsfwcheckers.com/detect-nudity

📤 Request

Send a multipart/form-data POST request with the image file.

Parameters

Parameter Type Required Description
file File Yes Image file (JPG, PNG, GIF, WebP). Max 10MB.
mode String No Detection mode: normal (default) or deep

Detection Modes

Mode Description Use Case
normal Checks for exposed nudity only (default) General content moderation
deep Includes covered chest and buttocks detection Strict platforms, no suggestive content

📥 Response

Returns a JSON object with the detection results.

Response Fields

Field Type Description
is_nudity Boolean true if NSFW content detected, false if safe
detected_content String Description of detected content (e.g., "Exposed chest")
mode String The detection mode used (normal, deep, or strict)

Example Response (Safe Image)

{
    "is_nudity": false,
    "detected_content": "No sensitive content",
    "mode": "normal"
}

Example Response (NSFW Detected)

{
    "is_nudity": true,
    "detected_content": "Exposed chest",
    "mode": "deep"
}

💻 Code Examples

cURL (Normal Mode - Default)

curl --location 'https://api.nsfwcheckers.com/detect-nudity' \
--form 'file=@"/path/to/file"'

cURL (Deep Mode)

curl --location 'https://api.nsfwcheckers.com/detect-nudity?mode=deep' \
--form 'file=@"/path/to/file"'

JavaScript (Fetch)

const formdata = new FormData();
formdata.append("file", fileInput.files[0], "file");

const mode = "deep"; // Options: "normal", "deep"

fetch(`https://api.nsfwcheckers.com/detect-nudity?mode=${mode}`, {
  method: "POST",
  body: formdata
})
  .then((response) => response.json())
  .then((result) => console.log(result))
  .catch((error) => console.error(error));

Python (Requests)

import requests

mode = "deep"  # Options: "normal", "deep"
url = f"https://api.nsfwcheckers.com/detect-nudity?mode={mode}"

files = [
  ('file', ('file', open('/path/to/file', 'rb'), 'application/octet-stream'))
]

response = requests.post(url, files=files)
print(response.json())

🎯 Use Cases

💬

Chat Apps

Filter user-uploaded images in real-time.

🌐

Social Platforms

Auto-moderate content before publishing.

🛒

E-commerce

Validate product images before listing.

❤️ Support This Free API

Help Us Keep This API Free Forever

Running AI models isn't cheap! If this API saves you time and money, consider buying us a coffee. Your support helps cover server costs and keeps this service free for everyone.

  • ✅ No rate limits
  • ✅ No API key required
  • ✅ Always free
☕ Buy Me a Coffee
Scan to support NSFWCheckers

Scan to Pay

Ready to Get Started?

No signup required. Just start making API calls!

🚀 Try It Now
Buy me a coffee