Skip to main content
POST
/
api
/
dataframer
/
anonymization-runs
Python
import os
from dataframer import Dataframer

client = Dataframer(
    api_key=os.environ.get("DATAFRAMER_API_KEY"),  # This is the default and can be omitted
)
anonymization_run = client.dataframer.anonymization_runs.create(
    dataset_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    detection_method="aimon_pii_m1",
    pii_types=["string"],
)
print(anonymization_run.id)
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "status": "PENDING",
  "dataset_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "dataset_name": "<string>",
  "pii_types": [
    "<string>"
  ],
  "detection_method": "<string>",
  "llm_model_name": "<string>",
  "created_by_email": "[email protected]",
  "duration_seconds": 123,
  "results": {
    "entity_summary": {},
    "samples_processed": 123,
    "entities_found": [
      {
        "start": 123,
        "end": 123,
        "label": "<string>",
        "score": 123
      }
    ],
    "error": "<string>"
  },
  "anonymized_files": [
    {
      "id": "<string>",
      "path": "<string>",
      "size_in_bytes": 123,
      "content_type": "<string>"
    }
  ],
  "completed_at": "2023-11-07T05:31:56Z",
  "created_at": "2023-11-07T05:31:56Z"
}
Async operation: Anonymization run created and submitted. Returns the run ID immediately. Poll GET /api/dataframer/anonymization-runs/{run_id}/ until status is SUCCEEDED or FAILED.

Authorizations

Authorization
string
header
required

API Key authentication. Format: "Bearer YOUR_API_KEY"

Body

application/json

Request body for creating an anonymization run.

dataset_id
string<uuid>
required

UUID of the seed dataset to anonymize.

pii_types
string[]
required

List of PII/PHI entity types to detect and mask (e.g. ["first_name", "email", "phone_number"]). All values must be lowercase.

detection_method
enum<string>
required

Entity detection method. Use llm or compound methods when you need LLM-based detection; supply llm_model_name in that case.

Available options:
aimon_pii_m1,
llm,
heuristics,
aimon_pii_m1+heuristics,
llm+heuristics,
all
llm_model_name
string

LLM model name. Required when detection_method includes llm.

mask_config
object

Optional per-entity-type masking strategy, e.g. {"first_name": "<FIRST_NAME>", "email": "<EMAIL>"}. Defaults to redact all.

threshold
number<float>
default:0.3

Confidence threshold for entity detection (0.0–1.0). Lower values detect more entities; higher values reduce false positives.

Required range: 0 <= x <= 1

Response

Anonymization run created

A PII/PHI anonymization run.

id
string<uuid>

Unique identifier for the anonymization run.

status
enum<string>

Current status of the anonymization run.

Available options:
PENDING,
PROCESSING,
SUCCEEDED,
FAILED
dataset_id
string<uuid> | null

UUID of the seed dataset being anonymized.

dataset_name
string | null

Name of the seed dataset.

pii_types
string[]

List of PII/PHI entity types being detected.

detection_method
string

Entity detection method used.

llm_model_name
string | null

LLM model name (when detection_method includes llm).

created_by_email
string<email> | null

Email of the user who created this run.

duration_seconds
integer | null

Time taken to complete the run in seconds. Null until completed.

results
object

Anonymization results once the run completes.

anonymized_files
object[]

List of anonymized output files produced by the run.

completed_at
string<date-time> | null

When the run completed (succeeded or failed).

created_at
string<date-time>

When the run was created.