Skip to main content
Parmana Execution Intent API (ADR-0012).

ExecutionIntentApi Objects

Execution Intent API (ADR-0012). An Execution Intent is a signed statement, stored BEFORE an action is released to a connector, of exactly what is about to be released. It proves what was about to be released. It does NOT prove the action was released, or what its result was.

Responsibilities

  • Verify an intent’s hash and signature (no credential needed)
  • Retrieve an intent and its status
  • List intents that never reached a signed Trust Record
  • Rebuild a missing Trust Record for a released action (finalize)
  • Close an intent an operator reconciled by hand (resolve)
This API does NOT execute Business Transactions or call any connector.

verify

Verify an Execution Intent’s hash and signature. Maps to POST /execution-intents/verify. Takes the intent itself and needs no caller authentication, like RefusalApi.verify(). Returns True if the intent is genuine and unaltered, False otherwise.

get

Retrieve an Execution Intent and its status. Maps to GET /execution-intents/:businessTransactionId. Behind caller authentication and ownership scoping.

list_unfinalized

List intents that never reached a signed Trust Record and were not closed by hand, oldest first. Maps to GET /execution-intents/unfinalized. Requires a credential provisioned as a verified human. limit defaults to 50 on the server, with a maximum of 200.

finalize

Rebuild the signed Execution Trust Record for a released action whose record was never produced. Maps to POST /execution-intents/:businessTransactionId/finalize. It never calls a connector and is safe to run twice. Requires a credential provisioned as a verified human.

resolve

Close a PREPARED or ERRORED intent that a verified human reconciled at the connector. Maps to POST /execution-intents/:businessTransactionId/resolve.

Parameters

resolution: What you found at the connector: NOT_EXECUTED or EXECUTED. note: Required, at most 2000 characters. What you checked and found. The resolution is an attributed operator statement in unsigned status. It is not tamper evident and it is not a Trust Record. It never calls a connector and is idempotent.