Skip to content
Concepts: all pages

Concepts

Intent

An Intent is the authorised operational objective and constraints for a specific action or workflow. Permission says what a credential can reach. Intent says what this actor is authorised to do, within what bounds, for how long.

Live · signed-in operation in TrustOps

ECZ-ID Intent is live and sold through TrustOps. Intents are created and authorised in the TrustOps Dashboard. There is no public developer API for Intents, and the public Intent disclosure is not enabled.

ECZ-ID Intent today · measured 2026-10-10

Commercial capability
Available through TrustOpsPlans are sold in TrustOps.
Signed-in operation
LiveCreated and authorised by the account holder, signed in, in the TrustOps Dashboard.
Public developer interface
NoneThere is no public developer API. Public Intent disclosure is defined in Core and not enabled.

Accountability Chain:Intent

Permission is not Intent

Permission (your access system)

  • The agent’s token carries payments:write
  • It can pay anyone, any amount, at any time
  • It says what the credential can reach
  • It cannot tell a legitimate payment from a mistaken one

Intent (ECZ-ID)

  • Pay supplier invoices from the approved list
  • Up to £500 each and £5,000 in total, in GBP
  • This week only, with no card data
  • Anything above £250 is held for approval

Permission is necessary and never sufficient. An action can be fully permitted and still outside what anyone authorised. An Intent states the objective and its bounds so that a proposed action can be checked against them before it has a consequence.

What an Intent carries

Field-level detail, limits and states are in the Intent envelope reference.
ElementWhere it lives in the Core contract
Actoractor: the child ECZ-ID and family of the machine that will act
Principal and operatorparent_ecz_id, and authorisation.principal_ref with its role
Objectiveobjective_summary, with an optional purpose_version
Targetstargets: up to 32 ECZ-IDs the actor may act on
Actions, resources, destinationsconstraints.actions, constraints.resources and constraints.destinations, each a permitted and an excluded pattern set
Parametersconstraints.parameters: path, operator and value rules
Valueconstraints.financial: currency, maximum per action, maximum in total
Dataconstraints.data_classes_denied
Approvalconstraints.approval: actions that need approval, and an amount above which approval is required
Rateconstraints.rate: maximum actions per window
Counterpartyconstraints.counterparty: the counterparty ECZ-ID, required bindings, maximum proof age and what to do on change
Durationwindow.not_before and window.expires_at
Authorityauthorisation
Delegationdelegation, parent_intent and authorisation.chain
Disclosurepublication.published; the public disclosure is digest-only
Timestamps and historycreated_at, updated_at and delta[], one entry per change

Some elements belong to the moment of action, not to the Intent. A nonce, an idempotency key and a correlation ID describe one request, so they travel with the proposed action, not with the standing authorisation. See carrying Intent.

Only an active Intent is in force

An Intent moves through DRAFT, APPROVAL_REQUIRED, AUTHORISED, ACTIVE, COMPLETED, EXPIRED, REVOKED and SUPERSEDED. Only ACTIVE is in force. Holding an Intent identifier authorises nothing by itself, and a sandbox Intent never authorises a production action.

This page is explanation, not authority. Current state is only ever the live Resolver record. Live facts on this page were measured read-only on 2026-10-10.