Unreleased documentation. These pages follow the main branch and can change before the next release. For supported guidance, use v0.43.0.
Base Registry Engine configuration reference
Look up any key of a file Base Registry Engine (BReg) reads: registry.yaml,
modules/<name>/module.yaml, runtime.yaml, and the tooling documents beside a project. To write
a project, start from Author a registry project; to deploy one, from
Deploy and serve. The grammar is not frozen before v1.0.0
(API stability and versioning).
How to read the tables
Section titled “How to read the tables”fields[] is an array item; eventDestinations.* is a map entry whose name you choose. A required
key inside an optional object is required only when that object is present. Constraints joined
by or are alternatives. Not specified does not mean any value is accepted: the compiler and the
runtime also check cross-field rules and references that no table can show.
registry.yamlSource preview, pre-1.0, 777 key pathsmodules/<name>/module.yamlSource preview, pre-1.0, 714 key pathsruntime.yamlSource preview, pre-1.0, 186 key paths
registry.yaml
Source preview, pre-1.0
Generated from products/breg/generated/authoring/registry-project.schema.json. 777 key paths. Explained in docs/site/src/content/docs/configure/breg.mdx.
| Key path | Type | Required | Accepted values | Constraints |
|---|---|---|---|---|
accessProfiles | array | No | Not specifiedSchema default, where declared: [] | None specified |
accessProfiles[]Array itemOne access profile as a project writes it. | object | No | Not specified | None specified |
accessProfiles[].actorKind | string | No |
| None specified |
accessProfiles[].default | boolean | No | Not specifiedSchema default, where declared: false | None specified |
accessProfiles[].displayAuthored presentation only; labels never establish identity or authority. | object | No | Not specified | None specified |
accessProfiles[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
accessProfiles[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
accessProfiles[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
accessProfiles[].permissionsWhat the profile may do, grouped by what each permission names. Omit when the profile grants nothing. | object | No | Not specifiedSchema default, where declared: {"actions":[],"datasets":[],"proposals":[],"records":[]} | None specified |
accessProfiles[].permissions.actionsThe actions the profile may invoke: one permission for each action it names. | array | No | Not specifiedSchema default, where declared: [] | None specified |
accessProfiles[].permissions.actions[]Array itemWhat a profile may do with one action. An action has no rows of its own:
the row reach of what it touches is written on each target. | object | No | Not specified | None specified |
accessProfiles[].permissions.actions[].action | string | Yes | Not specified | None specified |
accessProfiles[].permissions.actions[].operations | array | Yes | Not specified |
|
accessProfiles[].permissions.actions[].operations[]Array itemCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | No |
| None specified |
accessProfiles[].permissions.actions[].results | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.actions[].results[]Array item | string | No | Not specified | None specified |
accessProfiles[].permissions.actions[].targets | array | No | Not specifiedSchema default, where declared: [] | None specified |
accessProfiles[].permissions.actions[].targets[]Array item | object | No | Not specified | None specified |
accessProfiles[].permissions.actions[].targets[].recordType | string | Yes | Not specified | None specified |
accessProfiles[].permissions.actions[].targets[].rowBoundariesRow reach: unrestricted, or a list of at least one row boundary. | array | string | Yes |
| No bound or
|
accessProfiles[].permissions.actions[].targets[].rowBoundaries[]Array item | object | Conditional | Not specified | None specified |
accessProfiles[].permissions.actions[].targets[].rowBoundaries[].claim | string | Conditional | Not specified | None specified |
accessProfiles[].permissions.actions[].targets[].rowBoundaries[].field | string | Conditional | Not specified | None specified |
accessProfiles[].permissions.actions[].targets[].rowBoundaries[].operator | string | Conditional |
| None specified |
accessProfiles[].permissions.datasetsWhat the profile may do with statistical datasets: one permission for each dataset it names. | array | No | Not specifiedSchema default, where declared: [] | None specified |
accessProfiles[].permissions.datasets[]Array itemWhat a profile may do with one statistical dataset. | object | No | Not specified | None specified |
accessProfiles[].permissions.datasets[].datasetThe statistical dataset the permission names. | string | Yes | Not specified |
|
accessProfiles[].permissions.datasets[].operationsWhat the profile may do with the dataset. A profile that holds read-live or publish on a dataset with a publisher also holds read-releases. | array | Yes | Not specified |
|
accessProfiles[].permissions.datasets[].operations[]Array itemOne thing a profile may do with a statistical dataset. | string | No |
| None specified |
accessProfiles[].permissions.proposals | array | No | Not specifiedSchema default, where declared: [] | None specified |
accessProfiles[].permissions.proposals[]Array item | object | No | Not specified | None specified |
accessProfiles[].permissions.proposals[].action | string | Yes | Not specified | None specified |
accessProfiles[].permissions.proposals[].operations | array | Yes | Not specified |
|
accessProfiles[].permissions.proposals[].operations[]Array item | string | No |
| None specified |
accessProfiles[].permissions.proposals[].ownership | string | No |
| None specified |
accessProfiles[].permissions.proposals[].readableAttachments | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.proposals[].readableAttachments[]Array item | string | No | Not specified | None specified |
accessProfiles[].permissions.proposals[].readableContextFields | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.proposals[].readableContextFields[]Array item | string | No | Not specified | None specified |
accessProfiles[].permissions.proposals[].readableInputs | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.proposals[].readableInputs[]Array item | string | No | Not specified | None specified |
accessProfiles[].permissions.proposals[].reviewAuthority | string | No | Not specified | None specified |
accessProfiles[].permissions.proposals[].targets | array | No | Not specifiedSchema default, where declared: [] | None specified |
accessProfiles[].permissions.proposals[].targets[]Array item | object | No | Not specified | None specified |
accessProfiles[].permissions.proposals[].targets[].recordType | string | Yes | Not specified | None specified |
accessProfiles[].permissions.proposals[].targets[].rowBoundariesThe rows a permission reaches: the keyword unrestricted, or a list of at
least one row boundary. | array | string | Yes |
| No bound or
|
accessProfiles[].permissions.proposals[].targets[].rowBoundaries[]Array item | object | Conditional | Not specified | None specified |
accessProfiles[].permissions.proposals[].targets[].rowBoundaries[].claim | string | Conditional | Not specified | None specified |
accessProfiles[].permissions.proposals[].targets[].rowBoundaries[].field | string | Conditional | Not specified | None specified |
accessProfiles[].permissions.proposals[].targets[].rowBoundaries[].operator | string | Conditional |
| None specified |
accessProfiles[].permissions.proposals[].writableAttachments | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.proposals[].writableAttachments[]Array item | string | No | Not specified | None specified |
accessProfiles[].permissions.recordsWhat the profile may do with entities: one permission for each entity it names. | array | No | Not specifiedSchema default, where declared: [] | None specified |
accessProfiles[].permissions.records[]Array itemWhat a profile may do with one entity. | object | No | Not specified | None specified |
accessProfiles[].permissions.records[].allowCount | boolean | No | Not specifiedSchema default, where declared: false | None specified |
accessProfiles[].permissions.records[].allowDataExport | boolean | No | Not specifiedSchema default, where declared: false | None specified |
accessProfiles[].permissions.records[].filterableFields | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.records[].filterableFields[]Array item | string | No | Not specified | None specified |
accessProfiles[].permissions.records[].lookups | array | No | Not specifiedSchema default, where declared: [] | None specified |
accessProfiles[].permissions.records[].lookups[]Array item | object | No | Not specified | None specified |
accessProfiles[].permissions.records[].lookups[].claimMapping | object | No | Not specifiedSchema default, where declared: {} | None specified |
accessProfiles[].permissions.records[].lookups[].claimMapping.*Map value | string | No | Not specified |
|
accessProfiles[].permissions.records[].lookups[].selector | string | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].lookups[].valueOrigin | string | Yes |
| None specified |
accessProfiles[].permissions.records[].membershipBoundariesCurrent active membership required for each stored reference key. | array | No | Not specifiedSchema default, where declared: [] | None specified |
accessProfiles[].permissions.records[].membershipBoundaries[]Array itemA one-hop current membership requirement, combined with every other row boundary.
The root field and membership key must reference the same entity. The active
field is Boolean, and principalField matches the profile's verified principal. | object | No | Not specified | None specified |
accessProfiles[].permissions.records[].membershipBoundaries[].activeField | string | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].membershipBoundaries[].field | string | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].membershipBoundaries[].membershipKeyField | string | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].membershipBoundaries[].membershipRecordType | string | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].membershipBoundaries[].principalField | string | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].operations | array | Yes | Not specified |
|
accessProfiles[].permissions.records[].operations[]Array itemCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | No |
| None specified |
accessProfiles[].permissions.records[].provenanceFields | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.records[].provenanceFields[]Array itemA member of a revision's changeContext a profile may read. Each value
is spelled as the member it names is (CFG-NAME-2). | string | No |
| None specified |
accessProfiles[].permissions.records[].readPaths | array | No | Not specifiedSchema default, where declared: [] | None specified |
accessProfiles[].permissions.records[].readPaths[]Array item | object | No | Not specified | None specified |
accessProfiles[].permissions.records[].readPaths[].allowCount | boolean | No | Not specifiedSchema default, where declared: false | None specified |
accessProfiles[].permissions.records[].readPaths[].filterableFields | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.records[].readPaths[].filterableFields[]Array item | string | No | Not specified | None specified |
accessProfiles[].permissions.records[].readPaths[].path | string | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].readPaths[].readableFields | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.records[].readPaths[].readableFields[]Array item | string | No | Not specified | None specified |
accessProfiles[].permissions.records[].readPaths[].sortableFields | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.records[].readPaths[].sortableFields[]Array item | string | No | Not specified | None specified |
accessProfiles[].permissions.records[].readableFields | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.records[].readableFields[]Array item | string | No | Not specified | None specified |
accessProfiles[].permissions.records[].recordType | string | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].requireConsentCurrent subject-issued consent required for each row, ANDed. | array | No | Not specifiedSchema default, where declared: [] | None specified |
accessProfiles[].permissions.records[].requireConsent[]Array itemA consent check ANDed into one read permission. | object | No | Not specified | None specified |
accessProfiles[].permissions.records[].requireConsent[].onThe permission entity's field the consent subject references; id is
the row's own identity. | string | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].requireConsent[].recordThe consent-record entity checked. | string | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].revisionAccess | boolean | No | Not specifiedSchema default, where declared: false | None specified |
accessProfiles[].permissions.records[].rowBoundariesRow reach: unrestricted, or a list of at least one row boundary. | array | string | Yes |
| No bound or
|
accessProfiles[].permissions.records[].rowBoundaries[]Array item | object | Conditional | Not specified | None specified |
accessProfiles[].permissions.records[].rowBoundaries[].claim | string | Conditional | Not specified | None specified |
accessProfiles[].permissions.records[].rowBoundaries[].field | string | Conditional | Not specified | None specified |
accessProfiles[].permissions.records[].rowBoundaries[].operator | string | Conditional |
| None specified |
accessProfiles[].permissions.records[].sortableFields | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.records[].sortableFields[]Array item | string | No | Not specified | None specified |
accessProfiles[].permissions.records[].spatialQueries | object | No | Not specified | None specified |
accessProfiles[].permissions.records[].spatialQueries.bbox | object | No | Not specified | None specified |
accessProfiles[].permissions.records[].spatialQueries.bbox.maximumLatitudeSpanDegrees | number | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].spatialQueries.bbox.maximumLongitudeSpanDegrees | number | Yes | Not specified | None specified |
accessProfiles[].permissions.records[].writableFields | array | No | Not specifiedSchema default, where declared: [] |
|
accessProfiles[].permissions.records[].writableFields[]Array item | string | No | Not specified | None specified |
accessProfiles[].principalClaimThe token claim that names the caller. Every profile serves authenticated callers, so every profile names one. | string | Yes | Not specified | None specified |
accessProfiles[].requesterClientsThe OAuth clients whose tokens may select this profile. Omit to accept every client. | array | No | Not specified |
|
accessProfiles[].requesterClients[]Array item | string | No | Not specified | None specified |
accessProfiles[].requiredPurposesThe verified token's purpose must match one listed value. Omit to accept every purpose. | array | No | Not specified |
|
accessProfiles[].requiredPurposes[]Array item | string | No | Not specified | None specified |
accessProfiles[].requiredScopesThe scopes the verified token must carry: unrestricted, or a list of at least one scope, all of which must be present. | array | string | Yes |
| No bound or
|
accessProfiles[].requiredScopes[]Array item | string | Conditional | Not specified | None specified |
accessProfiles[].taskGrant | object | No | Not specified | None specified |
accessProfiles[].taskGrant.sourceIssuerAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | Yes | Not specified |
|
actions | array | No | Not specified | None specified |
actions[]Array item | object | No | Not specified | None specified |
actions[].apiName | string | No | Not specified | None specified |
actions[].commitGuards | object | No | Not specifiedSchema default, where declared: {"evidence":[],"targets":[]} | None specified |
actions[].commitGuards.evidence | array | No | Not specifiedSchema default, where declared: [] | None specified |
actions[].commitGuards.evidence[]Array item | object | No | Not specified | None specified |
actions[].commitGuards.evidence[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
actions[].commitGuards.evidence[].maximumObservationAgeSeconds | integer | Yes | Not specified |
|
actions[].commitGuards.evidence[].provider | string | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].requirement | string | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].requires | array | No | Not specifiedSchema default, where declared: [] | None specified |
actions[].commitGuards.evidence[].requires[]Array item | object | No | Not specified | None specified |
actions[].commitGuards.evidence[].requires[].atLeast | integer | No | Not specified |
|
actions[].commitGuards.evidence[].requires[].atMost | integer | No | Not specified |
|
actions[].commitGuards.evidence[].requires[].equals | Not specified | No | Not specified | None specified |
actions[].commitGuards.evidence[].requires[].equalsFromInput | string | No | Not specified | None specified |
actions[].commitGuards.evidence[].requires[].output | string | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].subjects | object | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].subjects.*Map value | object | No | Not specified |
|
actions[].commitGuards.evidence[].subjects.*.profile | string | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].subjects.*.selectorsExact governed selector-profile field map. Every profile field must be
present exactly once and no undeclared field is admitted. | object | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].subjects.*.selectors.*Map value | object | No | Not specified |
|
actions[].commitGuards.evidence[].subjects.*.selectors.*.field | string | Conditional | Not specified | None specified |
actions[].commitGuards.evidence[].subjects.*.selectors.*.input | string | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].subjects.*.selectors.*.type | string | Yes |
| None specified |
actions[].commitGuards.targets | array | No | Not specifiedSchema default, where declared: [] | None specified |
actions[].commitGuards.targets[]Array item | object | No | Not specified | None specified |
actions[].commitGuards.targets[].atLeast | integer | No | Not specified |
|
actions[].commitGuards.targets[].atMost | integer | No | Not specified |
|
actions[].commitGuards.targets[].currentDate | string | No |
| None specified |
actions[].commitGuards.targets[].equalsA comparison literal: a boolean, a number, or text. | boolean | number | string | No | Not specified | None specified |
actions[].commitGuards.targets[].equalsFromInput | string | No | Not specified | None specified |
actions[].commitGuards.targets[].field | string | No | Not specifiedSchema default, where declared: "" | None specified |
actions[].commitGuards.targets[].input | string | Yes | Not specified | None specified |
actions[].commitGuards.targets[].isNullRequires the stored value to be unset. Only true is read. | boolean | No |
| None specified |
actions[].commitGuards.targets[].revision | string | No |
| None specified |
actions[].consentIssuerWho an action creates consent rows for. | string | No |
| None specified |
actions[].display | object | No | Not specifiedSchema default, where declared: {} | None specified |
actions[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
actions[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
actions[].display.titleField | string | No | Not specified | None specified |
actions[].evidence | array | No | Not specified | None specified |
actions[].evidence[]Array item | object | No | Not specified | None specified |
actions[].evidence[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
actions[].evidence[].maximumObservationAgeSeconds | integer | Yes | Not specified |
|
actions[].evidence[].outputs | array | Yes | Not specified | None specified |
actions[].evidence[].outputs[]Array item | string | No | Not specified | None specified |
actions[].evidence[].provider | string | Yes | Not specified | None specified |
actions[].evidence[].requirement | string | Yes | Not specified | None specified |
actions[].evidence[].subjects | object | Yes | Not specified | None specified |
actions[].evidence[].subjects.*Map value | object | No | Not specified |
|
actions[].evidence[].subjects.*.profile | string | Yes | Not specified | None specified |
actions[].execution | object | Yes | Not specified | None specified |
actions[].execution.mode | string | Yes |
| None specified |
actions[].execution.proposal | object | Conditional | Not specified | None specified |
actions[].execution.proposal.application | object | Conditional | Not specifiedSchema default, where declared: {"maximumAttempts":3,"mode":"automatic"} | None specified |
actions[].execution.proposal.application.maximumAttempts | integer | Conditional | Not specifiedSchema default, where declared: 3 |
|
actions[].execution.proposal.application.mode | string | Conditional |
| None specified |
actions[].execution.proposal.attachments | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
actions[].execution.proposal.attachments[]Array item | object | Conditional | Not specified | None specified |
actions[].execution.proposal.attachments[].classification | string | Conditional |
| None specified |
actions[].execution.proposal.attachments[].contentTypes | array | Conditional | Not specified | None specified |
actions[].execution.proposal.attachments[].contentTypes[]Array item | string | Conditional | Not specified | None specified |
actions[].execution.proposal.attachments[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.attachments[].maximumBytes | integer | Conditional | Not specified |
|
actions[].execution.proposal.attachments[].required | boolean | Conditional | Not specified | None specified |
actions[].execution.proposal.hooksPost-commit observers of the fixed, value-free Proposal lifecycle event. | array | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[]Array item | object | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].displayAuthored presentation only; labels never establish identity or authority. | object | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handlerWhere a hook's handler runs.
The pairing rule: rhai requires script, wasm requires module,
url requires destinationId, and each
kind requires exactly its own fields and nothing else. abi is required on
rhai and wasm and forbidden on url; its value is closed and checked at
compile time in [crate::validate_hooks]. | object | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handler.abiFor rhai: The handler ABI the script speaks. For wasm: The handler ABI the module speaks. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handler.destinationIdKey in the runtime destination binding. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handler.moduleModule path in the project. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handler.scriptScript path in the project. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handler.type | string | Conditional |
| None specified |
actions[].execution.proposal.hooks[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.hooks[].transitionsOmit to observe every committed lifecycle transition. | array | Conditional | Not specified |
|
actions[].execution.proposal.hooks[].transitions[]Array item | string | Conditional |
| None specified |
actions[].execution.proposal.retention | object | Conditional | Not specified | None specified |
actions[].execution.proposal.retention.mode | string | Conditional |
| None specified |
actions[].execution.proposal.review | object | Conditional | Not specified | None specified |
actions[].execution.proposal.review.authority | string | Conditional | Not specified | None specified |
actions[].execution.proposal.review.policy | object | Conditional | Not specified | None specified |
actions[].execution.proposal.review.policy.digestA SHA-256 digest: sha256: followed by 64 lowercase hex digits. | string | Conditional | Not specified |
|
actions[].execution.proposal.review.policy.idAn identifier another system issues, written exactly as its issuer gives it. | string | Conditional | Not specified |
|
actions[].execution.proposal.review.policy.version | string | Conditional | Not specified | None specified |
actions[].execution.proposal.review.source | string | Conditional | Not specified | None specified |
actions[].execution.proposal.review.type | string | Conditional |
| None specified |
actions[].execution.proposal.reviewContext | object | Conditional | Not specified | None specified |
actions[].execution.proposal.reviewContext.fields | object | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*Map value | object | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*.fieldA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*.fields | array | Conditional | Not specified | None specified |
actions[].execution.proposal.reviewContext.fields.*.fields[]Array item | string | Conditional | Not specified | None specified |
actions[].execution.proposal.reviewContext.fields.*.inputA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*.recordTypeA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*.slotA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*.type | string | Conditional |
| None specified |
actions[].execution.proposal.reviewContext.idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
actions[].inputs | array | No | Not specifiedSchema default, where declared: [] | None specified |
actions[].inputs[]Array item | object | No | Not specified | None specified |
actions[].inputs[].apiName | string | No | Not specified | None specified |
actions[].inputs[].bbox | object | Conditional | Not specified | None specified |
actions[].inputs[].bbox.east | string | Conditional | Not specified | None specified |
actions[].inputs[].bbox.north | string | Conditional | Not specified | None specified |
actions[].inputs[].bbox.south | string | Conditional | Not specified | None specified |
actions[].inputs[].bbox.west | string | Conditional | Not specified | None specified |
actions[].inputs[].classification | string | Yes |
| None specified |
actions[].inputs[].display | object | No | Not specifiedSchema default, where declared: {} | None specified |
actions[].inputs[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
actions[].inputs[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
actions[].inputs[].display.titleField | string | No | Not specified | None specified |
actions[].inputs[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
actions[].inputs[].maximum | string | Conditional | Not specified | None specified |
actions[].inputs[].maximumBytes | integer | Conditional | Not specified |
|
actions[].inputs[].maximumLength | integer | Conditional | Not specified |
or
|
actions[].inputs[].minimum | string | Conditional | Not specified | None specified |
actions[].inputs[].minimumLength | integer | Conditional | Not specifiedSchema default, where declared: 0 |
|
actions[].inputs[].onDelete | string | Conditional |
"restrict" | None specified |
actions[].inputs[].precision | integer | Conditional | Not specified |
or
|
actions[].inputs[].required | boolean | No | Not specifiedSchema default, where declared: false | None specified |
actions[].inputs[].scale | integer | Conditional | Not specified |
|
actions[].inputs[].schema | Not specified | Conditional | Not specified | None specified |
actions[].inputs[].target | string | Conditional | Not specified | None specified |
actions[].inputs[].type | string | Conditional |
| None specified |
actions[].inputs[].typeRefA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].inputs[].values | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
actions[].inputs[].values[]Array item | string | Conditional | Not specified | None specified |
actions[].inputs[].vocabulary | string | Conditional | Not specified | None specified |
actions[].plan | object | Yes | Not specified | None specified |
actions[].plan.capabilities | array | Conditional | Not specifiedSchema default, where declared: [] |
|
actions[].plan.capabilities[]Array item | string | Conditional | Not specified | None specified |
actions[].plan.effects | array | Conditional | Not specified | None specified |
actions[].plan.effects[]Array item | object | Conditional | Not specified | None specified |
actions[].plan.effects[].clear | array | Conditional | Not specifiedSchema default, where declared: [] |
|
actions[].plan.effects[].clear[]Array item | string | Conditional | Not specified | None specified |
actions[].plan.effects[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].plan.effects[].operationCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | Conditional |
| None specified |
actions[].plan.effects[].set | object | Conditional | Not specifiedSchema default, where declared: {} | None specified |
actions[].plan.effects[].set.*Map value | object | Conditional | Not specified |
|
actions[].plan.effects[].set.*.fromEffect | string | Conditional | Not specified | None specified |
actions[].plan.effects[].set.*.fromInput | string | Conditional | Not specified | None specified |
actions[].plan.effects[].set.*.value | Not specified | Conditional | Not specified | None specified |
actions[].plan.effects[].target | object | Conditional | Not specified | None specified |
actions[].plan.effects[].target.fromInput | string | Conditional | Not specified | None specified |
actions[].plan.effects[].target.recordType | string | Conditional | Not specified | None specified |
actions[].plan.function | string | Conditional | Not specified | None specified |
actions[].plan.inputs | array | Conditional | Not specified | None specified |
actions[].plan.inputs[]Array item | string | Conditional | Not specified | None specified |
actions[].plan.refusals | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
actions[].plan.refusals[]Array item | object | Conditional | Not specified | None specified |
actions[].plan.refusals[].code | string | Conditional | Not specified | None specified |
actions[].plan.refusals[].labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified | None specified |
actions[].plan.type | string | Yes |
| None specified |
actions[].plan.writes | array | Conditional | Not specified | None specified |
actions[].plan.writes[]Array item | object | Conditional | Not specified | None specified |
actions[].plan.writes[].fields | array | Conditional | Not specified | None specified |
actions[].plan.writes[].fields[]Array item | string | Conditional | Not specified | None specified |
actions[].plan.writes[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].plan.writes[].operationCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | Conditional |
| None specified |
actions[].plan.writes[].target | object | Conditional | Not specified | None specified |
actions[].plan.writes[].target.fromInput | string | Conditional | Not specified | None specified |
actions[].plan.writes[].target.recordType | string | Conditional | Not specified | None specified |
apiVersion | string | Yes |
| None specified |
datasets | array | No | Not specifiedSchema default, where declared: [] | None specified |
datasets[]Array item | object | No | Not specified | None specified |
datasets[].display | object | No | Not specifiedSchema default, where declared: {} | None specified |
datasets[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
datasets[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
datasets[].display.titleField | string | No | Not specified | None specified |
datasets[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
evidenceProviders | array | No | Not specified | None specified |
evidenceProviders[]Array item | object | No | Not specified | None specified |
evidenceProviders[].contracts | string | Yes | Not specified | None specified |
evidenceProviders[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
evidenceProviders[].subjectResolution | string | Yes |
| None specified |
functions | array | No | Not specifiedSchema default, where declared: [] | None specified |
functions[]Array item | object | No | Not specified | None specified |
functions[].abi | string | Yes |
| None specified |
functions[].capabilities | array | No | Not specifiedSchema default, where declared: [] |
|
functions[].capabilities[]Array item | string | No | Not specified | None specified |
functions[].entrypoint | string | Yes | Not specified | None specified |
functions[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
functions[].limits | object | No | Not specifiedSchema default, where declared: {"maximumOperations":10000,"maximumOutputBytes":8192} | None specified |
functions[].limits.maximumOperations | integer | No | Not specifiedSchema default, where declared: 10000 |
|
functions[].limits.maximumOutputBytes | integer | No | Not specifiedSchema default, where declared: 8192 |
|
functions[].runtimeThe authored action-handler backend. The wasm backend is admitted when
this build of the compiler carries the wasm cargo feature, which
validates a declared WASM handler module against the platform guest
ABI at compile time; without that feature a declared WASM handler is
refused with the pinned breg.action.handler-wasm-build-unsupported
diagnostic. | string | Yes |
| None specified |
functions[].source | string | Yes | Not specified | None specified |
kind | string | Yes |
| None specified |
manifestProjection | object | No | Not specified | None specified |
manifestProjection.accessProfile | string | Yes | Not specified | None specified |
manifestProjection.catalog | object | Yes | Not specified | None specified |
manifestProjection.catalog.applicationProfiles | array | No | Not specifiedSchema default, where declared: [] | None specified |
manifestProjection.catalog.applicationProfiles[]Array item | object | No | Not specified | None specified |
manifestProjection.catalog.applicationProfiles[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
manifestProjection.catalog.applicationProfiles[].version | string | Yes | Not specified | None specified |
manifestProjection.catalog.baseUrlAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | Yes | Not specified |
|
manifestProjection.catalog.conformsTo | array | No | Not specifiedSchema default, where declared: [] | None specified |
manifestProjection.catalog.conformsTo[]Array item | string | No | Not specified | None specified |
manifestProjection.catalog.descriptionOne plain string, or a mapping from language tag to text. | object | string | No | Not specified | None specified |
manifestProjection.catalog.description.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.catalog.participantId | string | No | Not specified | None specified |
manifestProjection.catalog.publisher | object | Yes | Not specified | None specified |
manifestProjection.catalog.publisher.authorityType | string | No | Not specified | None specified |
manifestProjection.catalog.publisher.idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
manifestProjection.catalog.publisher.iri | string | No | Not specified | None specified |
manifestProjection.catalog.publisher.nameHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Yes | Not specified | None specified |
manifestProjection.catalog.standards | object | No | Not specifiedSchema default, where declared: {} | None specified |
manifestProjection.catalog.standards.dcat | string | No | Not specified | None specified |
manifestProjection.catalog.standards.jsonSchema | string | No | Not specified | None specified |
manifestProjection.catalog.standards.shacl | string | No | Not specified | None specified |
manifestProjection.catalog.titleOne plain string, or a mapping from language tag to text. | object | string | Yes | Not specified | None specified |
manifestProjection.catalog.title.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.classificationCeiling | string | Yes |
| None specified |
manifestProjection.dataServices | array | Yes | Not specified | None specified |
manifestProjection.dataServices[]Array item | object | No | Not specified | None specified |
manifestProjection.dataServices[].conformsTo | string | No | Not specified | None specified |
manifestProjection.dataServices[].descriptionOne plain string, or a mapping from language tag to text. | object | string | No | Not specified | None specified |
manifestProjection.dataServices[].description.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.dataServices[].endpointDescription | string | No | Not specified | None specified |
manifestProjection.dataServices[].endpointUrlAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | Yes | Not specified |
|
manifestProjection.dataServices[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
manifestProjection.dataServices[].iri | string | No | Not specified | None specified |
manifestProjection.dataServices[].servesDatasets | array | Yes | Not specified | None specified |
manifestProjection.dataServices[].servesDatasets[]Array item | string | No | Not specified | None specified |
manifestProjection.dataServices[].titleOne plain string, or a mapping from language tag to text. | object | string | Yes | Not specified | None specified |
manifestProjection.dataServices[].title.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.datasets | array | Yes | Not specified | None specified |
manifestProjection.datasets[]Array item | object | No | Not specified | None specified |
manifestProjection.datasets[].accessProfile | string | No | Not specified | None specified |
manifestProjection.datasets[].applicableLegislation | array | No | Not specifiedSchema default, where declared: [] | None specified |
manifestProjection.datasets[].applicableLegislation[]Array item | string | No | Not specified | None specified |
manifestProjection.datasets[].classificationCeiling | string | No |
| None specified |
manifestProjection.datasets[].conformsTo | array | No | Not specifiedSchema default, where declared: [] | None specified |
manifestProjection.datasets[].conformsTo[]Array item | string | No | Not specified | None specified |
manifestProjection.datasets[].descriptionOne plain string, or a mapping from language tag to text. | object | string | No | Not specified | None specified |
manifestProjection.datasets[].description.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.datasets[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
manifestProjection.datasets[].iri | string | No | Not specified | None specified |
manifestProjection.datasets[].ownerHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
manifestProjection.datasets[].spatialCoverage | string | No | Not specified | None specified |
manifestProjection.datasets[].status | string | No |
| None specified |
manifestProjection.datasets[].titleOne plain string, or a mapping from language tag to text. | object | string | Yes | Not specified | None specified |
manifestProjection.datasets[].title.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.datasets[].version | string | No | Not specified | None specified |
manifestProjection.distributions | array | No | Not specified | None specified |
manifestProjection.distributions[]Array item | object | No | Not specified | None specified |
manifestProjection.distributions[].accessService | string | No | Not specified | None specified |
manifestProjection.distributions[].accessUrlAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | No | Not specified |
|
manifestProjection.distributions[].dataset | string | Yes | Not specified | None specified |
manifestProjection.distributions[].descriptionOne plain string, or a mapping from language tag to text. | object | string | No | Not specified | None specified |
manifestProjection.distributions[].description.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.distributions[].downloadUrlAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | No | Not specified |
|
manifestProjection.distributions[].format | string | No | Not specified | None specified |
manifestProjection.distributions[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
manifestProjection.distributions[].iri | string | No | Not specified | None specified |
manifestProjection.distributions[].mediaType | string | No | Not specified | None specified |
manifestProjection.distributions[].titleOne plain string, or a mapping from language tag to text. | object | string | No | Not specified | None specified |
manifestProjection.distributions[].title.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.entities | array | No | Not specifiedSchema default, where declared: [] | None specified |
manifestProjection.entities[]Array item | object | No | Not specified | None specified |
manifestProjection.entities[].conceptUri | string | No | Not specified | None specified |
manifestProjection.entities[].descriptionOne plain string, or a mapping from language tag to text. | object | string | No | Not specified | None specified |
manifestProjection.entities[].description.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.entities[].fields | array | No | Not specifiedSchema default, where declared: [] | None specified |
manifestProjection.entities[].fields[]Array item | object | No | Not specified | None specified |
manifestProjection.entities[].fields[].concepts | array | No | Not specifiedSchema default, where declared: [] | None specified |
manifestProjection.entities[].fields[].concepts[]Array item | string | No | Not specified | None specified |
manifestProjection.entities[].fields[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
manifestProjection.entities[].fields[].language | string | No | Not specified | None specified |
manifestProjection.entities[].fields[].relationshipConceptUri | string | No | Not specified | None specified |
manifestProjection.entities[].fields[].relationshipRole | string | No | Not specified | None specified |
manifestProjection.entities[].fields[].unit | string | No | Not specified | None specified |
manifestProjection.entities[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
manifestProjection.entities[].identifiers | array | No | Not specifiedSchema default, where declared: [] | None specified |
manifestProjection.entities[].identifiers[]Array item | object | No | Not specified | None specified |
manifestProjection.entities[].identifiers[].field | string | Yes | Not specified | None specified |
manifestProjection.entities[].identifiers[].kind | string | Yes | Not specified | None specified |
manifestProjection.entities[].titleOne plain string, or a mapping from language tag to text. | object | string | No | Not specified | None specified |
manifestProjection.entities[].title.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.publicService | object | Yes | Not specified | None specified |
manifestProjection.publicService.idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
manifestProjection.publicService.titleOne plain string, or a mapping from language tag to text. | object | string | Yes | Not specified | None specified |
manifestProjection.publicService.title.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.vocabularies | array | No | Not specifiedSchema default, where declared: [] | None specified |
manifestProjection.vocabularies[]Array item | object | No | Not specified | None specified |
manifestProjection.vocabularies[].concepts | array | No | Not specifiedSchema default, where declared: [] | None specified |
manifestProjection.vocabularies[].concepts[]Array item | object | No | Not specified | None specified |
manifestProjection.vocabularies[].concepts[].code | string | Yes | Not specified | None specified |
manifestProjection.vocabularies[].concepts[].iri | string | No | Not specified | None specified |
manifestProjection.vocabularies[].concepts[].labelOne plain string, or a mapping from language tag to text. | object | string | No | Not specified | None specified |
manifestProjection.vocabularies[].concepts[].label.*Map valueHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified |
|
manifestProjection.vocabularies[].externalReference | string | No | Not specified | None specified |
manifestProjection.vocabularies[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
manifestProjection.vocabularies[].schemeIri | string | Yes | Not specified | None specified |
manifestProjection.vocabularies[].version | string | No | Not specified | None specified |
modules | array | No | Not specifiedSchema default, where declared: [] | None specified |
modules[]Array item | object | No | Not specified | None specified |
modules[].digestA SHA-256 digest: sha256: followed by 64 lowercase hex digits. | string | No | Not specified |
|
modules[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
modules[].version | string | Yes | Not specified | None specified |
package | object | No | Not specified | None specified |
package.sourceRevision | string | Yes | Not specified | None specified |
project | object | Yes | Not specified | None specified |
project.canonicalBaseIri | string | Yes | Not specified | None specified |
project.defaultLanguage | string | Yes | Not specified | None specified |
project.display | object | No | Not specifiedSchema default, where declared: {} | None specified |
project.display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
project.display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
project.display.titleField | string | No | Not specified | None specified |
project.idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
project.version | string | Yes | Not specified | None specified |
recipientsNamed organizations and frozen groups that consent may be given to. | object | No | Not specified | None specified |
recipients.groups | array | No | Not specified | None specified |
recipients.groups[]Array itemA frozen, named list of declared organizations. Groups do not nest. | object | No | Not specified | None specified |
recipients.groups[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recipients.groups[].members | array | Yes | Not specified | None specified |
recipients.groups[].members[]Array item | string | No | Not specified | None specified |
recipients.groups[].nameHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Yes | Not specified | None specified |
recipients.organizations | array | No | Not specifiedSchema default, where declared: [] | None specified |
recipients.organizations[]Array itemOne named organization. Its clients are the verified OAuth clients that act
for it; an organization with no clients is retired and keeps its code. | object | No | Not specified | None specified |
recipients.organizations[].clients | array | Yes | Not specified | None specified |
recipients.organizations[].clients[]Array item | string | No | Not specified | None specified |
recipients.organizations[].contactHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Yes | Not specified | None specified |
recipients.organizations[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recipients.organizations[].nameHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Yes | Not specified | None specified |
recordTypes | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[]Array item | object | No | Not specified | None specified |
recordTypes[].accessLogSubject-facing record access history, separate from the operational audit. | object | No | Not specified | None specified |
recordTypes[].accessLog.exemptionsAccess profiles whose entries become subject-visible only after a policy delay. | object | No | Not specified |
|
recordTypes[].accessLog.exemptions.*Map valueDelayed subject disclosure for reads under one access profile. | object | No | Not specified |
|
recordTypes[].accessLog.exemptions.*.delayDaysDays after the read when the entry becomes visible to the subject. | integer | Yes | Not specified |
|
recordTypes[].accessLog.exemptions.*.reasonBounded policy reason retained and audited with each delayed entry. | string | Yes | Not specified |
|
recordTypes[].accessLog.exemptions.*.sourceRecordTypeRecord type whose access profile authorizes the read. Omitted for direct reads of the logged record type. | string | No | Not specified |
|
recordTypes[].accessLog.retentionDaysDays each entry remains available before bounded background erasure. | integer | No | Not specifiedSchema default, where declared: 90 |
|
recordTypes[].accessLog.subjectFieldRequired plaintext string or text field matched to the subject's verified principal. | string | Yes | Not specified |
|
recordTypes[].accessLog.trustedIntermediariesVerified intermediary client IDs allowed to forward original requester attribution. | array | No | Not specified |
|
recordTypes[].accessLog.trustedIntermediaries[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfilesModule profile contributions, read through the sentinels a project profile uses. | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].accessProfiles[]Array item | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].actorKind | string | No |
| None specified |
recordTypes[].accessProfiles[].allowCount | boolean | No | Not specified | None specified |
recordTypes[].accessProfiles[].allowDataExport | boolean | No | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].accessProfiles[].default | boolean | No | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].accessProfiles[].displayAuthored words for an object without a Record's title-field selection. | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].filterableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].filterableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].accessProfiles[].lookups | array | No | Not specified | None specified |
recordTypes[].accessProfiles[].lookups[]Array item | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].lookups[].claimMapping | object | No | Not specifiedSchema default, where declared: {} | None specified |
recordTypes[].accessProfiles[].lookups[].claimMapping.*Map value | string | No | Not specified |
|
recordTypes[].accessProfiles[].lookups[].selector | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].lookups[].valueOrigin | string | Yes |
| None specified |
recordTypes[].accessProfiles[].membershipBoundaries | array | No | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[]Array itemA one-hop current membership requirement, combined with every other row boundary.
The root field and membership key must reference the same entity. The active
field is Boolean, and principalField matches the profile's verified principal. | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[].activeField | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[].field | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[].membershipKeyField | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[].membershipRecordType | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[].principalField | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].operations | array | Yes | Not specified |
|
recordTypes[].accessProfiles[].operations[]Array itemCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | No |
| None specified |
recordTypes[].accessProfiles[].principalClaimThe token claim that names the caller. Every profile serves authenticated callers, so every profile names one. | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].provenanceFields | array | No | Not specified |
|
recordTypes[].accessProfiles[].provenanceFields[]Array itemA member of a revision's changeContext a profile may read. Each value
is spelled as the member it names is (CFG-NAME-2). | string | No |
| None specified |
recordTypes[].accessProfiles[].readPaths | array | No | Not specified | None specified |
recordTypes[].accessProfiles[].readPaths[]Array item | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].readPaths[].allowCount | boolean | No | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].accessProfiles[].readPaths[].filterableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].readPaths[].filterableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].readPaths[].path | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].readPaths[].readableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].readPaths[].readableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].readPaths[].sortableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].readPaths[].sortableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].readableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].readableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].requesterClientsThe OAuth clients whose tokens may select this profile. Omit to accept every client. | array | No | Not specified |
|
recordTypes[].accessProfiles[].requesterClients[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].requireConsent | array | No | Not specified | None specified |
recordTypes[].accessProfiles[].requireConsent[]Array itemA consent check ANDed into one read permission. | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].requireConsent[].onThe permission entity's field the consent subject references; id is
the row's own identity. | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].requireConsent[].recordThe consent-record entity checked. | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].requiredPurposesThe verified token's purpose must match one listed value. Omit to accept every purpose. | array | No | Not specified |
|
recordTypes[].accessProfiles[].requiredPurposes[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].requiredScopesThe scopes the verified token must carry: unrestricted, or a list of at least one scope, all of which must be present. | array | string | Yes |
| No bound or
|
recordTypes[].accessProfiles[].requiredScopes[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].accessProfiles[].revisionAccess | boolean | No | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].accessProfiles[].rowBoundariesRow reach: unrestricted, or a list of at least one row boundary. | array | string | Yes |
| No bound or
|
recordTypes[].accessProfiles[].rowBoundaries[]Array item | object | Conditional | Not specified | None specified |
recordTypes[].accessProfiles[].rowBoundaries[].claim | string | Conditional | Not specified | None specified |
recordTypes[].accessProfiles[].rowBoundaries[].field | string | Conditional | Not specified | None specified |
recordTypes[].accessProfiles[].rowBoundaries[].operator | string | Conditional |
| None specified |
recordTypes[].accessProfiles[].sortableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].sortableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].spatialQueries | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].spatialQueries.bbox | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].spatialQueries.bbox.maximumLatitudeSpanDegrees | number | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].spatialQueries.bbox.maximumLongitudeSpanDegrees | number | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].taskGrant | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].taskGrant.permissions | array | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].taskGrant.permissions[]Array item | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].taskGrant.permissions[].collection | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].taskGrant.permissions[].operations | array | Yes | Not specified |
|
recordTypes[].accessProfiles[].taskGrant.permissions[].operations[]Array itemCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | No |
| None specified |
recordTypes[].accessProfiles[].taskGrant.sourceIssuerAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | Yes | Not specified |
|
recordTypes[].accessProfiles[].writableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].writableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessRequirementsMandatory request-access requirements checked against every profile, including module contributions. | object | No | Not specified | None specified |
recordTypes[].accessRequirements.allowedPurposesEvery profile must restrict purpose to a subset of these values. Omit to demand no purpose. | array | No | Not specified |
|
recordTypes[].accessRequirements.allowedPurposes[]Array item | string | No | Not specified | None specified |
recordTypes[].accessRequirements.requiredScopesEvery profile must require all these scopes. Requirements never grant access. Omit to demand no scope. | array | No | Not specified |
|
recordTypes[].accessRequirements.requiredScopes[]Array item | string | No | Not specified | None specified |
recordTypes[].accessRequirements.rowBoundariesEvery profile must include these exact field, verified-claim, and operator bindings. Omit to demand no row boundary. | array | No | Not specified |
|
recordTypes[].accessRequirements.rowBoundaries[]Array item | object | No | Not specified | None specified |
recordTypes[].accessRequirements.rowBoundaries[].claim | string | Yes | Not specified | None specified |
recordTypes[].accessRequirements.rowBoundaries[].field | string | Yes | Not specified | None specified |
recordTypes[].accessRequirements.rowBoundaries[].operator | string | Yes |
| None specified |
recordTypes[].apiName | string | No | Not specified | None specified |
recordTypes[].batch | object | No | Not specified | None specified |
recordTypes[].batch.maximumBytes | integer | Yes | Not specified |
|
recordTypes[].batch.maximumItems | integer | Yes | Not specified |
|
recordTypes[].classification | string | No |
"internal" | None specified |
recordTypes[].consentRecordDeclares this entity's rows as subject-issued consent decisions that
requireConsent permissions check before returning a subject's row. | object | No | Not specified | None specified |
recordTypes[].consentRecord.decisionMaps the adopter's decision codes onto the engine's decision sets. | object | Yes | Not specified | None specified |
recordTypes[].consentRecord.decision.field | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.decision.givesCodes that give consent. | array | Yes | Not specified | None specified |
recordTypes[].consentRecord.decision.gives[]Array item | string | No | Not specified | None specified |
recordTypes[].consentRecord.decision.refusalsRevoke codes never shown to recipients. | array | No | Not specified | None specified |
recordTypes[].consentRecord.decision.refusals[]Array item | string | No | Not specified | None specified |
recordTypes[].consentRecord.decision.revokesCodes that supersede every give on the same key ordered no later. | array | Yes | Not specified | None specified |
recordTypes[].consentRecord.decision.revokes[]Array item | string | No | Not specified | None specified |
recordTypes[].consentRecord.purposeA vocabulary-code field compared with the verified request purpose. | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.recipientA vocabulary-code field bound to registry-recipients. | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.scopeA vocabulary-code field bound to registry-consent-scopes. | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.subjectA reference field naming the protected subject row. | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.validityValidity of a consent decision. Every give expires within
maximumDurationDays. | object | Yes | Not specified | None specified |
recordTypes[].consentRecord.validity.fromA required timestamp field; a give is active only from this time. | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.validity.maximumDurationDaysThe longest a give lasts, in whole days of 24 hours: at most 3652,
ten years. | integer | Yes | Not specified |
|
recordTypes[].consentRecord.validity.untilAn optional timestamp field ending the give earlier than
maximumDurationDays. | string | No | Not specified | None specified |
recordTypes[].constraints | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].constraints[]Array item | object | No | Not specified | None specified |
recordTypes[].constraints[].endField | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].field | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].fields | array | Conditional | Not specified | None specified |
recordTypes[].constraints[].fields[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | No | Not specified |
|
recordTypes[].constraints[].left | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].maximum | integer | Conditional | Not specified |
|
recordTypes[].constraints[].minimum | integer | Conditional | Not specified |
|
recordTypes[].constraints[].operator | string | Conditional |
| None specified |
recordTypes[].constraints[].right | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].scopeFields | array | Conditional | Not specified | None specified |
recordTypes[].constraints[].scopeFields[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].startField | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].type | string | Yes |
| None specified |
recordTypes[].constraints[].values | array | Conditional | Not specified | None specified |
recordTypes[].constraints[].values[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].when | array | Conditional | Not specified | None specified |
recordTypes[].constraints[].when[]Array item | object | Conditional | Not specified | None specified |
recordTypes[].constraints[].when[].field | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].when[].type | string | Conditional |
| None specified |
recordTypes[].constraints[].when[].value | Not specified | Conditional | Not specified | None specified |
recordTypes[].derived | array | No | Not specified | None specified |
recordTypes[].derived[]Array item | object | No | Not specified | None specified |
recordTypes[].derived[].execution | string | No |
"live" | None specified |
recordTypes[].derived[].fields | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].derived[].fields[]Array item | object | No | Not specified | None specified |
recordTypes[].derived[].fields[].apiName | string | No | Not specified | None specified |
recordTypes[].derived[].fields[].bbox | object | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].bbox.east | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].bbox.north | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].bbox.south | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].bbox.west | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].classification | string | Yes |
| None specified |
recordTypes[].derived[].fields[].display | object | No | Not specified | None specified |
recordTypes[].derived[].fields[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].derived[].fields[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].derived[].fields[].display.titleField | string | No | Not specified | None specified |
recordTypes[].derived[].fields[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].derived[].fields[].maximum | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].maximumBytes | integer | Conditional | Not specified |
|
recordTypes[].derived[].fields[].maximumLength | integer | Conditional | Not specified |
or
|
recordTypes[].derived[].fields[].minimum | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].minimumLength | integer | Conditional | Not specifiedSchema default, where declared: 0 |
|
recordTypes[].derived[].fields[].onDelete | string | Conditional |
"restrict" | None specified |
recordTypes[].derived[].fields[].precision | integer | Conditional | Not specified |
or
|
recordTypes[].derived[].fields[].scale | integer | Conditional | Not specified |
|
recordTypes[].derived[].fields[].schema | Not specified | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].target | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].type | string | Yes |
| None specified |
recordTypes[].derived[].fields[].values | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].derived[].fields[].values[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].vocabulary | string | Conditional | Not specified | None specified |
recordTypes[].derived[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].derived[].key | string | Yes | Not specified | None specified |
recordTypes[].derived[].sql | string | Yes | Not specified | None specified |
recordTypes[].display | object | No | Not specifiedSchema default, where declared: {} | None specified |
recordTypes[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].display.titleField | string | No | Not specified | None specified |
recordTypes[].fields | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].fields[]Array item | object | No | Not specified | None specified |
recordTypes[].fields[].apiName | string | No | Not specified | None specified |
recordTypes[].fields[].bbox | object | Conditional | Not specified | None specified |
recordTypes[].fields[].bbox.east | string | Conditional | Not specified | None specified |
recordTypes[].fields[].bbox.north | string | Conditional | Not specified | None specified |
recordTypes[].fields[].bbox.south | string | Conditional | Not specified | None specified |
recordTypes[].fields[].bbox.west | string | Conditional | Not specified | None specified |
recordTypes[].fields[].classification | string | Yes |
| None specified |
recordTypes[].fields[].display | object | No | Not specified | None specified |
recordTypes[].fields[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].fields[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].fields[].display.titleField | string | No | Not specified | None specified |
recordTypes[].fields[].encrypted | boolean | Conditional | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].fields[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].fields[].lookupThe authored blind-index declaration for an encrypted field. Normalization
composes in declared order over the canonical string form of the value;
unique requests a unique index over the derived blind-index column. | object | Conditional | Not specified | None specified |
recordTypes[].fields[].lookup.normalization | array | Conditional | Not specifiedSchema default, where declared: [] |
|
recordTypes[].fields[].lookup.normalization[]Array itemA normalization step applied to the canonical string form of an encrypted
value before its blind index is derived. The vocabulary is closed. | string | Conditional |
| None specified |
recordTypes[].fields[].lookup.unique | boolean | Conditional | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].fields[].maximum | string | Conditional | Not specified | None specified |
recordTypes[].fields[].maximumBytes | integer | Conditional | Not specified |
|
recordTypes[].fields[].maximumLength | integer | Conditional | Not specified |
or
|
recordTypes[].fields[].minimum | string | Conditional | Not specified | None specified |
recordTypes[].fields[].minimumLength | integer | Conditional | Not specifiedSchema default, where declared: 0 |
|
recordTypes[].fields[].onDelete | string | Conditional |
"restrict" | None specified |
recordTypes[].fields[].pattern | string | Conditional | Not specified | None specified |
recordTypes[].fields[].precision | integer | Conditional | Not specified |
or
|
recordTypes[].fields[].relationship | object | Conditional | Not specified | None specified |
recordTypes[].fields[].relationship.inverseName | string | Conditional | Not specified |
|
recordTypes[].fields[].required | boolean | No | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].fields[].scale | integer | Conditional | Not specified |
|
recordTypes[].fields[].schema | Not specified | Conditional | Not specified | None specified |
recordTypes[].fields[].target | string | Conditional | Not specified | None specified |
recordTypes[].fields[].type | string | Conditional |
| None specified |
recordTypes[].fields[].typeRefA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
recordTypes[].fields[].validTimeRole | string | No |
| None specified |
recordTypes[].fields[].values | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].fields[].values[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].fields[].vocabulary | string | Conditional | Not specified | None specified |
recordTypes[].geojson | object | No | Not specified | None specified |
recordTypes[].geojson.geometryField | string | Yes | Not specified | None specified |
recordTypes[].hooks | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].hooks[]Array itemOne declared hook on an entity.
The shape is [registry_platform_hooks::HookDeclaration] with trigger
and when closed to the vocabulary this compiler validates, and with
handler optional. A hook that declares no handler is still recorded in
the outbox and delivered nowhere; production compilation refuses that.
Entity hooks run after the triggering transaction commits, so phase is
written and the compiler refuses any value it cannot run. | object | No | Not specified | None specified |
recordTypes[].hooks[].displayAuthored presentation only; labels never establish identity or authority. | object | No | Not specified | None specified |
recordTypes[].hooks[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].hooks[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].hooks[].handlerGoverned, destination-neutral delivery. destinationId is a key in
runtime eventDestinations; the project carries no URL or secret, and
deployment configuration may tighten the bounds it binds but cannot
supply or widen this authority. Production compilation requires it. | object | No | Not specified | None specified |
recordTypes[].hooks[].handler.abiFor rhai: The handler ABI the script speaks. For wasm: The handler ABI the module speaks. | string | Conditional | Not specified | None specified |
recordTypes[].hooks[].handler.destinationIdKey in the runtime destination binding. | string | Conditional | Not specified | None specified |
recordTypes[].hooks[].handler.moduleModule path in the project. | string | Conditional | Not specified | None specified |
recordTypes[].hooks[].handler.scriptScript path in the project. | string | Conditional | Not specified | None specified |
recordTypes[].hooks[].handler.type | string | Yes |
| None specified |
recordTypes[].hooks[].idStable hook contract identifier, sent as ce-type. Use a new identifier for a breaking payload change. | string | Yes | Not specified |
|
recordTypes[].hooks[].phaseWhen the hook runs relative to the triggering transaction. | string | Yes |
| None specified |
recordTypes[].hooks[].principalThe access profile a proposal from this hook is applied under.
Optional: a hook that declares none is a non-proposing hook, and a
proposal from one is refused and dead-lettered at delivery time.
Declaring none is not an authoring error. | string | No | Not specified | None specified |
recordTypes[].hooks[].projectionDeclared field identifiers to include in values. System event metadata is included separately. | array | Yes | Not specified |
|
recordTypes[].hooks[].projection[]Array item | string | No | Not specified | None specified |
recordTypes[].hooks[].triggerCommitted record change that can produce this hook. | string | Yes |
| None specified |
recordTypes[].hooks[].whenOptional field tests, combined with AND. Omit to run on every matching trigger. | object | No | Not specified | None specified |
recordTypes[].hooks[].when.afterEqualsRequired values after the change. Valid with created and patched triggers. | object | No | Not specifiedSchema default, where declared: {} | None specified |
recordTypes[].hooks[].when.afterEquals.*Map valueA comparison literal: a boolean, a number, or text. | boolean | number | string | No | Not specified |
|
recordTypes[].hooks[].when.afterIsNullFields that must be unset after the change. Valid with created and patched triggers. | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].hooks[].when.afterIsNull[]Array item | string | No | Not specified | None specified |
recordTypes[].hooks[].when.beforeEqualsRequired values before the change. Valid with patched and tombstoned triggers. | object | No | Not specifiedSchema default, where declared: {} | None specified |
recordTypes[].hooks[].when.beforeEquals.*Map valueA comparison literal: a boolean, a number, or text. | boolean | number | string | No | Not specified |
|
recordTypes[].hooks[].when.beforeIsNullFields that must be unset before the change. Valid with patched and tombstoned triggers. | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].hooks[].when.beforeIsNull[]Array item | string | No | Not specified | None specified |
recordTypes[].hooks[].when.changedFields whose values must change. Only valid with the patched trigger. | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].hooks[].when.changed[]Array item | string | No | Not specified | None specified |
recordTypes[].hooks[].when.type | string | Yes |
| None specified |
recordTypes[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].indexes | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].indexes[]Array item | object | No | Not specified | None specified |
recordTypes[].indexes[].fields | array | Yes | Not specified |
|
recordTypes[].indexes[].fields[]Array item | string | No | Not specified | None specified |
recordTypes[].indexes[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].mutationMode | string | Yes |
| None specified |
recordTypes[].mutationPolicy | object | No | Not specified | None specified |
recordTypes[].mutationPolicy.create | string | No |
| None specified |
recordTypes[].mutationPolicy.patch | string | No |
| None specified |
recordTypes[].mutationPolicy.tombstone | string | No |
| None specified |
recordTypes[].primaryDataset | string | Yes | Not specified | None specified |
recordTypes[].readPaths | array | No | Not specified | None specified |
recordTypes[].readPaths[]Array item | object | No | Not specified | None specified |
recordTypes[].readPaths[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].readPaths[].route | string | Yes | Not specified | None specified |
recordTypes[].readPaths[].through | string | Yes | Not specified | None specified |
recordTypes[].readPaths[].to | string | Yes | Not specified | None specified |
recordTypes[].route | string | Yes | Not specified | None specified |
recordTypes[].selectorProfiles | array | No | Not specified | None specified |
recordTypes[].selectorProfiles[]Array item | object | No | Not specified | None specified |
recordTypes[].selectorProfiles[].fields | array | Yes | Not specified | None specified |
recordTypes[].selectorProfiles[].fields[]Array item | string | No | Not specified | None specified |
recordTypes[].selectorProfiles[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].temporal | object | No | Not specified | None specified |
recordTypes[].temporal.endField | string | Yes | Not specified | None specified |
recordTypes[].temporal.startField | string | Yes | Not specified | None specified |
recordTypes[].tombstone | boolean | No | Not specifiedSchema default, where declared: false | None specified |
retiredConsentScopesConsent scope codes of removed gated profiles, kept so existing consent
rows still validate. A retired scope matches nothing. | array | No | Not specified | None specified |
retiredConsentScopes[]Array item | string | No | Not specified | None specified |
reviewAuthorities | array | No | Not specifiedSchema default, where declared: [] | None specified |
reviewAuthorities[]Array item | object | No | Not specified | None specified |
reviewAuthorities[].display | object | No | Not specifiedSchema default, where declared: {} | None specified |
reviewAuthorities[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
reviewAuthorities[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
reviewAuthorities[].display.titleField | string | No | Not specified | None specified |
reviewAuthorities[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
reviewAuthorities[].protocol | string | Yes | Not specified | None specified |
statisticalDatasetsDeclared count tables computed from governed Registry records. | array | No | Not specified | None specified |
statisticalDatasets[]Array item | object | No | Not specified | None specified |
statisticalDatasets[].dimensionsUnit Record fields used to group counts. Each field must be boolean or
vocabulary-code, and each may appear once. period, value, and status
are reserved output columns and cannot be dimension field names. | array | Yes | Not specified | None specified |
statisticalDatasets[].dimensions[]Array item | string | No | Not specified | None specified |
statisticalDatasets[].disclosure | object | No | Not specified | None specified |
statisticalDatasets[].disclosure.minimumCount | integer | Yes | Not specified |
|
statisticalDatasets[].disclosure.roundingBase | integer | Yes | Not specified |
|
statisticalDatasets[].displayAuthored presentation only; labels never establish identity or authority. | object | No | Not specified | None specified |
statisticalDatasets[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
statisticalDatasets[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
statisticalDatasets[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
statisticalDatasets[].period | object | Yes | Not specified | None specified |
statisticalDatasets[].period.fieldDate field on the unit Record that places each row in a period. | string | Conditional | Not specified | None specified |
statisticalDatasets[].period.firstPeriod | string | Yes | Not specified | None specified |
statisticalDatasets[].period.granularity | string | Yes |
| None specified |
statisticalDatasets[].period.type | string | Yes |
| None specified |
statisticalDatasets[].period.validityThe scalar temporal, or a mapping naming the validity fields. | object | string | Conditional |
| None specified |
statisticalDatasets[].period.validity.fromRequired date field on the unit Record marking the start of validity. | string | Conditional | Not specified | None specified |
statisticalDatasets[].period.validity.untilOptional date field marking the end of validity. A missing or null end
leaves the row valid until a later bound is stored. | string | Conditional | Not specified | None specified |
statisticalDatasets[].population | string | Yes | Not specified | None specified |
statisticalDatasets[].unit | string | Yes | Not specified | None specified |
valueTypes | object | No | Not specifiedSchema default, where declared: {} | None specified |
valueTypes.*Map value | object | No | Not specified |
|
valueTypes.*.bbox | object | Conditional | Not specified | None specified |
valueTypes.*.bbox.east | string | Conditional | Not specified | None specified |
valueTypes.*.bbox.north | string | Conditional | Not specified | None specified |
valueTypes.*.bbox.south | string | Conditional | Not specified | None specified |
valueTypes.*.bbox.west | string | Conditional | Not specified | None specified |
valueTypes.*.maximum | string | Conditional | Not specified | None specified |
valueTypes.*.maximumBytes | integer | Conditional | Not specified |
|
valueTypes.*.maximumLength | integer | Conditional | Not specified |
or
|
valueTypes.*.minimum | string | Conditional | Not specified | None specified |
valueTypes.*.minimumLength | integer | Conditional | Not specifiedSchema default, where declared: 0 |
|
valueTypes.*.onDelete | string | Conditional |
"restrict" | None specified |
valueTypes.*.precision | integer | Conditional | Not specified |
or
|
valueTypes.*.scale | integer | Conditional | Not specified |
|
valueTypes.*.schema | Not specified | Conditional | Not specified | None specified |
valueTypes.*.target | string | Conditional | Not specified | None specified |
valueTypes.*.type | string | Yes |
| None specified |
valueTypes.*.values | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
valueTypes.*.values[]Array item | string | Conditional | Not specified | None specified |
valueTypes.*.vocabulary | string | Conditional | Not specified | None specified |
vocabularies | array | No | Not specifiedSchema default, where declared: [] | None specified |
vocabularies[]Array item | object | No | Not specified | None specified |
vocabularies[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
vocabularies[].values | array | Yes | Not specified | None specified |
vocabularies[].values[]Array item | string | No | Not specified | None specified |
modules/<name>/module.yaml
Source preview, pre-1.0
Generated from products/breg/generated/authoring/registry-module.schema.json. 714 key paths. Explained in docs/site/src/content/docs/configure/breg.mdx.
| Key path | Type | Required | Accepted values | Constraints |
|---|---|---|---|---|
actionsNamed Actions introduced by this module. | array | No | Not specified | None specified |
actions[]Array item | object | No | Not specified | None specified |
actions[].apiName | string | No | Not specified | None specified |
actions[].commitGuards | object | No | Not specifiedSchema default, where declared: {"evidence":[],"targets":[]} | None specified |
actions[].commitGuards.evidence | array | No | Not specifiedSchema default, where declared: [] | None specified |
actions[].commitGuards.evidence[]Array item | object | No | Not specified | None specified |
actions[].commitGuards.evidence[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
actions[].commitGuards.evidence[].maximumObservationAgeSeconds | integer | Yes | Not specified |
|
actions[].commitGuards.evidence[].provider | string | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].requirement | string | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].requires | array | No | Not specifiedSchema default, where declared: [] | None specified |
actions[].commitGuards.evidence[].requires[]Array item | object | No | Not specified | None specified |
actions[].commitGuards.evidence[].requires[].atLeast | integer | No | Not specified |
|
actions[].commitGuards.evidence[].requires[].atMost | integer | No | Not specified |
|
actions[].commitGuards.evidence[].requires[].equals | Not specified | No | Not specified | None specified |
actions[].commitGuards.evidence[].requires[].equalsFromInput | string | No | Not specified | None specified |
actions[].commitGuards.evidence[].requires[].output | string | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].subjects | object | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].subjects.*Map value | object | No | Not specified |
|
actions[].commitGuards.evidence[].subjects.*.profile | string | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].subjects.*.selectorsExact governed selector-profile field map. Every profile field must be
present exactly once and no undeclared field is admitted. | object | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].subjects.*.selectors.*Map value | object | No | Not specified |
|
actions[].commitGuards.evidence[].subjects.*.selectors.*.field | string | Conditional | Not specified | None specified |
actions[].commitGuards.evidence[].subjects.*.selectors.*.input | string | Yes | Not specified | None specified |
actions[].commitGuards.evidence[].subjects.*.selectors.*.type | string | Yes |
| None specified |
actions[].commitGuards.targets | array | No | Not specifiedSchema default, where declared: [] | None specified |
actions[].commitGuards.targets[]Array item | object | No | Not specified | None specified |
actions[].commitGuards.targets[].atLeast | integer | No | Not specified |
|
actions[].commitGuards.targets[].atMost | integer | No | Not specified |
|
actions[].commitGuards.targets[].currentDate | string | No |
| None specified |
actions[].commitGuards.targets[].equalsA comparison literal: a boolean, a number, or text. | boolean | number | string | No | Not specified | None specified |
actions[].commitGuards.targets[].equalsFromInput | string | No | Not specified | None specified |
actions[].commitGuards.targets[].field | string | No | Not specifiedSchema default, where declared: "" | None specified |
actions[].commitGuards.targets[].input | string | Yes | Not specified | None specified |
actions[].commitGuards.targets[].isNullRequires the stored value to be unset. Only true is read. | boolean | No |
| None specified |
actions[].commitGuards.targets[].revision | string | No |
| None specified |
actions[].consentIssuerWho an action creates consent rows for. | string | No |
| None specified |
actions[].display | object | No | Not specifiedSchema default, where declared: {} | None specified |
actions[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
actions[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
actions[].display.titleField | string | No | Not specified | None specified |
actions[].evidence | array | No | Not specified | None specified |
actions[].evidence[]Array item | object | No | Not specified | None specified |
actions[].evidence[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
actions[].evidence[].maximumObservationAgeSeconds | integer | Yes | Not specified |
|
actions[].evidence[].outputs | array | Yes | Not specified | None specified |
actions[].evidence[].outputs[]Array item | string | No | Not specified | None specified |
actions[].evidence[].provider | string | Yes | Not specified | None specified |
actions[].evidence[].requirement | string | Yes | Not specified | None specified |
actions[].evidence[].subjects | object | Yes | Not specified | None specified |
actions[].evidence[].subjects.*Map value | object | No | Not specified |
|
actions[].evidence[].subjects.*.profile | string | Yes | Not specified | None specified |
actions[].execution | object | Yes | Not specified | None specified |
actions[].execution.mode | string | Yes |
| None specified |
actions[].execution.proposal | object | Conditional | Not specified | None specified |
actions[].execution.proposal.application | object | Conditional | Not specifiedSchema default, where declared: {"maximumAttempts":3,"mode":"automatic"} | None specified |
actions[].execution.proposal.application.maximumAttempts | integer | Conditional | Not specifiedSchema default, where declared: 3 |
|
actions[].execution.proposal.application.mode | string | Conditional |
| None specified |
actions[].execution.proposal.attachments | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
actions[].execution.proposal.attachments[]Array item | object | Conditional | Not specified | None specified |
actions[].execution.proposal.attachments[].classification | string | Conditional |
| None specified |
actions[].execution.proposal.attachments[].contentTypes | array | Conditional | Not specified | None specified |
actions[].execution.proposal.attachments[].contentTypes[]Array item | string | Conditional | Not specified | None specified |
actions[].execution.proposal.attachments[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.attachments[].maximumBytes | integer | Conditional | Not specified |
|
actions[].execution.proposal.attachments[].required | boolean | Conditional | Not specified | None specified |
actions[].execution.proposal.hooksPost-commit observers of the fixed, value-free Proposal lifecycle event. | array | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[]Array item | object | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].displayAuthored presentation only; labels never establish identity or authority. | object | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handlerWhere a hook's handler runs.
The pairing rule: rhai requires script, wasm requires module,
url requires destinationId, and each
kind requires exactly its own fields and nothing else. abi is required on
rhai and wasm and forbidden on url; its value is closed and checked at
compile time in [crate::validate_hooks]. | object | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handler.abiFor rhai: The handler ABI the script speaks. For wasm: The handler ABI the module speaks. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handler.destinationIdKey in the runtime destination binding. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handler.moduleModule path in the project. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handler.scriptScript path in the project. | string | Conditional | Not specified | None specified |
actions[].execution.proposal.hooks[].handler.type | string | Conditional |
| None specified |
actions[].execution.proposal.hooks[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.hooks[].transitionsOmit to observe every committed lifecycle transition. | array | Conditional | Not specified |
|
actions[].execution.proposal.hooks[].transitions[]Array item | string | Conditional |
| None specified |
actions[].execution.proposal.retention | object | Conditional | Not specified | None specified |
actions[].execution.proposal.retention.mode | string | Conditional |
| None specified |
actions[].execution.proposal.review | object | Conditional | Not specified | None specified |
actions[].execution.proposal.review.authority | string | Conditional | Not specified | None specified |
actions[].execution.proposal.review.policy | object | Conditional | Not specified | None specified |
actions[].execution.proposal.review.policy.digestA SHA-256 digest: sha256: followed by 64 lowercase hex digits. | string | Conditional | Not specified |
|
actions[].execution.proposal.review.policy.idAn identifier another system issues, written exactly as its issuer gives it. | string | Conditional | Not specified |
|
actions[].execution.proposal.review.policy.version | string | Conditional | Not specified | None specified |
actions[].execution.proposal.review.source | string | Conditional | Not specified | None specified |
actions[].execution.proposal.review.type | string | Conditional |
| None specified |
actions[].execution.proposal.reviewContext | object | Conditional | Not specified | None specified |
actions[].execution.proposal.reviewContext.fields | object | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*Map value | object | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*.fieldA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*.fields | array | Conditional | Not specified | None specified |
actions[].execution.proposal.reviewContext.fields.*.fields[]Array item | string | Conditional | Not specified | None specified |
actions[].execution.proposal.reviewContext.fields.*.inputA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*.recordTypeA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*.slotA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].execution.proposal.reviewContext.fields.*.type | string | Conditional |
| None specified |
actions[].execution.proposal.reviewContext.idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
actions[].inputs | array | No | Not specifiedSchema default, where declared: [] | None specified |
actions[].inputs[]Array item | object | No | Not specified | None specified |
actions[].inputs[].apiName | string | No | Not specified | None specified |
actions[].inputs[].bbox | object | Conditional | Not specified | None specified |
actions[].inputs[].bbox.east | string | Conditional | Not specified | None specified |
actions[].inputs[].bbox.north | string | Conditional | Not specified | None specified |
actions[].inputs[].bbox.south | string | Conditional | Not specified | None specified |
actions[].inputs[].bbox.west | string | Conditional | Not specified | None specified |
actions[].inputs[].classification | string | Yes |
| None specified |
actions[].inputs[].display | object | No | Not specifiedSchema default, where declared: {} | None specified |
actions[].inputs[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
actions[].inputs[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
actions[].inputs[].display.titleField | string | No | Not specified | None specified |
actions[].inputs[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
actions[].inputs[].maximum | string | Conditional | Not specified | None specified |
actions[].inputs[].maximumBytes | integer | Conditional | Not specified |
|
actions[].inputs[].maximumLength | integer | Conditional | Not specified |
or
|
actions[].inputs[].minimum | string | Conditional | Not specified | None specified |
actions[].inputs[].minimumLength | integer | Conditional | Not specifiedSchema default, where declared: 0 |
|
actions[].inputs[].onDelete | string | Conditional |
"restrict" | None specified |
actions[].inputs[].precision | integer | Conditional | Not specified |
or
|
actions[].inputs[].required | boolean | No | Not specifiedSchema default, where declared: false | None specified |
actions[].inputs[].scale | integer | Conditional | Not specified |
|
actions[].inputs[].schema | Not specified | Conditional | Not specified | None specified |
actions[].inputs[].target | string | Conditional | Not specified | None specified |
actions[].inputs[].type | string | Conditional |
| None specified |
actions[].inputs[].typeRefA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].inputs[].values | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
actions[].inputs[].values[]Array item | string | Conditional | Not specified | None specified |
actions[].inputs[].vocabulary | string | Conditional | Not specified | None specified |
actions[].plan | object | Yes | Not specified | None specified |
actions[].plan.capabilities | array | Conditional | Not specifiedSchema default, where declared: [] |
|
actions[].plan.capabilities[]Array item | string | Conditional | Not specified | None specified |
actions[].plan.effects | array | Conditional | Not specified | None specified |
actions[].plan.effects[]Array item | object | Conditional | Not specified | None specified |
actions[].plan.effects[].clear | array | Conditional | Not specifiedSchema default, where declared: [] |
|
actions[].plan.effects[].clear[]Array item | string | Conditional | Not specified | None specified |
actions[].plan.effects[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].plan.effects[].operationCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | Conditional |
| None specified |
actions[].plan.effects[].set | object | Conditional | Not specifiedSchema default, where declared: {} | None specified |
actions[].plan.effects[].set.*Map value | object | Conditional | Not specified |
|
actions[].plan.effects[].set.*.fromEffect | string | Conditional | Not specified | None specified |
actions[].plan.effects[].set.*.fromInput | string | Conditional | Not specified | None specified |
actions[].plan.effects[].set.*.value | Not specified | Conditional | Not specified | None specified |
actions[].plan.effects[].target | object | Conditional | Not specified | None specified |
actions[].plan.effects[].target.fromInput | string | Conditional | Not specified | None specified |
actions[].plan.effects[].target.recordType | string | Conditional | Not specified | None specified |
actions[].plan.function | string | Conditional | Not specified | None specified |
actions[].plan.inputs | array | Conditional | Not specified | None specified |
actions[].plan.inputs[]Array item | string | Conditional | Not specified | None specified |
actions[].plan.refusals | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
actions[].plan.refusals[]Array item | object | Conditional | Not specified | None specified |
actions[].plan.refusals[].code | string | Conditional | Not specified | None specified |
actions[].plan.refusals[].labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Conditional | Not specified | None specified |
actions[].plan.type | string | Yes |
| None specified |
actions[].plan.writes | array | Conditional | Not specified | None specified |
actions[].plan.writes[]Array item | object | Conditional | Not specified | None specified |
actions[].plan.writes[].fields | array | Conditional | Not specified | None specified |
actions[].plan.writes[].fields[]Array item | string | Conditional | Not specified | None specified |
actions[].plan.writes[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
actions[].plan.writes[].operationCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | Conditional |
| None specified |
actions[].plan.writes[].target | object | Conditional | Not specified | None specified |
actions[].plan.writes[].target.fromInput | string | Conditional | Not specified | None specified |
actions[].plan.writes[].target.recordType | string | Conditional | Not specified | None specified |
apiVersion | string | Yes |
| None specified |
dependenciesIdentifiers of modules that must be applied before this module. | array | No | Not specifiedSchema default, where declared: [] | None specified |
dependencies[]Array item | string | No | Not specified | None specified |
extendRecordTypesAdditive contributions to entities already declared by the project or another module. | array | No | Not specifiedSchema default, where declared: [] | None specified |
extendRecordTypes[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].accessProfilesModule profile contributions, read through the sentinels a project profile uses. | array | No | Not specifiedSchema default, where declared: [] | None specified |
extendRecordTypes[].accessProfiles[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].actorKind | string | No |
| None specified |
extendRecordTypes[].accessProfiles[].allowCount | boolean | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].allowDataExport | boolean | No | Not specifiedSchema default, where declared: false | None specified |
extendRecordTypes[].accessProfiles[].default | boolean | No | Not specifiedSchema default, where declared: false | None specified |
extendRecordTypes[].accessProfiles[].displayAuthored words for an object without a Record's title-field selection. | object | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].filterableFields | array | No | Not specifiedSchema default, where declared: [] |
|
extendRecordTypes[].accessProfiles[].filterableFields[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
extendRecordTypes[].accessProfiles[].lookups | array | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].lookups[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].lookups[].claimMapping | object | No | Not specifiedSchema default, where declared: {} | None specified |
extendRecordTypes[].accessProfiles[].lookups[].claimMapping.*Map value | string | No | Not specified |
|
extendRecordTypes[].accessProfiles[].lookups[].selector | string | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].lookups[].valueOrigin | string | Yes |
| None specified |
extendRecordTypes[].accessProfiles[].membershipBoundaries | array | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].membershipBoundaries[]Array itemA one-hop current membership requirement, combined with every other row boundary.
The root field and membership key must reference the same entity. The active
field is Boolean, and principalField matches the profile's verified principal. | object | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].membershipBoundaries[].activeField | string | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].membershipBoundaries[].field | string | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].membershipBoundaries[].membershipKeyField | string | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].membershipBoundaries[].membershipRecordType | string | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].membershipBoundaries[].principalField | string | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].operations | array | Yes | Not specified |
|
extendRecordTypes[].accessProfiles[].operations[]Array itemCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | No |
| None specified |
extendRecordTypes[].accessProfiles[].principalClaimThe token claim that names the caller. Every profile serves authenticated callers, so every profile names one. | string | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].provenanceFields | array | No | Not specified |
|
extendRecordTypes[].accessProfiles[].provenanceFields[]Array itemA member of a revision's changeContext a profile may read. Each value
is spelled as the member it names is (CFG-NAME-2). | string | No |
| None specified |
extendRecordTypes[].accessProfiles[].readPaths | array | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].readPaths[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].readPaths[].allowCount | boolean | No | Not specifiedSchema default, where declared: false | None specified |
extendRecordTypes[].accessProfiles[].readPaths[].filterableFields | array | No | Not specifiedSchema default, where declared: [] |
|
extendRecordTypes[].accessProfiles[].readPaths[].filterableFields[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].readPaths[].path | string | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].readPaths[].readableFields | array | No | Not specifiedSchema default, where declared: [] |
|
extendRecordTypes[].accessProfiles[].readPaths[].readableFields[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].readPaths[].sortableFields | array | No | Not specifiedSchema default, where declared: [] |
|
extendRecordTypes[].accessProfiles[].readPaths[].sortableFields[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].readableFields | array | No | Not specifiedSchema default, where declared: [] |
|
extendRecordTypes[].accessProfiles[].readableFields[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].requesterClientsThe OAuth clients whose tokens may select this profile. Omit to accept every client. | array | No | Not specified |
|
extendRecordTypes[].accessProfiles[].requesterClients[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].requireConsent | array | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].requireConsent[]Array itemA consent check ANDed into one read permission. | object | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].requireConsent[].onThe permission entity's field the consent subject references; id is
the row's own identity. | string | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].requireConsent[].recordThe consent-record entity checked. | string | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].requiredPurposesThe verified token's purpose must match one listed value. Omit to accept every purpose. | array | No | Not specified |
|
extendRecordTypes[].accessProfiles[].requiredPurposes[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].requiredScopesThe scopes the verified token must carry: unrestricted, or a list of at least one scope, all of which must be present. | array | string | Yes |
| No bound or
|
extendRecordTypes[].accessProfiles[].requiredScopes[]Array item | string | Conditional | Not specified | None specified |
extendRecordTypes[].accessProfiles[].revisionAccess | boolean | No | Not specifiedSchema default, where declared: false | None specified |
extendRecordTypes[].accessProfiles[].rowBoundariesRow reach: unrestricted, or a list of at least one row boundary. | array | string | Yes |
| No bound or
|
extendRecordTypes[].accessProfiles[].rowBoundaries[]Array item | object | Conditional | Not specified | None specified |
extendRecordTypes[].accessProfiles[].rowBoundaries[].claim | string | Conditional | Not specified | None specified |
extendRecordTypes[].accessProfiles[].rowBoundaries[].field | string | Conditional | Not specified | None specified |
extendRecordTypes[].accessProfiles[].rowBoundaries[].operator | string | Conditional |
| None specified |
extendRecordTypes[].accessProfiles[].sortableFields | array | No | Not specifiedSchema default, where declared: [] |
|
extendRecordTypes[].accessProfiles[].sortableFields[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].spatialQueries | object | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].spatialQueries.bbox | object | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].spatialQueries.bbox.maximumLatitudeSpanDegrees | number | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].spatialQueries.bbox.maximumLongitudeSpanDegrees | number | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].taskGrant | object | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].taskGrant.permissions | array | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].taskGrant.permissions[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].accessProfiles[].taskGrant.permissions[].collection | string | Yes | Not specified | None specified |
extendRecordTypes[].accessProfiles[].taskGrant.permissions[].operations | array | Yes | Not specified |
|
extendRecordTypes[].accessProfiles[].taskGrant.permissions[].operations[]Array itemCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | No |
| None specified |
extendRecordTypes[].accessProfiles[].taskGrant.sourceIssuerAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | Yes | Not specified |
|
extendRecordTypes[].accessProfiles[].writableFields | array | No | Not specifiedSchema default, where declared: [] |
|
extendRecordTypes[].accessProfiles[].writableFields[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].accessRequirementsAdd mandatory requirements only when the entity has none; replacing them is refused. | object | No | Not specified | None specified |
extendRecordTypes[].accessRequirements.allowedPurposesEvery profile must restrict purpose to a subset of these values. Omit to demand no purpose. | array | No | Not specified |
|
extendRecordTypes[].accessRequirements.allowedPurposes[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].accessRequirements.requiredScopesEvery profile must require all these scopes. Requirements never grant access. Omit to demand no scope. | array | No | Not specified |
|
extendRecordTypes[].accessRequirements.requiredScopes[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].accessRequirements.rowBoundariesEvery profile must include these exact field, verified-claim, and operator bindings. Omit to demand no row boundary. | array | No | Not specified |
|
extendRecordTypes[].accessRequirements.rowBoundaries[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].accessRequirements.rowBoundaries[].claim | string | Yes | Not specified | None specified |
extendRecordTypes[].accessRequirements.rowBoundaries[].field | string | Yes | Not specified | None specified |
extendRecordTypes[].accessRequirements.rowBoundaries[].operator | string | Yes |
| None specified |
extendRecordTypes[].constraints | array | No | Not specifiedSchema default, where declared: [] | None specified |
extendRecordTypes[].constraints[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].constraints[].endField | string | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].field | string | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].fields | array | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].fields[]Array item | string | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | No | Not specified |
|
extendRecordTypes[].constraints[].left | string | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].maximum | integer | Conditional | Not specified |
|
extendRecordTypes[].constraints[].minimum | integer | Conditional | Not specified |
|
extendRecordTypes[].constraints[].operator | string | Conditional |
| None specified |
extendRecordTypes[].constraints[].right | string | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].scopeFields | array | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].scopeFields[]Array item | string | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].startField | string | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].type | string | Yes |
| None specified |
extendRecordTypes[].constraints[].values | array | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].values[]Array item | string | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].when | array | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].when[]Array item | object | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].when[].field | string | Conditional | Not specified | None specified |
extendRecordTypes[].constraints[].when[].type | string | Conditional |
| None specified |
extendRecordTypes[].constraints[].when[].value | Not specified | Conditional | Not specified | None specified |
extendRecordTypes[].derived | array | No | Not specified | None specified |
extendRecordTypes[].derived[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].derived[].execution | string | No |
"live" | None specified |
extendRecordTypes[].derived[].fields | array | No | Not specifiedSchema default, where declared: [] | None specified |
extendRecordTypes[].derived[].fields[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].derived[].fields[].apiName | string | No | Not specified | None specified |
extendRecordTypes[].derived[].fields[].bbox | object | Conditional | Not specified | None specified |
extendRecordTypes[].derived[].fields[].bbox.east | string | Conditional | Not specified | None specified |
extendRecordTypes[].derived[].fields[].bbox.north | string | Conditional | Not specified | None specified |
extendRecordTypes[].derived[].fields[].bbox.south | string | Conditional | Not specified | None specified |
extendRecordTypes[].derived[].fields[].bbox.west | string | Conditional | Not specified | None specified |
extendRecordTypes[].derived[].fields[].classification | string | Yes |
| None specified |
extendRecordTypes[].derived[].fields[].display | object | No | Not specified | None specified |
extendRecordTypes[].derived[].fields[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
extendRecordTypes[].derived[].fields[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
extendRecordTypes[].derived[].fields[].display.titleField | string | No | Not specified | None specified |
extendRecordTypes[].derived[].fields[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
extendRecordTypes[].derived[].fields[].maximum | string | Conditional | Not specified | None specified |
extendRecordTypes[].derived[].fields[].maximumBytes | integer | Conditional | Not specified |
|
extendRecordTypes[].derived[].fields[].maximumLength | integer | Conditional | Not specified |
or
|
extendRecordTypes[].derived[].fields[].minimum | string | Conditional | Not specified | None specified |
extendRecordTypes[].derived[].fields[].minimumLength | integer | Conditional | Not specifiedSchema default, where declared: 0 |
|
extendRecordTypes[].derived[].fields[].onDelete | string | Conditional |
"restrict" | None specified |
extendRecordTypes[].derived[].fields[].precision | integer | Conditional | Not specified |
or
|
extendRecordTypes[].derived[].fields[].scale | integer | Conditional | Not specified |
|
extendRecordTypes[].derived[].fields[].schema | Not specified | Conditional | Not specified | None specified |
extendRecordTypes[].derived[].fields[].target | string | Conditional | Not specified | None specified |
extendRecordTypes[].derived[].fields[].type | string | Yes |
| None specified |
extendRecordTypes[].derived[].fields[].values | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
extendRecordTypes[].derived[].fields[].values[]Array item | string | Conditional | Not specified | None specified |
extendRecordTypes[].derived[].fields[].vocabulary | string | Conditional | Not specified | None specified |
extendRecordTypes[].derived[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
extendRecordTypes[].derived[].key | string | Yes | Not specified | None specified |
extendRecordTypes[].derived[].sql | string | Yes | Not specified | None specified |
extendRecordTypes[].fields | array | No | Not specifiedSchema default, where declared: [] | None specified |
extendRecordTypes[].fields[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].fields[].apiName | string | No | Not specified | None specified |
extendRecordTypes[].fields[].bbox | object | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].bbox.east | string | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].bbox.north | string | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].bbox.south | string | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].bbox.west | string | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].classification | string | Yes |
| None specified |
extendRecordTypes[].fields[].display | object | No | Not specified | None specified |
extendRecordTypes[].fields[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
extendRecordTypes[].fields[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
extendRecordTypes[].fields[].display.titleField | string | No | Not specified | None specified |
extendRecordTypes[].fields[].encrypted | boolean | Conditional | Not specifiedSchema default, where declared: false | None specified |
extendRecordTypes[].fields[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
extendRecordTypes[].fields[].lookupThe authored blind-index declaration for an encrypted field. Normalization
composes in declared order over the canonical string form of the value;
unique requests a unique index over the derived blind-index column. | object | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].lookup.normalization | array | Conditional | Not specifiedSchema default, where declared: [] |
|
extendRecordTypes[].fields[].lookup.normalization[]Array itemA normalization step applied to the canonical string form of an encrypted
value before its blind index is derived. The vocabulary is closed. | string | Conditional |
| None specified |
extendRecordTypes[].fields[].lookup.unique | boolean | Conditional | Not specifiedSchema default, where declared: false | None specified |
extendRecordTypes[].fields[].maximum | string | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].maximumBytes | integer | Conditional | Not specified |
|
extendRecordTypes[].fields[].maximumLength | integer | Conditional | Not specified |
or
|
extendRecordTypes[].fields[].minimum | string | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].minimumLength | integer | Conditional | Not specifiedSchema default, where declared: 0 |
|
extendRecordTypes[].fields[].onDelete | string | Conditional |
"restrict" | None specified |
extendRecordTypes[].fields[].pattern | string | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].precision | integer | Conditional | Not specified |
or
|
extendRecordTypes[].fields[].relationship | object | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].relationship.inverseName | string | Conditional | Not specified |
|
extendRecordTypes[].fields[].required | boolean | No | Not specifiedSchema default, where declared: false | None specified |
extendRecordTypes[].fields[].scale | integer | Conditional | Not specified |
|
extendRecordTypes[].fields[].schema | Not specified | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].target | string | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].type | string | Conditional |
| None specified |
extendRecordTypes[].fields[].typeRefA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
extendRecordTypes[].fields[].validTimeRole | string | No |
| None specified |
extendRecordTypes[].fields[].values | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
extendRecordTypes[].fields[].values[]Array item | string | Conditional | Not specified | None specified |
extendRecordTypes[].fields[].vocabulary | string | Conditional | Not specified | None specified |
extendRecordTypes[].geojson | object | No | Not specified | None specified |
extendRecordTypes[].geojson.geometryField | string | Yes | Not specified | None specified |
extendRecordTypes[].hooks | array | No | Not specifiedSchema default, where declared: [] | None specified |
extendRecordTypes[].hooks[]Array itemOne declared hook on an entity.
The shape is [registry_platform_hooks::HookDeclaration] with trigger
and when closed to the vocabulary this compiler validates, and with
handler optional. A hook that declares no handler is still recorded in
the outbox and delivered nowhere; production compilation refuses that.
Entity hooks run after the triggering transaction commits, so phase is
written and the compiler refuses any value it cannot run. | object | No | Not specified | None specified |
extendRecordTypes[].hooks[].displayAuthored presentation only; labels never establish identity or authority. | object | No | Not specified | None specified |
extendRecordTypes[].hooks[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
extendRecordTypes[].hooks[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
extendRecordTypes[].hooks[].handlerGoverned, destination-neutral delivery. destinationId is a key in
runtime eventDestinations; the project carries no URL or secret, and
deployment configuration may tighten the bounds it binds but cannot
supply or widen this authority. Production compilation requires it. | object | No | Not specified | None specified |
extendRecordTypes[].hooks[].handler.abiFor rhai: The handler ABI the script speaks. For wasm: The handler ABI the module speaks. | string | Conditional | Not specified | None specified |
extendRecordTypes[].hooks[].handler.destinationIdKey in the runtime destination binding. | string | Conditional | Not specified | None specified |
extendRecordTypes[].hooks[].handler.moduleModule path in the project. | string | Conditional | Not specified | None specified |
extendRecordTypes[].hooks[].handler.scriptScript path in the project. | string | Conditional | Not specified | None specified |
extendRecordTypes[].hooks[].handler.type | string | Yes |
| None specified |
extendRecordTypes[].hooks[].idStable hook contract identifier, sent as ce-type. Use a new identifier for a breaking payload change. | string | Yes | Not specified |
|
extendRecordTypes[].hooks[].phaseWhen the hook runs relative to the triggering transaction. | string | Yes |
| None specified |
extendRecordTypes[].hooks[].principalThe access profile a proposal from this hook is applied under.
Optional: a hook that declares none is a non-proposing hook, and a
proposal from one is refused and dead-lettered at delivery time.
Declaring none is not an authoring error. | string | No | Not specified | None specified |
extendRecordTypes[].hooks[].projectionDeclared field identifiers to include in values. System event metadata is included separately. | array | Yes | Not specified |
|
extendRecordTypes[].hooks[].projection[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].hooks[].triggerCommitted record change that can produce this hook. | string | Yes |
| None specified |
extendRecordTypes[].hooks[].whenOptional field tests, combined with AND. Omit to run on every matching trigger. | object | No | Not specified | None specified |
extendRecordTypes[].hooks[].when.afterEqualsRequired values after the change. Valid with created and patched triggers. | object | No | Not specifiedSchema default, where declared: {} | None specified |
extendRecordTypes[].hooks[].when.afterEquals.*Map valueA comparison literal: a boolean, a number, or text. | boolean | number | string | No | Not specified |
|
extendRecordTypes[].hooks[].when.afterIsNullFields that must be unset after the change. Valid with created and patched triggers. | array | No | Not specifiedSchema default, where declared: [] |
|
extendRecordTypes[].hooks[].when.afterIsNull[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].hooks[].when.beforeEqualsRequired values before the change. Valid with patched and tombstoned triggers. | object | No | Not specifiedSchema default, where declared: {} | None specified |
extendRecordTypes[].hooks[].when.beforeEquals.*Map valueA comparison literal: a boolean, a number, or text. | boolean | number | string | No | Not specified |
|
extendRecordTypes[].hooks[].when.beforeIsNullFields that must be unset before the change. Valid with patched and tombstoned triggers. | array | No | Not specifiedSchema default, where declared: [] |
|
extendRecordTypes[].hooks[].when.beforeIsNull[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].hooks[].when.changedFields whose values must change. Only valid with the patched trigger. | array | No | Not specifiedSchema default, where declared: [] |
|
extendRecordTypes[].hooks[].when.changed[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].hooks[].when.type | string | Yes |
| None specified |
extendRecordTypes[].indexes | array | No | Not specifiedSchema default, where declared: [] | None specified |
extendRecordTypes[].indexes[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].indexes[].fields | array | Yes | Not specified |
|
extendRecordTypes[].indexes[].fields[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].indexes[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
extendRecordTypes[].mutationPolicy | object | No | Not specified | None specified |
extendRecordTypes[].mutationPolicy.create | string | No |
| None specified |
extendRecordTypes[].mutationPolicy.patch | string | No |
| None specified |
extendRecordTypes[].mutationPolicy.tombstone | string | No |
| None specified |
extendRecordTypes[].readPaths | array | No | Not specified | None specified |
extendRecordTypes[].readPaths[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].readPaths[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
extendRecordTypes[].readPaths[].route | string | Yes | Not specified | None specified |
extendRecordTypes[].readPaths[].through | string | Yes | Not specified | None specified |
extendRecordTypes[].readPaths[].to | string | Yes | Not specified | None specified |
extendRecordTypes[].recordType | string | Yes | Not specified | None specified |
extendRecordTypes[].selectorProfiles | array | No | Not specified | None specified |
extendRecordTypes[].selectorProfiles[]Array item | object | No | Not specified | None specified |
extendRecordTypes[].selectorProfiles[].fields | array | Yes | Not specified | None specified |
extendRecordTypes[].selectorProfiles[].fields[]Array item | string | No | Not specified | None specified |
extendRecordTypes[].selectorProfiles[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
functions | array | No | Not specifiedSchema default, where declared: [] | None specified |
functions[]Array item | object | No | Not specified | None specified |
functions[].abi | string | Yes |
| None specified |
functions[].capabilities | array | No | Not specifiedSchema default, where declared: [] |
|
functions[].capabilities[]Array item | string | No | Not specified | None specified |
functions[].entrypoint | string | Yes | Not specified | None specified |
functions[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
functions[].limits | object | No | Not specifiedSchema default, where declared: {"maximumOperations":10000,"maximumOutputBytes":8192} | None specified |
functions[].limits.maximumOperations | integer | No | Not specifiedSchema default, where declared: 10000 |
|
functions[].limits.maximumOutputBytes | integer | No | Not specifiedSchema default, where declared: 8192 |
|
functions[].runtimeThe authored action-handler backend. The wasm backend is admitted when
this build of the compiler carries the wasm cargo feature, which
validates a declared WASM handler module against the platform guest
ABI at compile time; without that feature a declared WASM handler is
refused with the pinned breg.action.handler-wasm-build-unsupported
diagnostic. | string | Yes |
| None specified |
functions[].source | string | Yes | Not specified | None specified |
idStable module identifier, referenced by the project's module lock. | string | Yes | Not specified |
|
kind | string | Yes |
| None specified |
recordTypesRecord types introduced by this module. | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[]Array item | object | No | Not specified | None specified |
recordTypes[].accessLogSubject-facing record access history, separate from the operational audit. | object | No | Not specified | None specified |
recordTypes[].accessLog.exemptionsAccess profiles whose entries become subject-visible only after a policy delay. | object | No | Not specified |
|
recordTypes[].accessLog.exemptions.*Map valueDelayed subject disclosure for reads under one access profile. | object | No | Not specified |
|
recordTypes[].accessLog.exemptions.*.delayDaysDays after the read when the entry becomes visible to the subject. | integer | Yes | Not specified |
|
recordTypes[].accessLog.exemptions.*.reasonBounded policy reason retained and audited with each delayed entry. | string | Yes | Not specified |
|
recordTypes[].accessLog.exemptions.*.sourceRecordTypeRecord type whose access profile authorizes the read. Omitted for direct reads of the logged record type. | string | No | Not specified |
|
recordTypes[].accessLog.retentionDaysDays each entry remains available before bounded background erasure. | integer | No | Not specifiedSchema default, where declared: 90 |
|
recordTypes[].accessLog.subjectFieldRequired plaintext string or text field matched to the subject's verified principal. | string | Yes | Not specified |
|
recordTypes[].accessLog.trustedIntermediariesVerified intermediary client IDs allowed to forward original requester attribution. | array | No | Not specified |
|
recordTypes[].accessLog.trustedIntermediaries[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfilesModule profile contributions, read through the sentinels a project profile uses. | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].accessProfiles[]Array item | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].actorKind | string | No |
| None specified |
recordTypes[].accessProfiles[].allowCount | boolean | No | Not specified | None specified |
recordTypes[].accessProfiles[].allowDataExport | boolean | No | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].accessProfiles[].default | boolean | No | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].accessProfiles[].displayAuthored words for an object without a Record's title-field selection. | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].filterableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].filterableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].accessProfiles[].lookups | array | No | Not specified | None specified |
recordTypes[].accessProfiles[].lookups[]Array item | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].lookups[].claimMapping | object | No | Not specifiedSchema default, where declared: {} | None specified |
recordTypes[].accessProfiles[].lookups[].claimMapping.*Map value | string | No | Not specified |
|
recordTypes[].accessProfiles[].lookups[].selector | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].lookups[].valueOrigin | string | Yes |
| None specified |
recordTypes[].accessProfiles[].membershipBoundaries | array | No | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[]Array itemA one-hop current membership requirement, combined with every other row boundary.
The root field and membership key must reference the same entity. The active
field is Boolean, and principalField matches the profile's verified principal. | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[].activeField | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[].field | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[].membershipKeyField | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[].membershipRecordType | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].membershipBoundaries[].principalField | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].operations | array | Yes | Not specified |
|
recordTypes[].accessProfiles[].operations[]Array itemCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | No |
| None specified |
recordTypes[].accessProfiles[].principalClaimThe token claim that names the caller. Every profile serves authenticated callers, so every profile names one. | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].provenanceFields | array | No | Not specified |
|
recordTypes[].accessProfiles[].provenanceFields[]Array itemA member of a revision's changeContext a profile may read. Each value
is spelled as the member it names is (CFG-NAME-2). | string | No |
| None specified |
recordTypes[].accessProfiles[].readPaths | array | No | Not specified | None specified |
recordTypes[].accessProfiles[].readPaths[]Array item | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].readPaths[].allowCount | boolean | No | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].accessProfiles[].readPaths[].filterableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].readPaths[].filterableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].readPaths[].path | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].readPaths[].readableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].readPaths[].readableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].readPaths[].sortableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].readPaths[].sortableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].readableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].readableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].requesterClientsThe OAuth clients whose tokens may select this profile. Omit to accept every client. | array | No | Not specified |
|
recordTypes[].accessProfiles[].requesterClients[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].requireConsent | array | No | Not specified | None specified |
recordTypes[].accessProfiles[].requireConsent[]Array itemA consent check ANDed into one read permission. | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].requireConsent[].onThe permission entity's field the consent subject references; id is
the row's own identity. | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].requireConsent[].recordThe consent-record entity checked. | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].requiredPurposesThe verified token's purpose must match one listed value. Omit to accept every purpose. | array | No | Not specified |
|
recordTypes[].accessProfiles[].requiredPurposes[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].requiredScopesThe scopes the verified token must carry: unrestricted, or a list of at least one scope, all of which must be present. | array | string | Yes |
| No bound or
|
recordTypes[].accessProfiles[].requiredScopes[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].accessProfiles[].revisionAccess | boolean | No | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].accessProfiles[].rowBoundariesRow reach: unrestricted, or a list of at least one row boundary. | array | string | Yes |
| No bound or
|
recordTypes[].accessProfiles[].rowBoundaries[]Array item | object | Conditional | Not specified | None specified |
recordTypes[].accessProfiles[].rowBoundaries[].claim | string | Conditional | Not specified | None specified |
recordTypes[].accessProfiles[].rowBoundaries[].field | string | Conditional | Not specified | None specified |
recordTypes[].accessProfiles[].rowBoundaries[].operator | string | Conditional |
| None specified |
recordTypes[].accessProfiles[].sortableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].sortableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessProfiles[].spatialQueries | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].spatialQueries.bbox | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].spatialQueries.bbox.maximumLatitudeSpanDegrees | number | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].spatialQueries.bbox.maximumLongitudeSpanDegrees | number | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].taskGrant | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].taskGrant.permissions | array | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].taskGrant.permissions[]Array item | object | No | Not specified | None specified |
recordTypes[].accessProfiles[].taskGrant.permissions[].collection | string | Yes | Not specified | None specified |
recordTypes[].accessProfiles[].taskGrant.permissions[].operations | array | Yes | Not specified |
|
recordTypes[].accessProfiles[].taskGrant.permissions[].operations[]Array itemCreate records through a durable ingestion run, and nothing else. The
grant is enabled only while an operator-opened import authority is open
for the entity and profile. It declares no item route and no raw batch
route, and change control does not count it as a direct write. | string | No |
| None specified |
recordTypes[].accessProfiles[].taskGrant.sourceIssuerAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | Yes | Not specified |
|
recordTypes[].accessProfiles[].writableFields | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].accessProfiles[].writableFields[]Array item | string | No | Not specified | None specified |
recordTypes[].accessRequirementsMandatory request-access requirements checked against every profile, including module contributions. | object | No | Not specified | None specified |
recordTypes[].accessRequirements.allowedPurposesEvery profile must restrict purpose to a subset of these values. Omit to demand no purpose. | array | No | Not specified |
|
recordTypes[].accessRequirements.allowedPurposes[]Array item | string | No | Not specified | None specified |
recordTypes[].accessRequirements.requiredScopesEvery profile must require all these scopes. Requirements never grant access. Omit to demand no scope. | array | No | Not specified |
|
recordTypes[].accessRequirements.requiredScopes[]Array item | string | No | Not specified | None specified |
recordTypes[].accessRequirements.rowBoundariesEvery profile must include these exact field, verified-claim, and operator bindings. Omit to demand no row boundary. | array | No | Not specified |
|
recordTypes[].accessRequirements.rowBoundaries[]Array item | object | No | Not specified | None specified |
recordTypes[].accessRequirements.rowBoundaries[].claim | string | Yes | Not specified | None specified |
recordTypes[].accessRequirements.rowBoundaries[].field | string | Yes | Not specified | None specified |
recordTypes[].accessRequirements.rowBoundaries[].operator | string | Yes |
| None specified |
recordTypes[].apiName | string | No | Not specified | None specified |
recordTypes[].batch | object | No | Not specified | None specified |
recordTypes[].batch.maximumBytes | integer | Yes | Not specified |
|
recordTypes[].batch.maximumItems | integer | Yes | Not specified |
|
recordTypes[].classification | string | No |
"internal" | None specified |
recordTypes[].consentRecordDeclares this entity's rows as subject-issued consent decisions that
requireConsent permissions check before returning a subject's row. | object | No | Not specified | None specified |
recordTypes[].consentRecord.decisionMaps the adopter's decision codes onto the engine's decision sets. | object | Yes | Not specified | None specified |
recordTypes[].consentRecord.decision.field | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.decision.givesCodes that give consent. | array | Yes | Not specified | None specified |
recordTypes[].consentRecord.decision.gives[]Array item | string | No | Not specified | None specified |
recordTypes[].consentRecord.decision.refusalsRevoke codes never shown to recipients. | array | No | Not specified | None specified |
recordTypes[].consentRecord.decision.refusals[]Array item | string | No | Not specified | None specified |
recordTypes[].consentRecord.decision.revokesCodes that supersede every give on the same key ordered no later. | array | Yes | Not specified | None specified |
recordTypes[].consentRecord.decision.revokes[]Array item | string | No | Not specified | None specified |
recordTypes[].consentRecord.purposeA vocabulary-code field compared with the verified request purpose. | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.recipientA vocabulary-code field bound to registry-recipients. | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.scopeA vocabulary-code field bound to registry-consent-scopes. | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.subjectA reference field naming the protected subject row. | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.validityValidity of a consent decision. Every give expires within
maximumDurationDays. | object | Yes | Not specified | None specified |
recordTypes[].consentRecord.validity.fromA required timestamp field; a give is active only from this time. | string | Yes | Not specified | None specified |
recordTypes[].consentRecord.validity.maximumDurationDaysThe longest a give lasts, in whole days of 24 hours: at most 3652,
ten years. | integer | Yes | Not specified |
|
recordTypes[].consentRecord.validity.untilAn optional timestamp field ending the give earlier than
maximumDurationDays. | string | No | Not specified | None specified |
recordTypes[].constraints | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].constraints[]Array item | object | No | Not specified | None specified |
recordTypes[].constraints[].endField | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].field | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].fields | array | Conditional | Not specified | None specified |
recordTypes[].constraints[].fields[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | No | Not specified |
|
recordTypes[].constraints[].left | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].maximum | integer | Conditional | Not specified |
|
recordTypes[].constraints[].minimum | integer | Conditional | Not specified |
|
recordTypes[].constraints[].operator | string | Conditional |
| None specified |
recordTypes[].constraints[].right | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].scopeFields | array | Conditional | Not specified | None specified |
recordTypes[].constraints[].scopeFields[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].startField | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].type | string | Yes |
| None specified |
recordTypes[].constraints[].values | array | Conditional | Not specified | None specified |
recordTypes[].constraints[].values[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].when | array | Conditional | Not specified | None specified |
recordTypes[].constraints[].when[]Array item | object | Conditional | Not specified | None specified |
recordTypes[].constraints[].when[].field | string | Conditional | Not specified | None specified |
recordTypes[].constraints[].when[].type | string | Conditional |
| None specified |
recordTypes[].constraints[].when[].value | Not specified | Conditional | Not specified | None specified |
recordTypes[].derived | array | No | Not specified | None specified |
recordTypes[].derived[]Array item | object | No | Not specified | None specified |
recordTypes[].derived[].execution | string | No |
"live" | None specified |
recordTypes[].derived[].fields | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].derived[].fields[]Array item | object | No | Not specified | None specified |
recordTypes[].derived[].fields[].apiName | string | No | Not specified | None specified |
recordTypes[].derived[].fields[].bbox | object | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].bbox.east | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].bbox.north | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].bbox.south | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].bbox.west | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].classification | string | Yes |
| None specified |
recordTypes[].derived[].fields[].display | object | No | Not specified | None specified |
recordTypes[].derived[].fields[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].derived[].fields[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].derived[].fields[].display.titleField | string | No | Not specified | None specified |
recordTypes[].derived[].fields[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].derived[].fields[].maximum | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].maximumBytes | integer | Conditional | Not specified |
|
recordTypes[].derived[].fields[].maximumLength | integer | Conditional | Not specified |
or
|
recordTypes[].derived[].fields[].minimum | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].minimumLength | integer | Conditional | Not specifiedSchema default, where declared: 0 |
|
recordTypes[].derived[].fields[].onDelete | string | Conditional |
"restrict" | None specified |
recordTypes[].derived[].fields[].precision | integer | Conditional | Not specified |
or
|
recordTypes[].derived[].fields[].scale | integer | Conditional | Not specified |
|
recordTypes[].derived[].fields[].schema | Not specified | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].target | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].type | string | Yes |
| None specified |
recordTypes[].derived[].fields[].values | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].derived[].fields[].values[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].derived[].fields[].vocabulary | string | Conditional | Not specified | None specified |
recordTypes[].derived[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].derived[].key | string | Yes | Not specified | None specified |
recordTypes[].derived[].sql | string | Yes | Not specified | None specified |
recordTypes[].display | object | No | Not specifiedSchema default, where declared: {} | None specified |
recordTypes[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].display.titleField | string | No | Not specified | None specified |
recordTypes[].fields | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].fields[]Array item | object | No | Not specified | None specified |
recordTypes[].fields[].apiName | string | No | Not specified | None specified |
recordTypes[].fields[].bbox | object | Conditional | Not specified | None specified |
recordTypes[].fields[].bbox.east | string | Conditional | Not specified | None specified |
recordTypes[].fields[].bbox.north | string | Conditional | Not specified | None specified |
recordTypes[].fields[].bbox.south | string | Conditional | Not specified | None specified |
recordTypes[].fields[].bbox.west | string | Conditional | Not specified | None specified |
recordTypes[].fields[].classification | string | Yes |
| None specified |
recordTypes[].fields[].display | object | No | Not specified | None specified |
recordTypes[].fields[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].fields[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].fields[].display.titleField | string | No | Not specified | None specified |
recordTypes[].fields[].encrypted | boolean | Conditional | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].fields[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].fields[].lookupThe authored blind-index declaration for an encrypted field. Normalization
composes in declared order over the canonical string form of the value;
unique requests a unique index over the derived blind-index column. | object | Conditional | Not specified | None specified |
recordTypes[].fields[].lookup.normalization | array | Conditional | Not specifiedSchema default, where declared: [] |
|
recordTypes[].fields[].lookup.normalization[]Array itemA normalization step applied to the canonical string form of an encrypted
value before its blind index is derived. The vocabulary is closed. | string | Conditional |
| None specified |
recordTypes[].fields[].lookup.unique | boolean | Conditional | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].fields[].maximum | string | Conditional | Not specified | None specified |
recordTypes[].fields[].maximumBytes | integer | Conditional | Not specified |
|
recordTypes[].fields[].maximumLength | integer | Conditional | Not specified |
or
|
recordTypes[].fields[].minimum | string | Conditional | Not specified | None specified |
recordTypes[].fields[].minimumLength | integer | Conditional | Not specifiedSchema default, where declared: 0 |
|
recordTypes[].fields[].onDelete | string | Conditional |
"restrict" | None specified |
recordTypes[].fields[].pattern | string | Conditional | Not specified | None specified |
recordTypes[].fields[].precision | integer | Conditional | Not specified |
or
|
recordTypes[].fields[].relationship | object | Conditional | Not specified | None specified |
recordTypes[].fields[].relationship.inverseName | string | Conditional | Not specified |
|
recordTypes[].fields[].required | boolean | No | Not specifiedSchema default, where declared: false | None specified |
recordTypes[].fields[].scale | integer | Conditional | Not specified |
|
recordTypes[].fields[].schema | Not specified | Conditional | Not specified | None specified |
recordTypes[].fields[].target | string | Conditional | Not specified | None specified |
recordTypes[].fields[].type | string | Conditional |
| None specified |
recordTypes[].fields[].typeRefA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
recordTypes[].fields[].validTimeRole | string | No |
| None specified |
recordTypes[].fields[].values | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].fields[].values[]Array item | string | Conditional | Not specified | None specified |
recordTypes[].fields[].vocabulary | string | Conditional | Not specified | None specified |
recordTypes[].geojson | object | No | Not specified | None specified |
recordTypes[].geojson.geometryField | string | Yes | Not specified | None specified |
recordTypes[].hooks | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].hooks[]Array itemOne declared hook on an entity.
The shape is [registry_platform_hooks::HookDeclaration] with trigger
and when closed to the vocabulary this compiler validates, and with
handler optional. A hook that declares no handler is still recorded in
the outbox and delivered nowhere; production compilation refuses that.
Entity hooks run after the triggering transaction commits, so phase is
written and the compiler refuses any value it cannot run. | object | No | Not specified | None specified |
recordTypes[].hooks[].displayAuthored presentation only; labels never establish identity or authority. | object | No | Not specified | None specified |
recordTypes[].hooks[].display.descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].hooks[].display.labelHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | No | Not specified | None specified |
recordTypes[].hooks[].handlerGoverned, destination-neutral delivery. destinationId is a key in
runtime eventDestinations; the project carries no URL or secret, and
deployment configuration may tighten the bounds it binds but cannot
supply or widen this authority. Production compilation requires it. | object | No | Not specified | None specified |
recordTypes[].hooks[].handler.abiFor rhai: The handler ABI the script speaks. For wasm: The handler ABI the module speaks. | string | Conditional | Not specified | None specified |
recordTypes[].hooks[].handler.destinationIdKey in the runtime destination binding. | string | Conditional | Not specified | None specified |
recordTypes[].hooks[].handler.moduleModule path in the project. | string | Conditional | Not specified | None specified |
recordTypes[].hooks[].handler.scriptScript path in the project. | string | Conditional | Not specified | None specified |
recordTypes[].hooks[].handler.type | string | Yes |
| None specified |
recordTypes[].hooks[].idStable hook contract identifier, sent as ce-type. Use a new identifier for a breaking payload change. | string | Yes | Not specified |
|
recordTypes[].hooks[].phaseWhen the hook runs relative to the triggering transaction. | string | Yes |
| None specified |
recordTypes[].hooks[].principalThe access profile a proposal from this hook is applied under.
Optional: a hook that declares none is a non-proposing hook, and a
proposal from one is refused and dead-lettered at delivery time.
Declaring none is not an authoring error. | string | No | Not specified | None specified |
recordTypes[].hooks[].projectionDeclared field identifiers to include in values. System event metadata is included separately. | array | Yes | Not specified |
|
recordTypes[].hooks[].projection[]Array item | string | No | Not specified | None specified |
recordTypes[].hooks[].triggerCommitted record change that can produce this hook. | string | Yes |
| None specified |
recordTypes[].hooks[].whenOptional field tests, combined with AND. Omit to run on every matching trigger. | object | No | Not specified | None specified |
recordTypes[].hooks[].when.afterEqualsRequired values after the change. Valid with created and patched triggers. | object | No | Not specifiedSchema default, where declared: {} | None specified |
recordTypes[].hooks[].when.afterEquals.*Map valueA comparison literal: a boolean, a number, or text. | boolean | number | string | No | Not specified |
|
recordTypes[].hooks[].when.afterIsNullFields that must be unset after the change. Valid with created and patched triggers. | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].hooks[].when.afterIsNull[]Array item | string | No | Not specified | None specified |
recordTypes[].hooks[].when.beforeEqualsRequired values before the change. Valid with patched and tombstoned triggers. | object | No | Not specifiedSchema default, where declared: {} | None specified |
recordTypes[].hooks[].when.beforeEquals.*Map valueA comparison literal: a boolean, a number, or text. | boolean | number | string | No | Not specified |
|
recordTypes[].hooks[].when.beforeIsNullFields that must be unset before the change. Valid with patched and tombstoned triggers. | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].hooks[].when.beforeIsNull[]Array item | string | No | Not specified | None specified |
recordTypes[].hooks[].when.changedFields whose values must change. Only valid with the patched trigger. | array | No | Not specifiedSchema default, where declared: [] |
|
recordTypes[].hooks[].when.changed[]Array item | string | No | Not specified | None specified |
recordTypes[].hooks[].when.type | string | Yes |
| None specified |
recordTypes[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].indexes | array | No | Not specifiedSchema default, where declared: [] | None specified |
recordTypes[].indexes[]Array item | object | No | Not specified | None specified |
recordTypes[].indexes[].fields | array | Yes | Not specified |
|
recordTypes[].indexes[].fields[]Array item | string | No | Not specified | None specified |
recordTypes[].indexes[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].mutationMode | string | Yes |
| None specified |
recordTypes[].mutationPolicy | object | No | Not specified | None specified |
recordTypes[].mutationPolicy.create | string | No |
| None specified |
recordTypes[].mutationPolicy.patch | string | No |
| None specified |
recordTypes[].mutationPolicy.tombstone | string | No |
| None specified |
recordTypes[].primaryDataset | string | Yes | Not specified | None specified |
recordTypes[].readPaths | array | No | Not specified | None specified |
recordTypes[].readPaths[]Array item | object | No | Not specified | None specified |
recordTypes[].readPaths[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].readPaths[].route | string | Yes | Not specified | None specified |
recordTypes[].readPaths[].through | string | Yes | Not specified | None specified |
recordTypes[].readPaths[].to | string | Yes | Not specified | None specified |
recordTypes[].route | string | Yes | Not specified | None specified |
recordTypes[].selectorProfiles | array | No | Not specified | None specified |
recordTypes[].selectorProfiles[]Array item | object | No | Not specified | None specified |
recordTypes[].selectorProfiles[].fields | array | Yes | Not specified | None specified |
recordTypes[].selectorProfiles[].fields[]Array item | string | No | Not specified | None specified |
recordTypes[].selectorProfiles[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
recordTypes[].temporal | object | No | Not specified | None specified |
recordTypes[].temporal.endField | string | Yes | Not specified | None specified |
recordTypes[].temporal.startField | string | Yes | Not specified | None specified |
recordTypes[].tombstone | boolean | No | Not specifiedSchema default, where declared: false | None specified |
valueTypes | object | No | Not specifiedSchema default, where declared: {} | None specified |
valueTypes.*Map value | object | No | Not specified |
|
valueTypes.*.bbox | object | Conditional | Not specified | None specified |
valueTypes.*.bbox.east | string | Conditional | Not specified | None specified |
valueTypes.*.bbox.north | string | Conditional | Not specified | None specified |
valueTypes.*.bbox.south | string | Conditional | Not specified | None specified |
valueTypes.*.bbox.west | string | Conditional | Not specified | None specified |
valueTypes.*.maximum | string | Conditional | Not specified | None specified |
valueTypes.*.maximumBytes | integer | Conditional | Not specified |
|
valueTypes.*.maximumLength | integer | Conditional | Not specified |
or
|
valueTypes.*.minimum | string | Conditional | Not specified | None specified |
valueTypes.*.minimumLength | integer | Conditional | Not specifiedSchema default, where declared: 0 |
|
valueTypes.*.onDelete | string | Conditional |
"restrict" | None specified |
valueTypes.*.precision | integer | Conditional | Not specified |
or
|
valueTypes.*.scale | integer | Conditional | Not specified |
|
valueTypes.*.schema | Not specified | Conditional | Not specified | None specified |
valueTypes.*.target | string | Conditional | Not specified | None specified |
valueTypes.*.type | string | Yes |
| None specified |
valueTypes.*.values | array | Conditional | Not specifiedSchema default, where declared: [] | None specified |
valueTypes.*.values[]Array item | string | Conditional | Not specified | None specified |
valueTypes.*.vocabulary | string | Conditional | Not specified | None specified |
versionModule version recorded alongside its content digest in the project. | string | Yes | Not specified | None specified |
runtime.yaml
Source preview, pre-1.0
Generated from products/breg/generated/runtime/runtime.schema.json. 186 key paths. Explained in docs/site/src/content/docs/configure/breg.mdx.
| Key path | Type | Required | Accepted values | Constraints |
|---|---|---|---|---|
apiVersion | string | Yes |
| None specified |
attachmentStorageDefaults to PostgreSQL; S3 requires a bucket with versioning never enabled. | object | No | Not specifiedSchema default, where declared: {"type":"database"} | None specified |
attachmentStorage.accessKeyIdRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Conditional | Not specified |
|
attachmentStorage.attemptTimeoutMilliseconds | integer | Conditional | Not specifiedSchema default, where declared: 10000 |
|
attachmentStorage.bucket | string | Conditional | Not specified |
|
attachmentStorage.caBundleRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Conditional | Not specified |
|
attachmentStorage.endpoint | string | Conditional | Not specified |
|
attachmentStorage.pathStyle | boolean | Conditional | Not specifiedSchema default, where declared: true | None specified |
attachmentStorage.region | string | Conditional | Not specified |
|
attachmentStorage.secretAccessKeyRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Conditional | Not specified |
|
attachmentStorage.sessionTokenRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Conditional | Not specified |
|
attachmentStorage.type | string | Yes |
| None specified |
attachmentVerificationOptional external verdict hook. Disabled by default. | object | No | Not specifiedSchema default, where declared: {"type":"disabled"} | None specified |
attachmentVerification.attemptTimeoutMilliseconds | integer | Conditional | Not specifiedSchema default, where declared: 10000 |
|
attachmentVerification.authorizationRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Conditional | Not specified |
|
attachmentVerification.endpoint | string | Conditional | Not specified |
|
attachmentVerification.policyIdNon-secret identity of the external scanner and rules generation. | string | Conditional | Not specified |
|
attachmentVerification.type | string | Yes |
| None specified |
auditThe key for the keyed references an audit record carries in place of raw
identifiers, written audit.hashKeyRef beside the product's own audit
settings. | object | Yes | Not specified | None specified |
audit.destinationfile (the default) writes a durable, rotated JSON Lines file at
path; stdout writes one JSON line per entry to standard output. | string | No |
"file" | None specified |
audit.hashKeyRefSecret reference to the audit hash key. | string | Yes | Not specified |
|
audit.pathAbsolute path of the active audit file. Required for, and accepted
only with, the file destination; omitted with stdout. | string | Conditional | Not specified | where a rule elsewhere applies
|
audit.retentionDaysDays a rotated file is retained, accepted only with the file
destination. Omitted, a rotated file is retained for 90 days. | integer | No | Not specified |
|
audit.rotateBytesSize in bytes at which the active file rotates, accepted only with the
file destination. Omitted, the file rotates at 100 MiB. | integer | No | Not specified |
|
authentication | object | Yes | Not specified | None specified |
authentication.authorityClaims | object | Yes | Not specified | None specified |
authentication.authorityClaims.contextualThe claim names that carry delegated-authority context. Each name
defaults to its registry_ claim; written, every name is given. | object | No | Not specifiedSchema default, where declared: {"actorKind":"registry_actor_kind","approver":"registry_approver","grantBounds":"registry_grant_bounds","grantClient":"registry_grant_client","grantExp":"registry_grant_exp","grantId":"registry_grant_id","grantResource":"registry_grant_resource","grantSourceIssuer":"registry_grant_source_issuer","purpose":"registry_purpose"} | None specified |
authentication.authorityClaims.contextual.actorKindThe name of one top-level claim of an access token. The reader accepts any
text; the runtime then refuses a name that is not a valid claim name, one
that repeats another contextual name, and one that is a registered or
authentication claim. | string | Yes | Not specified | None specified |
authentication.authorityClaims.contextual.approverThe name of one top-level claim of an access token. The reader accepts any
text; the runtime then refuses a name that is not a valid claim name, one
that repeats another contextual name, and one that is a registered or
authentication claim. | string | Yes | Not specified | None specified |
authentication.authorityClaims.contextual.grantBoundsThe name of one top-level claim of an access token. The reader accepts any
text; the runtime then refuses a name that is not a valid claim name, one
that repeats another contextual name, and one that is a registered or
authentication claim. | string | Yes | Not specified | None specified |
authentication.authorityClaims.contextual.grantClientThe name of one top-level claim of an access token. The reader accepts any
text; the runtime then refuses a name that is not a valid claim name, one
that repeats another contextual name, and one that is a registered or
authentication claim. | string | Yes | Not specified | None specified |
authentication.authorityClaims.contextual.grantExpThe name of one top-level claim of an access token. The reader accepts any
text; the runtime then refuses a name that is not a valid claim name, one
that repeats another contextual name, and one that is a registered or
authentication claim. | string | Yes | Not specified | None specified |
authentication.authorityClaims.contextual.grantIdThe name of one top-level claim of an access token. The reader accepts any
text; the runtime then refuses a name that is not a valid claim name, one
that repeats another contextual name, and one that is a registered or
authentication claim. | string | Yes | Not specified | None specified |
authentication.authorityClaims.contextual.grantResourceThe name of one top-level claim of an access token. The reader accepts any
text; the runtime then refuses a name that is not a valid claim name, one
that repeats another contextual name, and one that is a registered or
authentication claim. | string | Yes | Not specified | None specified |
authentication.authorityClaims.contextual.grantSourceIssuerThe name of one top-level claim of an access token. The reader accepts any
text; the runtime then refuses a name that is not a valid claim name, one
that repeats another contextual name, and one that is a registered or
authentication claim. | string | Yes | Not specified | None specified |
authentication.authorityClaims.contextual.purposeThe name of one top-level claim of an access token. The reader accepts any
text; the runtime then refuses a name that is not a valid claim name, one
that repeats another contextual name, and one that is a registered or
authentication claim. | string | Yes | Not specified | None specified |
authentication.authorityClaims.principal | string | Yes | Not specified |
|
authentication.authorityClaims.purpose | string | No | Not specified |
|
authentication.authorityClaims.trustedActors | object | No | Not specifiedSchema default, where declared: {} | None specified |
authentication.authorityClaims.trustedActors.*Map value | string | No | Not specified |
|
authentication.oidcThe OIDC issuer a runtime accepts access tokens from: the exact iss
value, the aud value a token must carry, and where the issuer's signing
keys come from, written under authentication.oidc beside the product's
own token rules. | object | Yes | Not specified | None specified |
authentication.oidc.accessTokenTypeThe one admitted access-token typ semantics. Configuring the
RFC 9068 access-token media type as at+jwt or
application/at+jwt admits both spellings of that one type; any
other value (for example JWT) admits only that token type, matched
case-insensitively. | string | Yes | Not specified |
|
authentication.oidc.allowInsecureHttpPermit plain HTTP beyond loopback to the configured issuer and to a
JWKS URI declared in configuration. TLS remains required unless the
operator explicitly accepts this transport risk. | boolean | No | Not specifiedSchema default, where declared: false | None specified |
authentication.oidc.allowedAlgorithm | string | Yes |
| None specified |
authentication.oidc.allowedClientsThe OAuth clients whose tokens this registry accepts: unrestricted
to accept a token from every client, or a list of at least one
client. | array | string | Yes |
| No bound or
|
authentication.oidc.allowedClients[]Array item | string | Conditional | Not specified |
|
authentication.oidc.assertionIssuersThe assertion authorities each client may exchange a subject token
from, keyed by client identifier. Omitted, no assertion-issuer rule
applies; written, it lists at least one client, each with at least one
authority, and a client not listed may exchange from no authority. | object | No | Not specified |
|
authentication.oidc.assertionIssuers.*Map value | array | No | Not specified |
|
authentication.oidc.assertionIssuers.*[]Array item | string | No | Not specified |
|
authentication.oidc.audienceThe audience every accepted access token must carry in aud. | string | Yes | Not specified |
|
authentication.oidc.deniedKidsThe signing key identifiers this registry refuses a token from.
Omitted, no key is denied; written, it names at least one key. | array | No | Not specified |
|
authentication.oidc.deniedKids[]Array item | string | No | Not specified |
|
authentication.oidc.issuerExact issuer accepted in access-token iss claims, an absolute
https URL, or a plain http URL when allowInsecureHttp is set. | string | Yes | Not specified |
|
authentication.oidc.jwksCacheOptional JWKS fetch and cache tuning. Defaults to bounded cache behavior. | object | No | Not specifiedSchema default, where declared: {"attemptTimeoutMilliseconds":5000,"cacheTtlSeconds":600,"maximumDocumentBytes":65536,"negativeCacheTtlSeconds":60,"outageToleranceSeconds":900,"refreshCooldownSeconds":30} | None specified |
authentication.oidc.jwksCache.attemptTimeoutMillisecondsDefaults to the bounded JWKS fetch timeout. | integer | No | Not specifiedSchema default, where declared: 5000 |
|
authentication.oidc.jwksCache.cacheTtlSecondsDefaults to the bounded JWKS cache time-to-live. | integer | No | Not specifiedSchema default, where declared: 600 |
|
authentication.oidc.jwksCache.maximumDocumentBytesDefaults to the bounded maximum JWKS document size. | integer | No | Not specifiedSchema default, where declared: 65536 |
|
authentication.oidc.jwksCache.negativeCacheTtlSecondsDefaults to the bounded JWKS negative-cache time-to-live. | integer | No | Not specifiedSchema default, where declared: 60 |
|
authentication.oidc.jwksCache.outageToleranceSecondsDefaults to the bounded cached-key outage tolerance. | integer | No | Not specifiedSchema default, where declared: 900 |
|
authentication.oidc.jwksCache.refreshCooldownSecondsDefaults to the bounded JWKS refresh cooldown. | integer | No | Not specifiedSchema default, where declared: 30 |
|
authentication.oidc.jwksSourceWhere the issuer's signing keys come from. Absent reads the issuer's
OpenID Connect discovery document. | object | No | Not specified | None specified |
authentication.oidc.jwksSource.documentRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Conditional | Not specified |
|
authentication.oidc.jwksSource.type | string | Yes |
| None specified |
authentication.oidc.jwksSource.uriAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | Conditional | Not specified |
|
authentication.oidc.leewayMilliseconds | integer | Yes | Not specified |
|
authentication.oidc.maximumTokenLifetimeSeconds | integer | Yes | Not specified |
|
authentication.oidc.scopeClaim | string | Yes | Not specified |
|
authentication.oidc.scopeSeparator | string | Yes | Not specified |
|
cursor | object | Yes | Not specified | None specified |
cursor.maximumAgeSecondsDefaults to the bounded cursor validity lifetime. | integer | No | Not specifiedSchema default, where declared: 300 |
|
cursor.secretRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
databaseThe registry's database: the shared database block and the connection
pool and SQL roles the registry adds. | object | Yes | Not specified | None specified |
database.migrationUrlRefSecret reference to the migration connection URL. | string | Yes | Not specified |
|
database.pool | object | Yes | Not specified | None specified |
database.pool.createTimeoutMillisecondsDefaults to the bounded PostgreSQL pool connection-creation timeout. | integer | No | Not specifiedSchema default, where declared: 30000 |
|
database.pool.maximumConnections | integer | Yes | Not specified |
|
database.pool.recycleTimeoutMillisecondsDefaults to the bounded PostgreSQL pool connection-recycle timeout. | integer | No | Not specifiedSchema default, where declared: 30000 |
|
database.pool.waitTimeoutMillisecondsDefaults to the bounded PostgreSQL pool wait timeout. | integer | No | Not specifiedSchema default, where declared: 30000 |
|
database.roles | object | Yes | Not specified | None specified |
database.roles.migration | string | Yes | Not specified |
|
database.roles.runtime | string | Yes | Not specified |
|
database.runtimeUrlRefSecret reference to the least-privileged runtime connection URL. | string | Yes | Not specified |
|
database.testOnlyPlaintextAllow a plaintext connection. Refused outside test builds. | boolean | No | Not specifiedSchema default, where declared: false | None specified |
database.trustedRootCertificateRefSecret reference to a PEM root certificate the connection trusts.
Absent, the connection trusts the platform's root certificates. | string | No | Not specified |
|
eventDestinations | object | No | Not specified |
|
eventDestinations.*Map value | object | No | Not specified |
|
eventDestinations.*.allowedPrivateCidrsExplicitly allowed private network ranges in canonical CIDR notation. | array | Yes | Not specified |
|
eventDestinations.*.allowedPrivateCidrs[]Array item | string | No | Not specified | None specified |
eventDestinations.*.classificationCeilingHighest permitted classification, including fields used only in event conditions. | string | Yes |
| None specified |
eventDestinations.*.deliveryCeilingsPer-destination limits that may tighten, but never increase, the compiled delivery limits. | object | Yes | Not specified | None specified |
eventDestinations.*.deliveryCeilings.attemptTimeoutMillisecondsMaximum time allowed for one attempt, in milliseconds. | integer | Yes | Not specified |
|
eventDestinations.*.deliveryCeilings.maximumAttemptsMaximum total attempts in one delivery generation, including the first attempt. | integer | Yes | Not specified |
|
eventDestinations.*.dnsFamilyAddress families to validate when resolving the destination. | string | Yes |
| None specified |
eventDestinations.*.hmacSha256KeyRefRuntime secret reference for the receiver's shared HMAC-SHA-256 key. | string | Yes | Not specified |
|
eventDestinations.*.networkProfileHTTPS for production, or explicit loopback-only HTTP for local development. | string | Yes |
| None specified |
eventDestinations.*.originReceiver origin without a path or query, such as https://receiver.example.com. | string | Yes | Not specified |
|
eventDestinations.*.pathAbsolute request path on the configured origin, such as /events. | string | Yes | Not specified |
|
eventDestinations.*.tlsOptional private CA and client identity secret references for HTTPS. | object | No | Not specified | None specified |
eventDestinations.*.tls.caBundleRefPEM CA bundle secret reference, when the receiver uses a private
certificate authority. Omitted, the platform's trusted roots verify
the receiver. At least one of caBundleRef and clientIdentityRef
is written. | string | Conditional | Not specified |
|
eventDestinations.*.tls.clientIdentityRefPEM client identity secret reference for mutual TLS. Omitted, the
registry presents no client certificate. | string | Conditional | Not specified |
|
evidenceProviders | object | No | Not specifiedSchema default, where declared: {} | None specified |
evidenceProviders.*Map value | object | No | Not specified |
|
evidenceProviders.*.baseUrlThe Evidence service's base URL. It is https; http is accepted
only for a loopback host, for local development. | string | Yes | Not specified |
|
evidenceProviders.*.caBundleRefPEM CA bundle for the Evidence service and its token endpoint.
Omitted, the platform's trusted roots verify them. | string | No | Not specified |
|
evidenceProviders.*.privateKeyJwtThe refreshing credential: a private-key JWT client exchange.
Exactly one of tokenRef and privateKeyJwt is written. | object | Conditional | Not specified | None specified |
evidenceProviders.*.privateKeyJwt.assertionAudience | string | No | Not specified | None specified |
evidenceProviders.*.privateKeyJwt.clientId | string | Yes | Not specified | None specified |
evidenceProviders.*.privateKeyJwt.privateKeyRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
evidenceProviders.*.privateKeyJwt.resource | string | No | Not specified | None specified |
evidenceProviders.*.privateKeyJwt.scopes | array | No | Not specifiedSchema default, where declared: [] | None specified |
evidenceProviders.*.privateKeyJwt.scopes[]Array item | string | No | Not specified | None specified |
evidenceProviders.*.privateKeyJwt.tokenEndpoint | string | Yes | Not specified | None specified |
evidenceProviders.*.revokedKeyIds | array | No | Not specifiedSchema default, where declared: [] | None specified |
evidenceProviders.*.revokedKeyIds[]Array item | string | No | Not specified | None specified |
evidenceProviders.*.tokenRefCompatibility path for a pre-issued token. Long-running providers
should configure privateKeyJwt so expiry triggers a fresh exchange.
Exactly one of tokenRef and privateKeyJwt is written. | string | Conditional | Not specified |
|
evidenceProviders.*.trustBindingId | string | Yes | Not specified | None specified |
evidenceProviders.*.trustedJwksRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
fieldEncryptionOptional field-encryption data-key provider. Absent by default, which
serves unencrypted entities only. | object | No | Not specifiedSchema default, where declared: {} | None specified |
fieldEncryption.providerRaw provider binding; the type member selects the custodian. | object | No | Not specified | None specified |
fieldEncryption.provider.attemptTimeoutMilliseconds | integer | Conditional | Not specifiedSchema default, where declared: 5000 |
|
fieldEncryption.provider.dekRefThe data encryption key, named by a secret:file/NAME reference;
an environment reference is refused. | string | Conditional | Not specified |
|
fieldEncryption.provider.keyName | string | Conditional | Not specified |
|
fieldEncryption.provider.mount | string | Conditional | Not specified |
|
fieldEncryption.provider.type | string | Yes |
| None specified |
fieldEncryption.provider.unixSocketPath | string | Conditional | Not specified |
|
identity | object | Yes | Not specified | None specified |
identity.databaseId | string | Yes | Not specified |
|
identity.databaseInitializationEnvironment | string | Yes | Not specified |
|
identity.environment | string | Yes | Not specified |
|
identity.instanceId | string | Yes | Not specified |
|
kind | string | Yes |
| None specified |
listenerThe registry's listener: the shared listener block and an optional public
origin. | object | Yes | Not specified | None specified |
listener.bindSocket address the runtime listens on, written host:port with an IP address host ([addr]:port for IPv6). | string | Yes | Not specified |
|
listener.publicOriginCanonical public origin for QGIS discovery and pagination links, with
an optional deployment path prefix such as
https://registry.example.org/breg. It is https; http is accepted
only for a loopback host, for local development. Required when the
registry exposes GIS collections; omitted, the registry builds no
absolute discovery or paging links. | string | No | Not specified |
|
metricsListenerOptional operator-private metrics listener. Absent by default, which
serves no metrics surface at all. | object | No | Not specified | None specified |
metricsListener.bindOperator-private loopback or private numeric address and named port,
for example 127.0.0.1:9100. | string | Yes | Not specified |
|
operationalTimeoutsOptional operational request, shutdown, locking, and migration timeout tuning. | object | No | Not specifiedSchema default, where declared: {"httpRequestMilliseconds":10000,"migrationLockMilliseconds":30000,"migrationStatementMilliseconds":60000,"recordLockMilliseconds":5000,"shutdownGraceMilliseconds":30000} | None specified |
operationalTimeouts.httpRequestMillisecondsDefaults to the bounded per-request HTTP timeout. | integer | No | Not specifiedSchema default, where declared: 10000 |
|
operationalTimeouts.migrationLockMillisecondsDefaults to the bounded migration lock timeout. | integer | No | Not specifiedSchema default, where declared: 30000 |
|
operationalTimeouts.migrationStatementMillisecondsDefaults to the bounded migration statement timeout. | integer | No | Not specifiedSchema default, where declared: 60000 |
|
operationalTimeouts.recordLockMillisecondsDefaults to the bounded record lock timeout. | integer | No | Not specifiedSchema default, where declared: 5000 |
|
operationalTimeouts.shutdownGraceMillisecondsDefaults to the bounded graceful-shutdown timeout. | integer | No | Not specifiedSchema default, where declared: 30000 |
|
packageThe package a runtime serves: root is the absolute package directory,
and expectedDigest, when set, pins the package digest the runtime must
find there. The package digest is the digest of the package's
SHA256SUMS file; see [crate::package]. | object | Yes | Not specified | None specified |
package.expectedDigestsha256: label of the package digest, the digest of the package's
SHA256SUMS file. When set, the runtime refuses to start on any other
package. | string | No | Not specified |
|
package.rootAbsolute path of the package directory. | string | Yes | Not specified |
|
retentionOptional retention windows for idempotency receipts and retained
event payloads. Defaults to a seven-day receipt horizon and the
server's bounded payload retention policy. | object | No | Not specifiedSchema default, where declared: {"hookPayloadRetentionDays":7,"receiptRetentionDays":7} | None specified |
retention.hookPayloadRetentionDaysDefaults to the bounded retained payload lifetime for pending or dead-letter webhook work. | integer | No | Not specifiedSchema default, where declared: 7 |
|
retention.receiptRetentionDaysDays a held response is kept after its commit. A retry after it is
refused as expired and never executed; the key stays spent. | integer | No | Not specifiedSchema default, where declared: 7 |
|
reviewAuthorities | object | No | Not specifiedSchema default, where declared: {} | None specified |
reviewAuthorities.*Map value | object | No | Not specified |
|
reviewAuthorities.*.completionRecipientThe logical recipient the review authority names in each completion
notification. Written together with completionTokenRef; omitted, no
completion notification is accepted and the registry polls for
results. | string | No | Not specified | None specified |
reviewAuthorities.*.completionTokenRefThe bearer token the review authority presents when it notifies this
registry that a review completed. Written together with
completionRecipient; omitted, no completion notification is
accepted and the registry polls for results. | string | No | Not specified |
|
reviewAuthorities.*.endpoint | string | Yes | Not specified | None specified |
reviewAuthorities.*.privateKeyJwtA refreshing client-assertion credential for the review service.
Exactly one of tokenRef and privateKeyJwt is written. | object | No | Not specified | None specified |
reviewAuthorities.*.privateKeyJwt.assertionAudience | string | Yes | Not specified | None specified |
reviewAuthorities.*.privateKeyJwt.caBundleRefA PEM bundle of the roots that sign the token endpoint's certificate.
Omitted, the platform's trusted roots verify it. | string | No | Not specified |
|
reviewAuthorities.*.privateKeyJwt.clientAssertionKeyRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
reviewAuthorities.*.privateKeyJwt.clientIdRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
reviewAuthorities.*.privateKeyJwt.resource | string | Yes | Not specified | None specified |
reviewAuthorities.*.privateKeyJwt.scopes | array | Yes | Not specified | None specified |
reviewAuthorities.*.privateKeyJwt.scopes[]Array item | string | No | Not specified | None specified |
reviewAuthorities.*.privateKeyJwt.tokenEndpoint | string | Yes | Not specified | None specified |
reviewAuthorities.*.producerId | string | Yes | Not specified | None specified |
reviewAuthorities.*.profile | string | Yes | Not specified | None specified |
reviewAuthorities.*.recoveryDays | integer | Yes | Not specified |
|
reviewAuthorities.*.tokenRefA static bearer token for the review service. Exactly one of
tokenRef and privateKeyJwt is written. | string | No | Not specified |
|
secretProvidersThe secret providers a runtime enables. A reference is resolved only by a
provider declared here: secret:file/name under file.root, and
secret:env/NAME only when environment: {} is present. | object | Yes | Not specified | None specified |
secretProviders.environmentEnables secret:env/NAME references, read from the process
environment. Declared as an empty mapping: environment: {}. | object | Conditional | Not specified | None specified |
secretProviders.fileEnables secret:file/name references, read from files under root. | object | Conditional | Not specified | None specified |
secretProviders.file.rootAbsolute directory holding one file per secret. Each file must be a
regular file owned by the runtime user, mode 0400 or 0600, with exactly
one hard link. | string | Conditional | Not specified |
|
taskGrantStatus | array | No | Not specifiedSchema default, where declared: [] | None specified |
taskGrantStatus[]Array itemOne task authority whose grants a runtime checks for fresh status, and the
runtime's own credentials for that check, written as one entry of
taskGrantStatus. The status route and scope default to Casework's. | object | No | Not specified | None specified |
taskGrantStatus[].baseUrlThe authority's base URL the status check calls. It is https;
http is accepted only for a loopback host, for local development. | string | Yes | Not specified |
|
taskGrantStatus[].caBundleRefPEM CA bundle for the authority and its token endpoint. Omitted, the
platform's trusted roots verify them. | string | No | Not specified |
|
taskGrantStatus[].clientAssertionAudienceAn identifier another system issues, written exactly as its issuer gives it. | string | Yes | Not specified |
|
taskGrantStatus[].clientIdAn identifier another system issues, written exactly as its issuer gives it. | string | Yes | Not specified |
|
taskGrantStatus[].privateKeyRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
taskGrantStatus[].sourceIssuerThe task authority's issuer, exactly as the authority states it,
including an absolute URN issuer. It is compared rather than fetched
and must be an absolute resource URI. | string | Yes | Not specified |
|
taskGrantStatus[].statusPathThe status route appended to baseUrl's path. It starts with / and
has exactly one whole {grantId} segment; every other segment uses
only letters, digits, -, ., _, and ~. Omitted,
/v1/task-grants/{grantId}/status. | string | No | Not specifiedSchema default, where declared: "/v1/task-grants/{grantId}/status" | None specified |
taskGrantStatus[].statusResourceThe audience the runtime requests its status credential for, an
absolute resource URI. | string | Yes | Not specified |
|
taskGrantStatus[].statusScopeThe one scope the runtime requests its status credential with.
Omitted, casework:grants:status. | string | No | Not specifiedSchema default, where declared: "casework:grants:status" |
|
taskGrantStatus[].tokenEndpointAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | Yes | Not specified |
|
wasmExecutionOptional WASM handler execution budgets. Parsed in every build;
executed only in builds with the wasm cargo feature, on by default. | object | No | Not specifiedSchema default, where declared: {"backend":"pulley","maximumGuestMemoryBytes":33554432,"maximumModuleBytes":2097152} | None specified |
wasmExecution.backendThe backend handler modules are compiled and executed for: pulley
(default, the portable interpreter target) or native. Any other
value is refused as an invalid wasmExecution section. | string | No | Not specifiedSchema default, where declared: "pulley" | None specified |
wasmExecution.maximumGuestMemoryBytesDefaults to the platform guest-memory ceiling (32 MiB). | integer | No | Not specifiedSchema default, where declared: 33554432 |
|
wasmExecution.maximumModuleBytesDefaults to the default execution-time module ceiling (2 MiB); the
structural admission ceiling (5 MiB) is operator-reachable here. | integer | No | Not specifiedSchema default, where declared: 2097152 |
|
Authored values and display
Section titled “Authored values and display”Use bregctl --format json explain model <project> when a tool needs to distinguish an authored
value from a compiled default. authoring.documents lists the project and each module file,
with the RFC 6901 JSON Pointers present before defaults and module composition. Each document’s bindings links an explanationPointer in the explanation to a
sourcePointer in that file, including members contributed by module extensions. Find the
object’s binding, append /display/label to its source pointer, and check that exact path in
that document’s authoredPaths. An absent path means the source omitted the label. The same
rule applies to unchanged source members such as a stored field’s required; generated
fields and other derived output are not necessarily defaults.
display.label and display.description describe authored objects without changing their
IDs or permissions. Keep IDs visible alongside labels in selection and approval interfaces.
Action inputs keep their existing label fallback to apiName; the separate optional
display member tells you whether display was authored.
check warns when two access profiles in the same namespace have equivalent labels,
naming both IDs. Use check --deny-warnings when that warning must block a review.
Indexes
Section titled “Indexes”The compiler appends the record id, the last sort key of every list, to each index under
recordTypes[].indexes; do not declare it. An index declares at most 31 fields
(breg.index.fields-too-many). Every reference field gets an index of its own unless a declared
index, or a unique constraint without when, already leads with it.
bregctl check reports breg.record-type.list-unindexed-filter and
breg.record-type.list-unindexed-sort for a filterable or sortable list field that no index leads
with; they fail a check only under --deny-warnings.
Statistical dataset declarations
Section titled “Statistical dataset declarations”statisticalDatasets[].unit names the Record type a dataset counts. minimumCount and
roundingBase are required and take no value below 2. At most one access profile holds publish
on a dataset. Once one does, it and every read-live profile must also hold read-releases;
without one, no profile may hold read-releases. See Publish a statistical
series.
Attachment storage
Section titled “Attachment storage”Attachments of Proposal Actions are stored in PostgreSQL unless runtime.yaml selects
attachmentStorage of type: s3. breg checks an S3 binding at startup:
endpointis a root HTTPS URL with no path, query, fragment, or user information; plain HTTP is accepted only for a numeric loopback address.pathStyle: false(virtual-host addressing) needs a DNS host name inendpoint.bucketuses lowercase letters, digits, hyphens, and dots, starts and ends with a letter or digit, and is not an IP address.regionuses lowercase letters, digits, and hyphens.- Every credential is a secret reference resolved through the runtime’s secret providers.
- The bucket must never have had versioning enabled.
bregreads its versioning state at startup and before each deletion, and refuses it when enabled or suspended, because a delete marker does not erase older object versions.
The runtime needs to read the bucket’s versioning state and to get, put, and delete objects.
Content is stored once per SHA-256 digest within one database and registry, so give each
independent database its own identity.databaseId. Deletion is a retried cleanup
(Retry external attachment cleanup).
The first stored attachment pins the storage binding (database, or S3 bucket URL, region, and
registry) and the verification binding (disabled, or endpoint and policyId) in the database.
breg then refuses to start with a different binding, even after every attachment is erased.
Configure both before the first upload; rotating a secret or changing a timeout keeps the binding.
External attachment verification
Section titled “External attachment verification”attachmentVerification of type: http holds every uploaded file in quarantine until an external
verifier approves it; the default, type: disabled, needs no verdict. endpoint is an HTTPS URL,
or plain HTTP to a numeric loopback address, and may carry a fixed query but no user information or
fragment. policyId names the verifier’s rules generation and is not secret. A background worker
sends:
POSTtoendpointwith the file’s raw bytes as the body;Authorization: Bearer <token>, the token read fromauthorizationRef;- the file’s
Content-Type,Accept: application/json, and its lowercase hexadecimal SHA-256 digest inX-Content-SHA256.
The verifier answers HTTP 200 with at most 1,024 bytes holding exactly one of:
{"verdict":"approved"}{"verdict":"rejected"}Anything else, a timeout, or an unreachable verifier leaves the file pending; the worker retries
and logs attachment_verification.retry_pending. The request follows no redirect and uses no proxy.
A pending or rejected file blocks its download and the submission of its Proposal, optional slots included. A verdict is reused for the same digest, content type, and verification binding, so re-uploading rejected bytes is rejected again. Registry erasure does not reach the verifier: agree its logging and retention separately.
Development clients
Section titled “Development clients”dev-clients.yaml declares the local clients bregctl dev start binds to access profiles
(Create your first registry).
| Key path | Type | Required | Accepted values | Constraints |
|---|---|---|---|---|
apiVersionThe format and version this file is written in. | string | Yes |
| None specified |
clients | array | Yes | Not specified | None specified |
clients[]Array item | object | No | Not specified | None specified |
clients[].accessProfilesThe access profiles this client is the one local binding for. Empty
means no journey step resolves to it and no seed may reference it. | array | Yes | Not specified | None specified |
clients[].accessProfiles[]Array item | string | No | Not specified | None specified |
clients[].allowBregAccessExplicitly admits a profile-free integration client to BReg's
allowedClients. The default is false, so a client carrying scopes or
claims for another product cannot call BReg accidentally. | boolean | No | Not specified | None specified |
clients[].allowHumanFixtureExplicitly permits this local teaching client to carry the human actor
marker. This does not admit the client to BReg's allowedClients. | boolean | No | Not specified | None specified |
clients[].assertionKeyRefExisting ES256 assertion key, for a client whose key is already
governed by another local tool such as Evidence access. | string | No | Not specified |
|
clients[].claims | object | Yes | Not specified | None specified |
clients[].grantsAdditional explicit permissions on declared resource audiences. These
do not change default token scopes or the exchange bootstrap scope. | array | No | Not specified | None specified |
clients[].grants[]Array item | object | No | Not specified | None specified |
clients[].grants[].audienceOmit for the owner BREG resource; otherwise use a declared audience. | string | No | Not specified | None specified |
clients[].grants[].scopes | array | Yes | Not specified | None specified |
clients[].grants[].scopes[]Array item | string | No | Not specified | None specified |
clients[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
clients[].scopes | array | Yes | Not specified | None specified |
clients[].scopes[]Array item | string | No | Not specified | None specified |
clients[].testBindingsExact schema-test steps that use this claim variant. Runtime requests
still select an authored access profile; this field only disambiguates
credentials for maintained local journeys. | array | No | Not specifiedSchema default, where declared: [] | None specified |
clients[].testBindings[]Array item | object | No | Not specified | None specified |
clients[].testBindings[].journeyId | string | Yes | Not specified | None specified |
clients[].testBindings[].stepId | string | Yes | Not specified | None specified |
eventDestinationsOptional exact local webhook bindings. An empty map keeps the inbox. | object | No | Not specifiedSchema default, where declared: {} | None specified |
eventDestinations.*Map value | object | No | Not specified |
|
eventDestinations.*.hmacSha256KeyRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
eventDestinations.*.origin | string | Yes | Not specified | None specified |
eventDestinations.*.path | string | Yes | Not specified | None specified |
evidenceProvidersExact local Evidence provider bindings for governed action packages. | object | No | Not specifiedSchema default, where declared: {} | None specified |
evidenceProviders.*Map value | object | No | Not specified |
|
evidenceProviders.*.baseUrlAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | Yes | Not specified |
|
evidenceProviders.*.caBundleRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | No | Not specified |
|
evidenceProviders.*.privateKeyJwt | object | No | Not specified | None specified |
evidenceProviders.*.privateKeyJwt.assertionAudience | string | Yes | Not specified | None specified |
evidenceProviders.*.privateKeyJwt.clientId | string | Yes | Not specified | None specified |
evidenceProviders.*.privateKeyJwt.privateKeyRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
evidenceProviders.*.privateKeyJwt.resource | string | Yes | Not specified | None specified |
evidenceProviders.*.privateKeyJwt.scopes | array | Yes | Not specified | None specified |
evidenceProviders.*.privateKeyJwt.scopes[]Array item | string | No | Not specified | None specified |
evidenceProviders.*.privateKeyJwt.tokenEndpoint | string | Yes | Not specified | None specified |
evidenceProviders.*.revokedKeyIds | array | No | Not specifiedSchema default, where declared: [] | None specified |
evidenceProviders.*.revokedKeyIds[]Array item | string | No | Not specified | None specified |
evidenceProviders.*.tokenRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | No | Not specified |
|
evidenceProviders.*.trustBindingId | string | Yes | Not specified | None specified |
evidenceProviders.*.trustedJwksRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
issuer | object | No | Not specifiedSchema default, where declared: {"browserClients":[],"clientResources":{},"exchangeClients":[],"exchangeIssuers":[],"interactiveApplications":[],"resources":[],"syntheticUsers":[]} | None specified |
issuer.browserClientsOwner-registered browser app IDs this borrower admits at its BREG resource. | array | No | Not specifiedSchema default, where declared: [] | None specified |
issuer.browserClients[]Array item | string | No | Not specified | None specified |
issuer.clientResourcesClient IDs mapped to a non-default resource audience. | object | No | Not specifiedSchema default, where declared: {} | None specified |
issuer.clientResources.*Map value | string | No | Not specified |
|
issuer.exchangeClientsClients with one bootstrap scope that may exchange signed assertions. | array | No | Not specifiedSchema default, where declared: [] | None specified |
issuer.exchangeClients[]Array item | string | No | Not specified | None specified |
issuer.exchangeIssuers | array | No | Not specifiedSchema default, where declared: [] | None specified |
issuer.exchangeIssuers[]Array item | object | No | Not specified | None specified |
issuer.exchangeIssuers[].clientsThe exchange clients paired with this connection's authority. A
resource server refuses every other authority's assertion from them,
and under first-party mapping these are also the clients whose claims
this connection projects. | array | No | Not specifiedSchema default, where declared: [] | None specified |
issuer.exchangeIssuers[].clients[]Array item | string | No | Not specified | None specified |
issuer.exchangeIssuers[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
issuer.exchangeIssuers[].issuerAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | Yes | Not specified |
|
issuer.exchangeIssuers[].jwksEndpoint | string | Yes | Not specified | None specified |
issuer.exchangeIssuers[].mapping | string | Yes |
| None specified |
issuer.exchangeIssuers[].tokenAttributes | object | No | Not specifiedSchema default, where declared: {} | None specified |
issuer.exchangeIssuers[].tokenAttributes.*Map valueThe schema of ExchangeAttributeKind, which lives in a crate that does not
derive schemas. | string | No |
|
|
issuer.interactiveApplications | array | No | Not specifiedSchema default, where declared: [] | None specified |
issuer.interactiveApplications[]Array item | object | No | Not specified | None specified |
issuer.interactiveApplications[].audience | string | No | Not specified | None specified |
issuer.interactiveApplications[].clientSecretRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
issuer.interactiveApplications[].grantsExplicit permissions granted to this application, per resource audience. | array | No | Not specifiedSchema default, where declared: [] | None specified |
issuer.interactiveApplications[].grants[]Array item | object | No | Not specified | None specified |
issuer.interactiveApplications[].grants[].audienceOmit for the owner BREG resource; otherwise use a declared audience. | string | No | Not specified | None specified |
issuer.interactiveApplications[].grants[].scopes | array | Yes | Not specified | None specified |
issuer.interactiveApplications[].grants[].scopes[]Array item | string | No | Not specified | None specified |
issuer.interactiveApplications[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
issuer.interactiveApplications[].origin | string | Yes | Not specified | None specified |
issuer.interactiveApplications[].redirectUris | array | Yes | Not specified | None specified |
issuer.interactiveApplications[].redirectUris[]Array item | string | No | Not specified | None specified |
issuer.interactiveApplications[].tokenAttributes | array | Yes | Not specified | None specified |
issuer.interactiveApplications[].tokenAttributes[]Array item | string | No | Not specified | None specified |
issuer.resources | array | No | Not specifiedSchema default, where declared: [] | None specified |
issuer.resources[]Array item | object | No | Not specified | None specified |
issuer.resources[].audience | string | Yes | Not specified | None specified |
issuer.resources[].scopes | array | Yes | Not specified | None specified |
issuer.resources[].scopes[]Array item | string | No | Not specified | None specified |
issuer.syntheticUsers | array | No | Not specifiedSchema default, where declared: [] | None specified |
issuer.syntheticUsers[]Array item | object | No | Not specified | None specified |
issuer.syntheticUsers[].attributes | object | Yes | Not specified | None specified |
issuer.syntheticUsers[].attributes.*Map value | string | No | Not specified |
|
issuer.syntheticUsers[].email | string | Yes | Not specified | None specified |
issuer.syntheticUsers[].grantsExplicit permissions granted to this user, per resource audience. | array | No | Not specifiedSchema default, where declared: [] | None specified |
issuer.syntheticUsers[].grants[]Array item | object | No | Not specified | None specified |
issuer.syntheticUsers[].grants[].audienceOmit for the owner BREG resource; otherwise use a declared audience. | string | No | Not specified | None specified |
issuer.syntheticUsers[].grants[].scopes | array | Yes | Not specified | None specified |
issuer.syntheticUsers[].grants[].scopes[]Array item | string | No | Not specified | None specified |
issuer.syntheticUsers[].passwordRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
issuer.syntheticUsers[].username | string | Yes | Not specified | None specified |
kindThe kind of document this file is. | string | Yes |
| None specified |
reviewAuthoritiesExact local Casework review-authority bindings for governed proposals. | object | No | Not specifiedSchema default, where declared: {} | None specified |
reviewAuthorities.*Map value | object | No | Not specified |
|
reviewAuthorities.*.clientLogical client from this same closed file. Its generated key is copied
into the private runtime secret tree and is never written to this file. | string | Yes | Not specified | None specified |
reviewAuthorities.*.completionRecipient | string | No | Not specified | None specified |
reviewAuthorities.*.completionTokenRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | No | Not specified |
|
reviewAuthorities.*.endpoint | string | Yes | Not specified | None specified |
reviewAuthorities.*.producerId | string | Yes | Not specified | None specified |
reviewAuthorities.*.profileCasework requester access profile selected on every authority exchange. | string | Yes | Not specified | None specified |
reviewAuthorities.*.recoveryDays | integer | Yes | Not specified |
|
secretProvidersThe providers that resolve this file's secret references. Required
once any member names a secret. | object | No | Not specified | None specified |
secretProviders.environmentEnables secret:env/NAME references, read from the process
environment. Declared as an empty mapping: environment: {}. | object | Conditional | Not specified | None specified |
secretProviders.fileEnables secret:file/name references, read from files under root. | object | Conditional | Not specified | None specified |
secretProviders.file.rootAbsolute directory holding one file per secret. Each file must be a
regular file owned by the runtime user, mode 0400 or 0600, with exactly
one hard link. | string | Conditional | Not specified |
|
seed | array | No | Not specifiedSchema default, where declared: [] | None specified |
seed[]Array item | object | No | Not specified | None specified |
seed[].accessProfile | string | Yes | Not specified | None specified |
seed[].client | string | Yes | Not specified | None specified |
seed[].data | object | Yes | Not specified | None specified |
seed[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
seed[].operation | string | No |
"create" | None specified |
seed[].recordType | string | Yes | Not specified | None specified |
taskGrantStatusExact Casework status services for compiled task-grant profiles. | object | No | Not specifiedSchema default, where declared: {} | None specified |
taskGrantStatus.*Map value | object | No | Not specified |
|
taskGrantStatus.*.baseUrlAn absolute http or https URL with a host preserved as written, no user information, and no backslash, whitespace or control character. DNS case and equivalent IPv6 literals are permitted. | string | Yes | Not specified |
|
taskGrantStatus.*.clientA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
taskGrantStatus.*.sourceIssuerAn identifier another system issues, written exactly as its issuer gives it. | string | Yes | Not specified |
|
Example scenarios
Section titled “Example scenarios”examples/scenarios.json declares the named scenarios bregctl examples list describes and
bregctl examples run <scenario> runs against the development instance, each step as one client
and access profile.
| Key path | Type | Required | Accepted values | Constraints |
|---|---|---|---|---|
apiVersionThe format and version this file is written in. | string | Yes |
| None specified |
kindThe kind of document this file is. | string | Yes |
| None specified |
scenarios | array | Yes | Not specified | None specified |
scenarios[]Array item | object | No | Not specified | None specified |
scenarios[].descriptionHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Yes | Not specified |
|
scenarios[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
scenarios[].input | string | Yes | Not specified | None specified |
scenarios[].steps | array | Yes | Not specified | None specified |
scenarios[].steps[]Array item | object | No | Not specified | None specified |
scenarios[].steps[].accessProfileA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
scenarios[].steps[].actionA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
scenarios[].steps[].captureLocal capture alias for this step's result. For create and invoke steps,
Record capture aliases must be unique throughout the scenario, including
aliases in captureResults; the reader checks this semantic rule. | string | Conditional | Not specified |
|
scenarios[].steps[].captureResultsMaps disclosed Action result aliases to distinct local capture aliases.
Record capture aliases must be unique throughout the scenario, including
earlier Record captures; the reader checks this semantic rule. | object | Conditional | Not specified |
|
scenarios[].steps[].captureResults.*Map valueA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | No | Not specified |
|
scenarios[].steps[].clientA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
scenarios[].steps[].expect | object | No | Not specified | None specified |
scenarios[].steps[].expect.problemCode | string | No | Not specified | None specified |
scenarios[].steps[].expect.state | string | No | Not specified | None specified |
scenarios[].steps[].expect.status | integer | No | Not specified |
|
scenarios[].steps[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
scenarios[].steps[].inputA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
scenarios[].steps[].operation | string | Yes |
| None specified |
scenarios[].steps[].proposalA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | No | Not specified |
|
scenarios[].steps[].recordA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | No | Not specified |
|
scenarios[].steps[].recordTypeA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
scenarios[].steps[].resultA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
Journeys
Section titled “Journeys”tests/journeys.yaml declares the permitted and refused calls a project must keep answering the
same way; bregctl test runs them (Test with journeys).
| Key path | Type | Required | Accepted values | Constraints |
|---|---|---|---|---|
apiVersionThe format and version this file is written in. | string | Yes |
| None specified |
journeys | array | Yes | Not specified |
|
journeys[]Array item | object | No | Not specified | None specified |
journeys[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
journeys[].steps | array | Yes | Not specified |
|
journeys[].steps[]Array item | object | No | Not specified | None specified |
journeys[].steps[].accessProfile | string | Yes | Not specified | None specified |
journeys[].steps[].action | string | No | Not specified | None specified |
journeys[].steps[].captureLocal capture alias for this step's result. Capture aliases must be unique
throughout the journey, including aliases in captureResults; the reader
checks this semantic rule. | string | No | Not specified |
|
journeys[].steps[].captureResultsMaps disclosed Action result aliases to distinct local capture aliases.
Capture aliases must be unique throughout the journey, including earlier
captures; the reader checks this semantic rule. | object | No | Not specifiedSchema default, where declared: {} | None specified |
journeys[].steps[].captureResults.*Map valueA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | No | Not specified |
|
journeys[].steps[].claims | object | No | Not specified | None specified |
journeys[].steps[].claims.actorKind | string | No |
| None specified |
journeys[].steps[].claims.actorSubject | string | No | Not specified | None specified |
journeys[].steps[].claims.directClaims | object | No | Not specified | None specified |
journeys[].steps[].claims.directClaims.*Map value | array | string | No | Not specified |
|
journeys[].steps[].claims.directClaims.*[]Array item | string | Conditional | Not specified | None specified |
journeys[].steps[].claims.principal | string | No | Not specified | None specified |
journeys[].steps[].claims.purpose | string | No | Not specified | None specified |
journeys[].steps[].claims.requesterClient | string | No | Not specified | None specified |
journeys[].steps[].claims.scopes | array | No | Not specifiedSchema default, where declared: [] |
|
journeys[].steps[].claims.scopes[]Array item | string | No | Not specified | None specified |
journeys[].steps[].expect | object | Yes | Not specified | None specified |
journeys[].steps[].expect.count | integer | No | Not specified |
|
journeys[].steps[].expect.fieldId | string | No | Not specified | None specified |
journeys[].steps[].expect.fieldsA body of the registry's own HTTP API, carried as written: the registry reads its members, and null clears a field. | object | No | Not specifiedSchema default, where declared: {} | None specified |
journeys[].steps[].expect.membersExact unordered collection membership, keyed by a prior Record capture.
Omission keeps the historical shape-only collection check; an empty
mapping explicitly expects no rows. | object | No | Not specified |
|
journeys[].steps[].expect.members.*Map value | object | No | Not specified |
|
journeys[].steps[].expect.members.*.fieldsA body of the registry's own HTTP API, carried as written: the registry reads its members, and null clears a field. | object | No | Not specifiedSchema default, where declared: {} | None specified |
journeys[].steps[].expect.outcome | string | Yes |
| None specified |
journeys[].steps[].expect.problemCode | string | No | Not specified | None specified |
journeys[].steps[].expect.recordType | string | No | Not specified | None specified |
journeys[].steps[].expect.refusalCode | string | No | Not specified | None specified |
journeys[].steps[].expect.status | integer | Yes | Not specified |
|
journeys[].steps[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
journeys[].steps[].recordType | string | No | Not specifiedSchema default, where declared: "" | None specified |
journeys[].steps[].requestOne request form. type names the form; the members beside it are the
form's own. Request bodies (items, data, values, input, and a
change's value) are the registry's HTTP API bodies, carried as written. | object | Yes | Not specified | None specified |
journeys[].steps[].request.bbox | object | Conditional | Not specified | None specified |
journeys[].steps[].request.bbox.east | string | Conditional | Not specified | None specified |
journeys[].steps[].request.bbox.north | string | Conditional | Not specified | None specified |
journeys[].steps[].request.bbox.south | string | Conditional | Not specified | None specified |
journeys[].steps[].request.bbox.west | string | Conditional | Not specified | None specified |
journeys[].steps[].request.changes | array | Conditional | Not specified | None specified |
journeys[].steps[].request.changes[]Array item | object | Conditional | Not specified | None specified |
journeys[].steps[].request.changes[].field | string | Conditional | Not specified | None specified |
journeys[].steps[].request.changes[].valueA body of the registry's own HTTP API, carried as written: the registry reads its members, and null clears a field. | Not specified | Conditional | Not specified | None specified |
journeys[].steps[].request.count | boolean | Conditional | Not specifiedSchema default, where declared: false | None specified |
journeys[].steps[].request.dataA body of the registry's own HTTP API, carried as written: the registry reads its members, and null clears a field. | object | Conditional | Not specified | None specified |
journeys[].steps[].request.etagCaptureA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
or No bound |
journeys[].steps[].request.idempotencyKey | string | Conditional | Not specified | None specified |
journeys[].steps[].request.inputA body of the registry's own HTTP API, carried as written: the registry reads its members, and null clears a field. | object | Conditional | Not specifiedSchema default, where declared: {} | None specified |
journeys[].steps[].request.items | array | Conditional | Not specified | None specified |
journeys[].steps[].request.items[]Array itemA body of the registry's own HTTP API, carried as written: the registry reads its members, and null clears a field. | object | Conditional | Not specified | None specified |
journeys[].steps[].request.items[].dataA body of the registry's own HTTP API, carried as written: the registry reads its members, and null clears a field. | object | Conditional | Not specified | None specified |
journeys[].steps[].request.items[].type | string | Conditional |
| None specified |
journeys[].steps[].request.path | string | Conditional | Not specified | None specified |
journeys[].steps[].request.preconditions | object | Conditional | Not specified | None specified |
journeys[].steps[].request.preconditions.*Map value | object | Conditional | Not specified |
|
journeys[].steps[].request.preconditions.*.conditionCapture | string | Conditional | Not specified | None specified |
journeys[].steps[].request.preconditions.*.ifMatch | string | Conditional | Not specified | None specified |
journeys[].steps[].request.proposalCaptureA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
journeys[].steps[].request.recordCapture | string | Conditional | Not specified | None specified |
journeys[].steps[].request.select | array | Conditional | Not specifiedSchema default, where declared: [] |
|
journeys[].steps[].request.select[]Array item | string | Conditional | Not specified | None specified |
journeys[].steps[].request.selector | string | Conditional | Not specified | None specified |
journeys[].steps[].request.submissionCaptureA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Conditional | Not specified |
|
journeys[].steps[].request.top | integer | Conditional | Not specified |
|
journeys[].steps[].request.transition | string | Conditional |
| None specified |
journeys[].steps[].request.type | string | Yes |
| None specified |
journeys[].steps[].request.valuesA body of the registry's own HTTP API, carried as written: the registry reads its members, and null clears a field. | object | Conditional | Not specifiedSchema default, where declared: {} | None specified |
kindThe kind of document this file is. | string | Yes |
| None specified |
Schema test credentials
Section titled “Schema test credentials”bregctl test --credentials <absolute-file> reads one binding for every step of the packaged
journeys, and refuses a file that misses a step or binds one twice. Each credential is a bearer
token named by a secret reference, never inline
(Check, test, package).
apiVersion: id.registrystack.org/formats/breg/schema-test-credentials/v1kind: BRegSchemaTestCredentialsbindings: - journeyId: asset-and-site-caller-surfaces stepId: create-asset credential: type: bearer tokenRef: secret:file/operator-token - journeyId: asset-and-site-caller-surfaces stepId: planner-gets-asset credential: type: bearer tokenRef: secret:env/PLANNER_TOKEN| Key path | Type | Required | Accepted values | Constraints |
|---|---|---|---|---|
apiVersionThe format and version this file is written in. | string | Yes |
| None specified |
bindings | array | Yes | Not specified | None specified |
bindings[]Array item | object | No | Not specified | None specified |
bindings[].credential | object | Yes | Not specified | None specified |
bindings[].credential.tokenRefAn exact secret reference: secret:file/name, resolved under secretProviders.file.root, or secret:env/NAME, resolved only when secretProviders.environment is declared. | string | Yes | Not specified |
|
bindings[].credential.type | string | Yes |
| None specified |
bindings[].journeyIdA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
bindings[].stepIdA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
kindThe kind of document this file is. | string | Yes |
| None specified |
Migration descriptor
Section titled “Migration descriptor”A reviewed migration’s descriptor.json declares the steps and assertions that carry stored
Records to the successor package
(Write a reviewed migration descriptor).
| Key path | Type | Required | Accepted values | Constraints |
|---|---|---|---|---|
apiVersionThe format and version this file is written in. | string | Yes |
| None specified |
backupBindingPath | string | No | Not specified | None specified |
changeClassThe descriptor's schema vocabulary mirrors descriptor_problems, while
compiled package changes retain their broader internal classification. | string | Yes |
| None specified |
covers | array | Yes | Not specified | None specified |
covers[]Array item | object | No | Not specified | None specified |
covers[].code | string | Yes |
| None specified |
covers[].target | object | Yes | Not specified | None specified |
covers[].target.entityId | string | No | Not specified | None specified |
covers[].target.kind | string | Yes |
| None specified |
covers[].target.memberId | string | No | Not specified | None specified |
historyThe reviewed choice for pre-flip plaintext history. Required exactly
when a cover turns field encryption on; carried with no default so a
missing or silently assumed choice can never reach a plan. | string | No |
| None specified |
idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
kindThe kind of document this file is. | string | Yes |
| None specified |
lockTimeoutMillisecondsThe document member lockTimeoutMilliseconds. | integer | Yes | Not specified |
|
postAssertions | array | Yes | Not specified | None specified |
postAssertions[]Array item | object | No | Not specified | None specified |
postAssertions[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
postAssertions[].sqlPath | string | Yes | Not specified | None specified |
preAssertions | array | Yes | Not specified | None specified |
preAssertions[]Array item | object | No | Not specified | None specified |
preAssertions[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
preAssertions[].sqlPath | string | Yes | Not specified | None specified |
recoveryHow an interrupted activation of the reviewed plan is recovered.
bregctl plan --format json prints the same word. | string | Yes |
| None specified |
rehearsalReceiptPath | string | Yes | Not specified | None specified |
statementTimeoutMillisecondsThe document member statementTimeoutMilliseconds. | integer | Yes | Not specified |
|
steps | array | Yes | Not specified | None specified |
steps[]Array itemOne reviewed step, tagged by type (CFG-ID-7). Rust field names keep
their engine spelling; each serde rename names the document member. | object | No | Not specified | None specified |
steps[].affectedRows | object | Conditional | Not specified | None specified |
steps[].affectedRows.maximumThe document member maximum. | integer | Conditional | Not specified |
|
steps[].affectedRows.minimumThe document member minimum. | integer | Conditional | Not specified |
|
steps[].chunkSize | integer | Conditional | Not specified |
|
steps[].cursor | string | Conditional |
| None specified |
steps[].exactAffectedRows | boolean | Conditional | Not specified | None specified |
steps[].idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
steps[].lockTimeoutMillisecondsThe document member lockTimeoutMilliseconds. | integer | Conditional | Not specified |
|
steps[].maximumTotalRowsThe document member maximumTotalRows. | integer | Conditional | Not specified |
|
steps[].objects | array | Yes | Not specified | None specified |
steps[].objects[]Array item | object | No | Not specified | None specified |
steps[].objects[].kind | string | Yes |
| None specified |
steps[].objects[].memberThe document member member. | string | No | Not specified | None specified |
steps[].objects[].physicalName | string | Yes | Not specified | None specified |
steps[].objects[].recordTypeThe document member recordType. | string | Yes | Not specified | None specified |
steps[].objects[].schema | string | Yes | Not specified | None specified |
steps[].objects[].table | string | Yes | Not specified | None specified |
steps[].recordTypeThe document member recordType. | string | Conditional | Not specified | None specified |
steps[].sqlPath | string | Conditional | Not specified | None specified |
steps[].statementTimeoutMillisecondsThe document member statementTimeoutMilliseconds. | integer | Conditional | Not specified |
|
steps[].type | string | Yes |
| None specified |
Backup binding
Section titled “Backup binding”A backup binding is the JSON document you write beside a database backup and pass to
bregctl plan and bregctl apply as --backup <backupBindingPath>=<binding file> for a
destructive migration. It stays outside the package, because each environment backs up its own
database (Activate the successor).
| Key path | Type | Required | Accepted values | Constraints |
|---|---|---|---|---|
apiVersionThe format and version this file is written in. | string | Yes |
| None specified |
backupFile | string | Yes | Not specified | None specified |
createdAt | string | Yes | Not specified | None specified |
databaseThe document member database: the database identity the binding
was taken from. | string | Yes | Not specified | None specified |
digestThe document member digest. | string | Yes | Not specified |
|
kindThe kind of document this file is. | string | Yes |
| None specified |
maximumAgeSecondsThe document member maximumAgeSeconds. | integer | Yes | Not specified |
|
priorPackageDigestA SHA-256 digest: sha256: followed by 64 lowercase hex digits. | string | Yes | Not specified |
|
priorSchemaFingerprintA SHA-256 digest: sha256: followed by 64 lowercase hex digits. | string | Yes | Not specified |
|
sizeBytesThe document member sizeBytes. | integer | Yes | Not specified |
|
Model selection
Section titled “Model selection”bregctl init <destination> --from publicschema --selection <file> derives a project from a
selection and keeps a copy as model/selection.yaml. The terminal questions
(PublicSchema wizard) and the shipped starters produce the same
document.
| Key path | Type | Required | Accepted values | Constraints |
|---|---|---|---|---|
apiVersionThe format and version this file is written in. | string | Yes |
| None specified |
kindThe kind of document this file is. | string | Yes |
| None specified |
modelThe PublicSchema reference model embedded in this binary. | string | Yes |
| None specified |
modelRevisionThe upstream commit of the model snapshot the selection was written
against. When present it must equal the embedded snapshot's commit, so
a selection written for one revision of the model is not silently
applied to another. | string | No | Not specified | None specified |
modelVersionThe model version the selection was written against. When present it
must equal the embedded snapshot's declared version label. Several
revisions of the model can share one version label, so this alone does
not pin a revision; modelRevision does. | string | No | Not specified | None specified |
recordTypes | array | Yes | Not specified | None specified |
recordTypes[]Array itemOne concept of the model that becomes an entity. | object | No | Not specified | None specified |
recordTypes[].classificationThe entity classification; internal when absent. | string | No | Not specified | None specified |
recordTypes[].conceptThe concept's name in the model. | string | Yes | Not specified | None specified |
recordTypes[].idThe entity identifier; the concept name in kebab case when absent. | string | No | Not specified |
|
recordTypes[].identifierFieldThe field that identifies a record; <id>-code when absent. | string | No | Not specified | None specified |
recordTypes[].properties | array | No | Not specified | None specified |
recordTypes[].properties[]Array itemOne property of the concept that becomes a field. | object | No | Not specified | None specified |
recordTypes[].properties[].nameThe property's name in the model. | string | Yes | Not specified | None specified |
recordTypes[].properties[].targetFor a property whose range is another concept: the selected entity the
reference points at. Required only when more than one selected entity
fits the range. | string | No | Not specified | None specified |
recordTypes[].routeThe collection route; the entity identifier pluralized when absent. | string | No | Not specified | None specified |
registry | object | Yes | Not specified | None specified |
registry.idA local identifier: a lowercase letter, then up to 63 lowercase letters, digits, _, or -. | string | Yes | Not specified |
|
registry.titleHuman-readable display text. Bidirectional embedding, override, and isolate controls, byte-order marks, line and paragraph separators, and Unicode noncharacters are refused; multilingual joiners and direction marks remain valid. | string | Yes | Not specified | None specified |
vocabularies | array | No | Not specified | None specified |
vocabularies[]Array itemHow one enumeration of the model is carried, overriding the size rule. | object | No | Not specified | None specified |
vocabularies[].enumThe enumeration's name in the model. | string | Yes | Not specified | None specified |
vocabularies[].modeFor inline: A closed vocabulary-code field with every value listed in the
project. For code: A bounded string that carries the code without the project listing the
values. | string | Yes |
| None specified |
Check commands
Section titled “Check commands”bregctl check <project> compiles the project offline. Adding --runtime-config <file> also
checks runtime.yaml as breg reads it at startup, against the project’s access profiles, without
a database, network, or secret. bregctl doctor --runtime-config <absolute-file> then checks the
deployment: the package, database, audit destination, identity provider, and the other dependencies
breg opens. Check a file before you deploy
it describes diagnostics and exit codes.
| Format and files | Check command |
|---|---|
Registry project
| bregctl check <project> |
Registry module
| bregctl check <project> |
Base Registry Engine runtime configuration
| bregctl check <project> --runtime-config <file> |
Citizen MCP gateway runtime configuration
| breg-mcp --runtime-config <file> check |
Citizen review page runtime configuration
| breg-review --runtime-config <file> check |
Acceptance journeys
| bregctl check <project> --file <file> |
Schema test credentials
| bregctl check --file <file> |
PublicSchema model selection
| bregctl check --file <file> |
Development clients
| bregctl check --file <file> |
Example scenarios
| bregctl check --file <file> |
Reviewed migration descriptor
| bregctl check --file <file> |
External backup binding
| bregctl check --file <file> |
LinkML schema read by bregctl init --from
| None |
- Author a registry project
- Deploy and serve
- Base Registry Engine API reference
- Configuration files: the YAML rules every product shares