Klineo/Docs
Open app ↗

API reference

Protected execution planning

Paths on this page are relative to /api/liquidity-studio/v2. Authentication and required headers vary by operation.

API reference overview · OpenAPI download

Operations on this page#

Method Path Operation
GET /quote-sets listQuoteSets
POST /quote-sets admitProtectedExecutionQuoteSet
GET /quote-sets/{id} getQuoteSets
GET /protected-execution-plans listProtectedExecutionPlans
POST /protected-execution-plans prepareProtectedExecutionPlan
GET /protected-execution-plans/{id} getProtectedExecutionPlans
POST /quote-requests createProtectedExecutionQuoteRequest
POST /quote-requests/{id}/quotes admitProtectedExecutionQuotesForRequest
GET /protected-execution-plans/{id}/state getProtectedExecutionPlanState
POST /protected-execution-plans/{id}/transitions appendProtectedExecutionLegTransition

List protected execution quote sets#

GET /quote-sets

Operation ID: listQuoteSets

Authentication: __Host-klineo_session cookie (sessionCookie)

Parameters#

Name Location Required Type Description and constraints
x-klineo-organization-id header Yes string —
cursor query No string Opaque cursor returned in the previous response metadata.
limit query No integer Default: 50; Minimum: 1; Maximum: 100

Responses#

Status Description Content type and schema
200 Latest tenant-isolated aggregate versions application/json: object

200 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes Array of All of: RecordEnvelope; object —
data[].allOf[2].payload Yes ProtectedExecutionQuoteSet —
meta Yes object Additional properties rejected
meta.count Yes integer Minimum: 0
meta.hasMore Yes boolean —
meta.nextCursor No string —

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Append signed provider quotes to an immutable policy-bound quote request#

POST /quote-sets

Operation ID: admitProtectedExecutionQuoteSet

Authentication: __Host-klineo_session cookie (sessionCookie)

Parameters#

Name Location Required Type Description and constraints
Idempotency-Key header Yes string Min length: 8; Max length: 160
x-klineo-organization-id header Yes string —
If-Match header Yes string Pattern: ^"[^"\\ ]+"$

Request body#

Required: yes.

application/json

object — Additional properties rejected

Field Required at this level Type Description and constraints
quoteRequestId Yes string —
quotes Yes Array of ProtectedExecutionQuote Max items: 64
unavailableReasons Yes Array of string Max items: 64
reason Yes string Min length: 3; Max length: 500

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Responses#

Status Description Content type and schema
201 Current provider generations and quote signatures verified application/json: object
412 Quote request changed No response body declared

201 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes All of: RecordEnvelope; object —
data.allOf[2].payload Yes ProtectedExecutionQuoteSet —

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Get one protected execution quote sets aggregate#

GET /quote-sets/{id}

Operation ID: getQuoteSets

Authentication: __Host-klineo_session cookie (sessionCookie)

Parameters#

Name Location Required Type Description and constraints
x-klineo-organization-id header Yes string —
id path Yes string —

Responses#

Status Description Content type and schema
200 Current immutable aggregate version application/json: object
404 Not found No response body declared

200 response headers

Header Required Type Description and constraints
ETag Yes string —

200 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes All of: RecordEnvelope; object —
data.allOf[2].payload Yes ProtectedExecutionQuoteSet —

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

List protected execution plans#

GET /protected-execution-plans

Operation ID: listProtectedExecutionPlans

Authentication: __Host-klineo_session cookie (sessionCookie)

Parameters#

Name Location Required Type Description and constraints
x-klineo-organization-id header Yes string —
cursor query No string Opaque cursor returned in the previous response metadata.
limit query No integer Default: 50; Minimum: 1; Maximum: 100

Responses#

Status Description Content type and schema
200 Latest tenant-isolated aggregate versions application/json: object

200 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes Array of All of: RecordEnvelope; object —
data[].allOf[2].payload Yes ProtectedExecutionPlan —
meta Yes object Additional properties rejected
meta.count Yes integer Minimum: 0
meta.hasMore Yes boolean —
meta.nextCursor No string —

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Prepare typed child legs under the quote request current immutable policy binding#

POST /protected-execution-plans

Operation ID: prepareProtectedExecutionPlan

Authentication: __Host-klineo_session cookie (sessionCookie)

Parameters#

Name Location Required Type Description and constraints
Idempotency-Key header Yes string Min length: 8; Max length: 160
x-klineo-organization-id header Yes string —

Request body#

Required: yes.

application/json

object — Additional properties rejected

Field Required at this level Type Description and constraints
quoteSetId Yes string Min length: 3; Max length: 160
childLegCount Yes integer Minimum: 1; Maximum: 32
reason Yes string Min length: 3; Max length: 500

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Responses#

Status Description Content type and schema
201 Non-broadcast typed plan, or explicit PAUSED state when protected liquidity is unavailable application/json: object

201 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes object Additional properties rejected
data.id Yes string —
data.organizationId Yes string —
data.recordType Yes OperatingSystemRecordType —
data.version Yes integer Minimum: 1
data.status Yes OperatingSystemRecordStatus —
data.payload Yes ProtectedExecutionPlan —
data.artifactHash Yes Hash —
data.evidenceHashes Yes Array of Hash —
data.createdBy Yes string —
data.reason Yes string —
data.requestId Yes string —
data.createdAt Yes string Format: date-time
data.updatedAt Yes string Format: date-time
data.supersedesVersion No integer Minimum: 1
data.resourceVersion Yes Hash —
data.stateHash Yes Hash —
data.publicMempoolFallbackDerivedFromPolicy Yes Constant true —
data.executionBroadcast Yes Constant false —

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Get one protected execution plans aggregate#

