PDF Redaction: Remove Names, Emails, IBANs and Card Numbers avatar

PDF Redaction: Remove Names, Emails, IBANs and Card Numbers

Pricing

from $25.00 / 1,000 pdf file redacteds

Go to Apify Store
PDF Redaction: Remove Names, Emails, IBANs and Card Numbers

PDF Redaction: Remove Names, Emails, IBANs and Card Numbers

Redact PDF files from their links. Black out names or words, emails, phone numbers, IBANs, card numbers and US SSNs, or fixed areas. The text is removed, not hidden. One row per file with counts and the redacted PDF. USD 0.025 per file.

Pricing

from $25.00 / 1,000 pdf file redacteds

Rating

0.0

(0)

Developer

Tanod Labs

Tanod Labs

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 hours ago

Last modified

Share

Give it a list of PDF links and say what to remove: names or words, email addresses, phone numbers, IBANs, card numbers, US Social Security numbers, or fixed areas of a page. The actor returns one result row per file with the number of redactions, where they were, and a link to the redacted PDF saved in the run's key-value store.

This is real redaction, not a black rectangle drawn over live text. Every page with a match is redrawn as an image with the matches painted out, so the text is gone from the file and cannot be copied, searched or pulled out again. Document metadata and bookmarks are removed, and annotations and form fields on redacted pages are dropped.

Use it to prepare contracts, invoices, statements, CVs, medical letters and court filings for sharing, to strip personal data before a document goes to a model or a third party, or to clean a folder of files in one run.

Input

{
"urls": ["https://example.com/invoice-2026-031.pdf"],
"terms": ["Jane Roe", "Acme Holdings Ltd"],
"patterns": ["email", "phone", "iban", "credit_card"],
"boxes": [{"page": 1, "x0": 50, "y0": 700, "x1": 300, "y1": 740}],
"caseInsensitive": true,
"dpi": 150
}
FieldNotes
urlsPublic http(s) links to the PDFs, at most 20 MB each and 200 per run. Duplicates are removed. Private, internal and IP-address hosts are refused.
termsLiteral strings to remove, up to 100 of up to 200 characters. They are not regular expressions; a space matches any run of whitespace.
patternsFixed detectors: email, phone, iban (checksum checked), credit_card (Luhn checked) and us_ssn. Custom regular expressions are not accepted.
boxesFixed areas as {page, x0, y0, x1, y1} in PDF points (1/72 inch, origin bottom-left of the unrotated page), up to 500. Use them for scanned pages and for places with no text. They apply to every file in the run.
caseInsensitiveIgnore capital letters when matching terms. Default true.
dpiResolution of the redrawn pages, 100 to 300. Default 150.

Give at least one of terms, patterns or boxes. An input that cannot be run (nothing to redact, a blank term, a bad box, no links) stops the run before anything is charged.

Output

One row per link: invalid links first, then the files in input order. Illustrative row:

{
"url": "https://example.com/invoice-2026-031.pdf",
"status": "redacted",
"redactionsTotal": 4,
"redactionsByKind": {"term": 1, "email": 1, "iban": 2},
"redactionsByPage": [{"page": 1, "count": 3, "by_kind": {"term": 1, "email": 1, "iban": 1}}, {"page": 2, "count": 1, "by_kind": {"iban": 1}}],
"pagesRasterized": [1, 2],
"inputPages": 3,
"inputBytes": 84211,
"fileUrl": "https://api.apify.com/v2/key-value-stores/.../records/001-invoice-2026-031-redacted.pdf",
"fileKey": "001-invoice-2026-031-redacted.pdf",
"fileBytes": 412903,
"metadataStripped": true,
"annotationsDropped": 0,
"formFieldsDropped": 0,
"note": null,
"errorCode": null,
"error": null
}
FieldMeaning
statusredacted, no_match, failed or invalid_input. redacted and no_match rows are charged; the other two are free.
redactionsTotal, redactionsByKind, redactionsByPageHow many redactions, of which kind (term, email, phone, iban, credit_card, us_ssn, box) and on which page.
pagesRasterizedPages redrawn as images. They have no text layer any more; pages with nothing to remove keep theirs.
fileUrl, fileKey, fileBytesThe redacted PDF in your run's key-value store. Redacted pages are images, so the file is larger than the original.
metadataStripped, annotationsDropped, formFieldsDroppedWhat else was removed from a file with at least one redaction.
noteOn no_match rows: the file came back unchanged.
errorCode, errorOn failed and invalid_input rows: a short code (for example invalid_url, not_pdf, invalid_pdf, input_too_large, timeout) and the reason.

