Report a margin call execution

Requires scope facility:write.

Tell CLC what the instruction set actually recovered. This is where a short recovery is declared: status: partial with the real delivered is what leaves the margin call incomplete and the remainder owed, instead of CLC believing it settled.

CLC validates the claim against what it can see — its own receipts and the portfolio you push — so this is a report to reconcile, not a figure taken on trust. A mismatch is surfaced rather than silently accepted.

Idempotent on Idempotency-Key.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required
integer
required
≥ 1

The margin call's position on this facility, from 1. Scoped to the facility, so number 2 on one facility and number 2 on another are different records — facility_id is always part of the key.

Body Params

The broker telling CLC it ran an instruction set, and how much reached the other side.
Reported once per ENTITY, not once per instruction. CLC does not track which holdings were sold to raise the money — that is the broker's choice and its business. What CLC accounts for is what arrived, so that is what it asks for.

string
enum
required

completed — the set ran and money moved. Say how much in delivered, whatever that turned out to be.
failed — nothing reached the other side.
There is no partial. Whether a recovery fell short is CLC's arithmetic, not the broker's claim: CLC knows what it instructed and reads what arrived, so it can compare the two. Asking the broker to classify it as well would put two signals in one payload that can disagree — a completed carrying less than was asked for — and the computed one has to win anyway. Report the amount; the judgement is CLC's.

Allowed:
delivered
object

What actually arrived at the destination. Required unless status is failed.
The real figure, never the one that was asked for. A margin call whose swap yielded 19000 against an expected 20000 reports 19000 — that is what leaves the call short and the remainder owed. Rounding it up to the instructed amount is the one thing here that turns a reconcilable shortfall into a silent one.

string

Your handle for the movement — an on-chain transaction hash, a venue order id, an internal transfer id. Not interpreted by CLC, and kept so a reconciliation months later has something to join on.

date-time

When it settled on your side. CLC records its own receipt time separately; in a dispute the gap between the two is the interesting part.

string

Free text, read only by a person. Where to say which step failed if it matters — "swap filled, transfer rejected by the custodian".

Headers
string
required
length ≤ 255

Required on every mutation. Unique per (tenant, key). Stored 24 h; a replay returns the original response with Idempotent-Replay: true.

string
required
^[0-9]{10}$

Unix seconds. Requests outside a ±5 minute window are rejected, and the value is part of the signed canonical request.

string
required
length between 88 and 88
^[A-Za-z0-9+/]{86}==$

Base64 of the Ed25519 signature over the canonical request. Ed25519 signatures are always 64 bytes, so this is always 88 characters ending in ==.

string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

Language
Credentials
Header
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
application/problem+json