Klineo/Docs
Open app ↗

API reference

Venues, allocations and migrations

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 /venues listVenues
POST /venues createVenues
GET /venues/{id} getVenues
PATCH /venues/{id} supersedeVenues
GET /venue-observations listVenueObservations
GET /venue-observations/{id} getVenueObservations
GET /allocation-plans listAllocationPlans
POST /allocation-plans createAllocationPlans
GET /allocation-plans/{id} getAllocationPlans
GET /migration-plans listMigrationPlans
POST /migration-plans createMigrationPlans
GET /migration-plans/{id} getMigrationPlans
POST /venues/{id}/index-jobs queueVenueIndex
GET /migration-plans/{id}/state getMigrationPlanState
POST /migration-plans/{id}/transitions appendMigrationPlanTransition

List venue profiles#

GET /venues

Operation ID: listVenues

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 VenueProfile —
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.

Create venue profiles#

POST /venues

Operation ID: createVenues

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
payload Yes VenueProfile —
status No OperatingSystemRecordStatus —
evidenceHashes No Array of Hash Max items: 256
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 Append-only aggregate created application/json: object

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 VenueProfile —

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

Get one venue profiles aggregate#

GET /venues/{id}

Operation ID: getVenues

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 VenueProfile —

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

Supersede validation-only read-profile metadata; write adapters require a separate signed release#

PATCH /venues/{id}

Operation ID: supersedeVenues

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 —
id path Yes string —

Request body#

Required: yes.

application/json

object — Additional properties rejected

Field Required at this level Type Description and constraints
payload No VenueProfile —
status No string Allowed: DRAFT, VALIDATED, PAUSED, REVOKED
evidenceHashes No Array of Hash Max items: 256
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
200 Append-only bounded supersession accepted with deterministic evidence application/json: object
400 Payload or safety transition is outside this bounded operation No response body declared
409 Typed authority workflow is required No response body declared
412 Strong precondition failed No response body declared

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 VenueProfile —

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

List venue observations#

GET /venue-observations

Operation ID: listVenueObservations

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 VenueObservation —
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.

Get one venue observations aggregate#

GET /venue-observations/{id}

Operation ID: getVenueObservations

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 VenueObservation —

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

List multi-venue allocation plans#

GET /allocation-plans

Operation ID: listAllocationPlans

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 AllocationPlan —
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.

Create multi-venue allocation plans#

POST /allocation-plans

Operation ID: createAllocationPlans

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

AllocationRequest

Responses#

Status Description Content type and schema
201 Append-only aggregate created application/json: object

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 AllocationPlan —

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

Get one multi-venue allocation plans aggregate#

GET /allocation-plans/{id}

Operation ID: getAllocationPlans

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 AllocationPlan —

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

List liquidity migration plans#

GET /migration-plans

Operation ID: listMigrationPlans

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 MigrationPlan —
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.

Create liquidity migration plans#

POST /migration-plans

Operation ID: createMigrationPlans

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

MigrationRequest

Responses#

Status Description Content type and schema
201 Append-only aggregate created application/json: object

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 MigrationPlan —

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

Get one liquidity migration plans aggregate#

GET /migration-plans/{id}

Operation ID: getMigrationPlans

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 MigrationPlan —

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

Queue signed RPC quorum and finality indexing for one exact current venue-profile generation#

POST /venues/{id}/index-jobs

Operation ID: queueVenueIndex

Authentication: __Host-klineo_session cookie (sessionCookie)

The job binds the profile record version, resource version, artifact hash, identity, adapter, controller venue, and asset-pair facts. Only current VALIDATED or ACTIVE profiles are accepted.

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 —

Request body#

Required: yes.

application/json

object — Additional properties rejected

Field Required at this level Type Description and constraints
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
202 Fenced generation-bound venue indexing job application/json: object
409 Profile is draft, paused, revoked, superseded, or otherwise not currently eligible No response body declared

202 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes OperatingSystemJob —

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

Materialize ordered forward and rollback state from immutable transition evidence#

GET /migration-plans/{id}/state

Operation ID: getMigrationPlanState

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 Deterministic migration execution state application/json: object
422 Transition history fails closed No response body declared

200 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes MigrationPlanStateResult —

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 action-specific migration lifecycle transition#

POST /migration-plans/{id}/transitions

Operation ID: appendMigrationPlanTransition

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

MigrationTransitionRequest

Responses#

Status Description Content type and schema
201 Server-derived immutable transition and newly materialized state application/json: object
400 Client attempted to supply authority-bearing evidence No response body declared
403 Role has no migration execution authority No response body declared
409 Preview plan, changed or revoked bound venue generation, or canonical gateway/Safe/finality/reconciliation evidence is unavailable No response body declared
412 Plan or state precondition changed No response body declared
422 Transition violates ordered finality/reconciliation rules No response body declared

201 application/json body

object — Additional properties rejected

Field Required at this level Type Description and constraints
data Yes MigrationTransitionResult —

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