VideoCensorVideoCensor
HomeToolsAboutPricingBlogAPI
Sign In
VideoCensorVideoCensor

Remove profanity from video — fast and automatic

Product

  • Remove profanity
  • Pricing
  • For Business

Developers

  • API Dashboard
  • Documentation
  • Content Moderation API
  • Python SDK
  • Node.js SDK

Resources

  • About
  • FAQ
  • Blog

Company

  • Support us
  • Privacy
  • Terms

Contacts

  • support@videocensor.net

Tools

  • Profanity Checker
  • YouTube Moderation
  • Video Subtitles
  • Extract Audio
  • YouTube Chapters
  • Beep Sound
Files are automatically deleted
No registration for basic mode
Secure processing

N. A. Dzhumaev, TIN 645504695070, self-employed (NPD) · © 2026 VideoCensor. All rights reserved.

Content Moderation API

REST API for automatic user-generated content moderation. Detect and remove profanity, hate speech, extremism, drug references, and sexual content in text, audio and video — in seconds, through a single HTTP request.

Start freeAPI docs

6 moderation categories

profanity, hate_speech, extremism, drugs, sexual, insults. Four sensitivity presets — mild, standard, strict, max. Custom dictionaries and whitelist via API.

Text, audio, and video in one API

POST /analyze/text, /analyze/media, /censor/text, /censor/media. Up to 50,000 characters for text, up to 10 GB per file. Upload via file, URL or YouTube/VK/RuTube link.

Production-ready

HMAC-SHA256 webhook signing, X-Idempotency-Key, sliding-window rate limit, X-RateLimit-* headers, RFC 7807 Problem Details, X-Request-Id tracing.

Sandbox without credit cost

test-prefix keys — processing without deducting monthly quota. Use for CI and integration tests. live-prefix keys — for production.

Python + Node.js SDKs

pip install videocensor, npm install @videocensor/sdk. Sync + async clients, typed models, auto-retry with exponential backoff, progress callbacks.

Webhooks & Batch

POST /webhooks — HMAC-signed delivery on job completion. POST /batch — up to 100 requests per call to reduce latency and cost.

Code examples

Python SDK
import os
from videocensor import VideoCensor

client = VideoCensor(api_key=os.environ["VIDEOCENSOR_API_KEY"])
result = client.analyze_text("Sample text to moderate")
# result: AnalyzeTextResult(flagged_count=..., categories=...)
Node.js SDK
import { VideoCensor } from "@videocensor/sdk";

const client = new VideoCensor({ apiKey: process.env.VIDEOCENSOR_API_KEY! });
const result = await client.analyzeText("Sample text to moderate");
// result: { flaggedCount: ..., categories: [...] }
cURL
curl -X POST https://videocensor.ru/api/v1/analyze/text \
  -H "X-API-Key: $VIDEOCENSOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Sample text","language":"en"}'
Media upload (Python)
import os
from videocensor import VideoCensor

client = VideoCensor(api_key=os.environ["VIDEOCENSOR_API_KEY"])
result = client.analyze_media("/path/to/video.mp4")
# result: AnalyzeTextResult(flagged_count=..., categories=...)

Who uses this API

  • UGC platforms

    Forums, social networks, marketplaces, chats — moderate comments and messages before publication.

  • EdTech and kids apps

    Filter profanity in chats, titles, and user content descriptions in real time.

  • Video hosting and streaming

    Automatically scan uploads and remove profanity from audio tracks.

  • Podcast platforms

    Moderate episode audio through /censor/media, get a clean version ready to publish.

  • YouTube monetization

    Check videos for advertiser-friendly content via /analyze/media before uploading to YouTube.

  • Enterprise compliance

    Profanity control in call recordings, webinars, internal videos — HR and PR policy enforcement.

Content Moderation API FAQ

What content categories does the API detect?+

Six categories: profanity, hate_speech, extremism, drugs, sexual, insults. Each category can be enabled or disabled independently via the categories parameter.

Which languages are supported?+

Russian and English are fully supported on all endpoints. Models are trained on both languages, morphological analysis catches profanity in all word forms.

How accurate is the detection?+

Standard mode — up to 97% precision on clean speech. Precise mode uses two AI providers in parallel for 99%+ precision. For songs, use enhanced mode — Demucs neural network separates vocals from music.

How does billing work?+

1 minute Standard = 1 credit, 1 minute Precise = 3 credits. Free plan — 100 credits/mo. Developer — 1,500 credits for $14.99. Business — 7,500 credits for $59.99. Top-up packs from $14.99.

Are there file size limits?+

Free — up to 50 MB. Developer — up to 500 MB. Business — up to 2 GB. Studio — up to 5 GB. Enterprise — up to 10 GB. Use webhooks instead of polling for long files.

How is the API secured?+

HTTPS only. API keys are passed in the X-API-Key header. Keys are stored as SHA-256 hashes — plain text is never recoverable. Sliding-window rate limit, X-Idempotency-Key for safe retries, HMAC-SHA256 signed webhooks.

Where are the docs?+

Full OpenAPI docs at /developers/docs, interactive playground at /developers, curl/Python/Node.js examples for every endpoint.

Integrate in 5 minutes

100 credits/month on the Free plan. Start with the Python or Node.js SDK — pip install videocensor.

Start freeAPI docs