Skip to main content
POST

Authorizations

Authorization
string
header
required

An agent API key, krt_live_... or krt_test_..., shown exactly once at creation. Kordio stores only a digest. This credential can ask for authorization and can never write policy.

Headers

Idempotency-Key
string
required

Unique per action, scoped to the agent. A replay returns the original intent and the original decision, at the original status, rather than reserving budget twice.

Example:

"order-4471-attempt-1"

Body

application/json
budget_id
string<uuid>
required

An active session belonging to this agent.

action_type
string
required

Lowercase, dot separated.

Pattern: ^[a-z][a-z0-9_]*(\.[a-z][a-z0-9_]*)*$
Example:

"payment.create"

resource
string | null

The counterparty or target. Matched by allowlists.

Example:

"acme-supplies.example"

cost_cents
integer
default:0

Minor units. Omit or 0 for an action that spends nothing.

Required range: x >= 0
metadata
object

Any dot path here is addressable from the condition language as metadata.*.

trace_id
string | null

Yours if you have one, generated otherwise. Links the whole audit trail.

Response

allowed. Execute the action, then report the outcome with complete or fail. A cosignature is included when cosigning is configured.

data
object
required
decision
object
required
cosignature
string

A compact ES256 JWS over the authorization. Present only when the outcome is allowed and cosigning is configured; the key is absent otherwise, never null.