> For a complete page index of the Captain API documentation, fetch https://docs.captain.dev/llms.txt?excludeSpec=true

# PII Engines kev, jev and presidio

* **Three engines, chosen with `pii_engine`**: `kev` (the default) runs the Kev classifier model on Captain's infrastructure. `jev` runs TypeSafe's hosted Jev model, slightly more accurate with best-effort capacity. `presidio` is the legacy pattern engine for the built-in categories only. See [Engines](/guides/pii-masking#engines).
* **New default for `{"mask_pii": true}`**: a request with no `pii_engine` now masks with `kev` and no fallback. Before, it masked with `captain-jev` and fell back to Presidio. To keep that behaviour, send `"pii_engine": "captain-jev"`.
* **Ordered fallbacks for `jev`**: `pii_fallback` takes an object, `{"engines": [...], "retry_budget_seconds": 60}`. List any of `jev-openrouter`, `jev-ai-gateway` and `kev` in the order to try them. Custom fields and instructions stay applied on every fallback. If every engine fails, that file fails to index and the rest of the job continues. See [Fallback](/guides/pii-masking#fallback).
* **Per-file engine report**: each file in [Get PII Report](/reference/jobs/pii/get) carries `requested_engine`, `used_engines`, `fallback_used`, `fallback_reason`, `coverage`, `model` and `image_redaction`.
* **Earlier engine names keep working**: `captain-jev` and `captain-presidio`, with the boolean `pii_fallback`, behave as before. See [Earlier engine names](/guides/pii-masking#earlier-engine-names).