Skip to main content
The capability API is available in Rust and Python with Core 0.4.0 or newer.
Call capabilities() to discover what the installed runtime supports. The Rust registry supplies the response for Rust and Python; applications do not need hardcoded label lists or version-based detector guesses. Supported entities include detectors that require explicit configuration and structured-only features, so support does not mean enabled by default.
Node.js and browser WASM share the core detector behavior but do not export a capability-discovery API in 0.4.1. Their existing scan APIs remain available.

Response contract

Rust serialization and Python expose the same field names. Rust exposes typed metadata and Python returns a fresh mapping. activation.kind distinguishes default, locale, config, and structured. When present, activation.scan_config provides the explicit scan settings for that entity. For example, UUID uses {"detect_uuid":true} and German entities use {"locale":"de"}. The scopes field distinguishes text scanning from structured scanning; inspect it before choosing a runtime operation.

Version 0.4.1 inventory

This inventory describes Core 0.4.1. Core 0.4.0 exposes 20 supported entities and 11 default text detectors; its history is preserved in the 0.4.0 release notes.
This table was generated from the Rust capabilities() response. It reports 23 supported entities and 14 default text detectors, with unchanged contract_version: 1. Query the installed runtime for its actual inventory. locales[alias].enabled_entities lists additions to the default text detectors, not the entire active inventory. German aliases add seven entities; en-US and fr add none. UUID activation remains independent. The three new default labels are API_KEY, BEARER_TOKEN, and CREDENTIAL_URI. Bearer recognition uses explicit header context in text and also the immediate Authorization field key in structured objects. Neither other field names nor transformation selection activate arbitrary token detection.

Locale handling

Locale comparison trims the supplied value and uses ASCII case-insensitive matching. The original configured string remains preserved. German aliases activate their locale-specific entities; en-US and fr retain base detection. Omitted locale runs base detection. Unsupported explicit locale strings raise the existing configuration error in Core 0.4.0. Selecting an entity for transformation does not activate its detector. Use the reported scan settings and keep transformation selection separate. Structured PERSON detection retains its documented discovery/mapping workflow; it does not become a free-text name detector because it appears in this inventory. See configuration, PERSON discovery, and the compatibility policy.