---
name: "pdf123-auto-redact"
description: "Black out pages that match your search terms. Runs the PDF123 \"Redact\" tool (pdf123.xyz) over its REST API with curl, no account needed. Use when the user wants this done to their file. Also known as: 涂黑文本, Ennegrecer texto, पाठ काला करें, تسويد النص, Tarjar texto, Coret hitam, Caviarder le texte, Закрасить текст, 墨消し, Text schwärzen, 텍스트 가리기, Bôi đen chữ, Metin karart, 塗黑文本, Oscura testo, ทาบดำข้อความ, Zaciemnij tekst, Замалювання, Tekst zwartlakken, Redaksi, Svärta text, Μαύρισμα κειμένου, Зачерняне на текст, Enfosqueix text, Ficha kwa rangi nyeusi."
compatibility: "Needs curl 7.76+ and outbound HTTPS to pdf123.xyz, or PDFX_API_BASE pointing at a self-hosted pdfx-server."
---

# Redact (PDF123)

Black out pages that match your search terms.

Web version: https://pdf123.xyz/auto-redact · All tools: https://pdf123.xyz/skills/pdf123.md

## When to use

- Black out pages that mention a client name or account number before sharing
- Remove pages that contain personal identifiers from a long export
- Prepare a review copy in which sensitive pages must not be recoverable

## Run it

Replace the sample file names and values with the user's, then run:

```bash
API="${PDFX_API_BASE:-https://pdf123.xyz}"
curl -sS --fail-with-body -X POST "$API/api/v1/security/auto-redact" \
  -F "fileInput=@input.pdf" \
  -F "listOfText=your-listOfText" \
  --output-dir "pdf123-output/$(date +%Y%m%d-%H%M%S)" --create-dirs -OJ -w '%{filename_effective} %{content_type}\n'
```

## Inputs

Everything is `multipart/form-data`. The command above already sends each field with its default; keep them all and change only the values the user asked for, since some endpoints reject a missing optional field.

| Field | Type | Required | Default | Notes |
| --- | --- | --- | --- | --- |
| `fileInput` | file | yes | | .pdf (one file) |
| `listOfText` | text | yes |  | Text to redact (comma-separated) |

## Result

curl saves the result in a new `pdf123-output/<timestamp>/` directory under the server's file name and prints its path and content type. Several output files come back as one ZIP. Tell the user where the file is.

## Limits

- Page-level only; there is no partial redaction on a page
- Needs a text layer: image-only pages never match
- An empty term list is an error
- Embedded files and JavaScript are not removed; use Sanitize for those
- Words drawn as vector shapes have no text to match
- Upload limit on this website: 500 MB per file, sent in chunks above about 95 MB. A single direct API request body is capped at 100 MB.

## Errors

- A non-zero curl exit means the request failed. The saved file then holds `application/problem+json`; read it and report its `detail` to the user instead of retrying blindly.
- `413`: the upload exceeds 100 MiB. `429`: wait for `Retry-After` seconds, then retry once.
- Send `X-API-KEY: $PDFX_API_KEY` only if the user has a PDF123 API key; anonymous calls work without it.

## Privacy

Files are uploaded to the API host, processed, and deleted once the response is sent. For confidential files, ask before uploading, or use a self-hosted server via `PDFX_API_BASE`.

## Authorized use only

Only alter documents you are authorized to change. Do not use redaction to hide records you must retain or to evade a legal or regulatory obligation.
