Skip to main content
POST
Submit settlement instruction

Authorizations

Authorization
string
header
required

Auth0 JWT access token. See Authentication for details.

Body

application/json
template_slug
string
required
Required string length: 1 - 100
role
string
required
Required string length: 1 - 100
party
InstructionPartyInput · object
required

The submitting party of an instruction.

legs
InstructionLegInput · object[]
required
Minimum array length: 1
timeout_at
string<date-time>
required
idempotency_key
string
required

Your key for safe retries, unique within the environment. A retry with the same key returns the existing resource. Keys starting with 'match-' are reserved for keys KeyStone derives and are refused.

Required string length: 1 - 255
trade_reference
string | null

The counterparties' shared reference for the pre-agreed trade. A reference you choose yourself matches only within your own environment; cross-platform matching uses the reference KeyStone generates when this field is null.

Maximum string length: 255
trade_type
string | null
Maximum string length: 50
repo_terms
RepoTermsInput · object | null

Canonical repo terms supplied with a repo_open instruction.

These map 1:1 to the repo_terms table columns. The repayment amount on the closing leg is derived from tenor_days + rate_bps + opening payment-leg quantity, so callers do not pass it explicitly.

Response

Successful Response

Read schema for settlement instructions.

Maps party_data/legs_data from the ORM model to party/legs in the response using validation_alias with populate_by_name so both names are accepted.

id
string<uuid>
required
trade_reference
string
required
status
string
required
settlement_id
string<uuid> | null
required
template_slug
string
required
role
string
required
party
Party · object
required
legs
Legs · object[]
required
timeout_at
string<date-time>
required
expires_at
string<date-time>
required
created_at
string<date-time>
required