← ClaudeAtlas

azure-ai-contentsafety-tslisted

Analyze text and images for harmful content using Azure AI Content Safety (@azure-rest/ai-content-safety). Use when moderating user-generated content, detecting hate speech, violence, sexual content, or self-harm, or managing custom blocklists.
aiskillstore/marketplace · ★ 329 · AI & Automation · score 82
Install: claude install-skill aiskillstore/marketplace
# Azure AI Content Safety REST SDK for TypeScript Analyze text and images for harmful content with customizable blocklists. ## Installation ```bash npm install @azure-rest/ai-content-safety @azure/identity @azure/core-auth ``` ## Environment Variables ```bash CONTENT_SAFETY_ENDPOINT=https://<resource>.cognitiveservices.azure.com CONTENT_SAFETY_KEY=<api-key> ``` ## Authentication **Important**: This is a REST client. `ContentSafetyClient` is a **function**, not a class. ### API Key ```typescript import ContentSafetyClient from "@azure-rest/ai-content-safety"; import { AzureKeyCredential } from "@azure/core-auth"; const client = ContentSafetyClient( process.env.CONTENT_SAFETY_ENDPOINT!, new AzureKeyCredential(process.env.CONTENT_SAFETY_KEY!) ); ``` ### DefaultAzureCredential ```typescript import ContentSafetyClient from "@azure-rest/ai-content-safety"; import { DefaultAzureCredential } from "@azure/identity"; const client = ContentSafetyClient( process.env.CONTENT_SAFETY_ENDPOINT!, new DefaultAzureCredential() ); ``` ## Analyze Text ```typescript import ContentSafetyClient, { isUnexpected } from "@azure-rest/ai-content-safety"; const result = await client.path("/text:analyze").post({ body: { text: "Text content to analyze", categories: ["Hate", "Sexual", "Violence", "SelfHarm"], outputType: "FourSeverityLevels" // or "EightSeverityLevels" } }); if (isUnexpected(result)) { throw result.body; } for (const analysis of result.body.catego