← nopea.tech
ScaneaConsenteaMaskeaBundlesPricing
Frameworks

Mask PII in a Next.js server action

Wrap a server action's model call with pii({ mode: "mask" }) so request logs never contain a real email or phone number.

← All recipes
"use server";
import { Maskea, pii, logging } from "@nopeatech/maskea";
import OpenAI from "openai";

const openai = new OpenAI();
const maskea = new Maskea()
  .use(pii({ mode: "mask", types: ["email", "phone"] }))
  .use(logging({ format: "silent" }));

const chat = maskea.wrap(openai.chat.completions.create.bind(openai.chat.completions));

export async function askSupport(message: string) {
  return chat({ model: "gpt-4o-mini", messages: [{ role: "user", content: message }] });
}

Checked against the shipped @nopeatech/maskea API. Full docs at nopea.tech/maskea/docs.

More in Frameworks

Express route handler →Fastify route handler →NestJS injectable service →Next.js App Router API route →