GET /protected-execution-plans/{id}

Operation ID: getProtectedExecutionPlans

Authentication: __Host-klineo_session cookie (sessionCookie)

Parameters#

Name Location Required Type Description and constraints
x-klineo-organization-id header Yes string —
id path Yes string —

Responses#

Status Description Content type and schema
200 Current immutable aggregate version application/json: object
404 Not found No response body declared

200 response headers

Header Required Type Description and constraints
ETag Yes string —

200 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes All of: RecordEnvelope; object —
data.allOf[2].payload Yes ProtectedExecutionPlan —

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Create a server-derived quote request bound to the current immutable AutonomyPolicy generation#

POST /quote-requests

Operation ID: createProtectedExecutionQuoteRequest

Authentication: __Host-klineo_session cookie (sessionCookie)

Parameters#

Name Location Required Type Description and constraints
Idempotency-Key header Yes string Min length: 8; Max length: 160
x-klineo-organization-id header Yes string —

Request body#

Required: yes.

application/json

object — Additional properties rejected

Field Required at this level Type Description and constraints
vaultId Yes string —
chainId Yes integer Minimum: 1
assetIn Yes Address —
assetOut Yes Address —
settlementContract Yes Address —
settlementAdapterId Yes string —
amountIn Yes PositiveAtomicAmount —
maximumSlippagePips Yes Pips —
expiresAt Yes string Format: date-time
providerIds Yes Array of string Min items: 1; Max items: 64
reason Yes string Min length: 3; Max length: 500

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Responses#

Status Description Content type and schema
201 Immutable draft request; public fallback is derived server-side application/json: object

201 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes object Additional properties rejected
data.id Yes string —
data.organizationId Yes string —
data.recordType Yes OperatingSystemRecordType —
data.version Yes integer Minimum: 1
data.status Yes OperatingSystemRecordStatus —
data.payload Yes ProtectedExecutionQuoteRequest —
data.artifactHash Yes Hash —
data.evidenceHashes Yes Array of Hash —
data.createdBy Yes string —
data.reason Yes string —
data.requestId Yes string —
data.createdAt Yes string Format: date-time
data.updatedAt Yes string Format: date-time
data.supersedesVersion No integer Minimum: 1
data.resourceVersion Yes Hash —
data.publicMempoolFallbackDerivedFromPolicy Yes Constant true —
data.executable Yes Constant false —

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Verify and append current-generation signed provider quotes#

POST /quote-requests/{id}/quotes

Operation ID: admitProtectedExecutionQuotesForRequest

Authentication: __Host-klineo_session cookie (sessionCookie)

Parameters#

Name Location Required Type Description and constraints
Idempotency-Key header Yes string Min length: 8; Max length: 160
x-klineo-organization-id header Yes string —
id path Yes string —
If-Match header Yes string Pattern: ^"[^"\\ ]+"$

Request body#

Required: yes.

application/json

object — Additional properties rejected

Field Required at this level Type Description and constraints
quoteRequestId Yes string —
quotes Yes Array of ProtectedExecutionQuote Max items: 64
unavailableReasons Yes Array of string Max items: 64
reason Yes string Min length: 3; Max length: 500

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Responses#

Status Description Content type and schema
201 Signed quote set appended application/json: object
412 Quote request changed No response body declared

201 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes All of: RecordEnvelope; object —
data.allOf[2].payload Yes ProtectedExecutionQuoteSet —

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Read materialized child-leg accounting and its deterministic state hash#

GET /protected-execution-plans/{id}/state

Operation ID: getProtectedExecutionPlanState

Authentication: __Host-klineo_session cookie (sessionCookie)

Parameters#

Name Location Required Type Description and constraints
x-klineo-organization-id header Yes string —
id path Yes string —

Responses#

Status Description Content type and schema
200 Typed append-only lifecycle state application/json: object

200 response headers

Header Required Type Description and constraints
ETag Yes string —

200 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes object Additional properties rejected
data.plan Yes ProtectedExecutionPlan —
data.stateHash Yes Hash —

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Request a server-verified typed lifecycle transition without accepting client evidence#

POST /protected-execution-plans/{id}/transitions

Operation ID: appendProtectedExecutionLegTransition

Authentication: __Host-klineo_session cookie (sessionCookie)

Parameters#

Name Location Required Type Description and constraints
Idempotency-Key header Yes string Min length: 8; Max length: 160
x-klineo-organization-id header Yes string —
id path Yes string —
If-Match header Yes string Pattern: ^"[^"\\ ]+"$

Request body#

Required: yes.

application/json

object — Additional properties rejected

Field Required at this level Type Description and constraints
childLegId Yes string —
toStatus Yes string Allowed: SUBMITTED, FINALIZED_RECONCILED, PAUSED, FAILED
previousStateHash Yes Hash —
reason Yes string Min length: 3; Max length: 500

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Responses#

Status Description Content type and schema
201 Server-derived transition, immutable event, and conservation result application/json: object
400 Client attempted to supply authority-bearing evidence No response body declared
409 Release, Safe/action authorization, gateway, finality, or reconciliation is unavailable No response body declared
412 Plan or state changed No response body declared

201 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes object Additional properties rejected
data.record Yes All of: RecordEnvelope; object —
data.record.allOf[2].payload Yes ProtectedExecutionPlan —
data.transition Yes OperatingSystemEvent —
data.stateHash Yes Hash —
data.inputConserved Yes boolean —
data.executionBroadcast Yes Constant false —

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.