By · Last updated 2026-08-12

Home/Documentation/Image Redaction
Back to Documentation

Image Redaction — Usage Guide

Detect and cover personal data inside scans, photos, and screenshots. This guide walks through the upload, analyze, redact, and download workflow, the size and format limits, OCR language support, and the underlying API call.

Workflow: upload, analyze, redact, download

Every image goes through the same four steps, whether you use the web app, call the API directly, or invoke the anonym_legal_redact_image tool over the MCP server.

1. Upload

Choose a PNG or JPG file. The app checks the file type and size against your plan's upload limit before sending anything to the server.

2. Analyze

OCR (Tesseract) reads the text in the image and records where each piece of text sits. That extracted text is then run through the same PII detector used for documents, returning the entities found and their positions — nothing is redacted yet.

3. Redact

Re-run the request with mode set to "redact" to cover every detected region with a solid black box drawn directly on the image pixels. This is a one-way visual redaction, not a reversible encryption.

4. Download

The redacted image is returned as a file (PNG or the original content type) that you save locally — nothing is retained on the server after the response is sent.

Size and pixel limits

  • Only PNG and JPG (JPEG) are supported. Other raster formats such as TIFF, BMP, WebP, and GIF are not currently supported.
  • Images are capped at 20 MB server-side. Your plan's own limit may be lower — Basic plan caps uploads at 5 MB (Pro 10 MB, Business 20 MB); the free plan does not include image redaction at all.
  • Total resolution (width × height) is capped at 150 megapixels. Uploads above that limit are rejected before processing.

OCR language support

OCR runs on Tesseract. The API's language field accepts an ISO 639-1 code (defaults to "en" for English) mapped to a Tesseract language pack — around three dozen languages are mapped, including German, French, Spanish, Italian, Portuguese, Dutch, Polish, Russian, Ukrainian, Arabic, Hebrew, Hindi, Japanese, Korean, Chinese, Thai, Vietnamese, and Turkish. Actual availability depends on which Tesseract packs are installed on the OCR host; an unavailable language falls back to English.

API reference

Image redaction is available directly via the API for integrations that don't go through the web app, and over the MCP server as the anonym_legal_redact_image tool (mode "analyze" or "redact") for MCP clients such as Claude.

POST /api/presidio/image

Authentication: Authenticate with a Bearer token in the Authorization header (an API token or an authenticated session, the same as the text-analysis endpoints). Requests without a valid token return 401.

Request body: Send a multipart/form-data body. Required fields: file (the PNG or JPG image) and mode ("analyze" or "redact"). Optional fields: language (ISO 639-1 OCR language code, default "en"), entities (a JSON array of entity types to restrict detection to), score_threshold, fill_color (redact mode only, default "black"), operator (redact mode only: "redact" | "replace" | "mask", default "redact"), and mask_char (redact mode with operator="mask" only, default "*").

Response: In analyze mode the response is JSON: the detected entities (type, text position, and confidence score) plus a tokens_charged field. In redact mode the response is the redacted image itself (binary, Content-Type image/png or the original type) with the token cost returned in the X-Tokens-Charged header.

FAQ

Which image formats are supported?

PNG and JPG (JPEG) only. Other raster formats such as TIFF, BMP, WebP, and GIF are not currently supported.

What are the size and resolution limits?

20 MB and 150 megapixels total resolution, capped further by your plan's own upload limit (5 MB on Basic, 10 MB on Pro, 20 MB on Business).

Does image redaction require a paid plan?

Yes. Image redaction requires a Basic plan or higher. The free plan supports text anonymization only.

Is the redaction reversible?

No. Redaction covers the detected region with an opaque black box directly on the image pixels — a one-way visual redaction, not reversible encryption like the text anonymizer offers.

How do I call the API directly instead of using the web app?

Send a POST request to /api/presidio/image with a Bearer token in the Authorization header and a multipart/form-data body containing file and mode ("analyze" or "redact"). See the API reference section above for the full field list and response shape.

Try image redaction

Upload a scan, photo, or screenshot and see the detected PII covered in a few seconds.

Open the web app

Limitations / Important note

  • OCR-based text extraction is probabilistic; low-quality scans and handwriting lower detection recall.
  • Redaction is a visual, one-way black box over the detected region — not reversible encryption.
  • This page is informational and is not legal advice.

How we measure — our methodology

About this page

We update this page when our platform or the law changes.

Read our founder note for how we work.

Each change shows up in the timestamp at the top.

We follow these rules

  • GDPR (EU 2016/679).
  • ISO/IEC 27001:2022, held by our hosting provider.
  • NIS2 (EU 2022/2555).
  • HIPAA safe harbor under 45 CFR § 164.514(b)(2).

Our promise

We do not sell your data.

We do not train models on your text.

We store your files in Germany.

You can delete your account at any time.

You own your work.

Where we run

Our company HQ is in Saarbrücken, Germany. Our servers run in Hetzner's Falkenstein datacenter.

Hetzner holds ISO 27001 certification.

All data stays in the EU.

Backups run every day.

Need help?

Email support@anonym.legal.

We reply within one business day.

How we test

Automated checks run on every release.

Each surface gets its own sweep script and report.

Human reviewers spot-check the output each week.

We test detection against sample documents before each release.

A failing unit or integration run stops the release.

What we never do

  • We never sell your information to third parties.
  • We never train models on what you upload.
  • We never keep your work after you delete it.
  • We never share keys with any outside firm.
  • We never run ads inside the product.

Plans in plain words

We sell credits, not seats.

One credit covers one short job.

Long jobs use a few credits each.

Paid plans can buy top-up credits.

Credits reset at the end of each cycle.

Read the plans page for current rates.

Who built this

A small team of engineers and lawyers built this.

We ship from Europe and work in the open.

Our founder note spells out why we started.

Where to start

How the parts fit

A browser add-on cleans text inside Chrome.

A Word plug-in handles drafts in Office.

A small desktop tool works on whole folders.

An agent protocol link feeds large models safely.

All four share one core engine and one rule set.

Words from our team

We started this work after a lunch about cookies.

One friend kept getting odd ads on her phone.

We asked why a court file leaked through a draft.

We sketched the first build on a napkin that week.

By month three we had a tiny demo for a friend.

She used it on her first case the next day.

Common questions we hear

Can the tool read scanned PDFs? Yes, with OCR.

Does it work on long files? Yes, in small chunks.

Can I roll my own rule set? Yes, save it as a preset.

Does it run offline? The desktop build runs offline.

Do you keep my files? No, the cloud build wipes after each run.

Will it learn from my work? No, we never train on inputs.

A short tour of the workflow

Upload a file or paste a snippet of prose.

Pick the entities you want gone from the draft.

Choose a method: replace, mask, hash, encrypt, or redact.

Press run and watch the side panel show each hit.

Skim the result and tweak any rule that misfired.

Save the cleaned file or send it to a teammate.