Superagent LogoSuperagent

Redact PDFs in seconds

Remove sensitive information from PDF documents using Superagent Redact API with SDK, CLI, or REST

Protect sensitive information in your PDF documents by automatically redacting PII/PHI such as SSNs, emails, phone numbers, credit cards, and more. Superagent makes it simple to sanitize documents while preserving their original formatting.

Why redact PDFs?

  • Compliance: Meet GDPR, HIPAA, and SOC 2 requirements by removing PII/PHI before sharing
  • Security: Prevent data leaks when distributing contracts, invoices, or reports
  • Privacy: Protect customer information in legal documents and financial records
  • Automation: Process documents at scale without manual review

Quick Start

Choose your preferred method to redact PDFs:

redact-pdf.ts
import { createClient } from "superagent-ai";
import { readFileSync, writeFileSync } from "fs";

const client = createClient({
  apiKey: process.env.SUPERAGENT_API_KEY!,
});

// Read PDF file
const pdfBuffer = readFileSync("sensitive-document.pdf");
const pdfBlob = new Blob([pdfBuffer], { type: "application/pdf" });

// Redact PDF and get redacted file
const result = await client.redact(pdfBlob, {
  format: "pdf", // Returns redacted PDF
  entities: ["SSN", "credit card numbers", "email addresses", "phone numbers"],
});

// Save the redacted PDF
if (result.pdf) {
  const arrayBuffer = await result.pdf.arrayBuffer();
  writeFileSync("redacted-output.pdf", Buffer.from(arrayBuffer));
  console.log("✓ Redacted PDF saved to redacted-output.pdf");
}

// Installation: npm install superagent-ai

What gets redacted?

Superagent automatically detects and redacts:

  • Email addresses<REDACTED_EMAIL>
  • Social Security Numbers<REDACTED_SSN>
  • Credit cards (Visa, Mastercard, Amex) → <REDACTED_CC>
  • Phone numbers (US format) → <REDACTED_PHONE>
  • IP addresses (IPv4/IPv6) → <REDACTED_IP>
  • API keys & tokens<REDACTED_API_KEY>
  • AWS access keys<REDACTED_AWS_KEY>
  • Medical record numbers<REDACTED_MRN>
  • Passport numbers<REDACTED_PASSPORT>
  • IBAN<REDACTED_IBAN>
  • ZIP codes<REDACTED_ZIP>

Custom entity redaction

Define your own entity types using natural language:

custom-entities.ts
const result = await client.redact(pdfBlob, {
  format: "pdf",
  entities: [
    "employee IDs",
    "project codenames",
    "salary information",
    "bank account numbers"
  ]
});

The AI model interprets your natural language descriptions and redacts matching content intelligently.

Use cases

Redact client information from contracts before sharing with third parties:

legal-redaction.ts
const result = await client.redact(contractBlob, {
  format: "pdf",
  entities: ["client names", "addresses", "phone numbers", "SSN"]
});

Medical records

Maintain HIPAA compliance by removing PHI from patient records:

medical_redaction.py
result = await client.redact(
    medical_record_file,
    format="pdf",
    entities=["patient names", "MRN", "SSN", "addresses", "phone numbers"]
)

Financial documents

Sanitize invoices and statements before archiving:

Terminal
superagent redact --file invoice.pdf --entities "credit card numbers,bank accounts,SSN" "Redact financial data"

Output options

Option 1: Redacted PDF file (format="pdf")

Returns a PDF with redactions applied directly to the document. The original formatting and layout are preserved.

Option 2: Redacted text (format="json")

Extracts text from the PDF, redacts it, and returns as JSON. Useful for text analysis or indexing.

pdf-output.ts
const result = await client.redact(pdfBlob, {
  format: "pdf" // Returns Blob with redacted PDF
});

if (result.pdf) {
  // Save or process the redacted PDF
  const arrayBuffer = await result.pdf.arrayBuffer();
  writeFileSync("redacted.pdf", Buffer.from(arrayBuffer));
}

What you've protected

  • Compliance audits get cleaner with no PII leaks
  • Customer trust increases with proper data handling
  • Legal risk decreases by sanitizing documents before distribution
  • Workflow efficiency improves with automated redaction at scale

Next steps


Ready to protect your documents? Get your API key at app.superagent.sh