typescriptbeginner
Content Moderation with OpenAI
Check user input for harmful content using the OpenAI Moderation API before processing.
typescriptPress β/Ctrl + Shift + C to copy
import OpenAI from "openai";
const client = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });
export async function isSafe(input: string): Promise<boolean> {
const res = await client.moderations.create({ input });
return !res.results[0].flagged;
}
export async function moderateWithDetails(input: string) {
const res = await client.moderations.create({ input });
const result = res.results[0];
return {
safe: !result.flagged,
categories: result.categories,
scores: result.category_scores,
};
}
// Usage
const safe = await isSafe("How do I bake a chocolate cake?");
console.log(safe); // trueUse Cases
- user input safety
- UGC moderation
- chatbot guardrails
Tags
Related Snippets
Similar patterns you can reuse in the same workflow.
typescriptbeginner
DALLΒ·E 3 Image Generation
Generate images from a text prompt using the OpenAI DALLΒ·E 3 API and return a URL.
#openai#dall-e
typescriptintermediate
Next.js AI Streaming Route Handler
Stream OpenAI responses from a Next.js App Router route handler using the Vercel AI SDK.
#nextjs#openai
typescriptintermediate
OpenAI Chat Completion with Streaming
Stream GPT responses token-by-token using the OpenAI SDK with async iteration.
#openai#streaming
typescriptbeginner
Generate Text Embeddings with OpenAI
Create vector embeddings for semantic search and similarity matching using text-embedding-3-small.
#openai#embeddings