Anonymize node
Strips personal data (names, addresses, emails, phone numbers, …) out of the input text and replaces it with numbered placeholders. Learn how to configure it, map inputs and outputs, run a test and resolve common errors.
7 min readUpdated
What this node does
Strips personal data (names, addresses, emails, phone numbers, …) out of the input text and replaces it with numbered placeholders.
Use Anonymize as a clearly defined step in an anymize workflow.
- Processes one input.
- Provides one output for following steps.
- Runs as a regular step in the flow.
Set up the node
- 01Open a workflow and add Anonymize from the node catalog.
- 02Complete the required fields and map values from previous steps.
- 03Run the node with a small test record and inspect its output.
- 04Connect the successful output and activate the workflow after an end-to-end test.
Operations and modes
Anonymize has one focused purpose. Its available settings appear when you select the node.
Settings
| Field | Meaning | Area |
|---|---|---|
| Text to anonymize | Tip: drag a field from the input panel above into here, or just type a fixed text. Templates like {{ $json.message }} are resolved at runtime. | Standard |
| Language | Sets the detection models for the Anymize pipeline. Leave it on 'de' for German text, for multilingual input, start with the dominant language. | Standard |
| Maximum wait time | The most time anonymization is allowed to take, in seconds. Default is 60 seconds. For very long texts you can go higher (up to 300). | Standard |
| Run once per item | Off (default): the node runs once for the whole input. On: if it receives several items (e.g. from Split Out), it runs once PER item, and {{ $json }} is that one item each time. This is how you work through a file list entry by entry. | Standard |
| If one item fails | "Skip" writes an `error` field for the failed item and keeps processing the rest, instead of losing the whole run to a single unreadable file. | Standard |
| Pause between items (milliseconds) | Wait before every run except the first. 1000 = 1 second per item. Useful when the other side would otherwise throttle you. Maximum 300000 (5 minutes). | Standard |
Inputs and outputs
| Input | Meaning | Type |
|---|---|---|
| text | Text to strip PII from. | text |
| Output | Meaning | Type |
|---|---|---|
| Anonymized text | The anonymized text with placeholders like [NAME_1], [EMAIL_1]. | text |
| Source text | The original text before anonymization. | text |
| Placeholder mapping | Placeholder → original values (for later de-anonymization). Without this mapping nothing can be re-hydrated. | json |
This node can process lists item by item. Error handling and the delay between items are available in advanced settings.
Example and test run
Support ticket with PII: begin with a small, recognizable record. Inspect the output and only map fields that are present there.
Test-run example
{
"text": "Hallo, mein Name ist Max Mustermann, wohnhaft in Musterstr. 1, 10115 Berlin. Du kannst mich unter max.mustermann@example.com oder +49 170 1234567 erreichen. Meine Kundennummer lautet KD-987654."
}Access and security
Before activation, review which data enters this step and what its output contains.
Store keys and credentials in the protected connection manager. Never paste them into normal workflow fields, test data or descriptions.
Troubleshooting
- No output: inspect the latest run and confirm that the previous node returned the expected fields.
- Empty variable: open the previous step output and use a field name from the real test data.
- List processed once: enable per-item execution in advanced settings.