Control Block Reference
Detailed reference for all Control Block types and their options.Data Control
redact
Remove sensitive data entirely.| Option | Type | Required | Description |
|---|---|---|---|
type | string | Yes | Must be redact |
fields | array | Yes | Field paths to redact |
- Strings →
"" - Numbers →
0 - Booleans →
false - Objects →
{} - Arrays →
[]
tokenize
Replace with deterministic tokens.| Option | Type | Required | Description |
|---|---|---|---|
type | string | Yes | Must be tokenize |
fields | array | Yes | Field paths to tokenize |
- Same input → same token (within one Virtual API)
- Different Virtual APIs → different tokens
- Token format:
tok_[hash]
anonymize
Replace with random values preserving structure.| Option | Type | Required | Description |
|---|---|---|---|
type | string | Yes | Must be anonymize |
fields | array | Yes | Field paths to anonymize |
- Each request produces different values
- Format is preserved (email looks like email)
- Not reversible, not correlatable
Data Transform
combine
Merge fields into a new field.| Option | Type | Required | Description |
|---|---|---|---|
type | string | Yes | Must be combine |
fields | array | Yes | Fields to combine (order matters) |
into | string | Yes | Name of new field |
separator | string | No | Separator between values. Default: " " |
remove_source | boolean | No | Remove original fields. Default: false |
coalesce
Select first non-empty value.| Option | Type | Required | Description |
|---|---|---|---|
type | string | Yes | Must be coalesce |
fields | array | Yes | Fields to check (order = priority) |
into | string | Yes | Name of new field |
Access Control
Access controls are defined in theaccess block, not as Control Blocks.
expires
| Option | Type | Description |
|---|---|---|
expires | string | ISO 8601 date (2025-12-31) or relative (90d) |
geo_allow / geo_deny
| Option | Type | Description |
|---|---|---|
geo_allow | array | ISO 3166-1 alpha-2 country codes to allow |
geo_deny | array | ISO 3166-1 alpha-2 country codes to deny |
ip_allow
| Option | Type | Description |
|---|---|---|
ip_allow | array | CIDR ranges to allow |
rate_limit
| Option | Type | Description |
|---|---|---|
rate_limit.requests | number | Max requests per period |
rate_limit.period | string | Time period (1m, 1h, 1d) |

