{"uid":"cap_4P17YtkaZdLyI1aFWjUet","slug":"verdict-l402-content-moderation-ff8fce77","name":"Verdict L402 - Content Moderation","description":"Semantic content moderation, not a word list: profanity (even disguised, any language), harassment, hate, sexual content, threats, self-harm, scams. Per-category scores, allow/review/block, configurable ignore list.","url":"https://verdict.kechlab.com/v1/moderate?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"text":{"type":"string","description":"the text to moderate"},"ignore":{"type":"array","items":{"type":"string"},"description":"(optional) categories to tolerate: profanity, harassment, hate, sexual, violence, self_harm, spam_scam"}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.0092","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.0092/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.0092","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.0092","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_izLxaUABgrmKU3HCN9IjS","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.0092","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Performs semantic content moderation across categories including profanity, harassment, hate speech, sexual content, threats, self-harm, and scams, returning per-category scores and an allow/review/block decision.","exampleAgentPrompt":"Check this user comment for hate speech, harassment, scams, and sexual content — tell me if it should be allowed, flagged for review, or blocked, and give me a score for each category: 'You're a worthless idiot, click here to claim your prize money'","exampleUseCases":[{"title":"UGC platform pre-publish filter","prompt":"Before posting this forum reply to our community board, check it for profanity, harassment, and hate speech — give me a score per category and tell me whether to allow it, send it to human review, or block it outright: 'All you people are the same, you deserve what's coming to you.'"},{"title":"Chatbot input guardrail","prompt":"Screen this inbound message to our support chatbot for threats, scams, and self-harm content before I route it to an agent — I want per-category scores and a block/review/allow decision: 'If you don't refund me I know where your office is. Also check out this link for a free gift card.'"},{"title":"Multilingual social media moderation","prompt":"Moderate this comment written in Spanish for sexual content, harassment, and hate speech — ignore the profanity category since our platform allows casual language — and tell me whether to allow, review, or block it."}],"resultDescription":"Returns per-category risk scores (profanity, harassment, hate, sexual, violence, self_harm, spam_scam) and an overall moderation decision of allow, review, or block. Semantic detection catches disguised or obfuscated language across multiple languages without relying on word lists.","failureModes":["Empty or missing text field returns a validation error","Unrecognized category names in the ignore list may be silently ignored or return an error","Very short or ambiguous text may produce low-confidence scores across all categories","Non-text content (binary, structured data) is not supported","Rate limits or payment failures may block the request with an HTTP 402 or 429 response"],"whenToPreferThis":"Prefer this endpoint when you need semantic, context-aware moderation rather than simple keyword matching — especially for disguised, obfuscated, or multilingual offensive content. It is ideal when you need fine-grained per-category scores and a three-tier decision (allow/review/block) rather than a binary pass/fail. Choose it when you need to tolerate certain categories (e.g. mild profanity on an adult platform) via the ignore list.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-21T07:20:55.537Z","isFirstParty":false,"canonicalSlug":"verdict-l402-content-moderation-ff8fce77"}