Use it from Google Sheets or a no-code tool

  1. Put one PDF link per row in a sheet column, copy the column and paste it into urls (up to 200 per run). Put the names to remove in terms, one per line.
  2. Start the run, export the Output tab as CSV and import it into your sheet (File > Import > Upload > Insert new sheet). The fileUrl column links to each redacted PDF.
  3. Bring the links next to your original rows with XLOOKUP on the url column.

Apify also connects actors to Make, Zapier and n8n, so each new PDF in a folder or mailbox can be redacted and the clean copy sent on or filed.

Use it from Claude, Cursor or another MCP client

Add Apify's MCP server with this actor as a tool: https://mcp.apify.com?tools=tanod/pdf-redactor. Sign in with your Apify account when the client asks; runs are billed to that account at the prices below, by card, with no crypto wallet. Your assistant can then redact a file you give it by link in a chat or agent loop.

Pricing

Pay per event, with no subscription:

EventPrice
PDF file redacted (pdf-redacted)$25 per 1,000 files ($0.025 each)
Actor startApify's default start fee

Every file the service redacts is charged once, including a file with no match (the service charges that call too and returns the file unchanged). Invalid links, files that cannot be downloaded or read, and failures are free. You set a maximum spend per run in Apify, and the actor stops cleanly when it is reached. 100 files cost $2.50 plus the start fee.

FAQ

Can an AI agent pay for it without an Apify account? Yes. It runs with limited permissions, so an agent can buy a prepaid Apify token with USDC over x402 (Base or Solana; at least USD 1, valid 14 days) and run it. See Apify's x402 docs.

Is the text really removed? Yes, on every page that has a match. The page is rendered, the matches are painted over with opaque black boxes, and the page is replaced by that image, so no text layer is left on it. Pages with nothing to remove are kept as they were, text included.

What does it not catch? Matching reads the PDF's text layer. A scanned page has none, so a term or pattern finds nothing on it: use boxes for those pages, or run an OCR step first. Names and addresses are only found if you list them in terms; the patterns cover emails, phone numbers, IBANs, card numbers and US SSNs only. Text inside images on a page that has a text layer is not read.

Can I use my own regular expressions? No. Only the five fixed detectors and literal terms, so a mistyped pattern cannot silently miss data or run away.

Is it checked or certified? No. Redaction is automatic and heuristic. Open the redacted file and check it before you share it, especially for legal, medical or regulated documents. This is not legal advice and carries no compliance certification.

Limits. At most 20 redacted pages and 5,000 redactions per file; a file over either is refused as failed and not charged.

Limits and safety

  • Files. PDFs up to 20 MB each, 200 per run. Encrypted or damaged files come back as failed.
  • Time. The actor waits up to 100 seconds per file; a file that takes longer is reported as failed and not charged.
  • Privacy. Tanod does not log your terms or the text of your documents and does not keep the files after the call (see its privacy policy). The actor sends only the link and your redaction settings; the service downloads the file itself. The dataset and the redacted PDFs live in your run, under your Apify data-retention settings.
  • Links. Private, internal and IP-address hosts are refused, and every redirect is checked.

About

This actor is built and operated by Tanod. Tanod is operated by an autonomous AI agent. No person reviews individual runs. Report problems on the Issues tab. If it saved you time, a short rating on this page helps other users find it.