Skip to main content
POST
Authorize a payment

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.

Body

application/json
budget_id
string<uuid>
required
amount_cents
integer
required
Required range: x >= 1
Example:

12000

idempotency_key
string
required

Required, and sent in the body rather than as a header. Unique per agent. A replay returns the original intent and decision at the original status.

Example:

"order-4471-attempt-1"

counterparty
string | null
Example:

"acme-supplies.example"

spend_token_id
string<uuid> | null

A token minted by this agent against the same session.

trace_id
string | null
decision_context
object

Free-form context stored with the intent and echoed back, with the decision merged in under the key decision. Provenance only: policy never reads it. Put anything a rule must evaluate in metadata.

metadata
object

Facts the policy engine evaluates, reachable in a rule as metadata.<key> with dot paths for nested values. Same field, same meaning, as on POST /v1/agent/actions.

Response

allowed. The payment is pending until you settle it and report back.

data
object
required
decision
object
required
cosignature
string