Skip to main content
POST
cURL

Authorizations

Authorization
string
header
required

A human key (credentialHolderType: USER) issued by the operator. Sent as Authorization: Bearer . The public sandbox and its demo key are refused on these routes, so no key is prefilled here.

Path Parameters

businessTransactionId
string
required

The transaction's id.

Body

application/json

Request body for POST /execution-intents/{businessTransactionId}/resolve. Both fields are required. The note is required on purpose, because it is the only record of what the operator found at the connector.

resolution
enum<string>
required

What you established at the connector. NOT_EXECUTED: the action did not run. EXECUTED: it did run.

Available options:
NOT_EXECUTED,
EXECUTED
note
string
required

What you checked and found, for example the connector and the reference you looked at. Surrounding space is trimmed.

Required string length: 1 - 2000

Response

The intent is closed. outcome is RESOLVED when this call closed it, ALREADY_RESOLVED when it was already closed.

Response returned by POST /execution-intents/{businessTransactionId}/resolve. RESOLVED means this call closed the intent. ALREADY_RESOLVED means it was already closed and nothing was changed: the original resolution, note and author are returned, never the new request's.

outcome
enum<string>
required
Available options:
RESOLVED,
ALREADY_RESOLVED
businessTransactionId
string
required
intent
Execution Intent · object
required

A signed statement, made and stored BEFORE an action is released to a connector, of exactly what is about to be released (ADR-0012). It exists so that an action that was released always has signed evidence behind it, even when the Execution Trust Record cannot be produced afterwards. It contains only facts that exist before release: never the execution result, and never the raw intent parameters (the businessTransactionHash binds the intent to them). It is a separate record from the Execution Trust Record, which keeps its own format. An intent proves what was about to be released. It does NOT prove the action was released or what its result was. At most one Execution Intent exists per businessTransactionId.

Example:
status
Execution Intent Status · object
required

Operational status kept next to a signed Execution Intent. It is NOT part of what is signed, so it changes as the request progresses. PREPARED: the intent is signed and stored, and the action may or may not have been released. An intent that stays PREPARED needs reconciliation with the connector. RELEASED: the release stage returned and the execution context was saved, so the Trust Record can be rebuilt. FINALIZED: a signed Execution Trust Record exists for this transaction. ERRORED: the release stage raised an error. The action may still have been executed, so the outcome is unknown and must be reconciled. RESOLVED: a verified human reconciled a PREPARED or ERRORED intent at the connector and closed it with POST /execution-intents/{businessTransactionId}/resolve, recording what they found and a note. The resolution is an attributed operator statement stored in this unsigned status. It is NOT tamper evident and it is not a Trust Record.

Example: