One trade through the same projection as the list: the workspace’s or the caller’s own taker order or venue trade, a broker umbrella record with the client category’s field visibility, or an LP’s fill with pseudonymised counterparties. Taker orders keep their detail fields at the top level. Accepts a member session or an API key with trades_read.
The workspace the request acts in. An API key bound to a workspace implies it: omit the header, or send that same id (another id answers 403 WORKSPACE_SCOPE_MISMATCH). A member session must send it (400 MISSING_WORKSPACE without it).
Section D: LP / counterparty information, including its compliance posture.
For a KYB'd liquidity provider the compliance fields carry the LP's
jurisdiction, KYB status, and regulatory licences — the "who is the other
side and are they authorised" a compliance officer needs. Router/bridge
routes settle through a protocol (CCTP, Relay, …), not a VASP counterparty:
those report counterparty_type = "protocol" with no jurisdiction/licences,
which is itself the compliance-relevant fact (no VASP-to-VASP Travel Rule
message is owed).
How and when the trade settles, as recorded before it was sent: the same block the order
read returns as settlement (method, timing and, for a delayed trade, its window with
settlesBy and paymentDeadlineAt). Absent on a trade recorded without it.
The workspace's venue account it went through, titled by its catalogue Venue
("Keyrock account"), never by the execution type ("Keyrock OTC"); an on-chain venue is
never an account and reads as itself ("Circle StableFX").
Human-readable elaboration of substatus — a Circle StableFX status line, or
the reason a parked/refunded/recovered order is in that state. Mirrors
OrderResponse.substatusMessage.
A reference USD value of what the trade sells, by the same price service that values an
order row's amountUsd, at the price when read. amountUsdBasis says which amount it
values. Absent when the asset has no reference price or the price read failed; never 0
for an unknown value.
For an expired debit proof, whether wallet records contain a typed signature:
recorded or unconfirmed. Absent when the retained steps cannot establish either.
Legacy confirmed output per input (buy asset / sell asset), computed with Decimal;
null when unread. executionPriceUnit states its unit; prefer statedExecutionPrice for display.
What a confirmed same-asset fill (a bridge) cost the taker: spent minus
received, the venue's protocol and forwarding fees, in the sell asset. Absent unless confirmed and positive.
The stable code behind notSentReason, the same value the venue-trade detail's
notSentCause carries (for example WALLET_NONCE_PENDING). A code this version does not
know is still named. Absent when no cause was retained.
Why the trade ended as it did, as its dispatch records it (the order page's
dispatch.outcomeCode): the history row names a no-fill's reason from it.
Absent until an outcome is recorded.
Whether the statement of the window the trade settles in is out, as the order read's
settlementStatement. Absent with settlementState and without a window.
CCTP's selected finality tier, as the order read's operation.onChain.transferMode: the
bound selection, never re-derived. A CCTP trade without it is Standard (historical and
omitted selections); absent on every other venue.
The dispatch's first unknown-outcome failure: a closed code, never a provider body.
A later terminal outcome takes precedence over this retained diagnostic.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"TetraFi","colors":{"primary":"#2c5282","light":"#3b6db5","dark":"#1e3a8a"},"logo":{"light":"https://mintcdn.com/tetrafi/hT7nGse44PNS7QpH/logo/tetrafi-mark-light.svg?fit=max\u0026auto=format\u0026n=hT7nGse44PNS7QpH\u0026q=85\u0026s=cd79dd1bf9d966d0f47e539b4d3775f6","dark":"https://mintcdn.com/tetrafi/hT7nGse44PNS7QpH/logo/tetrafi-mark-dark.svg?fit=max\u0026auto=format\u0026n=hT7nGse44PNS7QpH\u0026q=85\u0026s=e2f93f71b83104dc5a7ca71c43afe890"},"favicon":"https://mintcdn.com/tetrafi/hT7nGse44PNS7QpH/favicon.svg?fit=max\u0026auto=format\u0026n=hT7nGse44PNS7QpH\u0026q=85\u0026s=e599c74d138eb2e52fd6405556f494a3","api":{"params":{"expanded":"closed"},"playground":{"display":"simple"}},"appearance":{"default":"dark"},"footer":{"socials":{"github":"https://github.com/TetraFi","linkedin":"https://www.linkedin.com/company/tetrafi","telegram":"https://t.me/TetraFi_Team","website":"https://tetrafi.io"}},"seo":{"metatags":{"og:image":"https://tetrafi.mintlify.app/images/og-default.png","og:image:width":"1200","og:image:height":"630","twitter:card":"summary_large_image"}},"fonts":{"family":"Inter"},"banner":{"content":"The API may change until launch. Every change is in the [Changelog](/changelog).","dismissible":true},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"tetrafi","hasAudioNarration":false,"actualSubdomain":"tetrafi","customDomains":[],"gitSource":{"type":"github","owner":"tetrafi","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6af5c842c7a2465f28869588","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"default","tag":"API reference","count":54},{"language":"default","tag":"Discover","count":32},{"language":"default","tag":"Introduction","count":22},{"language":"default","tag":"Guides","count":19},{"language":"default","tag":"Trades and settlement","count":13},{"language":"default","tag":"Webhooks","count":10},{"language":"default","tag":"Balances and accounts","count":9},{"language":"default","tag":"Use Cases","count":9},{"language":"default","tag":"Multilateral Netting","count":8},{"language":"default","tag":"Resources","count":7}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"custom.css","content":"#banner{background-color:#8b13cc!important}.home-page{max-width:768px;margin:0px auto;padding:2rem 1.5rem 4rem;color:rgb(23, 23, 23)}:root.dark .home-page{color:rgb(255, 255, 255)}.home-hero{text-align:center;padding:3rem 0px 2.5rem}.home-hero h1{font-size:2.5rem;font-weight:700;margin:0px 0px 0.75rem}.home-hero p{font-size:1.125rem;margin:0px}.home-hero p+p{font-size:1rem;line-height:1.6;margin:1rem auto 0px;max-width:42rem;opacity:0.8}.home-section{margin-top:3.5rem}.home-section h2{font-size:1.25rem;font-weight:600;margin-bottom:0.75rem}.color-grid{display:grid;grid-template-columns:repeat(6, 1fr);gap:1rem;margin:1rem 0px 2rem}@media (max-width: 768px){.color-grid{grid-template-columns:repeat(3, 1fr)}}@media (max-width: 480px){.color-grid{grid-template-columns:repeat(2, 1fr)}}.color-swatch{display:flex;flex-direction:column;gap:0.5rem}.color-swatch-block{aspect-ratio:1 / 1;border-radius:16px;display:flex;align-items:flex-end;padding:0.625rem}.color-swatch-block span{font-size:0.75rem;font-weight:600;font-family:monospace}.color-swatch-label{font-size:0.8125rem;font-weight:600}.logo-showcase-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0px 2rem}.logo-showcase{border-radius:16px;padding:1.25rem 1.5rem;display:grid;grid-template-columns:auto auto;grid-template-rows:1fr auto;gap:0.75rem 1.5rem;align-items:center}.logo-showcase-dark{background:rgb(23, 23, 23);color:rgb(255, 255, 255)}.logo-showcase-light{background:rgb(245, 245, 245);color:rgb(23, 23, 23)}.logo-showcase-left{display:flex;flex-direction:column;gap:0.75rem;align-items:flex-start}.logo-showcase-right{display:flex;justify-content:center;align-items:center}.logo-showcase img.logo-sm{height:32px;width:auto}.logo-showcase img.logo-md{height:32px;width:auto}.logo-showcase img.logo-lg{height:110px;width:auto}.logo-showcase-label{grid-column:1 / -1;font-size:0.75rem;opacity:0.5;text-align:center}@media (max-width: 640px){.logo-showcase-row{grid-template-columns:1fr}}"}],"page":{"pagePath":"api-reference/trades/get-trade","slug":"/api-reference/trades/get-trade","pageMetadata":{"title":"Get trade","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/trades/{tradeId}","description":"One trade through the same projection as the list: the workspace's or the caller's own taker order or venue trade, a broker umbrella record with the client category's field visibility, or an LP's fill with pseudonymised counterparties. Taker orders keep their detail fields at the top level. Accepts a member session or an API key with trades_read.","href":"/api-reference/trades/get-trade"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"One trade through the same projection as the list: the workspace’s or the caller’s own taker order or venue trade, a broker umbrella record with the client category’s field visibility, or an LP’s fill with pseudonymised counterparties. Taker orders keep their detail fields at the top level. Accepts a member session or an API key with trades_read.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Get trade","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/trades/{tradeId}","description":"One trade through the same projection as the list: the workspace's or the caller's own taker order or venue trade, a broker umbrella record with the client category's field visibility, or an LP's fill with pseudonymised counterparties. Taker orders keep their detail fields at the top level. Accepts a member session or an API key with trades_read.","href":"/api-reference/trades/get-trade"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"One trade through the same projection as the list: the workspace's or the caller's own taker order or venue trade, a broker umbrella record with the client category's field visibility, or an LP's fill with pseudonymised counterparties. Taker orders keep their detail fields at the top level. Accepts a member session or an API key with trades_read.","operationId":"get_workspace_trade","parameters":["284f4bc9-8b25-4b24-9d81-1d655c218c47","6b19fb49-fe02-4920-90cf-3f42c1f8236d","50f1e3ad-630e-4bde-a1ef-d3b9ccab3a38","e24547b5-3e7a-4a9e-bc11-24e94cb10308","94ec6f4b-8024-4617-8c46-ebd1116096b8","971453ae-c168-4633-9d42-b9898aa8d6dd","e7f25f4e-cbba-4a89-ad9b-e6b2dfb5008c"],"responses":{"200":"e69f8cfd-e3a0-4889-bac5-2442c8020233","400":"09efa2b1-7cef-4589-879f-1985f5f2bc1c","401":"2bbaf8ba-269b-4e93-ab14-24140a529c95","403":"f3ce1293-1cee-416a-a892-ebfec7477dff","404":"cece8832-373f-483f-8269-986fbabb9478","408":"6b6a70af-a5fc-4427-a980-2102c756db30","429":"0c638c2e-9201-489e-a4be-d0f05c10d05c","500":"6b987b7d-0894-463a-8c80-60bb718c7fb0","503":"86150e65-34ac-4983-bc4b-cd694317243d"},"security":["5cc1afa6-6b8f-4814-87a6-7cb62b56a2bd","9ff8da62-0d95-40b6-be7d-6151f6158f6f"],"summary":"Get a trade","tags":["trades"],"method":"get","type":"path","servers":["92d20a25-080c-474f-9db4-28984500f104","07a83933-bc6b-4ce5-848c-8f94d4edfd7a"],"path":"/api/v1/workspaces/{workspaceId}/trades/{tradeId}","baseUrlOptions":["https://api.tetrafi.io","https://api-dev.tetrafi.io"],"title":"Get a trade","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"284f4bc9-8b25-4b24-9d81-1d655c218c47":{"description":"The workspace the request acts in. An API key bound to a workspace implies it: omit the header, or send that same id (another id answers 403 WORKSPACE_SCOPE_MISMATCH). A member session must send it (400 MISSING_WORKSPACE without it).","in":"header","name":"X-Workspace-Id","required":false,"schema":{"format":"uuid","type":"string","isRequired":false,"description":"The workspace the request acts in. An API key bound to a workspace implies it: omit the header, or send that same id (another id answers 403 WORKSPACE_SCOPE_MISMATCH). A member session must send it (400 MISSING_WORKSPACE without it).","uniqueKey":"","typeLabel":"string\u003cuuid>"}},"6b19fb49-fe02-4920-90cf-3f42c1f8236d":{"description":"Workspace ID","in":"path","name":"workspaceId","required":true,"schema":{"type":"string","isRequired":true,"description":"Workspace ID","uniqueKey":"","typeLabel":"string"}},"50f1e3ad-630e-4bde-a1ef-d3b9ccab3a38":{"description":"The trade's tradeId: an order id, or a venue trade's operation id","in":"path","name":"tradeId","required":true,"schema":{"type":"string","isRequired":true,"description":"The trade's tradeId: an order id, or a venue trade's operation id","uniqueKey":"","typeLabel":"string"}},"e24547b5-3e7a-4a9e-bc11-24e94cb10308":{"description":"mine, workspace (default) or umbrella, as on the list","in":"query","name":"scope","required":false,"schema":{"description":"mine, workspace (default) or umbrella, as on the list\nWhose rows the list reads.","enum":["mine","workspace","umbrella"],"type":"string","isRequired":false,"uniqueKey":"","typeLabel":"enum\u003cstring>"}},"94ec6f4b-8024-4617-8c46-ebd1116096b8":{"description":"taker (default) or maker, as on the list","in":"query","name":"perspective","required":false,"schema":{"description":"taker (default) or maker, as on the list\nWhich side of the trade the workspace was on.","enum":["taker","maker"],"type":"string","isRequired":false,"uniqueKey":"","typeLabel":"enum\u003cstring>"}},"971453ae-c168-4633-9d42-b9898aa8d6dd":{"description":"Maker: the LP's own venue that filled it","in":"query","name":"venueId","required":false,"schema":{"type":"string","isRequired":false,"description":"Maker: the LP's own venue that filled it","uniqueKey":"","typeLabel":"string"}},"e7f25f4e-cbba-4a89-ad9b-e6b2dfb5008c":{"description":"Maker: protocol, venueAccount or all","in":"query","name":"flow","required":false,"schema":{"type":"string","isRequired":false,"description":"Maker: protocol, venueAccount or all","uniqueKey":"","typeLabel":"string"}}},"responses":{"e69f8cfd-e3a0-4889-bac5-2442c8020233":{"content":{"application/json":{"schema":{"oneOf":[{"type":"object","description":"One trade, read through the same projection as the list.","required":["tradeId","kind","projection","connectionId","operationId","executionTypeId","venueName","venueAccountName","providerSite","createdAt","submittedByYou","sell","buy","executionStatus","lifecycleStatus","trade","settlement","lp"],"x-undiscriminated-union-reason":"Optional flattened object: validates either the full block or absence of every block field; no separate wire value to tag.","properties":{"lp":{"description":"Section D: LP / counterparty information, including its compliance posture.\n\nFor a KYB'd liquidity provider the compliance fields carry the LP's\njurisdiction, KYB status, and regulatory licences — the \"who is the other\nside and are they authorised\" a compliance officer needs. Router/bridge\nroutes settle through a protocol (CCTP, Relay, …), not a VASP counterparty:\nthose report `counterparty_type = \"protocol\"` with no jurisdiction/licences,\nwhich is itself the compliance-relevant fact (no VASP-to-VASP Travel Rule\nmessage is owed).","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lp.lpName","typeLabel":"string"},"lpSource":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lp.lpSource","typeLabel":"string"},"routingPathLabel":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lp.routingPathLabel","typeLabel":"string"},"solverId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lp.solverId","typeLabel":"string"},"bilateralStatus":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.lp.bilateralStatus.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.lp.bilateralStatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.lp.bilateralStatus","typeLabel":"string | null"},"settlementSlaStatus":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.lp.settlementSlaStatus.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.lp.settlementSlaStatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.lp.settlementSlaStatus","typeLabel":"string | null"},"settlementSpeedMs":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.lp.settlementSpeedMs.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.lp.settlementSpeedMs.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.lp.settlementSpeedMs","typeLabel":"integer\u003cint64> | null"}},"required":["solverId","lpName","lpSource","routingPathLabel"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.lp","typeLabel":"object"},"settlement":{"oneOf":[{"type":"object","description":"How and when the trade settles, as recorded before it was sent: the same block the order\nread returns as `settlement` (method, timing and, for a delayed trade, its window with\n`settlesBy` and `paymentDeadlineAt`). Absent on a trade recorded without it.","required":["timing","method","status"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"status":{"description":"New values may be added; treat unknown values as other.","enum":["pending","settled","failed","refunded","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.status","typeLabel":"enum\u003cstring>"},"method":{"description":"New values may be added; treat unknown values as other.","enum":["venueLedger"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.method","typeLabel":"enum\u003cstring>"},"timing":{"description":"New values may be added; treat unknown values as other.","enum":["immediate","byDeadline","delayed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.timing","typeLabel":"enum\u003cstring>"},"cexLane":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.0","typeLabel":"null"},{"type":"object","description":"Confirmed CEX ledger stages, including venue evidence and the DDR v2 forward.","required":["tradeFills","deposits"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"deposits":{"items":{"properties":{"accountAssetKey":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].accountAssetKey","typeLabel":"string"},"amount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].amount","typeLabel":"string"},"applicationTransaction":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction","typeLabel":"object"},"depositKey":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].depositKey","typeLabel":"string"},"ledger":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].ledger","typeLabel":"string"},"confirmation":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.0","typeLabel":"null"},{"type":"object","required":["transaction","forwardTransaction","venueDepositId","venueTxHash"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"forwardTransaction":{"description":"Spoke DDR v2 RoutedDepositForwarded transaction, never the CCIP dispatch.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction","typeLabel":"object"},"transaction":{"description":"Hub transaction that emitted DepositConfirmed.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction","typeLabel":"object"},"venueDepositId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.venueDepositId","typeLabel":"string"},"venueTxHash":{"description":"Venue evidence only; never a chain explorer reference.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.venueTxHash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX].confirmation","typeLabel":"null | object"}},"required":["depositKey","accountAssetKey","ledger","amount","applicationTransaction"],"type":"object","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.deposits","typeLabel":"object[]"},"tradeFills":{"items":{"properties":{"actualInputAmount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].actualInputAmount","typeLabel":"string"},"actualOutputAmount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].actualOutputAmount","typeLabel":"string"},"evidenceHash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].evidenceHash","typeLabel":"string"},"ledger":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].ledger","typeLabel":"string"},"tradeId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].tradeId","typeLabel":"string"},"transaction":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction","typeLabel":"object"},"venueFillId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX].venueFillId","typeLabel":"string"}},"required":["tradeId","ledger","transaction","venueFillId","evidenceHash","actualInputAmount","actualOutputAmount"],"type":"object","uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1.tradeFills","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.cexLane","typeLabel":"null | object"},"failureReason":{"oneOf":[{"description":"A human-readable failure reason when status is `failed` or `refunded`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.failureReason.oneOf.0","typeLabel":"string"},{"description":"A human-readable failure reason when status is `failed` or `refunded`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.failureReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.failureReason","typeLabel":"string | null"},"fillTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.0.fillTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.fillTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.fillTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.fillTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.0.fillTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.fillTx","typeLabel":"null | object"},"finaliseTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.0.finaliseTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.finaliseTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.finaliseTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.finaliseTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.0.finaliseTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.finaliseTx","typeLabel":"null | object"},"oracle":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.0.oracle.oneOf.0","typeLabel":"null"},{"type":"object","description":"Oracle / cross-chain proof-relay metadata.","required":["name"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.oracle.oneOf.1.name","typeLabel":"string"},"messageId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.oracle.oneOf.1.messageId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.oracle.oneOf.1.messageId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.oracle.oneOf.1.messageId","typeLabel":"string | null"},"status":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.0.oracle.oneOf.1.status.oneOf.0","typeLabel":"null"},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["dispatched","delivered"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.0.oracle.oneOf.1.status.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.oracle.oneOf.1.status","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.0.settlement.oneOf.0.oracle.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.oracle","typeLabel":"null | object"},"proofTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.0.proofTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.proofTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.proofTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.proofTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.0.proofTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.proofTx","typeLabel":"null | object"},"recipientWallet":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.recipientWallet.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.recipientWallet.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.recipientWallet","typeLabel":"string | null"},"settlementSpeedMs":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.0.settlementSpeedMs.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.settlementSpeedMs.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.settlementSpeedMs","typeLabel":"integer\u003cint64> | null"},"settlementStage":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.settlementStage.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.settlementStage.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.settlementStage","typeLabel":"string | null"},"submitTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.0.submitTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.submitTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.submitTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.submitTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.0.submitTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.submitTx","typeLabel":"null | object"},"transactions":{"description":"Generic per-stage transaction list — the full timeline for ANY order kind\n(escrow quartet, bridge/relay/FX legs, composite hops), each row enriched with\na `label`, an `explorerUrl`, and a `legIndex`. The escrow-shaped\n`submit/fill/proof/finalise` refs above stay for back-compat; this list is what\nnon-escrow (router/composite/FX) orders render, and it is empty (not a wall of\n\"—\") when an order has no recorded transactions.","items":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX].timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","uniqueKey":"oneOf.0.settlement.oneOf.0.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.settlement.oneOf.0.transactions","typeLabel":"object[]"},"userDepositWallet":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.userDepositWallet.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.userDepositWallet.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.userDepositWallet","typeLabel":"string | null"},"window":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.0","typeLabel":"null"},{"type":"object","description":"The account schedule's window a delayed trade settles in, fixed when the quote was\nmade and recorded unchanged on the executed trade. A `clock` window carries `settlesBy`,\nthe occurrence's confirmed completion; an `onAgreement` window (an LP-issued statement with\nno completion term) carries none. A window whose completion is pending on any other\nschedule is never emitted.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.settlement.oneOf.0.window.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.0.window","typeLabel":"null | object"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.0","typeLabel":"object"},{"type":"object","description":"How and when the trade settles, as recorded before it was sent: the same block the order\nread returns as `settlement` (method, timing and, for a delayed trade, its window with\n`settlesBy` and `paymentDeadlineAt`). Absent on a trade recorded without it.","required":["timing","method","status"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"status":{"description":"New values may be added; treat unknown values as other.","enum":["pending","settled","failed","refunded","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.status","typeLabel":"enum\u003cstring>"},"method":{"description":"New values may be added; treat unknown values as other.","enum":["dvp"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.method","typeLabel":"enum\u003cstring>"},"timing":{"description":"New values may be added; treat unknown values as other.","enum":["immediate","byDeadline","delayed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.timing","typeLabel":"enum\u003cstring>"},"cexLane":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.0","typeLabel":"null"},{"type":"object","description":"Confirmed CEX ledger stages, including venue evidence and the DDR v2 forward.","required":["tradeFills","deposits"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"deposits":{"items":{"properties":{"accountAssetKey":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].accountAssetKey","typeLabel":"string"},"amount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].amount","typeLabel":"string"},"applicationTransaction":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction","typeLabel":"object"},"depositKey":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].depositKey","typeLabel":"string"},"ledger":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].ledger","typeLabel":"string"},"confirmation":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.0","typeLabel":"null"},{"type":"object","required":["transaction","forwardTransaction","venueDepositId","venueTxHash"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"forwardTransaction":{"description":"Spoke DDR v2 RoutedDepositForwarded transaction, never the CCIP dispatch.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction","typeLabel":"object"},"transaction":{"description":"Hub transaction that emitted DepositConfirmed.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction","typeLabel":"object"},"venueDepositId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.venueDepositId","typeLabel":"string"},"venueTxHash":{"description":"Venue evidence only; never a chain explorer reference.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.venueTxHash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX].confirmation","typeLabel":"null | object"}},"required":["depositKey","accountAssetKey","ledger","amount","applicationTransaction"],"type":"object","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.deposits","typeLabel":"object[]"},"tradeFills":{"items":{"properties":{"actualInputAmount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].actualInputAmount","typeLabel":"string"},"actualOutputAmount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].actualOutputAmount","typeLabel":"string"},"evidenceHash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].evidenceHash","typeLabel":"string"},"ledger":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].ledger","typeLabel":"string"},"tradeId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].tradeId","typeLabel":"string"},"transaction":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction","typeLabel":"object"},"venueFillId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX].venueFillId","typeLabel":"string"}},"required":["tradeId","ledger","transaction","venueFillId","evidenceHash","actualInputAmount","actualOutputAmount"],"type":"object","uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1.tradeFills","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.cexLane","typeLabel":"null | object"},"failureReason":{"oneOf":[{"description":"A human-readable failure reason when status is `failed` or `refunded`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.failureReason.oneOf.0","typeLabel":"string"},{"description":"A human-readable failure reason when status is `failed` or `refunded`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.failureReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.failureReason","typeLabel":"string | null"},"fillTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.1.fillTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.fillTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.fillTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.fillTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.1.fillTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.fillTx","typeLabel":"null | object"},"finaliseTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.1.finaliseTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.finaliseTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.finaliseTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.finaliseTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.1.finaliseTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.finaliseTx","typeLabel":"null | object"},"oracle":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.1.oracle.oneOf.0","typeLabel":"null"},{"type":"object","description":"Oracle / cross-chain proof-relay metadata.","required":["name"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.oracle.oneOf.1.name","typeLabel":"string"},"messageId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.oracle.oneOf.1.messageId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.oracle.oneOf.1.messageId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.oracle.oneOf.1.messageId","typeLabel":"string | null"},"status":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.1.oracle.oneOf.1.status.oneOf.0","typeLabel":"null"},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["dispatched","delivered"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.1.oracle.oneOf.1.status.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.oracle.oneOf.1.status","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.0.settlement.oneOf.1.oracle.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.oracle","typeLabel":"null | object"},"proofTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.1.proofTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.proofTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.proofTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.proofTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.1.proofTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.proofTx","typeLabel":"null | object"},"recipientWallet":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.recipientWallet.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.recipientWallet.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.recipientWallet","typeLabel":"string | null"},"settlementSpeedMs":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.1.settlementSpeedMs.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.settlementSpeedMs.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.settlementSpeedMs","typeLabel":"integer\u003cint64> | null"},"settlementStage":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.settlementStage.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.settlementStage.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.settlementStage","typeLabel":"string | null"},"submitTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.1.submitTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.submitTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.submitTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.submitTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.1.submitTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.submitTx","typeLabel":"null | object"},"transactions":{"description":"Generic per-stage transaction list — the full timeline for ANY order kind\n(escrow quartet, bridge/relay/FX legs, composite hops), each row enriched with\na `label`, an `explorerUrl`, and a `legIndex`. The escrow-shaped\n`submit/fill/proof/finalise` refs above stay for back-compat; this list is what\nnon-escrow (router/composite/FX) orders render, and it is empty (not a wall of\n\"—\") when an order has no recorded transactions.","items":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX].timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","uniqueKey":"oneOf.0.settlement.oneOf.1.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.settlement.oneOf.1.transactions","typeLabel":"object[]"},"userDepositWallet":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.userDepositWallet.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.userDepositWallet.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.userDepositWallet","typeLabel":"string | null"},"window":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.0","typeLabel":"null"},{"type":"object","description":"The account schedule's window a delayed trade settles in, fixed when the quote was\nmade and recorded unchanged on the executed trade. A `clock` window carries `settlesBy`,\nthe occurrence's confirmed completion; an `onAgreement` window (an LP-issued statement with\nno completion term) carries none. A window whose completion is pending on any other\nschedule is never emitted.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.settlement.oneOf.1.window.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.1.window","typeLabel":"null | object"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.1","typeLabel":"object"},{"type":"object","description":"How and when the trade settles, as recorded before it was sent: the same block the order\nread returns as `settlement` (method, timing and, for a delayed trade, its window with\n`settlesBy` and `paymentDeadlineAt`). Absent on a trade recorded without it.","required":["timing","firstLeg","method","status"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"status":{"description":"New values may be added; treat unknown values as other.","enum":["pending","settled","failed","refunded","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.status","typeLabel":"enum\u003cstring>"},"firstLeg":{"description":"New values may be added; treat unknown values as other.","enum":["taker","maker"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.firstLeg","typeLabel":"enum\u003cstring>"},"method":{"description":"New values may be added; treat unknown values as other.","enum":["fop"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.method","typeLabel":"enum\u003cstring>"},"timing":{"description":"New values may be added; treat unknown values as other.","enum":["immediate","byDeadline","delayed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.timing","typeLabel":"enum\u003cstring>"},"cexLane":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.0","typeLabel":"null"},{"type":"object","description":"Confirmed CEX ledger stages, including venue evidence and the DDR v2 forward.","required":["tradeFills","deposits"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"deposits":{"items":{"properties":{"accountAssetKey":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].accountAssetKey","typeLabel":"string"},"amount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].amount","typeLabel":"string"},"applicationTransaction":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction","typeLabel":"object"},"depositKey":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].depositKey","typeLabel":"string"},"ledger":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].ledger","typeLabel":"string"},"confirmation":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.0","typeLabel":"null"},{"type":"object","required":["transaction","forwardTransaction","venueDepositId","venueTxHash"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"forwardTransaction":{"description":"Spoke DDR v2 RoutedDepositForwarded transaction, never the CCIP dispatch.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction","typeLabel":"object"},"transaction":{"description":"Hub transaction that emitted DepositConfirmed.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction","typeLabel":"object"},"venueDepositId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.venueDepositId","typeLabel":"string"},"venueTxHash":{"description":"Venue evidence only; never a chain explorer reference.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.venueTxHash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX].confirmation","typeLabel":"null | object"}},"required":["depositKey","accountAssetKey","ledger","amount","applicationTransaction"],"type":"object","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.deposits","typeLabel":"object[]"},"tradeFills":{"items":{"properties":{"actualInputAmount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].actualInputAmount","typeLabel":"string"},"actualOutputAmount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].actualOutputAmount","typeLabel":"string"},"evidenceHash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].evidenceHash","typeLabel":"string"},"ledger":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].ledger","typeLabel":"string"},"tradeId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].tradeId","typeLabel":"string"},"transaction":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction","typeLabel":"object"},"venueFillId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX].venueFillId","typeLabel":"string"}},"required":["tradeId","ledger","transaction","venueFillId","evidenceHash","actualInputAmount","actualOutputAmount"],"type":"object","uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1.tradeFills","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.cexLane","typeLabel":"null | object"},"failureReason":{"oneOf":[{"description":"A human-readable failure reason when status is `failed` or `refunded`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.failureReason.oneOf.0","typeLabel":"string"},{"description":"A human-readable failure reason when status is `failed` or `refunded`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.failureReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.failureReason","typeLabel":"string | null"},"fillTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.2.fillTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.fillTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.fillTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.fillTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.2.fillTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.fillTx","typeLabel":"null | object"},"finaliseTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.2.finaliseTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.finaliseTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.finaliseTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.finaliseTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.2.finaliseTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.finaliseTx","typeLabel":"null | object"},"oracle":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.2.oracle.oneOf.0","typeLabel":"null"},{"type":"object","description":"Oracle / cross-chain proof-relay metadata.","required":["name"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.oracle.oneOf.1.name","typeLabel":"string"},"messageId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.oracle.oneOf.1.messageId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.oracle.oneOf.1.messageId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.oracle.oneOf.1.messageId","typeLabel":"string | null"},"status":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.2.oracle.oneOf.1.status.oneOf.0","typeLabel":"null"},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["dispatched","delivered"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.2.oracle.oneOf.1.status.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.oracle.oneOf.1.status","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.0.settlement.oneOf.2.oracle.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.oracle","typeLabel":"null | object"},"proofTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.2.proofTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.proofTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.proofTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.proofTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.2.proofTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.proofTx","typeLabel":"null | object"},"recipientWallet":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.recipientWallet.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.recipientWallet.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.recipientWallet","typeLabel":"string | null"},"settlementSpeedMs":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.2.settlementSpeedMs.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.settlementSpeedMs.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.settlementSpeedMs","typeLabel":"integer\u003cint64> | null"},"settlementStage":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.settlementStage.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.settlementStage.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.settlementStage","typeLabel":"string | null"},"submitTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.2.submitTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.submitTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.submitTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.submitTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.2.submitTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.submitTx","typeLabel":"null | object"},"transactions":{"description":"Generic per-stage transaction list — the full timeline for ANY order kind\n(escrow quartet, bridge/relay/FX legs, composite hops), each row enriched with\na `label`, an `explorerUrl`, and a `legIndex`. The escrow-shaped\n`submit/fill/proof/finalise` refs above stay for back-compat; this list is what\nnon-escrow (router/composite/FX) orders render, and it is empty (not a wall of\n\"—\") when an order has no recorded transactions.","items":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX].timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","uniqueKey":"oneOf.0.settlement.oneOf.2.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.settlement.oneOf.2.transactions","typeLabel":"object[]"},"userDepositWallet":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.userDepositWallet.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.userDepositWallet.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.userDepositWallet","typeLabel":"string | null"},"window":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.0","typeLabel":"null"},{"type":"object","description":"The account schedule's window a delayed trade settles in, fixed when the quote was\nmade and recorded unchanged on the executed trade. A `clock` window carries `settlesBy`,\nthe occurrence's confirmed completion; an `onAgreement` window (an LP-issued statement with\nno completion term) carries none. A window whose completion is pending on any other\nschedule is never emitted.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.settlement.oneOf.2.window.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlement.oneOf.2.window","typeLabel":"null | object"}},"isRequired":true,"uniqueKey":"oneOf.0.settlement.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"oneOf.0.settlement","typeLabel":"object"},"trade":{"description":"Section A: Trade details.","properties":{"createdAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.createdAt","typeLabel":"string\u003cdate-time>"},"executionPrice":{"description":"User-facing execution price for a read model.","properties":{"source":{"description":"Source used for the execution price exposed by read-model APIs.\n\nNew values may be added; treat unknown values as other.","enum":["storedQuotePrice","derivedFromAmounts","unavailable"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.executionPrice.source","typeLabel":"enum\u003cstring>"},"baseSymbol":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.executionPrice.baseSymbol.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.executionPrice.baseSymbol.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.executionPrice.baseSymbol","typeLabel":"string | null"},"quoteSymbol":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.executionPrice.quoteSymbol.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.executionPrice.quoteSymbol.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.executionPrice.quoteSymbol","typeLabel":"string | null"},"value":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.executionPrice.value.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.executionPrice.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.executionPrice.value","typeLabel":"string | null"}},"required":["source"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.trade.executionPrice","typeLabel":"object"},"lifecycleStatus":{"properties":{"bucket":{"description":"Which history bucket this lifecycle belongs to: decided by the same arm that\nchose `primary`, so a filter on it can never disagree with the label.","enum":["inProgress","completed","failed","refunded","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.bucket","typeLabel":"enum\u003cstring>"},"flowKind":{"description":"New values may be added; treat unknown values as other.","enum":["instant","deferredAutoWithdraw","deferredManual","venueAccount"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.flowKind","typeLabel":"enum\u003cstring>"},"isTerminal":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.isTerminal","typeLabel":"boolean"},"primary":{"description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.primary.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.primary.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.primary.tone","typeLabel":"string"}},"required":["key","label","tone"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.primary","typeLabel":"object"},"rank":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.rank","typeLabel":"integer\u003cint32>"},"rawStatus":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","post_filled","settling","settled","finalized","awaiting_lp_settlement","pre_claimed","failed","refunded","filled","unfilled","checking_balance","pending_deposit","deposit_confirmed","quote_requested","quote_received","accounting_pending","accounting_submitted","withdrawal_requested","pending_withdrawal","no_fill_confirmed","not_submitted","dispatching","outcome_unknown","needs_review","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.rawStatus","typeLabel":"enum\u003cstring>"},"execution":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.lifecycleStatus.execution.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.execution.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.execution.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.execution.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.0.trade.lifecycleStatus.execution.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.trade.lifecycleStatus.execution","typeLabel":"null | object"},"rawDeferredStatus":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.lifecycleStatus.rawDeferredStatus.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.lifecycleStatus.rawDeferredStatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.lifecycleStatus.rawDeferredStatus","typeLabel":"string | null"},"settlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.lifecycleStatus.settlement.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.settlement.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.settlement.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.settlement.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.0.trade.lifecycleStatus.settlement.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.trade.lifecycleStatus.settlement","typeLabel":"null | object"},"withdrawal":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.lifecycleStatus.withdrawal.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.withdrawal.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.withdrawal.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus.withdrawal.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.0.trade.lifecycleStatus.withdrawal.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.trade.lifecycleStatus.withdrawal","typeLabel":"null | object"}},"required":["flowKind","primary","bucket","isTerminal","rank","rawStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.trade.lifecycleStatus","typeLabel":"object"},"orderId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.orderId","typeLabel":"string"},"route":{"description":"The sold and bought sides of a trade for display read models.","properties":{"buy":{"description":"What the order buys.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.route.buy.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.route.buy.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.route.buy.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.route.buy.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.route.buy.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.buy.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.trade.route.buy.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.trade.route.buy.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.buy.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.route.buy.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.route.buy.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.buy.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.trade.route.buy.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.trade.route.buy.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.buy.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.route.buy.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.route.buy.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.buy.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.trade.route.buy.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.route.buy.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.route.buy.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.buy.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.route.buy.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.route.buy.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.buy.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.route.buy.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.route.buy.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.trade.route.buy.unresolved","typeLabel":"null | enum\u003cstring>"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.trade.route.buy","typeLabel":"object"},"sell":{"description":"What the order sells.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.route.sell.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.route.sell.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.route.sell.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.route.sell.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.route.sell.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.sell.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.trade.route.sell.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.trade.route.sell.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.sell.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.route.sell.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.route.sell.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.sell.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.trade.route.sell.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.trade.route.sell.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.sell.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.route.sell.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.route.sell.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.sell.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.trade.route.sell.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.route.sell.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.route.sell.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.sell.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.route.sell.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.route.sell.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.route.sell.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.route.sell.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.route.sell.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.trade.route.sell.unresolved","typeLabel":"null | enum\u003cstring>"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.trade.route.sell","typeLabel":"object"}},"required":["sell","buy"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.trade.route","typeLabel":"object"},"routingPathLabel":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.routingPathLabel","typeLabel":"string"},"status":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","no_fill_confirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.status","typeLabel":"enum\u003cstring>"},"amountUsd":{"oneOf":[{"description":"Absent when the order recorded no USD notional; never 0 for an unknown amount.","type":"string","uniqueKey":"oneOf.0.trade.amountUsd.oneOf.0","typeLabel":"string"},{"description":"Absent when the order recorded no USD notional; never 0 for an unknown amount.","type":"null","uniqueKey":"oneOf.0.trade.amountUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.amountUsd","typeLabel":"string | null"},"apiKey":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.apiKey.oneOf.0","typeLabel":"null"},{"type":"object","required":["keyId"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"keyId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.apiKey.oneOf.1.keyId","typeLabel":"string"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.apiKey.oneOf.1.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.apiKey.oneOf.1.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.apiKey.oneOf.1.name","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.trade.apiKey.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.trade.apiKey","typeLabel":"null | object"},"channel":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.channel.oneOf.0","typeLabel":"null"},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["ui","api","whitelabel","embedded"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.channel.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.trade.channel","typeLabel":"null | enum\u003cstring>"},"deferredSettlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.0","typeLabel":"null"},{"type":"object","description":"Deferred LP settlement/withdrawal tracking that is separate from the\norder's primary execution status. A deferred order can be `Executed` while\nthis object still reports a settlement window or withdrawal state.","required":["stage","autoWithdraw"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"autoWithdraw":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.autoWithdraw","typeLabel":"boolean"},"stage":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.stage","typeLabel":"string"},"estimatedSettlementAvailableAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.estimatedSettlementAvailableAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.estimatedSettlementAvailableAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.estimatedSettlementAvailableAt","typeLabel":"string\u003cdate-time> | null"},"executedAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.executedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.executedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.executedAt","typeLabel":"string\u003cdate-time> | null"},"settlementWindowHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.settlementWindowHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.settlementWindowHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.settlementWindowHours","typeLabel":"integer\u003cint32> | null"},"withdrawalStatus":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.withdrawalStatus.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.withdrawalStatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.withdrawalStatus","typeLabel":"string | null"},"withdrawalTrackingId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.withdrawalTrackingId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.withdrawalTrackingId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.withdrawalTrackingId","typeLabel":"string | null"},"withdrawalTxHash":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.withdrawalTxHash.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.withdrawalTxHash.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1.withdrawalTxHash","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.trade.deferredSettlement.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.trade.deferredSettlement","typeLabel":"null | object"},"deliveredBuy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.0","typeLabel":"null"},{"type":"object","description":"The buy amount actually delivered: the figure `slippage_bps` and its\nprovenance are derived from, so an operator reading \"12 bps, measured\" can\nsee what landed. Absent when nothing was captured (unsettled, or a row\nwritten before the capture existed).","required":["asset"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1.unresolved","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.0.trade.deliveredBuy.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.trade.deliveredBuy","typeLabel":"null | object"},"deliveredBuyProvenance":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.deliveredBuyProvenance.oneOf.0","typeLabel":"null"},{"type":"string","description":"Provenance of the delivered buy amount behind `slippage_bps`: `\"measured\"`\nwhen read back from settlement evidence, `\"quoted\"` when the quote-time\nvalue was carried forward unmeasured (slippage then reads 0 by\nconstruction). Absent for orders with no delivered capture and rows\npredating the capture.","enum":["measured","quoted"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.deliveredBuyProvenance.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.trade.deliveredBuyProvenance","typeLabel":"null | enum\u003cstring>"},"fillTimeMs":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.trade.fillTimeMs.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.trade.fillTimeMs.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.fillTimeMs","typeLabel":"integer\u003cint64> | null"},"routingPath":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.trade.routingPath.oneOf.0","typeLabel":"null"},{"type":"object","description":"How an LP is available to a requesting workspace: `{\"type\": \"direct\"}`, or\n`{\"type\": \"via_broker\", \"brokerWorkspaceId\": \"...\", \"brokerName\": \"...\"}`.\n\nNew values may be added; treat unknown values as other.","required":["type"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"type":{"description":"New values may be added; treat unknown values as other.","enum":["direct"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.routingPath.oneOf.1.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.0.trade.routingPath.oneOf.1","typeLabel":"object"},{"type":"object","description":"How an LP is available to a requesting workspace: `{\"type\": \"direct\"}`, or\n`{\"type\": \"via_broker\", \"brokerWorkspaceId\": \"...\", \"brokerName\": \"...\"}`.\n\nNew values may be added; treat unknown values as other.","required":["brokerWorkspaceId","brokerName","type"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"brokerName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.routingPath.oneOf.2.brokerName","typeLabel":"string"},"brokerWorkspaceId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.0.trade.routingPath.oneOf.2.brokerWorkspaceId","typeLabel":"string\u003cuuid>"},"type":{"description":"New values may be added; treat unknown values as other.","enum":["via_broker"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.trade.routingPath.oneOf.2.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.0.trade.routingPath.oneOf.2","typeLabel":"object"}],"uniqueKey":"oneOf.0.trade.routingPath","typeLabel":"null · object · object"},"slippageBps":{"oneOf":[{"format":"int64","type":"integer","uniqueKey":"oneOf.0.trade.slippageBps.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","type":"null","uniqueKey":"oneOf.0.trade.slippageBps.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.slippageBps","typeLabel":"integer\u003cint64> | null"},"slippageToleranceBps":{"oneOf":[{"description":"The accepted tolerance, in integer basis points (one basis point is 0.01%).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.trade.slippageToleranceBps.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"The accepted tolerance, in integer basis points (one basis point is 0.01%).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.trade.slippageToleranceBps.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.trade.slippageToleranceBps","typeLabel":"integer\u003cint32> | null"}},"required":["orderId","createdAt","route","routingPathLabel","status","lifecycleStatus","executionPrice"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.trade","typeLabel":"object"},"buy":{"description":"What the trade buys: its asset and, when recorded, the least it must receive from its consented bounds.","properties":{"asset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.buy.asset","typeLabel":"string"},"amount":{"oneOf":[{"description":"The consented bound in exact decimal units of `asset`: on `sell` the most the trade may\nspend, on `buy` the least it must receive. Absent when not recorded, never `0`.","type":"string","uniqueKey":"oneOf.0.buy.amount.oneOf.0","typeLabel":"string"},{"description":"The consented bound in exact decimal units of `asset`: on `sell` the most the trade may\nspend, on `buy` the least it must receive. Absent when not recorded, never `0`.","type":"null","uniqueKey":"oneOf.0.buy.amount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.buy.amount","typeLabel":"string | null"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.buy","typeLabel":"object"},"connectionId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.connectionId","typeLabel":"string"},"createdAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.createdAt","typeLabel":"string\u003cdate-time>"},"executionStatus":{"description":"A venue trade's execution status, in camelCase like the order `status` (`outcomeUnknown`).\n\nNew values may be added; treat unknown values as other.","enum":["notSubmitted","dispatching","outcomeUnknown","filled","unfilled","needsReview"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.executionStatus","typeLabel":"enum\u003cstring>"},"executionTypeId":{"description":"The execution type (compiled spec id), not the catalogue Venue.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.executionTypeId","typeLabel":"string"},"lifecycleStatus":{"properties":{"bucket":{"description":"Which history bucket this lifecycle belongs to: decided by the same arm that\nchose `primary`, so a filter on it can never disagree with the label.","enum":["inProgress","completed","failed","refunded","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.bucket","typeLabel":"enum\u003cstring>"},"flowKind":{"description":"New values may be added; treat unknown values as other.","enum":["instant","deferredAutoWithdraw","deferredManual","venueAccount"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.flowKind","typeLabel":"enum\u003cstring>"},"isTerminal":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.isTerminal","typeLabel":"boolean"},"primary":{"description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.primary.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.primary.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.primary.tone","typeLabel":"string"}},"required":["key","label","tone"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.primary","typeLabel":"object"},"rank":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.rank","typeLabel":"integer\u003cint32>"},"rawStatus":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","post_filled","settling","settled","finalized","awaiting_lp_settlement","pre_claimed","failed","refunded","filled","unfilled","checking_balance","pending_deposit","deposit_confirmed","quote_requested","quote_received","accounting_pending","accounting_submitted","withdrawal_requested","pending_withdrawal","no_fill_confirmed","not_submitted","dispatching","outcome_unknown","needs_review","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.rawStatus","typeLabel":"enum\u003cstring>"},"execution":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.lifecycleStatus.execution.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.execution.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.execution.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.execution.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.0.lifecycleStatus.execution.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.lifecycleStatus.execution","typeLabel":"null | object"},"rawDeferredStatus":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.lifecycleStatus.rawDeferredStatus.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.lifecycleStatus.rawDeferredStatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.lifecycleStatus.rawDeferredStatus","typeLabel":"string | null"},"settlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.lifecycleStatus.settlement.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.settlement.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.settlement.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.settlement.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.0.lifecycleStatus.settlement.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.lifecycleStatus.settlement","typeLabel":"null | object"},"withdrawal":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.lifecycleStatus.withdrawal.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.withdrawal.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.withdrawal.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus.withdrawal.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.0.lifecycleStatus.withdrawal.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.lifecycleStatus.withdrawal","typeLabel":"null | object"}},"required":["flowKind","primary","bucket","isTerminal","rank","rawStatus"],"type":"object","description":"The same lifecycle shape an order row carries; `needsReview` is not final.","isRequired":true,"uniqueKey":"oneOf.0.lifecycleStatus","typeLabel":"object"},"operationId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.operationId","typeLabel":"string"},"providerSite":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.providerSite","typeLabel":"string"},"sell":{"description":"What the trade sells: its asset and, when recorded, the most it may spend from its consented bounds.","properties":{"asset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.sell.asset","typeLabel":"string"},"amount":{"oneOf":[{"description":"The consented bound in exact decimal units of `asset`: on `sell` the most the trade may\nspend, on `buy` the least it must receive. Absent when not recorded, never `0`.","type":"string","uniqueKey":"oneOf.0.sell.amount.oneOf.0","typeLabel":"string"},{"description":"The consented bound in exact decimal units of `asset`: on `sell` the most the trade may\nspend, on `buy` the least it must receive. Absent when not recorded, never `0`.","type":"null","uniqueKey":"oneOf.0.sell.amount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.sell.amount","typeLabel":"string | null"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.sell","typeLabel":"object"},"submittedByYou":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.0.submittedByYou","typeLabel":"boolean"},"venueAccountName":{"description":"The workspace's venue account it went through, titled by its catalogue Venue\n(\"Keyrock account\"), never by the execution type (\"Keyrock OTC\"); an on-chain venue is\nnever an account and reads as itself (\"Circle StableFX\").","type":"string","isRequired":true,"uniqueKey":"oneOf.0.venueAccountName","typeLabel":"string"},"venueName":{"description":"The venue's name, for display.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.venueName","typeLabel":"string"},"kind":{"description":"The kinds the one trade history lists.\n\nNew values may be added; treat unknown values as other.","enum":["order","venueTrade"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.kind","typeLabel":"enum\u003cstring>"},"projection":{"description":"Which view of trades answers the request: the caller's own, the workspace's,\na broker's umbrella, an LP's fills, or an LP's unsettled orders.\n\nNew values may be added; treat unknown values as other.","enum":["mine","workspace","umbrella","maker","settlement"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.projection","typeLabel":"enum\u003cstring>"},"tradeId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.tradeId","typeLabel":"string"},"fees":{"description":"Fee breakdown: gas, protocol fee, solver fee, relayer tips. Absent\nwhen the order predates fee capture.","properties":{"totals":{"properties":{"totalCostUsd":{"description":"Sum of every priced row; unrecorded gas contributes nothing.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.fees.totals.totalCostUsd","typeLabel":"string"},"lpSpreadUsd":{"description":"LP spread charged to the taker (the `lp_spread` fee_kind). Previously this\nwas miscounted into `user_gas_usd` and displayed as \"User Gas\"; it is a\npricing spread, not gas.","type":"string","uniqueKey":"oneOf.0.fees.totals.lpSpreadUsd","typeLabel":"string"},"protocolFeeUsd":{"oneOf":[{"description":"The TetraFi platform fee, in USD. `null` when the platform fee has no USD value\nrecorded (an invoiced fee before it is billed): unpriced is not the same as free.","type":"string","uniqueKey":"oneOf.0.fees.totals.protocolFeeUsd.oneOf.0","typeLabel":"string"},{"description":"The TetraFi platform fee, in USD. `null` when the platform fee has no USD value\nrecorded (an invoiced fee before it is billed): unpriced is not the same as free.","type":"null","uniqueKey":"oneOf.0.fees.totals.protocolFeeUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.fees.totals.protocolFeeUsd","typeLabel":"string | null"},"solverGasUsd":{"oneOf":[{"description":"Gas the solver absorbed, in USD. `null` when no priced gas was\nrecorded for the solver.","type":"string","uniqueKey":"oneOf.0.fees.totals.solverGasUsd.oneOf.0","typeLabel":"string"},{"description":"Gas the solver absorbed, in USD. `null` when no priced gas was\nrecorded for the solver.","type":"null","uniqueKey":"oneOf.0.fees.totals.solverGasUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.fees.totals.solverGasUsd","typeLabel":"string | null"},"userGasUsd":{"oneOf":[{"description":"Gas the taker paid, in USD. `null` when no priced gas was recorded\nfor the taker: unrecorded is not the same as free.","type":"string","uniqueKey":"oneOf.0.fees.totals.userGasUsd.oneOf.0","typeLabel":"string"},{"description":"Gas the taker paid, in USD. `null` when no priced gas was recorded\nfor the taker: unrecorded is not the same as free.","type":"null","uniqueKey":"oneOf.0.fees.totals.userGasUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.fees.totals.userGasUsd","typeLabel":"string | null"}},"required":["totalCostUsd"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.fees.totals","typeLabel":"object"},"rows":{"items":{"properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.fees.rows.items.[INDEX].chain","typeLabel":"string"},"feeKind":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.fees.rows.items.[INDEX].feeKind","typeLabel":"string"},"feePayer":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.fees.rows.items.[INDEX].feePayer","typeLabel":"string"},"recordedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.fees.rows.items.[INDEX].recordedAt","typeLabel":"string\u003cdate-time>"},"sequenceNumber":{"format":"int32","type":"integer","isRequired":true,"uniqueKey":"oneOf.0.fees.rows.items.[INDEX].sequenceNumber","typeLabel":"integer\u003cint32>"},"txType":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.fees.rows.items.[INDEX].txType","typeLabel":"string"},"feeUsd":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.fees.rows.items.[INDEX].feeUsd.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.fees.rows.items.[INDEX].feeUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.fees.rows.items.[INDEX].feeUsd","typeLabel":"string | null"},"feeWei":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.fees.rows.items.[INDEX].feeWei.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.fees.rows.items.[INDEX].feeWei.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.fees.rows.items.[INDEX].feeWei","typeLabel":"string | null"},"gasPriceWei":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.fees.rows.items.[INDEX].gasPriceWei.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.fees.rows.items.[INDEX].gasPriceWei.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.fees.rows.items.[INDEX].gasPriceWei","typeLabel":"string | null"},"gasUsed":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.fees.rows.items.[INDEX].gasUsed.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.fees.rows.items.[INDEX].gasUsed.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.fees.rows.items.[INDEX].gasUsed","typeLabel":"string | null"},"txHash":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.fees.rows.items.[INDEX].txHash.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.fees.rows.items.[INDEX].txHash.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.fees.rows.items.[INDEX].txHash","typeLabel":"string | null"}},"required":["sequenceNumber","txType","chain","feePayer","feeKind","recordedAt"],"type":"object","uniqueKey":"oneOf.0.fees.rows.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.fees.rows","typeLabel":"object[]"}},"required":["totals"],"type":"object","uniqueKey":"oneOf.0.fees","typeLabel":"object"},"legs":{"oneOf":[{"description":"Uniform per-leg execution model for multi-leg route orders; absent for\nsingle-leg escrow / deferred orders. Mirrors `OrderResponse.legs`.","items":{"description":"One executed (or pending) route leg.","properties":{"buy":{"description":"What the leg quote ESTIMATED this leg would buy. Always the quote: a confirmed\ndelivery is reported separately in `measuredBuy` rather than overwriting this,\nso the two facts stay distinguishable on the wire.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy.unresolved","typeLabel":"null | enum\u003cstring>"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].buy","typeLabel":"object"},"index":{"description":"0-indexed position in the route's execution order.","format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].index","typeLabel":"integer\u003cint32>"},"kind":{"description":"Normalised leg mechanism: `cctp` | `across` | `relay` | `fx` | `solver`, or the\nraw `providerProduct` for a kind the backend does not special-case (clients must\ntreat this as an open set and fall back to a generic presentation).","enum":["cctp","across","relay","fx","solver","dexswap","rfqswap"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].kind","typeLabel":"enum\u003cstring>"},"label":{"description":"Human-friendly leg label, e.g. `\"Circle CCTP Fast\"` or `\"CCTP: Base → Arc\"`.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].label","typeLabel":"string"},"sell":{"description":"What the leg sells: its asset, chain and `decimalAmount`, or `unresolved` when\nthe backend cannot scale it.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell.unresolved","typeLabel":"null | enum\u003cstring>"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sell","typeLabel":"object"},"status":{"description":"Leg status: `pending` | `executing` | `done` | `failed` | `refunded`.","enum":["pending","executing","done","failed","refunded"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"counterparty":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.0","typeLabel":"null"},{"type":"object","description":"Per-leg counterparty compliance posture — WHO filled this leg and their\nregulatory standing. Absent on the generic `OrderResponse`; populated only\non the admin company trade-detail. Lets a composite show \"leg 1 = KYB'd\nSolver X (Cayman Islands), leg 2 = CCTP protocol\" instead of one collapsed\ncounterparty.","required":["counterpartyType"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"counterpartyType":{"description":"`vasp` | `bilateral` | `protocol` | `solver` — the nature of this leg's filler.","enum":["vasp","bilateral","protocol","solver"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.counterpartyType","typeLabel":"enum\u003cstring>"},"jurisdiction":{"oneOf":[{"description":"ISO-3166 alpha-2 home jurisdiction of the LP entity (KYB'd solver legs only).","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.jurisdiction.oneOf.0","typeLabel":"string"},{"description":"ISO-3166 alpha-2 home jurisdiction of the LP entity (KYB'd solver legs only).","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.jurisdiction.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.jurisdiction","typeLabel":"string | null"},"kybStatus":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.kybStatus.oneOf.0","typeLabel":"null"},{"type":"string","description":"KYB status of the LP workspace behind this leg (`approved` / … ).","enum":["not_started","pending","in_review","approved","verified","rejected","denied","expired"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.kybStatus.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.kybStatus","typeLabel":"null | enum\u003cstring>"},"licences":{"description":"Regulatory licences the leg's LP holds.","items":{"description":"A single regulatory licence held by a route leg's LP.","properties":{"jurisdiction":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].jurisdiction","typeLabel":"string"},"licenceType":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].licenceType","typeLabel":"string"},"status":{"description":"New values may be added; treat unknown values as other.","enum":["active","suspended","expired","revoked"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"expiresAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].expiresAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].expiresAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].expiresAt","typeLabel":"string\u003cdate-time> | null"}},"required":["licenceType","jurisdiction","status"],"type":"object","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences","typeLabel":"object[]"},"provenance":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.provenance.oneOf.0","typeLabel":"null"},{"type":"string","description":"Who supplied the LP entity's facts, when an entity profile backs this leg.\nA `platformCurated` venue (e.g. Circle) carries a raw `not_started` KYB row\nby design; this field is what distinguishes it from an unverified LP.","enum":["kybVerified","platformCurated","selfDeclared"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.provenance.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.provenance","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].counterparty","typeLabel":"null | object"},"destChainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].destChainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].destChainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].destChainId","typeLabel":"integer\u003cint64> | null"},"etaSeconds":{"oneOf":[{"description":"The route quote's per-leg ETA in seconds, when it carried one: the venue's\nestimate of this leg's own execution. For a CCTP leg it is the burn-to-mint\nupper bound of the chosen finality tier, set by the source chain (Fast ~20 s;\nStandard ~19 min from the L1-anchored chains). It never counts the time a\nparked route waits for its taker to sign the next leg.","format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].etaSeconds.oneOf.0","typeLabel":"integer\u003cint64>"},{"description":"The route quote's per-leg ETA in seconds, when it carried one: the venue's\nestimate of this leg's own execution. For a CCTP leg it is the burn-to-mint\nupper bound of the chosen finality tier, set by the source chain (Fast ~20 s;\nStandard ~19 min from the L1-anchored chains). It never counts the time a\nparked route waits for its taker to sign the next leg.","format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].etaSeconds.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].etaSeconds","typeLabel":"integer\u003cint64> | null"},"externalRefs":{"description":"Off-chain provider references for the leg (Circle trade id, Across deposit id,\nRelay request id, …) — the identifiers a client uses to look the leg up on the\nprovider's own status surface.","items":{"description":"An off-chain provider reference for a leg.","properties":{"kind":{"description":"Reference kind, e.g. `circleTradeId` | `acrossDepositId` | `relayRequestId`.","enum":["circleTradeId","acrossDepositId","relayRequestId"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX].kind","typeLabel":"enum\u003cstring>"},"value":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX].value","typeLabel":"string"},"url":{"oneOf":[{"description":"A provider status URL for `value`, when one is known.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX].url.oneOf.0","typeLabel":"string"},{"description":"A provider status URL for `value`, when one is known.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX].url.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX].url","typeLabel":"string | null"}},"required":["kind","value"],"type":"object","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].externalRefs","typeLabel":"object[]"},"feeUsd":{"oneOf":[{"description":"Concrete USD-denominated fee total for this leg. Absent when the route\nquote only carried spread/fee bps or a non-USD fee asset.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].feeUsd.oneOf.0","typeLabel":"string"},{"description":"Concrete USD-denominated fee total for this leg. Absent when the route\nquote only carried spread/fee bps or a non-USD fee asset.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].feeUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].feeUsd","typeLabel":"string | null"},"measuredBuy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.0","typeLabel":"null"},{"type":"object","description":"What this leg was OBSERVED to deliver, from the settlement receipt TetraFi\nrecorded for this leg, in the leg's buy asset. Absent until that receipt has\nconfirmed the leg, which a client must render as \"not measured\": never as\nzero, and never by silently showing `buy` in its place.\n\nThis is the only place an INTERMEDIATE leg's real delivery appears. On a\n`StableFX -> CCTP` composite the FX leg settles a different asset on a\ndifferent chain from the order's own output, so the order-level delivery\ncannot describe it.","required":["asset"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.unresolved","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuy","typeLabel":"null | object"},"measuredBuySource":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuySource.oneOf.0","typeLabel":"null"},{"type":"string","description":"Which settlement receipt backed `measuredBuy`: `circleSettledOutput`\n| `cctpVerifiedOutput` | `relayVerifiedOutput` | `solverVerifiedOutput`\n| `nativeUniswapOutcome`. Carried so an operator can trace a per-leg number back\nto the observation that produced it instead of inferring it from the leg kind.","enum":["circleSettledOutput","cctpVerifiedOutput","relayVerifiedOutput","solverVerifiedOutput","nativeUniswapOutcome"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuySource.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].measuredBuySource","typeLabel":"null | enum\u003cstring>"},"product":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].product.oneOf.0","typeLabel":"null"},{"type":"string","description":"The venue product of a firm-RFQ leg: `lop` (Octarine limit order) | `rfq` (Bebop\nPMM RFQ) | `bopamm` (Bebop BopAMM). Read from the handoff persisted for the leg,\nso it is absent until the venue firmed it and on every non-RFQ leg. An open set:\na client renders an unknown value generically.","enum":["lop","rfq","bopamm"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].product.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].product","typeLabel":"null | enum\u003cstring>"},"provider":{"oneOf":[{"description":"Venue / provider display name for the leg.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].provider.oneOf.0","typeLabel":"string"},{"description":"Venue / provider display name for the leg.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].provider.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].provider","typeLabel":"string | null"},"sourceChainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sourceChainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sourceChainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].sourceChainId","typeLabel":"integer\u003cint64> | null"},"tradeLeg":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.0","typeLabel":"null"},{"type":"object","description":"The money-movement facts of a hosted venue trade's leg: a\npayout or pay-in over a bank rail or a chain. Absent on route legs.","required":["legId","direction","settlementRail","state"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"direction":{"description":"Whether the leg brings money to the LP account before the trade, or takes\nthe trade's output away from it.\n\nNew values may be added; treat unknown values as other.","enum":["pay_in","payout"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.direction","typeLabel":"enum\u003cstring>"},"legId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.legId","typeLabel":"string\u003cuuid>"},"settlementRail":{"description":"How the leg settles: a bank rail or a chain transfer.\n\nNew values may be added; treat unknown values as other.","enum":["bank","chain"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.settlementRail","typeLabel":"enum\u003cstring>"},"state":{"description":"The leg's state. The last five are terminal.\n\nNew values may be added; treat unknown values as other.","enum":["planned","awaiting_funds","funds_received","price_beyond_bound","expired_unfunded","late_funds","awaiting_approval","dispatching","uncertain","in_transit","held_by_provider","refunding","manual_review","settled","returned","refunded","cancelled","refused"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.state","typeLabel":"enum\u003cstring>"},"boundLapsesAt":{"oneOf":[{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.boundLapsesAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.boundLapsesAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.boundLapsesAt","typeLabel":"string\u003cdate-time> | null"},"confirmAgainReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.confirmAgainReason.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why a deposit-first pay-in in `price_beyond_bound` waits for a new consent.","enum":["priceBeyondBound","boundLapsed"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.confirmAgainReason.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.confirmAgainReason","typeLabel":"null | enum\u003cstring>"},"consentedPayoutFee":{"oneOf":[{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.consentedPayoutFee.oneOf.0","typeLabel":"string"},{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.consentedPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.consentedPayoutFee","typeLabel":"string | null"},"creditedAmount":{"oneOf":[{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.creditedAmount.oneOf.0","typeLabel":"string"},{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.creditedAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.creditedAmount","typeLabel":"string | null"},"currentPayoutFee":{"oneOf":[{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.currentPayoutFee.oneOf.0","typeLabel":"string"},{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.currentPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.currentPayoutFee","typeLabel":"string | null"},"declaredPayoutFee":{"oneOf":[{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.declaredPayoutFee.oneOf.0","typeLabel":"string"},{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.declaredPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.declaredPayoutFee","typeLabel":"string | null"},"destination":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.0","typeLabel":"null"},{"type":"object","description":"Where a payout leg delivers, by reference only: never bank or chain\ncoordinates.","required":["kind","ref"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"What a payout leg delivers to, in the binding's endpoint vocabulary.\n\nNew values may be added; treat unknown values as other.","enum":["wallet","bankDestination"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"ref":{"description":"The wallet id or the Treasury Destination id.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1.ref","typeLabel":"string"},"approvalId":{"oneOf":[{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1.approvalId.oneOf.0","typeLabel":"string\u003cuuid>"},{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1.approvalId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1.approvalId","typeLabel":"string\u003cuuid> | null"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination","typeLabel":"null | object"},"expectedArrivalAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalAt","typeLabel":"string\u003cdate-time> | null"},"expectedArrivalSource":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalSource.oneOf.0","typeLabel":"null"},{"type":"string","description":"`provider` or `default`.","enum":["provider","default"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalSource.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalSource","typeLabel":"null | enum\u003cstring>"},"finality":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.finality.oneOf.0","typeLabel":"null"},{"type":"string","description":"Whether a settled payout can still be returned. Absent for an unsettled leg or a settled leg without a provider return watch.","enum":["final","returnable","returnedAfterSettlement"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.finality.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.finality","typeLabel":"null | enum\u003cstring>"},"fundingDeadlineAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"fundingModel":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingModel.oneOf.0","typeLabel":"null"},{"type":"string","description":"A bank leg's funding model, fixed when it was planned. Absent on a\nchain leg.","enum":["prefunded","payIn","credit"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingModel.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingModel","typeLabel":"null | enum\u003cstring>"},"fundsReceivedAt":{"oneOf":[{"description":"The venue's own credit time of that amount.","format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundsReceivedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The venue's own credit time of that amount.","format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundsReceivedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundsReceivedAt","typeLabel":"string\u003cdate-time> | null"},"holidaysApplied":{"oneOf":[{"type":"boolean","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.holidaysApplied.oneOf.0","typeLabel":"boolean"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.holidaysApplied.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.holidaysApplied","typeLabel":"boolean | null"},"outcomeCode":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.outcomeCode.oneOf.0","typeLabel":"null"},{"type":"string","description":"The named reason on a refused, cancelled or returned leg.","enum":["trade_unfilled","authority_revoked","confirm_again_declined","deposit_first_withdrawn","unfunded_watch_ended","adjudicated_returned","provider_returned","venue_reported_returned","provider_quote_missing","provider_quote_expired","payout_backend_changed","expected_arrival_unknown","balance_insufficient","destination_not_listed","destination_approval_revoked","destination_holder_name_unavailable","withdrawal_refused_unsent","provider_refused_unsent:adjudicated","provider_refused_unsent:adapter_hand_off_deadline_passed","provider_refused_unsent:adapter_hand_off_deadline_unsupported","adapter_refused_before_send:unsupported_rail","adapter_refused_before_send:unsupported_jurisdiction","adapter_refused_before_send:amount_out_of_bounds","adapter_refused_before_send:unsupported_leg","adapter_refused_before_send:quote_expired","adapter_refused_before_send:quote_not_reservable","adapter_refused_before_send:missing_required_data","adapter_refused_before_send:provider_rejected","adapter_refused_before_send:timeout","adapter_refused_before_send:rate_limited","adapter_refused_before_send:authentication_failed","adapter_refused_before_send:invalid_request","adapter_refused_before_send:internal","adapter_refused_before_send:not_sent"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.outcomeCode.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.outcomeCode","typeLabel":"null | enum\u003cstring>"},"overdueAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueAt","typeLabel":"string\u003cdate-time> | null"},"overdueSince":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueSince.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueSince.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueSince","typeLabel":"string\u003cdate-time> | null"},"ownBankVerification":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.0","typeLabel":"null"},{"type":"object","description":"Independent bank evidence, never the venue-reported settlement state.","required":["state","source"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"source":{"description":"New values may be added; treat unknown values as other.","enum":["revolutBusiness"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.source","typeLabel":"enum\u003cstring>"},"state":{"description":"New values may be added; treat unknown values as other.","enum":["verified","notSeen","unavailable","disagreement"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.state","typeLabel":"enum\u003cstring>"},"credit":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.0","typeLabel":"null"},{"type":"object","required":["amount","currency","creditedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"Exact decimal text, never a floating-point approximation.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.amount","typeLabel":"string"},"creditedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.creditedAt","typeLabel":"string\u003cdate-time>"},"currency":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.currency","typeLabel":"string"},"referenceMasked":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit","typeLabel":"null | object"},"lastGoodReadAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.lastGoodReadAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.lastGoodReadAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.lastGoodReadAt","typeLabel":"string\u003cdate-time> | null"},"matchedBy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.matchedBy.oneOf.0","typeLabel":"null"},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["referenceAndAmount","amountAndWindow"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.matchedBy.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.matchedBy","typeLabel":"null | enum\u003cstring>"},"reason":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reason","typeLabel":"string | null"},"reviewItemId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reviewItemId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reviewItemId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reviewItemId","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification","typeLabel":"null | object"},"payoutApproval":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.0","typeLabel":"null"},{"type":"object","description":"Treasury's existing Run approval for a bank payout. No funds are reserved\nwhile this approval is pending; release rechecks balances and terms.","required":["approvalsRequired","approverNames"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"approvalsRequired":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approvalsRequired","typeLabel":"integer\u003cint32>"},"approverNames":{"items":{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverNames.items.[INDEX]","typeLabel":"string"},"type":"array","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverNames","typeLabel":"string[]"},"approvalRequestId":{"oneOf":[{"format":"uuid","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approvalRequestId.oneOf.0","typeLabel":"string\u003cuuid>"},{"format":"uuid","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approvalRequestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approvalRequestId","typeLabel":"string\u003cuuid> | null"},"approverGroup":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroup.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroup.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroup","typeLabel":"string | null"},"approverGroupName":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroupName.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroupName.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroupName","typeLabel":"string | null"},"runId":{"oneOf":[{"format":"uuid","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.runId.oneOf.0","typeLabel":"string\u003cuuid>"},{"format":"uuid","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.runId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.runId","typeLabel":"string\u003cuuid> | null"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval","typeLabel":"null | object"},"payoutBreakdown":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.0","typeLabel":"null"},{"type":"object","description":"A payout's amounts in its asset (operator 2026-10-22: every fee-bearing\naction shows what leaves the account, the fee and what arrives). Absent\non a pay-in and on a payout with no consent yet.","required":["withdrawn","fee","receivedMin","receivedMax","basis"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"basis":{"description":"The withdrawal record these amounts come from.","enum":["consent","reviewed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.basis","typeLabel":"enum\u003cstring>"},"fee":{"description":"The most fee: a bank payout's declared payout fee (frozen by the\nwithdrawal review once there is one), else Confirm's fee bound.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.fee","typeLabel":"string"},"receivedMax":{"description":"The most that arrives.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.receivedMax","typeLabel":"string"},"receivedMin":{"description":"The least that arrives.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.receivedMin","typeLabel":"string"},"withdrawn":{"description":"The most leaving the venue account: the confirmed trade's output.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.withdrawn","typeLabel":"string"},"charging":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.charging.oneOf.0","typeLabel":"null"},{"type":"string","description":"How the venue charges a bank payout's fee, as its rail declares it\n(`deducted`, `on_top`, `unverified`). Absent on a wallet payout, whose fee\nis Confirm's bound rather than a declared rail fee.","enum":["deducted","on_top","unverified"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.charging.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.charging","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown","typeLabel":"null | object"},"payoutBreakdownUnavailableReason":{"oneOf":[{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdownUnavailableReason.oneOf.0","typeLabel":"string"},{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdownUnavailableReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdownUnavailableReason","typeLabel":"string | null"},"payoutHeldReason":{"oneOf":[{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutHeldReason.oneOf.0","typeLabel":"string"},{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutHeldReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutHeldReason","typeLabel":"string | null"},"quotedExpectedArrivalAt":{"oneOf":[{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.quotedExpectedArrivalAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.quotedExpectedArrivalAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.quotedExpectedArrivalAt","typeLabel":"string\u003cdate-time> | null"},"rail":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.rail.oneOf.0","typeLabel":"null"},{"type":"string","description":"A bank leg's rail (`eft`, `sepa`, ...), fixed when it was planned. Absent\non a chain leg.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.rail.oneOf.1","typeLabel":"string"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.rail","typeLabel":"null | string"},"railOption":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railOption.oneOf.0","typeLabel":"null"},{"type":"string","description":"The rail option the bank leg uses (`standard` or `fast`).","enum":["standard","fast"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railOption.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railOption","typeLabel":"null | enum\u003cstring>"},"railReference":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.0","typeLabel":"null"},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"state":{"description":"New values may be added; treat unknown values as other.","enum":["notReportedYet"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.1.state","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.1","typeLabel":"object"},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["kind","value","state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["swiftUetr","sepaEndToEndId","fasterPaymentsReference","bankRailReference"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"state":{"description":"New values may be added; treat unknown values as other.","enum":["reported"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.2.state","typeLabel":"enum\u003cstring>"},"value":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.2","typeLabel":"object"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference","typeLabel":"null · object · object"},"recipientConfirmation":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.0","typeLabel":"null"},{"type":"object","description":"The receiving workspace's assertion, never settlement or independent verification.","required":["confirmationId","legId","confirmedBy","confirmedByName","confirmedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"confirmationId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1.confirmationId","typeLabel":"string\u003cuuid>"},"confirmedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1.confirmedAt","typeLabel":"string\u003cdate-time>"},"confirmedBy":{"description":"`user:\u003cid>` or `key:\u003cid>`; immutable authenticated identity.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1.confirmedBy","typeLabel":"string"},"confirmedByName":{"description":"A safe name captured at confirmation, never an email address.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1.confirmedByName","typeLabel":"string"},"legId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1.legId","typeLabel":"string\u003cuuid>"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation","typeLabel":"null | object"},"returnWindowEndsAt":{"oneOf":[{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnWindowEndsAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnWindowEndsAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnWindowEndsAt","typeLabel":"string\u003cdate-time> | null"},"returnedAfterSettlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedAfterSettlement.oneOf.0","typeLabel":"null"},{"type":"object","description":"A settled payout the provider later returned. The leg\nstays `settled` (its row is immutable); the PayoutReturned review item\nis the one fact, and resolving that review keeps this annotation.","required":["reviewItemId","detectedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"detectedAt":{"description":"When TetraFi's own status read first saw the return.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedAfterSettlement.oneOf.1.detectedAt","typeLabel":"string\u003cdate-time>"},"reviewItemId":{"description":"The PayoutReturned review item support works the return from.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedAfterSettlement.oneOf.1.reviewItemId","typeLabel":"string"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedAfterSettlement.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedAfterSettlement","typeLabel":"null | object"},"returnedTo":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedTo.oneOf.0","typeLabel":"null"},{"type":"string","description":"Where a returned leg's funds remain, according to its dispatch backend.\n\nNew values may be added; treat unknown values as other.","enum":["lpAccount","providerBalance"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedTo.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedTo","typeLabel":"null | enum\u003cstring>"},"reviewAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewAt","typeLabel":"string\u003cdate-time> | null"},"reviewEnteredAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewEnteredAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewEnteredAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewEnteredAt","typeLabel":"string\u003cdate-time> | null"},"reviewItemId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewItemId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewItemId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewItemId","typeLabel":"string | null"},"reviewReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewReason.oneOf.0","typeLabel":"null"},{"type":"string","description":"The reason a leg requires review.\n\nNew values may be added; treat unknown values as other.","enum":["uncertain_send","ambiguous_event","expected_arrival_exceeded","provider_failed_after_send","trade_fill_requires_review","late_funds_held","late_funds_worse_rate","amount_mismatch"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewReason.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewReason","typeLabel":"null | enum\u003cstring>"},"submittedAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.submittedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.submittedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.submittedAt","typeLabel":"string\u003cdate-time> | null"},"transactionHash":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.transactionHash.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.transactionHash.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.transactionHash","typeLabel":"string | null"},"venueReportedCredited":{"oneOf":[{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"boolean","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueReportedCredited.oneOf.0","typeLabel":"boolean"},{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueReportedCredited.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueReportedCredited","typeLabel":"boolean | null"},"venueWithdrawalId":{"oneOf":[{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueWithdrawalId.oneOf.0","typeLabel":"string"},{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueWithdrawalId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueWithdrawalId","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].tradeLeg","typeLabel":"null | object"},"transactions":{"description":"The transactions this leg produced (a subset of the order's `transactions[]`,\ncorrelated by `leg_index`/chain), each already enriched with an explorer URL.","items":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].transactions","typeLabel":"object[]"},"venueRouteId":{"oneOf":[{"description":"The venue route identity that filled this leg, from the retained route quote's\n`legQuotes[].solverId`. A solver-LP leg carries a real solver id that\nresolves to a KYB'd LP workspace; a bridge leg carries a synthetic id\n(e.g. `\"circle-cctp\"`) with no LP workspace behind it. This is the handle\nthe trade-detail builder uses to resolve per-leg counterparty compliance.","type":"string","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].venueRouteId.oneOf.0","typeLabel":"string"},{"description":"The venue route identity that filled this leg, from the retained route quote's\n`legQuotes[].solverId`. A solver-LP leg carries a real solver id that\nresolves to a KYB'd LP workspace; a bridge leg carries a synthetic id\n(e.g. `\"circle-cctp\"`) with no LP workspace behind it. This is the handle\nthe trade-detail builder uses to resolve per-leg counterparty compliance.","type":"null","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].venueRouteId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX].venueRouteId","typeLabel":"string | null"}},"required":["index","kind","label","sell","buy","status"],"type":"object","uniqueKey":"oneOf.0.legs.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.legs.oneOf.0","typeLabel":"object[]"},{"description":"Uniform per-leg execution model for multi-leg route orders; absent for\nsingle-leg escrow / deferred orders. Mirrors `OrderResponse.legs`.","items":{"description":"One executed (or pending) route leg.","properties":{"buy":{"description":"What the leg quote ESTIMATED this leg would buy. Always the quote: a confirmed\ndelivery is reported separately in `measuredBuy` rather than overwriting this,\nso the two facts stay distinguishable on the wire.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"address":{"oneOf":[{"type":"string"},{"type":"null"}]},"assetId":{"type":"string"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer"},{"format":"int64","minimum":0,"type":"null"}]},"chainRef":{"oneOf":[{"type":"string"},{"type":"null"}]},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer"},{"format":"int32","minimum":0,"type":"null"}]},"name":{"oneOf":[{"type":"string"},{"type":"null"}]},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true},"symbol":{"type":"string"}},"required":["assetId","symbol","resolutionStatus"],"type":"object"},"decimalAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"rawAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]}},"required":["asset"],"type":"object"},"counterparty":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"Per-leg counterparty compliance posture — WHO filled this leg and their\nregulatory standing. Absent on the generic `OrderResponse`; populated only\non the admin company trade-detail. Lets a composite show \"leg 1 = KYB'd\nSolver X (Cayman Islands), leg 2 = CCTP protocol\" instead of one collapsed\ncounterparty.","required":["counterpartyType"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"counterpartyType":{"description":"`vasp` | `bilateral` | `protocol` | `solver` — the nature of this leg's filler.","enum":["vasp","bilateral","protocol","solver"],"type":"string","x-extensible-enum":true},"jurisdiction":{"oneOf":[{"description":"ISO-3166 alpha-2 home jurisdiction of the LP entity (KYB'd solver legs only).","type":"string"},{"description":"ISO-3166 alpha-2 home jurisdiction of the LP entity (KYB'd solver legs only).","type":"null"}]},"kybStatus":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"KYB status of the LP workspace behind this leg (`approved` / … ).","enum":["not_started","pending","in_review","approved","verified","rejected","denied","expired"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"licences":{"description":"Regulatory licences the leg's LP holds.","items":{"description":"A single regulatory licence held by a route leg's LP.","properties":{"expiresAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"jurisdiction":{"type":"string"},"licenceType":{"type":"string"},"status":{"description":"New values may be added; treat unknown values as other.","enum":["active","suspended","expired","revoked"],"type":"string","x-extensible-enum":true}},"required":["licenceType","jurisdiction","status"],"type":"object"},"type":"array"},"provenance":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Who supplied the LP entity's facts, when an entity profile backs this leg.\nA `platformCurated` venue (e.g. Circle) carries a raw `not_started` KYB row\nby design; this field is what distinguishes it from an unverified LP.","enum":["kybVerified","platformCurated","selfDeclared"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]}}}]},"destChainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer"},{"format":"int64","minimum":0,"type":"null"}]},"etaSeconds":{"oneOf":[{"description":"The route quote's per-leg ETA in seconds, when it carried one: the venue's\nestimate of this leg's own execution. For a CCTP leg it is the burn-to-mint\nupper bound of the chosen finality tier, set by the source chain (Fast ~20 s;\nStandard ~19 min from the L1-anchored chains). It never counts the time a\nparked route waits for its taker to sign the next leg.","format":"int64","minimum":0,"type":"integer"},{"description":"The route quote's per-leg ETA in seconds, when it carried one: the venue's\nestimate of this leg's own execution. For a CCTP leg it is the burn-to-mint\nupper bound of the chosen finality tier, set by the source chain (Fast ~20 s;\nStandard ~19 min from the L1-anchored chains). It never counts the time a\nparked route waits for its taker to sign the next leg.","format":"int64","minimum":0,"type":"null"}]},"externalRefs":{"description":"Off-chain provider references for the leg (Circle trade id, Across deposit id,\nRelay request id, …) — the identifiers a client uses to look the leg up on the\nprovider's own status surface.","items":{"description":"An off-chain provider reference for a leg.","properties":{"kind":{"description":"Reference kind, e.g. `circleTradeId` | `acrossDepositId` | `relayRequestId`.","enum":["circleTradeId","acrossDepositId","relayRequestId"],"type":"string","x-extensible-enum":true},"url":{"oneOf":[{"description":"A provider status URL for `value`, when one is known.","type":"string"},{"description":"A provider status URL for `value`, when one is known.","type":"null"}]},"value":{"type":"string"}},"required":["kind","value"],"type":"object"},"type":"array"},"feeUsd":{"oneOf":[{"description":"Concrete USD-denominated fee total for this leg. Absent when the route\nquote only carried spread/fee bps or a non-USD fee asset.","type":"string"},{"description":"Concrete USD-denominated fee total for this leg. Absent when the route\nquote only carried spread/fee bps or a non-USD fee asset.","type":"null"}]},"index":{"description":"0-indexed position in the route's execution order.","format":"int32","minimum":0,"type":"integer"},"kind":{"description":"Normalised leg mechanism: `cctp` | `across` | `relay` | `fx` | `solver`, or the\nraw `providerProduct` for a kind the backend does not special-case (clients must\ntreat this as an open set and fall back to a generic presentation).","enum":["cctp","across","relay","fx","solver","dexswap","rfqswap"],"type":"string","x-extensible-enum":true},"label":{"description":"Human-friendly leg label, e.g. `\"Circle CCTP Fast\"` or `\"CCTP: Base → Arc\"`.","type":"string"},"measuredBuy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"What this leg was OBSERVED to deliver, from the settlement receipt TetraFi\nrecorded for this leg, in the leg's buy asset. Absent until that receipt has\nconfirmed the leg, which a client must render as \"not measured\": never as\nzero, and never by silently showing `buy` in its place.\n\nThis is the only place an INTERMEDIATE leg's real delivery appears. On a\n`StableFX -> CCTP` composite the FX leg settles a different asset on a\ndifferent chain from the order's own output, so the order-level delivery\ncannot describe it.","required":["asset"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"address":{"oneOf":[{"type":"string"},{"type":"null"}]},"assetId":{"type":"string"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer"},{"format":"int64","minimum":0,"type":"null"}]},"chainRef":{"oneOf":[{"type":"string"},{"type":"null"}]},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer"},{"format":"int32","minimum":0,"type":"null"}]},"name":{"oneOf":[{"type":"string"},{"type":"null"}]},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true},"symbol":{"type":"string"}},"required":["assetId","symbol","resolutionStatus"],"type":"object"},"decimalAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"rawAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]}}}]},"measuredBuySource":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Which settlement receipt backed `measuredBuy`: `circleSettledOutput`\n| `cctpVerifiedOutput` | `relayVerifiedOutput` | `solverVerifiedOutput`\n| `nativeUniswapOutcome`. Carried so an operator can trace a per-leg number back\nto the observation that produced it instead of inferring it from the leg kind.","enum":["circleSettledOutput","cctpVerifiedOutput","relayVerifiedOutput","solverVerifiedOutput","nativeUniswapOutcome"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"product":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"The venue product of a firm-RFQ leg: `lop` (Octarine limit order) | `rfq` (Bebop\nPMM RFQ) | `bopamm` (Bebop BopAMM). Read from the handoff persisted for the leg,\nso it is absent until the venue firmed it and on every non-RFQ leg. An open set:\na client renders an unknown value generically.","enum":["lop","rfq","bopamm"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"provider":{"oneOf":[{"description":"Venue / provider display name for the leg.","type":"string"},{"description":"Venue / provider display name for the leg.","type":"null"}]},"sell":{"description":"What the leg sells: its asset, chain and `decimalAmount`, or `unresolved` when\nthe backend cannot scale it.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"address":{"oneOf":[{"type":"string"},{"type":"null"}]},"assetId":{"type":"string"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer"},{"format":"int64","minimum":0,"type":"null"}]},"chainRef":{"oneOf":[{"type":"string"},{"type":"null"}]},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer"},{"format":"int32","minimum":0,"type":"null"}]},"name":{"oneOf":[{"type":"string"},{"type":"null"}]},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true},"symbol":{"type":"string"}},"required":["assetId","symbol","resolutionStatus"],"type":"object"},"decimalAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"rawAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]}},"required":["asset"],"type":"object"},"sourceChainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer"},{"format":"int64","minimum":0,"type":"null"}]},"status":{"description":"Leg status: `pending` | `executing` | `done` | `failed` | `refunded`.","enum":["pending","executing","done","failed","refunded"],"type":"string","x-extensible-enum":true},"tradeLeg":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"The money-movement facts of a hosted venue trade's leg: a\npayout or pay-in over a bank rail or a chain. Absent on route legs.","required":["legId","direction","settlementRail","state"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"boundLapsesAt":{"oneOf":[{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"string"},{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"null"}]},"confirmAgainReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Why a deposit-first pay-in in `price_beyond_bound` waits for a new consent.","enum":["priceBeyondBound","boundLapsed"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"consentedPayoutFee":{"oneOf":[{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"string"},{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"null"}]},"creditedAmount":{"oneOf":[{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"string"},{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"null"}]},"currentPayoutFee":{"oneOf":[{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"string"},{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"null"}]},"declaredPayoutFee":{"oneOf":[{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"string"},{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"null"}]},"destination":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"Where a payout leg delivers, by reference only: never bank or chain\ncoordinates.","required":["kind","ref"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"approvalId":{"oneOf":[{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"string"},{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"null"}]},"kind":{"description":"What a payout leg delivers to, in the binding's endpoint vocabulary.\n\nNew values may be added; treat unknown values as other.","enum":["wallet","bankDestination"],"type":"string","x-extensible-enum":true},"ref":{"description":"The wallet id or the Treasury Destination id.","type":"string"}}}]},"direction":{"description":"Whether the leg brings money to the LP account before the trade, or takes\nthe trade's output away from it.\n\nNew values may be added; treat unknown values as other.","enum":["pay_in","payout"],"type":"string","x-extensible-enum":true},"expectedArrivalAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"expectedArrivalSource":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"`provider` or `default`.","enum":["provider","default"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"finality":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Whether a settled payout can still be returned. Absent for an unsettled leg or a settled leg without a provider return watch.","enum":["final","returnable","returnedAfterSettlement"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"fundingDeadlineAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"fundingModel":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"A bank leg's funding model, fixed when it was planned. Absent on a\nchain leg.","enum":["prefunded","payIn","credit"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"fundsReceivedAt":{"oneOf":[{"description":"The venue's own credit time of that amount.","format":"date-time","type":"string"},{"description":"The venue's own credit time of that amount.","format":"date-time","type":"null"}]},"holidaysApplied":{"oneOf":[{"type":"boolean"},{"type":"null"}]},"legId":{"format":"uuid","type":"string"},"outcomeCode":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"The named reason on a refused, cancelled or returned leg.","enum":["trade_unfilled","authority_revoked","confirm_again_declined","deposit_first_withdrawn","unfunded_watch_ended","adjudicated_returned","provider_returned","venue_reported_returned","provider_quote_missing","provider_quote_expired","payout_backend_changed","expected_arrival_unknown","balance_insufficient","destination_not_listed","destination_approval_revoked","destination_holder_name_unavailable","withdrawal_refused_unsent","provider_refused_unsent:adjudicated","provider_refused_unsent:adapter_hand_off_deadline_passed","provider_refused_unsent:adapter_hand_off_deadline_unsupported","adapter_refused_before_send:unsupported_rail","adapter_refused_before_send:unsupported_jurisdiction","adapter_refused_before_send:amount_out_of_bounds","adapter_refused_before_send:unsupported_leg","adapter_refused_before_send:quote_expired","adapter_refused_before_send:quote_not_reservable","adapter_refused_before_send:missing_required_data","adapter_refused_before_send:provider_rejected","adapter_refused_before_send:timeout","adapter_refused_before_send:rate_limited","adapter_refused_before_send:authentication_failed","adapter_refused_before_send:invalid_request","adapter_refused_before_send:internal","adapter_refused_before_send:not_sent"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"overdueAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"overdueSince":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"ownBankVerification":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"Independent bank evidence, never the venue-reported settlement state.","required":["state","source"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"credit":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","required":["amount","currency","creditedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"Exact decimal text, never a floating-point approximation.","type":"string"},"creditedAt":{"format":"date-time","type":"string"},"currency":{"type":"string"},"referenceMasked":{"oneOf":[{"type":"string"},{"type":"null"}]}}}]},"lastGoodReadAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"matchedBy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["referenceAndAmount","amountAndWindow"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"reason":{"oneOf":[{"type":"string"},{"type":"null"}]},"reviewItemId":{"oneOf":[{"type":"string"},{"type":"null"}]},"source":{"description":"New values may be added; treat unknown values as other.","enum":["revolutBusiness"],"type":"string","x-extensible-enum":true},"state":{"description":"New values may be added; treat unknown values as other.","enum":["verified","notSeen","unavailable","disagreement"],"type":"string","x-extensible-enum":true}}}]},"payoutApproval":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"Treasury's existing Run approval for a bank payout. No funds are reserved\nwhile this approval is pending; release rechecks balances and terms.","required":["approvalsRequired","approverNames"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"approvalRequestId":{"oneOf":[{"format":"uuid","type":"string"},{"format":"uuid","type":"null"}]},"approvalsRequired":{"format":"int32","minimum":0,"type":"integer"},"approverGroup":{"oneOf":[{"type":"string"},{"type":"null"}]},"approverGroupName":{"oneOf":[{"type":"string"},{"type":"null"}]},"approverNames":{"items":{"type":"string"},"type":"array"},"runId":{"oneOf":[{"format":"uuid","type":"string"},{"format":"uuid","type":"null"}]}}}]},"payoutBreakdown":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"A payout's amounts in its asset (operator 2026-10-22: every fee-bearing\naction shows what leaves the account, the fee and what arrives). Absent\non a pay-in and on a payout with no consent yet.","required":["withdrawn","fee","receivedMin","receivedMax","basis"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"basis":{"description":"The withdrawal record these amounts come from.","enum":["consent","reviewed"],"type":"string","x-extensible-enum":true},"charging":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"How the venue charges a bank payout's fee, as its rail declares it\n(`deducted`, `on_top`, `unverified`). Absent on a wallet payout, whose fee\nis Confirm's bound rather than a declared rail fee.","enum":["deducted","on_top","unverified"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"fee":{"description":"The most fee: a bank payout's declared payout fee (frozen by the\nwithdrawal review once there is one), else Confirm's fee bound.","type":"string"},"receivedMax":{"description":"The most that arrives.","type":"string"},"receivedMin":{"description":"The least that arrives.","type":"string"},"withdrawn":{"description":"The most leaving the venue account: the confirmed trade's output.","type":"string"}}}]},"payoutBreakdownUnavailableReason":{"oneOf":[{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"string"},{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"null"}]},"payoutHeldReason":{"oneOf":[{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"string"},{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"null"}]},"quotedExpectedArrivalAt":{"oneOf":[{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"string"},{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"null"}]},"rail":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"A bank leg's rail (`eft`, `sepa`, ...), fixed when it was planned. Absent\non a chain leg.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"railOption":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"The rail option the bank leg uses (`standard` or `fast`).","enum":["standard","fast"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"railReference":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"state":{"description":"New values may be added; treat unknown values as other.","enum":["notReportedYet"],"type":"string","x-extensible-enum":true}}},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["kind","value","state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["swiftUetr","sepaEndToEndId","fasterPaymentsReference","bankRailReference"],"type":"string","x-extensible-enum":true},"state":{"description":"New values may be added; treat unknown values as other.","enum":["reported"],"type":"string","x-extensible-enum":true},"value":{"type":"string"}}}]},"recipientConfirmation":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"The receiving workspace's assertion, never settlement or independent verification.","required":["confirmationId","legId","confirmedBy","confirmedByName","confirmedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"confirmationId":{"format":"uuid","type":"string"},"confirmedAt":{"format":"date-time","type":"string"},"confirmedBy":{"description":"`user:\u003cid>` or `key:\u003cid>`; immutable authenticated identity.","type":"string"},"confirmedByName":{"description":"A safe name captured at confirmation, never an email address.","type":"string"},"legId":{"format":"uuid","type":"string"}}}]},"returnWindowEndsAt":{"oneOf":[{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"string"},{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"null"}]},"returnedAfterSettlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"A settled payout the provider later returned. The leg\nstays `settled` (its row is immutable); the PayoutReturned review item\nis the one fact, and resolving that review keeps this annotation.","required":["reviewItemId","detectedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"detectedAt":{"description":"When TetraFi's own status read first saw the return.","format":"date-time","type":"string"},"reviewItemId":{"description":"The PayoutReturned review item support works the return from.","type":"string"}}}]},"returnedTo":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Where a returned leg's funds remain, according to its dispatch backend.\n\nNew values may be added; treat unknown values as other.","enum":["lpAccount","providerBalance"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"reviewAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"reviewEnteredAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"reviewItemId":{"oneOf":[{"type":"string"},{"type":"null"}]},"reviewReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"The reason a leg requires review.\n\nNew values may be added; treat unknown values as other.","enum":["uncertain_send","ambiguous_event","expected_arrival_exceeded","provider_failed_after_send","trade_fill_requires_review","late_funds_held","late_funds_worse_rate","amount_mismatch"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"settlementRail":{"description":"How the leg settles: a bank rail or a chain transfer.\n\nNew values may be added; treat unknown values as other.","enum":["bank","chain"],"type":"string","x-extensible-enum":true},"state":{"description":"The leg's state. The last five are terminal.\n\nNew values may be added; treat unknown values as other.","enum":["planned","awaiting_funds","funds_received","price_beyond_bound","expired_unfunded","late_funds","awaiting_approval","dispatching","uncertain","in_transit","held_by_provider","refunding","manual_review","settled","returned","refunded","cancelled","refused"],"type":"string","x-extensible-enum":true},"submittedAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"transactionHash":{"oneOf":[{"type":"string"},{"type":"null"}]},"venueReportedCredited":{"oneOf":[{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"boolean"},{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"null"}]},"venueWithdrawalId":{"oneOf":[{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"string"},{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"null"}]}}}]},"transactions":{"description":"The transactions this leg produced (a subset of the order's `transactions[]`,\ncorrelated by `leg_index`/chain), each already enriched with an explorer URL.","items":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true},"chainId":{"format":"int64","minimum":0,"type":"integer"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null"}]},"hash":{"type":"string"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null"}]},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null"}]},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null"}]}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object"},"type":"array"},"venueRouteId":{"oneOf":[{"description":"The venue route identity that filled this leg, from the retained route quote's\n`legQuotes[].solverId`. A solver-LP leg carries a real solver id that\nresolves to a KYB'd LP workspace; a bridge leg carries a synthetic id\n(e.g. `\"circle-cctp\"`) with no LP workspace behind it. This is the handle\nthe trade-detail builder uses to resolve per-leg counterparty compliance.","type":"string"},{"description":"The venue route identity that filled this leg, from the retained route quote's\n`legQuotes[].solverId`. A solver-LP leg carries a real solver id that\nresolves to a KYB'd LP workspace; a bridge leg carries a synthetic id\n(e.g. `\"circle-cctp\"`) with no LP workspace behind it. This is the handle\nthe trade-detail builder uses to resolve per-leg counterparty compliance.","type":"null"}]}},"required":["index","kind","label","sell","buy","status"],"type":"object"},"type":"null","uniqueKey":"oneOf.0.legs.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.legs","typeLabel":"object[] | null"},"orderKind":{"oneOf":[{"description":"Canonical, route-aware order kind (`cctp-v0` / `composite-v0` / `fx-v0` /\n`escrow-v0` / …). Mirrors `OrderResponse.orderKind`.","type":"string","uniqueKey":"oneOf.0.orderKind.oneOf.0","typeLabel":"string"},{"description":"Canonical, route-aware order kind (`cctp-v0` / `composite-v0` / `fx-v0` /\n`escrow-v0` / …). Mirrors `OrderResponse.orderKind`.","type":"null","uniqueKey":"oneOf.0.orderKind.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.orderKind","typeLabel":"string | null"},"substatus":{"oneOf":[{"description":"Finer-grained state within the coarse status (route `routeStatus`, etc.).","type":"string","uniqueKey":"oneOf.0.substatus.oneOf.0","typeLabel":"string"},{"description":"Finer-grained state within the coarse status (route `routeStatus`, etc.).","type":"null","uniqueKey":"oneOf.0.substatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.substatus","typeLabel":"string | null"},"substatusMessage":{"oneOf":[{"description":"Human-readable elaboration of `substatus` — a Circle StableFX status line, or\nthe reason a parked/refunded/recovered order is in that state. Mirrors\n`OrderResponse.substatusMessage`.","type":"string","uniqueKey":"oneOf.0.substatusMessage.oneOf.0","typeLabel":"string"},{"description":"Human-readable elaboration of `substatus` — a Circle StableFX status line, or\nthe reason a parked/refunded/recovered order is in that state. Mirrors\n`OrderResponse.substatusMessage`.","type":"null","uniqueKey":"oneOf.0.substatusMessage.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.substatusMessage","typeLabel":"string | null"},"amountUsd":{"oneOf":[{"description":"A reference USD value of what the trade sells, by the same price service that values an\norder row's `amountUsd`, at the price when read. `amountUsdBasis` says which amount it\nvalues. Absent when the asset has no reference price or the price read failed; never 0\nfor an unknown value.","type":"string","uniqueKey":"oneOf.0.amountUsd.oneOf.0","typeLabel":"string"},{"description":"A reference USD value of what the trade sells, by the same price service that values an\norder row's `amountUsd`, at the price when read. `amountUsdBasis` says which amount it\nvalues. Absent when the asset has no reference price or the price read failed; never 0\nfor an unknown value.","type":"null","uniqueKey":"oneOf.0.amountUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.amountUsd","typeLabel":"string | null"},"amountUsdBasis":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.amountUsdBasis.oneOf.0","typeLabel":"null"},{"type":"string","description":"`executed` (what the venue debited, on a fill) or `requested` (the most the trade\ncould spend, otherwise). Present exactly when `amountUsd` is.","enum":["executed","requested"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.amountUsdBasis.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.amountUsdBasis","typeLabel":"null | enum\u003cstring>"},"apiKey":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.apiKey.oneOf.0","typeLabel":"null"},{"type":"object","required":["keyId"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"keyId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.apiKey.oneOf.1.keyId","typeLabel":"string"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.apiKey.oneOf.1.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.apiKey.oneOf.1.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.apiKey.oneOf.1.name","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.apiKey.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.apiKey","typeLabel":"null | object"},"debitExpirySignature":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.debitExpirySignature.oneOf.0","typeLabel":"null"},{"type":"string","description":"For an expired debit proof, whether wallet records contain a typed signature:\n`recorded` or `unconfirmed`. Absent when the retained steps cannot establish either.","enum":["recorded","unconfirmed"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.debitExpirySignature.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.debitExpirySignature","typeLabel":"null | enum\u003cstring>"},"executionPrice":{"oneOf":[{"description":"Legacy confirmed output per input (buy asset / sell asset), computed with Decimal;\nnull when unread. executionPriceUnit states its unit; prefer statedExecutionPrice for display.","type":"string","uniqueKey":"oneOf.0.executionPrice.oneOf.0","typeLabel":"string"},{"description":"Legacy confirmed output per input (buy asset / sell asset), computed with Decimal;\nnull when unread. executionPriceUnit states its unit; prefer statedExecutionPrice for display.","type":"null","uniqueKey":"oneOf.0.executionPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.executionPrice","typeLabel":"string | null"},"executionPriceUnit":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.executionPriceUnit.oneOf.0","typeLabel":"null"},{"type":"object","description":"Unit of a price: `quoteAsset / baseAsset` means one base asset costs this many quote assets.","required":["baseAsset","quoteAsset"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"baseAsset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.executionPriceUnit.oneOf.1.baseAsset","typeLabel":"string"},"quoteAsset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.executionPriceUnit.oneOf.1.quoteAsset","typeLabel":"string"}},"uniqueKey":"oneOf.0.executionPriceUnit.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.executionPriceUnit","typeLabel":"null | object"},"feesPaid":{"oneOf":[{"description":"What a confirmed same-asset fill (a bridge) cost the taker: spent minus\nreceived, the venue's protocol and forwarding fees, in the sell asset. Absent unless confirmed and positive.","type":"string","uniqueKey":"oneOf.0.feesPaid.oneOf.0","typeLabel":"string"},{"description":"What a confirmed same-asset fill (a bridge) cost the taker: spent minus\nreceived, the venue's protocol and forwarding fees, in the sell asset. Absent unless confirmed and positive.","type":"null","uniqueKey":"oneOf.0.feesPaid.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.feesPaid","typeLabel":"string | null"},"financials":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.0","typeLabel":"null"},{"type":"object","description":"The trade's recorded money terms and payment legs, from the same records as the order read; history never re-derives a fee or minimum.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"fee":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.0","typeLabel":"null"},{"type":"object","description":"The venue's fee as recorded with the fill; absent before a fill.","required":["treatment"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"treatment":{"description":"How a fill's fee is known. `not_qualified` means the venue driver does not\nyet classify fee reporting: it is neither a zero fee nor \"not reported\".\n\nNew values may be added; treat unknown values as other.","enum":["included_in_price","reported","separate_charges","not_qualified"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.treatment","typeLabel":"enum\u003cstring>"},"amount":{"oneOf":[{"description":"Exact decimal, present when the venue reported a fee amount.","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.amount.oneOf.0","typeLabel":"string"},{"description":"Exact decimal, present when the venue reported a fee amount.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.amount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.amount","typeLabel":"string | null"},"asset":{"oneOf":[{"description":"Present exactly when `amount` is.","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.asset.oneOf.0","typeLabel":"string"},{"description":"Present exactly when `amount` is.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.asset.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.asset","typeLabel":"string | null"},"basis":{"oneOf":[{"description":"The venue contract clause, present only when the fee is in the price.","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.basis.oneOf.0","typeLabel":"string"},{"description":"The venue contract clause, present only when the fee is in the price.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.basis.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.basis","typeLabel":"string | null"},"lines":{"oneOf":[{"description":"Separate native charges, positive for a fee and negative for a rebate.\nOutcome amounts already include them in their respective assets.","items":{"properties":{"amount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.lines.oneOf.0.items.[INDEX].amount","typeLabel":"string"},"asset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.lines.oneOf.0.items.[INDEX].asset","typeLabel":"string"}},"required":["amount","asset"],"type":"object","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.lines.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.lines.oneOf.0","typeLabel":"object[]"},{"description":"Separate native charges, positive for a fee and negative for a rebate.\nOutcome amounts already include them in their respective assets.","items":{"properties":{"amount":{"type":"string"},"asset":{"type":"string"}},"required":["amount","asset"],"type":"object"},"type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.lines.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.lines","typeLabel":"object[] | null"},"tradeFeeReport":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.tradeFeeReport.oneOf.0","typeLabel":"null"},{"type":"string","description":"Present only when the fee is in the price.","enum":["not_reported","reported"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.tradeFeeReport.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1.tradeFeeReport","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.0.financials.oneOf.1.fee.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.financials.oneOf.1.fee","typeLabel":"null | object"},"legs":{"description":"Its payment legs (bank payout, pay-in, wallet payout), as the order page reads them:\nrail, state, payout breakdown and a destination reference, never bank coordinates.","items":{"description":"The leg facts an order read carries on `OrderLegInfo.tradeLeg`.","properties":{"direction":{"description":"Whether the leg brings money to the LP account before the trade, or takes\nthe trade's output away from it.\n\nNew values may be added; treat unknown values as other.","enum":["pay_in","payout"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].direction","typeLabel":"enum\u003cstring>"},"legId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].legId","typeLabel":"string\u003cuuid>"},"settlementRail":{"description":"How the leg settles: a bank rail or a chain transfer.\n\nNew values may be added; treat unknown values as other.","enum":["bank","chain"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].settlementRail","typeLabel":"enum\u003cstring>"},"state":{"description":"The leg's state. The last five are terminal.\n\nNew values may be added; treat unknown values as other.","enum":["planned","awaiting_funds","funds_received","price_beyond_bound","expired_unfunded","late_funds","awaiting_approval","dispatching","uncertain","in_transit","held_by_provider","refunding","manual_review","settled","returned","refunded","cancelled","refused"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].state","typeLabel":"enum\u003cstring>"},"boundLapsesAt":{"oneOf":[{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].boundLapsesAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].boundLapsesAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].boundLapsesAt","typeLabel":"string\u003cdate-time> | null"},"confirmAgainReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].confirmAgainReason.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why a deposit-first pay-in in `price_beyond_bound` waits for a new consent.","enum":["priceBeyondBound","boundLapsed"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].confirmAgainReason.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].confirmAgainReason","typeLabel":"null | enum\u003cstring>"},"consentedPayoutFee":{"oneOf":[{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].consentedPayoutFee.oneOf.0","typeLabel":"string"},{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].consentedPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].consentedPayoutFee","typeLabel":"string | null"},"creditedAmount":{"oneOf":[{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].creditedAmount.oneOf.0","typeLabel":"string"},{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].creditedAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].creditedAmount","typeLabel":"string | null"},"currentPayoutFee":{"oneOf":[{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].currentPayoutFee.oneOf.0","typeLabel":"string"},{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].currentPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].currentPayoutFee","typeLabel":"string | null"},"declaredPayoutFee":{"oneOf":[{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].declaredPayoutFee.oneOf.0","typeLabel":"string"},{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].declaredPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].declaredPayoutFee","typeLabel":"string | null"},"destination":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.0","typeLabel":"null"},{"type":"object","description":"Where a payout leg delivers, by reference only: never bank or chain\ncoordinates.","required":["kind","ref"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"What a payout leg delivers to, in the binding's endpoint vocabulary.\n\nNew values may be added; treat unknown values as other.","enum":["wallet","bankDestination"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"ref":{"description":"The wallet id or the Treasury Destination id.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1.ref","typeLabel":"string"},"approvalId":{"oneOf":[{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1.approvalId.oneOf.0","typeLabel":"string\u003cuuid>"},{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1.approvalId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1.approvalId","typeLabel":"string\u003cuuid> | null"}},"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].destination","typeLabel":"null | object"},"expectedArrivalAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].expectedArrivalAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].expectedArrivalAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].expectedArrivalAt","typeLabel":"string\u003cdate-time> | null"},"expectedArrivalSource":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].expectedArrivalSource.oneOf.0","typeLabel":"null"},{"type":"string","description":"`provider` or `default`.","enum":["provider","default"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].expectedArrivalSource.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].expectedArrivalSource","typeLabel":"null | enum\u003cstring>"},"finality":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].finality.oneOf.0","typeLabel":"null"},{"type":"string","description":"Whether a settled payout can still be returned. Absent for an unsettled leg or a settled leg without a provider return watch.","enum":["final","returnable","returnedAfterSettlement"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].finality.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].finality","typeLabel":"null | enum\u003cstring>"},"fundingDeadlineAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].fundingDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].fundingDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].fundingDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"fundingModel":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].fundingModel.oneOf.0","typeLabel":"null"},{"type":"string","description":"A bank leg's funding model, fixed when it was planned. Absent on a\nchain leg.","enum":["prefunded","payIn","credit"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].fundingModel.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].fundingModel","typeLabel":"null | enum\u003cstring>"},"fundsReceivedAt":{"oneOf":[{"description":"The venue's own credit time of that amount.","format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].fundsReceivedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The venue's own credit time of that amount.","format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].fundsReceivedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].fundsReceivedAt","typeLabel":"string\u003cdate-time> | null"},"holidaysApplied":{"oneOf":[{"type":"boolean","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].holidaysApplied.oneOf.0","typeLabel":"boolean"},{"type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].holidaysApplied.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].holidaysApplied","typeLabel":"boolean | null"},"outcomeCode":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].outcomeCode.oneOf.0","typeLabel":"null"},{"type":"string","description":"The named reason on a refused, cancelled or returned leg.","enum":["trade_unfilled","authority_revoked","confirm_again_declined","deposit_first_withdrawn","unfunded_watch_ended","adjudicated_returned","provider_returned","venue_reported_returned","provider_quote_missing","provider_quote_expired","payout_backend_changed","expected_arrival_unknown","balance_insufficient","destination_not_listed","destination_approval_revoked","destination_holder_name_unavailable","withdrawal_refused_unsent","provider_refused_unsent:adjudicated","provider_refused_unsent:adapter_hand_off_deadline_passed","provider_refused_unsent:adapter_hand_off_deadline_unsupported","adapter_refused_before_send:unsupported_rail","adapter_refused_before_send:unsupported_jurisdiction","adapter_refused_before_send:amount_out_of_bounds","adapter_refused_before_send:unsupported_leg","adapter_refused_before_send:quote_expired","adapter_refused_before_send:quote_not_reservable","adapter_refused_before_send:missing_required_data","adapter_refused_before_send:provider_rejected","adapter_refused_before_send:timeout","adapter_refused_before_send:rate_limited","adapter_refused_before_send:authentication_failed","adapter_refused_before_send:invalid_request","adapter_refused_before_send:internal","adapter_refused_before_send:not_sent"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].outcomeCode.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].outcomeCode","typeLabel":"null | enum\u003cstring>"},"overdueAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].overdueAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].overdueAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].overdueAt","typeLabel":"string\u003cdate-time> | null"},"overdueSince":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].overdueSince.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].overdueSince.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].overdueSince","typeLabel":"string\u003cdate-time> | null"},"ownBankVerification":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.0","typeLabel":"null"},{"type":"object","description":"Independent bank evidence, never the venue-reported settlement state.","required":["state","source"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"source":{"description":"New values may be added; treat unknown values as other.","enum":["revolutBusiness"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.source","typeLabel":"enum\u003cstring>"},"state":{"description":"New values may be added; treat unknown values as other.","enum":["verified","notSeen","unavailable","disagreement"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.state","typeLabel":"enum\u003cstring>"},"credit":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.0","typeLabel":"null"},{"type":"object","required":["amount","currency","creditedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"Exact decimal text, never a floating-point approximation.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.amount","typeLabel":"string"},"creditedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.creditedAt","typeLabel":"string\u003cdate-time>"},"currency":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.currency","typeLabel":"string"},"referenceMasked":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit","typeLabel":"null | object"},"lastGoodReadAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.lastGoodReadAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.lastGoodReadAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.lastGoodReadAt","typeLabel":"string\u003cdate-time> | null"},"matchedBy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.matchedBy.oneOf.0","typeLabel":"null"},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["referenceAndAmount","amountAndWindow"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.matchedBy.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.matchedBy","typeLabel":"null | enum\u003cstring>"},"reason":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reason","typeLabel":"string | null"},"reviewItemId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reviewItemId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reviewItemId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reviewItemId","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].ownBankVerification","typeLabel":"null | object"},"payoutApproval":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.0","typeLabel":"null"},{"type":"object","description":"Treasury's existing Run approval for a bank payout. No funds are reserved\nwhile this approval is pending; release rechecks balances and terms.","required":["approvalsRequired","approverNames"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"approvalsRequired":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approvalsRequired","typeLabel":"integer\u003cint32>"},"approverNames":{"items":{"type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverNames.items.[INDEX]","typeLabel":"string"},"type":"array","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverNames","typeLabel":"string[]"},"approvalRequestId":{"oneOf":[{"format":"uuid","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approvalRequestId.oneOf.0","typeLabel":"string\u003cuuid>"},{"format":"uuid","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approvalRequestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approvalRequestId","typeLabel":"string\u003cuuid> | null"},"approverGroup":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroup.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroup.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroup","typeLabel":"string | null"},"approverGroupName":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroupName.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroupName.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroupName","typeLabel":"string | null"},"runId":{"oneOf":[{"format":"uuid","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.runId.oneOf.0","typeLabel":"string\u003cuuid>"},{"format":"uuid","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.runId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.runId","typeLabel":"string\u003cuuid> | null"}},"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutApproval","typeLabel":"null | object"},"payoutBreakdown":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.0","typeLabel":"null"},{"type":"object","description":"A payout's amounts in its asset (operator 2026-10-22: every fee-bearing\naction shows what leaves the account, the fee and what arrives). Absent\non a pay-in and on a payout with no consent yet.","required":["withdrawn","fee","receivedMin","receivedMax","basis"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"basis":{"description":"The withdrawal record these amounts come from.","enum":["consent","reviewed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.basis","typeLabel":"enum\u003cstring>"},"fee":{"description":"The most fee: a bank payout's declared payout fee (frozen by the\nwithdrawal review once there is one), else Confirm's fee bound.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.fee","typeLabel":"string"},"receivedMax":{"description":"The most that arrives.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.receivedMax","typeLabel":"string"},"receivedMin":{"description":"The least that arrives.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.receivedMin","typeLabel":"string"},"withdrawn":{"description":"The most leaving the venue account: the confirmed trade's output.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.withdrawn","typeLabel":"string"},"charging":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.charging.oneOf.0","typeLabel":"null"},{"type":"string","description":"How the venue charges a bank payout's fee, as its rail declares it\n(`deducted`, `on_top`, `unverified`). Absent on a wallet payout, whose fee\nis Confirm's bound rather than a declared rail fee.","enum":["deducted","on_top","unverified"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.charging.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.charging","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown","typeLabel":"null | object"},"payoutBreakdownUnavailableReason":{"oneOf":[{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdownUnavailableReason.oneOf.0","typeLabel":"string"},{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdownUnavailableReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutBreakdownUnavailableReason","typeLabel":"string | null"},"payoutHeldReason":{"oneOf":[{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutHeldReason.oneOf.0","typeLabel":"string"},{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutHeldReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].payoutHeldReason","typeLabel":"string | null"},"quotedExpectedArrivalAt":{"oneOf":[{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].quotedExpectedArrivalAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].quotedExpectedArrivalAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].quotedExpectedArrivalAt","typeLabel":"string\u003cdate-time> | null"},"rail":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].rail.oneOf.0","typeLabel":"null"},{"type":"string","description":"A bank leg's rail (`eft`, `sepa`, ...), fixed when it was planned. Absent\non a chain leg.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].rail.oneOf.1","typeLabel":"string"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].rail","typeLabel":"null | string"},"railOption":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].railOption.oneOf.0","typeLabel":"null"},{"type":"string","description":"The rail option the bank leg uses (`standard` or `fast`).","enum":["standard","fast"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].railOption.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].railOption","typeLabel":"null | enum\u003cstring>"},"railReference":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.0","typeLabel":"null"},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"state":{"description":"New values may be added; treat unknown values as other.","enum":["notReportedYet"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.1.state","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.1","typeLabel":"object"},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["kind","value","state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["swiftUetr","sepaEndToEndId","fasterPaymentsReference","bankRailReference"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"state":{"description":"New values may be added; treat unknown values as other.","enum":["reported"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.2.state","typeLabel":"enum\u003cstring>"},"value":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.2","typeLabel":"object"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].railReference","typeLabel":"null · object · object"},"recipientConfirmation":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.0","typeLabel":"null"},{"type":"object","description":"The receiving workspace's assertion, never settlement or independent verification.","required":["confirmationId","legId","confirmedBy","confirmedByName","confirmedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"confirmationId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1.confirmationId","typeLabel":"string\u003cuuid>"},"confirmedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1.confirmedAt","typeLabel":"string\u003cdate-time>"},"confirmedBy":{"description":"`user:\u003cid>` or `key:\u003cid>`; immutable authenticated identity.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1.confirmedBy","typeLabel":"string"},"confirmedByName":{"description":"A safe name captured at confirmation, never an email address.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1.confirmedByName","typeLabel":"string"},"legId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1.legId","typeLabel":"string\u003cuuid>"}},"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation","typeLabel":"null | object"},"returnWindowEndsAt":{"oneOf":[{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].returnWindowEndsAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].returnWindowEndsAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].returnWindowEndsAt","typeLabel":"string\u003cdate-time> | null"},"returnedAfterSettlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].returnedAfterSettlement.oneOf.0","typeLabel":"null"},{"type":"object","description":"A settled payout the provider later returned. The leg\nstays `settled` (its row is immutable); the PayoutReturned review item\nis the one fact, and resolving that review keeps this annotation.","required":["reviewItemId","detectedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"detectedAt":{"description":"When TetraFi's own status read first saw the return.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].returnedAfterSettlement.oneOf.1.detectedAt","typeLabel":"string\u003cdate-time>"},"reviewItemId":{"description":"The PayoutReturned review item support works the return from.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].returnedAfterSettlement.oneOf.1.reviewItemId","typeLabel":"string"}},"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].returnedAfterSettlement.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].returnedAfterSettlement","typeLabel":"null | object"},"returnedTo":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].returnedTo.oneOf.0","typeLabel":"null"},{"type":"string","description":"Where a returned leg's funds remain, according to its dispatch backend.\n\nNew values may be added; treat unknown values as other.","enum":["lpAccount","providerBalance"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].returnedTo.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].returnedTo","typeLabel":"null | enum\u003cstring>"},"reviewAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewAt","typeLabel":"string\u003cdate-time> | null"},"reviewEnteredAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewEnteredAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewEnteredAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewEnteredAt","typeLabel":"string\u003cdate-time> | null"},"reviewItemId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewItemId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewItemId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewItemId","typeLabel":"string | null"},"reviewReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewReason.oneOf.0","typeLabel":"null"},{"type":"string","description":"The reason a leg requires review.\n\nNew values may be added; treat unknown values as other.","enum":["uncertain_send","ambiguous_event","expected_arrival_exceeded","provider_failed_after_send","trade_fill_requires_review","late_funds_held","late_funds_worse_rate","amount_mismatch"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewReason.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].reviewReason","typeLabel":"null | enum\u003cstring>"},"submittedAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].submittedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].submittedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].submittedAt","typeLabel":"string\u003cdate-time> | null"},"transactionHash":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].transactionHash.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].transactionHash.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].transactionHash","typeLabel":"string | null"},"venueReportedCredited":{"oneOf":[{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"boolean","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].venueReportedCredited.oneOf.0","typeLabel":"boolean"},{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].venueReportedCredited.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].venueReportedCredited","typeLabel":"boolean | null"},"venueWithdrawalId":{"oneOf":[{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].venueWithdrawalId.oneOf.0","typeLabel":"string"},{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].venueWithdrawalId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX].venueWithdrawalId","typeLabel":"string | null"}},"required":["legId","direction","settlementRail","state"],"type":"object","uniqueKey":"oneOf.0.financials.oneOf.1.legs.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.financials.oneOf.1.legs","typeLabel":"object[]"},"quotedOutput":{"oneOf":[{"description":"The confirmed quote's output, beside what was received.","type":"string","uniqueKey":"oneOf.0.financials.oneOf.1.quotedOutput.oneOf.0","typeLabel":"string"},{"description":"The confirmed quote's output, beside what was received.","type":"null","uniqueKey":"oneOf.0.financials.oneOf.1.quotedOutput.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.financials.oneOf.1.quotedOutput","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.financials.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.financials","typeLabel":"null | object"},"inputSpent":{"oneOf":[{"description":"What the venue debited and credited, once its outcome is recorded.","type":"string","uniqueKey":"oneOf.0.inputSpent.oneOf.0","typeLabel":"string"},{"description":"What the venue debited and credited, once its outcome is recorded.","type":"null","uniqueKey":"oneOf.0.inputSpent.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.inputSpent","typeLabel":"string | null"},"notSentCause":{"oneOf":[{"description":"The stable code behind `notSentReason`, the same value the venue-trade detail's\n`notSentCause` carries (for example `WALLET_NONCE_PENDING`). A code this version does not\nknow is still named. Absent when no cause was retained.","type":"string","uniqueKey":"oneOf.0.notSentCause.oneOf.0","typeLabel":"string"},{"description":"The stable code behind `notSentReason`, the same value the venue-trade detail's\n`notSentCause` carries (for example `WALLET_NONCE_PENDING`). A code this version does not\nknow is still named. Absent when no cause was retained.","type":"null","uniqueKey":"oneOf.0.notSentCause.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.notSentCause","typeLabel":"string | null"},"notSentReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.notSentReason.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why a `not_sent` outcome was not sent, as the dispatch's `notSentReason`.","enum":["QUOTE_RECONFIRMATION_REQUIRED","VENUE_ACCEPT_ADMISSION_REFUSED","VENUE_SESSION_ACQUIRE_TIMEOUT","VENUE_GRID_CHANGED","VENUE_GRID_UNREADABLE","VENUE_REFUSED_BEFORE_ACCEPTANCE","LP_TRADING_REFUSED_UNSENT","COMPLIANCE_AUDIT_UNRECORDED","ON_CHAIN_UNSENT","BOOK_SELL_LIMIT_UNREPRESENTABLE","VENUE_DISPATCH_AUTHORITY_UNAVAILABLE","BOOK_PLACEMENT_PRICE_UNRECORDED_UNSENT","VENUE_ORDER_ABSENT_PAST_HORIZON","VENUE_REQUEST_REFUSED_UNSENT","NOT_SENT_UNCLASSIFIED"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.notSentReason.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.notSentReason","typeLabel":"null | enum\u003cstring>"},"outcomeCode":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.outcomeCode.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why the trade ended as it did, as its dispatch records it (the order page's\n`dispatch.outcomeCode`): the history row names a no-fill's reason from it.\nAbsent until an outcome is recorded.","enum":["confirmed_fill","fill_requires_review","rfq_closed_no_order","confirmed_no_fill","adjudicated_not_placed","bridge_not_sent_funds_at_source","bridge_refunded_to_source","debit_authority_expired","awaiting_provider_execution","not_sent","provider_outcome_unknown"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.outcomeCode.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.outcomeCode","typeLabel":"null | enum\u003cstring>"},"outputReceived":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.outputReceived.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.outputReceived.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.outputReceived","typeLabel":"string | null"},"pair":{"oneOf":[{"description":"The recorded market pair; absent stays absent, never inferred from asset order.","type":"string","uniqueKey":"oneOf.0.pair.oneOf.0","typeLabel":"string"},{"description":"The recorded market pair; absent stays absent, never inferred from asset order.","type":"null","uniqueKey":"oneOf.0.pair.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.pair","typeLabel":"string | null"},"placedBy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.placedBy.oneOf.0","typeLabel":"null"},{"type":"object","description":"Who placed the trade: the API key by label, else the member where this reader may see their name. Absent otherwise.","required":["userId","name","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["member"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.placedBy.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"name":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.placedBy.oneOf.1.name","typeLabel":"string"},"userId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.placedBy.oneOf.1.userId","typeLabel":"string"}},"uniqueKey":"oneOf.0.placedBy.oneOf.1","typeLabel":"object"},{"type":"object","description":"Who placed the trade: the API key by label, else the member where this reader may see their name. Absent otherwise.","required":["keyId","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"keyId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.placedBy.oneOf.2.keyId","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["apiKey"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.placedBy.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.placedBy.oneOf.2.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.placedBy.oneOf.2.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.placedBy.oneOf.2.name","typeLabel":"string | null"}},"uniqueKey":"oneOf.0.placedBy.oneOf.2","typeLabel":"object"}],"uniqueKey":"oneOf.0.placedBy","typeLabel":"null · object · object"},"settlementCarriedInto":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlementCarriedInto.oneOf.0","typeLabel":"null"},{"type":"object","description":"The later window the trade's amounts were netted into, as the order read's\n`settlementCarriedInto`. Absent when nothing was netted.","required":["windowId"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.0.settlementCarriedInto.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.0.settlementCarriedInto.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.0.settlementCarriedInto.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.settlementCarriedInto.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"}},"uniqueKey":"oneOf.0.settlementCarriedInto.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.settlementCarriedInto","typeLabel":"null | object"},"settlementState":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlementState.oneOf.0","typeLabel":"null"},{"type":"string","description":"Where the filled trade's settlement stands; the same value as the order read's\n`settlementState`. Absent before the fill and without recorded terms.","enum":["settled","awaitingWindow","awaitingPayment","partiallySettled","overdue","disputed","failed","inTransit"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlementState.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.settlementState","typeLabel":"null | enum\u003cstring>"},"settlementStatement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlementStatement.oneOf.0","typeLabel":"null"},{"type":"string","description":"Whether the statement of the window the trade settles in is out, as the order read's\n`settlementStatement`. Absent with `settlementState` and without a window.","enum":["pending","issued","failed"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.settlementStatement.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.settlementStatement","typeLabel":"null | enum\u003cstring>"},"statedExecutionPrice":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.statedExecutionPrice.oneOf.0","typeLabel":"null"},{"type":"object","description":"QuoteCurrencyPriority market convention, with explicit base/quote and fallback basis.","required":["value","basis","baseAsset","quoteAsset"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"baseAsset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.statedExecutionPrice.oneOf.1.baseAsset","typeLabel":"string"},"quoteAsset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.statedExecutionPrice.oneOf.1.quoteAsset","typeLabel":"string"},"basis":{"description":"New values may be added; treat unknown values as other.","enum":["market_convention","receipt_per_debit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.0.statedExecutionPrice.oneOf.1.basis","typeLabel":"enum\u003cstring>"},"value":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.statedExecutionPrice.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"oneOf.0.statedExecutionPrice.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.statedExecutionPrice","typeLabel":"null | object"},"tetrafiFee":{"oneOf":[{"description":"Gross TetraFi fee (list rate, before incentives) from the Basic billing ledger, in tetrafiFeeAsset; absent until accrued.","type":"string","uniqueKey":"oneOf.0.tetrafiFee.oneOf.0","typeLabel":"string"},{"description":"Gross TetraFi fee (list rate, before incentives) from the Basic billing ledger, in tetrafiFeeAsset; absent until accrued.","type":"null","uniqueKey":"oneOf.0.tetrafiFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.tetrafiFee","typeLabel":"string | null"},"tetrafiFeeAsset":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.tetrafiFeeAsset.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.tetrafiFeeAsset.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.tetrafiFeeAsset","typeLabel":"string | null"},"transferMode":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.transferMode.oneOf.0","typeLabel":"null"},{"type":"string","description":"CCTP's selected finality tier, as the order read's `operation.onChain.transferMode`: the\nbound selection, never re-derived. A CCTP trade without it is Standard (historical and\nomitted selections); absent on every other venue.","enum":["fast","standard"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.0.transferMode.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.transferMode","typeLabel":"null | enum\u003cstring>"},"uncertainCode":{"oneOf":[{"description":"The dispatch's first unknown-outcome failure: a closed code, never a provider body.\nA later terminal outcome takes precedence over this retained diagnostic.","type":"string","uniqueKey":"oneOf.0.uncertainCode.oneOf.0","typeLabel":"string"},{"description":"The dispatch's first unknown-outcome failure: a closed code, never a provider body.\nA later terminal outcome takes precedence over this retained diagnostic.","type":"null","uniqueKey":"oneOf.0.uncertainCode.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.uncertainCode","typeLabel":"string | null"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"One trade, read through the same projection as the list.","required":["tradeId","kind","projection","trade","settlement","lp"],"x-undiscriminated-union-reason":"Optional flattened object: validates either the full block or absence of every block field; no separate wire value to tag.","properties":{"lp":{"description":"Section D: LP / counterparty information, including its compliance posture.\n\nFor a KYB'd liquidity provider the compliance fields carry the LP's\njurisdiction, KYB status, and regulatory licences — the \"who is the other\nside and are they authorised\" a compliance officer needs. Router/bridge\nroutes settle through a protocol (CCTP, Relay, …), not a VASP counterparty:\nthose report `counterparty_type = \"protocol\"` with no jurisdiction/licences,\nwhich is itself the compliance-relevant fact (no VASP-to-VASP Travel Rule\nmessage is owed).","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.lp.lpName","typeLabel":"string"},"lpSource":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.lp.lpSource","typeLabel":"string"},"routingPathLabel":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.lp.routingPathLabel","typeLabel":"string"},"solverId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.lp.solverId","typeLabel":"string"},"bilateralStatus":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.lp.bilateralStatus.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.lp.bilateralStatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.lp.bilateralStatus","typeLabel":"string | null"},"settlementSlaStatus":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.lp.settlementSlaStatus.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.lp.settlementSlaStatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.lp.settlementSlaStatus","typeLabel":"string | null"},"settlementSpeedMs":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.lp.settlementSpeedMs.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.lp.settlementSpeedMs.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.lp.settlementSpeedMs","typeLabel":"integer\u003cint64> | null"}},"required":["solverId","lpName","lpSource","routingPathLabel"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.lp","typeLabel":"object"},"settlement":{"description":"Section B: On-chain settlement data.\n\nModels the four-step lifecycle of an intent on-chain: `submit_tx` (user\ndeposit / intent creation), `fill_tx` (solver fill on destination chain),\n`proof_tx` (cross-chain proof submission), `finalise_tx` (claim/settle on\norigin). Oracle + settlement_stage describe the proof-relay layer.","properties":{"status":{"description":"New values may be added; treat unknown values as other.","enum":["pending","settled","failed","refunded","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.status","typeLabel":"enum\u003cstring>"},"cexLane":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.0","typeLabel":"null"},{"type":"object","description":"Confirmed CEX ledger stages, including venue evidence and the DDR v2 forward.","required":["tradeFills","deposits"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"deposits":{"items":{"properties":{"accountAssetKey":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].accountAssetKey","typeLabel":"string"},"amount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].amount","typeLabel":"string"},"applicationTransaction":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].applicationTransaction","typeLabel":"object"},"depositKey":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].depositKey","typeLabel":"string"},"ledger":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].ledger","typeLabel":"string"},"confirmation":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.0","typeLabel":"null"},{"type":"object","required":["transaction","forwardTransaction","venueDepositId","venueTxHash"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"forwardTransaction":{"description":"Spoke DDR v2 RoutedDepositForwarded transaction, never the CCIP dispatch.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.forwardTransaction","typeLabel":"object"},"transaction":{"description":"Hub transaction that emitted DepositConfirmed.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.transaction","typeLabel":"object"},"venueDepositId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.venueDepositId","typeLabel":"string"},"venueTxHash":{"description":"Venue evidence only; never a chain explorer reference.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1.venueTxHash","typeLabel":"string"}},"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX].confirmation","typeLabel":"null | object"}},"required":["depositKey","accountAssetKey","ledger","amount","applicationTransaction"],"type":"object","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.deposits","typeLabel":"object[]"},"tradeFills":{"items":{"properties":{"actualInputAmount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].actualInputAmount","typeLabel":"string"},"actualOutputAmount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].actualOutputAmount","typeLabel":"string"},"evidenceHash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].evidenceHash","typeLabel":"string"},"ledger":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].ledger","typeLabel":"string"},"tradeId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].tradeId","typeLabel":"string"},"transaction":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction.timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].transaction","typeLabel":"object"},"venueFillId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX].venueFillId","typeLabel":"string"}},"required":["tradeId","ledger","transaction","venueFillId","evidenceHash","actualInputAmount","actualOutputAmount"],"type":"object","uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1.tradeFills","typeLabel":"object[]"}},"uniqueKey":"oneOf.1.settlement.cexLane.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.settlement.cexLane","typeLabel":"null | object"},"failureReason":{"oneOf":[{"description":"A human-readable failure reason when status is `failed` or `refunded`.","type":"string","uniqueKey":"oneOf.1.settlement.failureReason.oneOf.0","typeLabel":"string"},{"description":"A human-readable failure reason when status is `failed` or `refunded`.","type":"null","uniqueKey":"oneOf.1.settlement.failureReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.failureReason","typeLabel":"string | null"},"fillTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.settlement.fillTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.fillTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.fillTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.fillTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.1.settlement.fillTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.settlement.fillTx","typeLabel":"null | object"},"finaliseTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.settlement.finaliseTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.finaliseTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.finaliseTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.finaliseTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.1.settlement.finaliseTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.settlement.finaliseTx","typeLabel":"null | object"},"oracle":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.settlement.oracle.oneOf.0","typeLabel":"null"},{"type":"object","description":"Oracle / cross-chain proof-relay metadata.","required":["name"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.oracle.oneOf.1.name","typeLabel":"string"},"messageId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.settlement.oracle.oneOf.1.messageId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.settlement.oracle.oneOf.1.messageId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.oracle.oneOf.1.messageId","typeLabel":"string | null"},"status":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.settlement.oracle.oneOf.1.status.oneOf.0","typeLabel":"null"},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["dispatched","delivered"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.settlement.oracle.oneOf.1.status.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.settlement.oracle.oneOf.1.status","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.1.settlement.oracle.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.settlement.oracle","typeLabel":"null | object"},"proofTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.settlement.proofTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.proofTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.proofTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.proofTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.1.settlement.proofTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.settlement.proofTx","typeLabel":"null | object"},"recipientWallet":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.settlement.recipientWallet.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.settlement.recipientWallet.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.recipientWallet","typeLabel":"string | null"},"settlementSpeedMs":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.settlement.settlementSpeedMs.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.settlement.settlementSpeedMs.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.settlementSpeedMs","typeLabel":"integer\u003cint64> | null"},"settlementStage":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.settlement.settlementStage.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.settlement.settlementStage.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.settlementStage","typeLabel":"string | null"},"submitTx":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.settlement.submitTx.oneOf.0","typeLabel":"null"},{"type":"object","description":"On-chain transaction reference with explorer URL.","required":["hash","explorerUrl","chain"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.submitTx.oneOf.1.chain","typeLabel":"string"},"explorerUrl":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.submitTx.oneOf.1.explorerUrl","typeLabel":"string"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.submitTx.oneOf.1.hash","typeLabel":"string"}},"uniqueKey":"oneOf.1.settlement.submitTx.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.settlement.submitTx","typeLabel":"null | object"},"transactions":{"description":"Generic per-stage transaction list — the full timeline for ANY order kind\n(escrow quartet, bridge/relay/FX legs, composite hops), each row enriched with\na `label`, an `explorerUrl`, and a `legIndex`. The escrow-shaped\n`submit/fill/proof/finalise` refs above stay for back-compat; this list is what\nnon-escrow (router/composite/FX) orders render, and it is empty (not a wall of\n\"—\") when an order has no recorded transactions.","items":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX].timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","uniqueKey":"oneOf.1.settlement.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.1.settlement.transactions","typeLabel":"object[]"},"userDepositWallet":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.settlement.userDepositWallet.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.settlement.userDepositWallet.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.settlement.userDepositWallet","typeLabel":"string | null"}},"required":["status"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.settlement","typeLabel":"object"},"trade":{"description":"Section A: Trade details.","properties":{"createdAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.createdAt","typeLabel":"string\u003cdate-time>"},"executionPrice":{"description":"User-facing execution price for a read model.","properties":{"source":{"description":"Source used for the execution price exposed by read-model APIs.\n\nNew values may be added; treat unknown values as other.","enum":["storedQuotePrice","derivedFromAmounts","unavailable"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.executionPrice.source","typeLabel":"enum\u003cstring>"},"baseSymbol":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.executionPrice.baseSymbol.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.executionPrice.baseSymbol.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.executionPrice.baseSymbol","typeLabel":"string | null"},"quoteSymbol":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.executionPrice.quoteSymbol.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.executionPrice.quoteSymbol.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.executionPrice.quoteSymbol","typeLabel":"string | null"},"value":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.executionPrice.value.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.executionPrice.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.executionPrice.value","typeLabel":"string | null"}},"required":["source"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.trade.executionPrice","typeLabel":"object"},"lifecycleStatus":{"properties":{"bucket":{"description":"Which history bucket this lifecycle belongs to: decided by the same arm that\nchose `primary`, so a filter on it can never disagree with the label.","enum":["inProgress","completed","failed","refunded","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.bucket","typeLabel":"enum\u003cstring>"},"flowKind":{"description":"New values may be added; treat unknown values as other.","enum":["instant","deferredAutoWithdraw","deferredManual","venueAccount"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.flowKind","typeLabel":"enum\u003cstring>"},"isTerminal":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.isTerminal","typeLabel":"boolean"},"primary":{"description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.primary.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.primary.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.primary.tone","typeLabel":"string"}},"required":["key","label","tone"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.primary","typeLabel":"object"},"rank":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.rank","typeLabel":"integer\u003cint32>"},"rawStatus":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","post_filled","settling","settled","finalized","awaiting_lp_settlement","pre_claimed","failed","refunded","filled","unfilled","checking_balance","pending_deposit","deposit_confirmed","quote_requested","quote_received","accounting_pending","accounting_submitted","withdrawal_requested","pending_withdrawal","no_fill_confirmed","not_submitted","dispatching","outcome_unknown","needs_review","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.rawStatus","typeLabel":"enum\u003cstring>"},"execution":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.lifecycleStatus.execution.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.execution.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.execution.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.execution.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.1.trade.lifecycleStatus.execution.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.trade.lifecycleStatus.execution","typeLabel":"null | object"},"rawDeferredStatus":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.lifecycleStatus.rawDeferredStatus.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.lifecycleStatus.rawDeferredStatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.lifecycleStatus.rawDeferredStatus","typeLabel":"string | null"},"settlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.lifecycleStatus.settlement.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.settlement.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.settlement.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.settlement.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.1.trade.lifecycleStatus.settlement.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.trade.lifecycleStatus.settlement","typeLabel":"null | object"},"withdrawal":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.lifecycleStatus.withdrawal.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.withdrawal.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.withdrawal.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus.withdrawal.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.1.trade.lifecycleStatus.withdrawal.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.trade.lifecycleStatus.withdrawal","typeLabel":"null | object"}},"required":["flowKind","primary","bucket","isTerminal","rank","rawStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.trade.lifecycleStatus","typeLabel":"object"},"orderId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.orderId","typeLabel":"string"},"route":{"description":"The sold and bought sides of a trade for display read models.","properties":{"buy":{"description":"What the order buys.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.route.buy.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.route.buy.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.route.buy.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.route.buy.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.route.buy.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.buy.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.trade.route.buy.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.trade.route.buy.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.buy.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.route.buy.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.route.buy.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.buy.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.trade.route.buy.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.trade.route.buy.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.buy.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.route.buy.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.route.buy.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.buy.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.trade.route.buy.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.route.buy.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.route.buy.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.buy.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.route.buy.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.route.buy.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.buy.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.route.buy.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.route.buy.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.trade.route.buy.unresolved","typeLabel":"null | enum\u003cstring>"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.trade.route.buy","typeLabel":"object"},"sell":{"description":"What the order sells.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.route.sell.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.route.sell.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.route.sell.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.route.sell.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.route.sell.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.sell.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.trade.route.sell.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.trade.route.sell.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.sell.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.route.sell.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.route.sell.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.sell.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.trade.route.sell.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.trade.route.sell.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.sell.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.route.sell.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.route.sell.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.sell.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.trade.route.sell.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.route.sell.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.route.sell.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.sell.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.route.sell.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.route.sell.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.route.sell.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.route.sell.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.route.sell.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.trade.route.sell.unresolved","typeLabel":"null | enum\u003cstring>"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.trade.route.sell","typeLabel":"object"}},"required":["sell","buy"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.trade.route","typeLabel":"object"},"routingPathLabel":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.routingPathLabel","typeLabel":"string"},"status":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","no_fill_confirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.status","typeLabel":"enum\u003cstring>"},"amountUsd":{"oneOf":[{"description":"Absent when the order recorded no USD notional; never 0 for an unknown amount.","type":"string","uniqueKey":"oneOf.1.trade.amountUsd.oneOf.0","typeLabel":"string"},{"description":"Absent when the order recorded no USD notional; never 0 for an unknown amount.","type":"null","uniqueKey":"oneOf.1.trade.amountUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.amountUsd","typeLabel":"string | null"},"apiKey":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.apiKey.oneOf.0","typeLabel":"null"},{"type":"object","required":["keyId"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"keyId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.apiKey.oneOf.1.keyId","typeLabel":"string"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.apiKey.oneOf.1.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.apiKey.oneOf.1.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.apiKey.oneOf.1.name","typeLabel":"string | null"}},"uniqueKey":"oneOf.1.trade.apiKey.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.trade.apiKey","typeLabel":"null | object"},"channel":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.channel.oneOf.0","typeLabel":"null"},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["ui","api","whitelabel","embedded"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.channel.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.trade.channel","typeLabel":"null | enum\u003cstring>"},"deferredSettlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.0","typeLabel":"null"},{"type":"object","description":"Deferred LP settlement/withdrawal tracking that is separate from the\norder's primary execution status. A deferred order can be `Executed` while\nthis object still reports a settlement window or withdrawal state.","required":["stage","autoWithdraw"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"autoWithdraw":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.autoWithdraw","typeLabel":"boolean"},"stage":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.stage","typeLabel":"string"},"estimatedSettlementAvailableAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.estimatedSettlementAvailableAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.estimatedSettlementAvailableAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.estimatedSettlementAvailableAt","typeLabel":"string\u003cdate-time> | null"},"executedAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.executedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.executedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.executedAt","typeLabel":"string\u003cdate-time> | null"},"settlementWindowHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.settlementWindowHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.settlementWindowHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.settlementWindowHours","typeLabel":"integer\u003cint32> | null"},"withdrawalStatus":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.withdrawalStatus.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.withdrawalStatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.withdrawalStatus","typeLabel":"string | null"},"withdrawalTrackingId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.withdrawalTrackingId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.withdrawalTrackingId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.withdrawalTrackingId","typeLabel":"string | null"},"withdrawalTxHash":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.withdrawalTxHash.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.withdrawalTxHash.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1.withdrawalTxHash","typeLabel":"string | null"}},"uniqueKey":"oneOf.1.trade.deferredSettlement.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.trade.deferredSettlement","typeLabel":"null | object"},"deliveredBuy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.0","typeLabel":"null"},{"type":"object","description":"The buy amount actually delivered: the figure `slippage_bps` and its\nprovenance are derived from, so an operator reading \"12 bps, measured\" can\nsee what landed. Absent when nothing was captured (unsettled, or a row\nwritten before the capture existed).","required":["asset"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1.unresolved","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.1.trade.deliveredBuy.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.trade.deliveredBuy","typeLabel":"null | object"},"deliveredBuyProvenance":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.deliveredBuyProvenance.oneOf.0","typeLabel":"null"},{"type":"string","description":"Provenance of the delivered buy amount behind `slippage_bps`: `\"measured\"`\nwhen read back from settlement evidence, `\"quoted\"` when the quote-time\nvalue was carried forward unmeasured (slippage then reads 0 by\nconstruction). Absent for orders with no delivered capture and rows\npredating the capture.","enum":["measured","quoted"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.deliveredBuyProvenance.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.trade.deliveredBuyProvenance","typeLabel":"null | enum\u003cstring>"},"fillTimeMs":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.trade.fillTimeMs.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.trade.fillTimeMs.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.fillTimeMs","typeLabel":"integer\u003cint64> | null"},"routingPath":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.trade.routingPath.oneOf.0","typeLabel":"null"},{"type":"object","description":"How an LP is available to a requesting workspace: `{\"type\": \"direct\"}`, or\n`{\"type\": \"via_broker\", \"brokerWorkspaceId\": \"...\", \"brokerName\": \"...\"}`.\n\nNew values may be added; treat unknown values as other.","required":["type"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"type":{"description":"New values may be added; treat unknown values as other.","enum":["direct"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.routingPath.oneOf.1.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.1.trade.routingPath.oneOf.1","typeLabel":"object"},{"type":"object","description":"How an LP is available to a requesting workspace: `{\"type\": \"direct\"}`, or\n`{\"type\": \"via_broker\", \"brokerWorkspaceId\": \"...\", \"brokerName\": \"...\"}`.\n\nNew values may be added; treat unknown values as other.","required":["brokerWorkspaceId","brokerName","type"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"brokerName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.routingPath.oneOf.2.brokerName","typeLabel":"string"},"brokerWorkspaceId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.1.trade.routingPath.oneOf.2.brokerWorkspaceId","typeLabel":"string\u003cuuid>"},"type":{"description":"New values may be added; treat unknown values as other.","enum":["via_broker"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.trade.routingPath.oneOf.2.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.1.trade.routingPath.oneOf.2","typeLabel":"object"}],"uniqueKey":"oneOf.1.trade.routingPath","typeLabel":"null · object · object"},"slippageBps":{"oneOf":[{"format":"int64","type":"integer","uniqueKey":"oneOf.1.trade.slippageBps.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","type":"null","uniqueKey":"oneOf.1.trade.slippageBps.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.slippageBps","typeLabel":"integer\u003cint64> | null"},"slippageToleranceBps":{"oneOf":[{"description":"The accepted tolerance, in integer basis points (one basis point is 0.01%).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.trade.slippageToleranceBps.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"The accepted tolerance, in integer basis points (one basis point is 0.01%).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.trade.slippageToleranceBps.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.trade.slippageToleranceBps","typeLabel":"integer\u003cint32> | null"}},"required":["orderId","createdAt","route","routingPathLabel","status","lifecycleStatus","executionPrice"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.trade","typeLabel":"object"},"kind":{"description":"The kinds the one trade history lists.\n\nNew values may be added; treat unknown values as other.","enum":["order","venueTrade"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.kind","typeLabel":"enum\u003cstring>"},"projection":{"description":"Which view of trades answers the request: the caller's own, the workspace's,\na broker's umbrella, an LP's fills, or an LP's unsettled orders.\n\nNew values may be added; treat unknown values as other.","enum":["mine","workspace","umbrella","maker","settlement"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.projection","typeLabel":"enum\u003cstring>"},"tradeId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.tradeId","typeLabel":"string"},"fees":{"description":"Fee breakdown: gas, protocol fee, solver fee, relayer tips. Absent\nwhen the order predates fee capture.","properties":{"totals":{"properties":{"totalCostUsd":{"description":"Sum of every priced row; unrecorded gas contributes nothing.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.fees.totals.totalCostUsd","typeLabel":"string"},"lpSpreadUsd":{"description":"LP spread charged to the taker (the `lp_spread` fee_kind). Previously this\nwas miscounted into `user_gas_usd` and displayed as \"User Gas\"; it is a\npricing spread, not gas.","type":"string","uniqueKey":"oneOf.1.fees.totals.lpSpreadUsd","typeLabel":"string"},"protocolFeeUsd":{"oneOf":[{"description":"The TetraFi platform fee, in USD. `null` when the platform fee has no USD value\nrecorded (an invoiced fee before it is billed): unpriced is not the same as free.","type":"string","uniqueKey":"oneOf.1.fees.totals.protocolFeeUsd.oneOf.0","typeLabel":"string"},{"description":"The TetraFi platform fee, in USD. `null` when the platform fee has no USD value\nrecorded (an invoiced fee before it is billed): unpriced is not the same as free.","type":"null","uniqueKey":"oneOf.1.fees.totals.protocolFeeUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.fees.totals.protocolFeeUsd","typeLabel":"string | null"},"solverGasUsd":{"oneOf":[{"description":"Gas the solver absorbed, in USD. `null` when no priced gas was\nrecorded for the solver.","type":"string","uniqueKey":"oneOf.1.fees.totals.solverGasUsd.oneOf.0","typeLabel":"string"},{"description":"Gas the solver absorbed, in USD. `null` when no priced gas was\nrecorded for the solver.","type":"null","uniqueKey":"oneOf.1.fees.totals.solverGasUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.fees.totals.solverGasUsd","typeLabel":"string | null"},"userGasUsd":{"oneOf":[{"description":"Gas the taker paid, in USD. `null` when no priced gas was recorded\nfor the taker: unrecorded is not the same as free.","type":"string","uniqueKey":"oneOf.1.fees.totals.userGasUsd.oneOf.0","typeLabel":"string"},{"description":"Gas the taker paid, in USD. `null` when no priced gas was recorded\nfor the taker: unrecorded is not the same as free.","type":"null","uniqueKey":"oneOf.1.fees.totals.userGasUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.fees.totals.userGasUsd","typeLabel":"string | null"}},"required":["totalCostUsd"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.fees.totals","typeLabel":"object"},"rows":{"items":{"properties":{"chain":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.fees.rows.items.[INDEX].chain","typeLabel":"string"},"feeKind":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.fees.rows.items.[INDEX].feeKind","typeLabel":"string"},"feePayer":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.fees.rows.items.[INDEX].feePayer","typeLabel":"string"},"recordedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.1.fees.rows.items.[INDEX].recordedAt","typeLabel":"string\u003cdate-time>"},"sequenceNumber":{"format":"int32","type":"integer","isRequired":true,"uniqueKey":"oneOf.1.fees.rows.items.[INDEX].sequenceNumber","typeLabel":"integer\u003cint32>"},"txType":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.fees.rows.items.[INDEX].txType","typeLabel":"string"},"feeUsd":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.fees.rows.items.[INDEX].feeUsd.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.fees.rows.items.[INDEX].feeUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.fees.rows.items.[INDEX].feeUsd","typeLabel":"string | null"},"feeWei":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.fees.rows.items.[INDEX].feeWei.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.fees.rows.items.[INDEX].feeWei.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.fees.rows.items.[INDEX].feeWei","typeLabel":"string | null"},"gasPriceWei":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.fees.rows.items.[INDEX].gasPriceWei.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.fees.rows.items.[INDEX].gasPriceWei.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.fees.rows.items.[INDEX].gasPriceWei","typeLabel":"string | null"},"gasUsed":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.fees.rows.items.[INDEX].gasUsed.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.fees.rows.items.[INDEX].gasUsed.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.fees.rows.items.[INDEX].gasUsed","typeLabel":"string | null"},"txHash":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.fees.rows.items.[INDEX].txHash.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.fees.rows.items.[INDEX].txHash.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.fees.rows.items.[INDEX].txHash","typeLabel":"string | null"}},"required":["sequenceNumber","txType","chain","feePayer","feeKind","recordedAt"],"type":"object","uniqueKey":"oneOf.1.fees.rows.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.1.fees.rows","typeLabel":"object[]"}},"required":["totals"],"type":"object","uniqueKey":"oneOf.1.fees","typeLabel":"object"},"legs":{"oneOf":[{"description":"Uniform per-leg execution model for multi-leg route orders; absent for\nsingle-leg escrow / deferred orders. Mirrors `OrderResponse.legs`.","items":{"description":"One executed (or pending) route leg.","properties":{"buy":{"description":"What the leg quote ESTIMATED this leg would buy. Always the quote: a confirmed\ndelivery is reported separately in `measuredBuy` rather than overwriting this,\nso the two facts stay distinguishable on the wire.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy.unresolved","typeLabel":"null | enum\u003cstring>"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].buy","typeLabel":"object"},"index":{"description":"0-indexed position in the route's execution order.","format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].index","typeLabel":"integer\u003cint32>"},"kind":{"description":"Normalised leg mechanism: `cctp` | `across` | `relay` | `fx` | `solver`, or the\nraw `providerProduct` for a kind the backend does not special-case (clients must\ntreat this as an open set and fall back to a generic presentation).","enum":["cctp","across","relay","fx","solver","dexswap","rfqswap"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].kind","typeLabel":"enum\u003cstring>"},"label":{"description":"Human-friendly leg label, e.g. `\"Circle CCTP Fast\"` or `\"CCTP: Base → Arc\"`.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].label","typeLabel":"string"},"sell":{"description":"What the leg sells: its asset, chain and `decimalAmount`, or `unresolved` when\nthe backend cannot scale it.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell.unresolved","typeLabel":"null | enum\u003cstring>"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sell","typeLabel":"object"},"status":{"description":"Leg status: `pending` | `executing` | `done` | `failed` | `refunded`.","enum":["pending","executing","done","failed","refunded"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"counterparty":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.0","typeLabel":"null"},{"type":"object","description":"Per-leg counterparty compliance posture — WHO filled this leg and their\nregulatory standing. Absent on the generic `OrderResponse`; populated only\non the admin company trade-detail. Lets a composite show \"leg 1 = KYB'd\nSolver X (Cayman Islands), leg 2 = CCTP protocol\" instead of one collapsed\ncounterparty.","required":["counterpartyType"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"counterpartyType":{"description":"`vasp` | `bilateral` | `protocol` | `solver` — the nature of this leg's filler.","enum":["vasp","bilateral","protocol","solver"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.counterpartyType","typeLabel":"enum\u003cstring>"},"jurisdiction":{"oneOf":[{"description":"ISO-3166 alpha-2 home jurisdiction of the LP entity (KYB'd solver legs only).","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.jurisdiction.oneOf.0","typeLabel":"string"},{"description":"ISO-3166 alpha-2 home jurisdiction of the LP entity (KYB'd solver legs only).","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.jurisdiction.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.jurisdiction","typeLabel":"string | null"},"kybStatus":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.kybStatus.oneOf.0","typeLabel":"null"},{"type":"string","description":"KYB status of the LP workspace behind this leg (`approved` / … ).","enum":["not_started","pending","in_review","approved","verified","rejected","denied","expired"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.kybStatus.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.kybStatus","typeLabel":"null | enum\u003cstring>"},"licences":{"description":"Regulatory licences the leg's LP holds.","items":{"description":"A single regulatory licence held by a route leg's LP.","properties":{"jurisdiction":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].jurisdiction","typeLabel":"string"},"licenceType":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].licenceType","typeLabel":"string"},"status":{"description":"New values may be added; treat unknown values as other.","enum":["active","suspended","expired","revoked"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"expiresAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].expiresAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].expiresAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX].expiresAt","typeLabel":"string\u003cdate-time> | null"}},"required":["licenceType","jurisdiction","status"],"type":"object","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.licences","typeLabel":"object[]"},"provenance":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.provenance.oneOf.0","typeLabel":"null"},{"type":"string","description":"Who supplied the LP entity's facts, when an entity profile backs this leg.\nA `platformCurated` venue (e.g. Circle) carries a raw `not_started` KYB row\nby design; this field is what distinguishes it from an unverified LP.","enum":["kybVerified","platformCurated","selfDeclared"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.provenance.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1.provenance","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].counterparty","typeLabel":"null | object"},"destChainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].destChainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].destChainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].destChainId","typeLabel":"integer\u003cint64> | null"},"etaSeconds":{"oneOf":[{"description":"The route quote's per-leg ETA in seconds, when it carried one: the venue's\nestimate of this leg's own execution. For a CCTP leg it is the burn-to-mint\nupper bound of the chosen finality tier, set by the source chain (Fast ~20 s;\nStandard ~19 min from the L1-anchored chains). It never counts the time a\nparked route waits for its taker to sign the next leg.","format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].etaSeconds.oneOf.0","typeLabel":"integer\u003cint64>"},{"description":"The route quote's per-leg ETA in seconds, when it carried one: the venue's\nestimate of this leg's own execution. For a CCTP leg it is the burn-to-mint\nupper bound of the chosen finality tier, set by the source chain (Fast ~20 s;\nStandard ~19 min from the L1-anchored chains). It never counts the time a\nparked route waits for its taker to sign the next leg.","format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].etaSeconds.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].etaSeconds","typeLabel":"integer\u003cint64> | null"},"externalRefs":{"description":"Off-chain provider references for the leg (Circle trade id, Across deposit id,\nRelay request id, …) — the identifiers a client uses to look the leg up on the\nprovider's own status surface.","items":{"description":"An off-chain provider reference for a leg.","properties":{"kind":{"description":"Reference kind, e.g. `circleTradeId` | `acrossDepositId` | `relayRequestId`.","enum":["circleTradeId","acrossDepositId","relayRequestId"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX].kind","typeLabel":"enum\u003cstring>"},"value":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX].value","typeLabel":"string"},"url":{"oneOf":[{"description":"A provider status URL for `value`, when one is known.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX].url.oneOf.0","typeLabel":"string"},{"description":"A provider status URL for `value`, when one is known.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX].url.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX].url","typeLabel":"string | null"}},"required":["kind","value"],"type":"object","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].externalRefs.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].externalRefs","typeLabel":"object[]"},"feeUsd":{"oneOf":[{"description":"Concrete USD-denominated fee total for this leg. Absent when the route\nquote only carried spread/fee bps or a non-USD fee asset.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].feeUsd.oneOf.0","typeLabel":"string"},{"description":"Concrete USD-denominated fee total for this leg. Absent when the route\nquote only carried spread/fee bps or a non-USD fee asset.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].feeUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].feeUsd","typeLabel":"string | null"},"measuredBuy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.0","typeLabel":"null"},{"type":"object","description":"What this leg was OBSERVED to deliver, from the settlement receipt TetraFi\nrecorded for this leg, in the leg's buy asset. Absent until that receipt has\nconfirmed the leg, which a client must render as \"not measured\": never as\nzero, and never by silently showing `buy` in its place.\n\nThis is the only place an INTERMEDIATE leg's real delivery appears. On a\n`StableFX -> CCTP` composite the FX leg settles a different asset on a\ndifferent chain from the order's own output, so the order-level delivery\ncannot describe it.","required":["asset"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"assetId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.assetId","typeLabel":"string"},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.resolutionStatus","typeLabel":"enum\u003cstring>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.symbol","typeLabel":"string"},"address":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.address.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.address.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.address","typeLabel":"string | null"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainId","typeLabel":"integer\u003cint64> | null"},"chainRef":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainRef.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainRef.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.chainRef","typeLabel":"string | null"},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.decimals.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.decimals.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.decimals","typeLabel":"integer\u003cint32> | null"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset.name","typeLabel":"string | null"}},"required":["assetId","symbol","resolutionStatus"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.asset","typeLabel":"object"},"decimalAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.decimalAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.decimalAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.decimalAmount","typeLabel":"string | null"},"rawAmount":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.rawAmount.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.rawAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.rawAmount","typeLabel":"string | null"},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.unresolved.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.unresolved.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1.unresolved","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuy","typeLabel":"null | object"},"measuredBuySource":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuySource.oneOf.0","typeLabel":"null"},{"type":"string","description":"Which settlement receipt backed `measuredBuy`: `circleSettledOutput`\n| `cctpVerifiedOutput` | `relayVerifiedOutput` | `solverVerifiedOutput`\n| `nativeUniswapOutcome`. Carried so an operator can trace a per-leg number back\nto the observation that produced it instead of inferring it from the leg kind.","enum":["circleSettledOutput","cctpVerifiedOutput","relayVerifiedOutput","solverVerifiedOutput","nativeUniswapOutcome"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuySource.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].measuredBuySource","typeLabel":"null | enum\u003cstring>"},"product":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].product.oneOf.0","typeLabel":"null"},{"type":"string","description":"The venue product of a firm-RFQ leg: `lop` (Octarine limit order) | `rfq` (Bebop\nPMM RFQ) | `bopamm` (Bebop BopAMM). Read from the handoff persisted for the leg,\nso it is absent until the venue firmed it and on every non-RFQ leg. An open set:\na client renders an unknown value generically.","enum":["lop","rfq","bopamm"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].product.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].product","typeLabel":"null | enum\u003cstring>"},"provider":{"oneOf":[{"description":"Venue / provider display name for the leg.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].provider.oneOf.0","typeLabel":"string"},{"description":"Venue / provider display name for the leg.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].provider.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].provider","typeLabel":"string | null"},"sourceChainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sourceChainId.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","minimum":0,"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sourceChainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].sourceChainId","typeLabel":"integer\u003cint64> | null"},"tradeLeg":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.0","typeLabel":"null"},{"type":"object","description":"The money-movement facts of a hosted venue trade's leg: a\npayout or pay-in over a bank rail or a chain. Absent on route legs.","required":["legId","direction","settlementRail","state"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"direction":{"description":"Whether the leg brings money to the LP account before the trade, or takes\nthe trade's output away from it.\n\nNew values may be added; treat unknown values as other.","enum":["pay_in","payout"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.direction","typeLabel":"enum\u003cstring>"},"legId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.legId","typeLabel":"string\u003cuuid>"},"settlementRail":{"description":"How the leg settles: a bank rail or a chain transfer.\n\nNew values may be added; treat unknown values as other.","enum":["bank","chain"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.settlementRail","typeLabel":"enum\u003cstring>"},"state":{"description":"The leg's state. The last five are terminal.\n\nNew values may be added; treat unknown values as other.","enum":["planned","awaiting_funds","funds_received","price_beyond_bound","expired_unfunded","late_funds","awaiting_approval","dispatching","uncertain","in_transit","held_by_provider","refunding","manual_review","settled","returned","refunded","cancelled","refused"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.state","typeLabel":"enum\u003cstring>"},"boundLapsesAt":{"oneOf":[{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.boundLapsesAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.boundLapsesAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.boundLapsesAt","typeLabel":"string\u003cdate-time> | null"},"confirmAgainReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.confirmAgainReason.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why a deposit-first pay-in in `price_beyond_bound` waits for a new consent.","enum":["priceBeyondBound","boundLapsed"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.confirmAgainReason.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.confirmAgainReason","typeLabel":"null | enum\u003cstring>"},"consentedPayoutFee":{"oneOf":[{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.consentedPayoutFee.oneOf.0","typeLabel":"string"},{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.consentedPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.consentedPayoutFee","typeLabel":"string | null"},"creditedAmount":{"oneOf":[{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.creditedAmount.oneOf.0","typeLabel":"string"},{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.creditedAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.creditedAmount","typeLabel":"string | null"},"currentPayoutFee":{"oneOf":[{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.currentPayoutFee.oneOf.0","typeLabel":"string"},{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.currentPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.currentPayoutFee","typeLabel":"string | null"},"declaredPayoutFee":{"oneOf":[{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.declaredPayoutFee.oneOf.0","typeLabel":"string"},{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.declaredPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.declaredPayoutFee","typeLabel":"string | null"},"destination":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.0","typeLabel":"null"},{"type":"object","description":"Where a payout leg delivers, by reference only: never bank or chain\ncoordinates.","required":["kind","ref"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"What a payout leg delivers to, in the binding's endpoint vocabulary.\n\nNew values may be added; treat unknown values as other.","enum":["wallet","bankDestination"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"ref":{"description":"The wallet id or the Treasury Destination id.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1.ref","typeLabel":"string"},"approvalId":{"oneOf":[{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1.approvalId.oneOf.0","typeLabel":"string\u003cuuid>"},{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1.approvalId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1.approvalId","typeLabel":"string\u003cuuid> | null"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.destination","typeLabel":"null | object"},"expectedArrivalAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalAt","typeLabel":"string\u003cdate-time> | null"},"expectedArrivalSource":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalSource.oneOf.0","typeLabel":"null"},{"type":"string","description":"`provider` or `default`.","enum":["provider","default"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalSource.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.expectedArrivalSource","typeLabel":"null | enum\u003cstring>"},"finality":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.finality.oneOf.0","typeLabel":"null"},{"type":"string","description":"Whether a settled payout can still be returned. Absent for an unsettled leg or a settled leg without a provider return watch.","enum":["final","returnable","returnedAfterSettlement"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.finality.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.finality","typeLabel":"null | enum\u003cstring>"},"fundingDeadlineAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"fundingModel":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingModel.oneOf.0","typeLabel":"null"},{"type":"string","description":"A bank leg's funding model, fixed when it was planned. Absent on a\nchain leg.","enum":["prefunded","payIn","credit"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingModel.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundingModel","typeLabel":"null | enum\u003cstring>"},"fundsReceivedAt":{"oneOf":[{"description":"The venue's own credit time of that amount.","format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundsReceivedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The venue's own credit time of that amount.","format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundsReceivedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.fundsReceivedAt","typeLabel":"string\u003cdate-time> | null"},"holidaysApplied":{"oneOf":[{"type":"boolean","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.holidaysApplied.oneOf.0","typeLabel":"boolean"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.holidaysApplied.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.holidaysApplied","typeLabel":"boolean | null"},"outcomeCode":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.outcomeCode.oneOf.0","typeLabel":"null"},{"type":"string","description":"The named reason on a refused, cancelled or returned leg.","enum":["trade_unfilled","authority_revoked","confirm_again_declined","deposit_first_withdrawn","unfunded_watch_ended","adjudicated_returned","provider_returned","venue_reported_returned","provider_quote_missing","provider_quote_expired","payout_backend_changed","expected_arrival_unknown","balance_insufficient","destination_not_listed","destination_approval_revoked","destination_holder_name_unavailable","withdrawal_refused_unsent","provider_refused_unsent:adjudicated","provider_refused_unsent:adapter_hand_off_deadline_passed","provider_refused_unsent:adapter_hand_off_deadline_unsupported","adapter_refused_before_send:unsupported_rail","adapter_refused_before_send:unsupported_jurisdiction","adapter_refused_before_send:amount_out_of_bounds","adapter_refused_before_send:unsupported_leg","adapter_refused_before_send:quote_expired","adapter_refused_before_send:quote_not_reservable","adapter_refused_before_send:missing_required_data","adapter_refused_before_send:provider_rejected","adapter_refused_before_send:timeout","adapter_refused_before_send:rate_limited","adapter_refused_before_send:authentication_failed","adapter_refused_before_send:invalid_request","adapter_refused_before_send:internal","adapter_refused_before_send:not_sent"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.outcomeCode.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.outcomeCode","typeLabel":"null | enum\u003cstring>"},"overdueAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueAt","typeLabel":"string\u003cdate-time> | null"},"overdueSince":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueSince.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueSince.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.overdueSince","typeLabel":"string\u003cdate-time> | null"},"ownBankVerification":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.0","typeLabel":"null"},{"type":"object","description":"Independent bank evidence, never the venue-reported settlement state.","required":["state","source"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"source":{"description":"New values may be added; treat unknown values as other.","enum":["revolutBusiness"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.source","typeLabel":"enum\u003cstring>"},"state":{"description":"New values may be added; treat unknown values as other.","enum":["verified","notSeen","unavailable","disagreement"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.state","typeLabel":"enum\u003cstring>"},"credit":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.0","typeLabel":"null"},{"type":"object","required":["amount","currency","creditedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"Exact decimal text, never a floating-point approximation.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.amount","typeLabel":"string"},"creditedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.creditedAt","typeLabel":"string\u003cdate-time>"},"currency":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.currency","typeLabel":"string"},"referenceMasked":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked","typeLabel":"string | null"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.credit","typeLabel":"null | object"},"lastGoodReadAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.lastGoodReadAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.lastGoodReadAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.lastGoodReadAt","typeLabel":"string\u003cdate-time> | null"},"matchedBy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.matchedBy.oneOf.0","typeLabel":"null"},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["referenceAndAmount","amountAndWindow"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.matchedBy.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.matchedBy","typeLabel":"null | enum\u003cstring>"},"reason":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reason","typeLabel":"string | null"},"reviewItemId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reviewItemId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reviewItemId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1.reviewItemId","typeLabel":"string | null"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.ownBankVerification","typeLabel":"null | object"},"payoutApproval":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.0","typeLabel":"null"},{"type":"object","description":"Treasury's existing Run approval for a bank payout. No funds are reserved\nwhile this approval is pending; release rechecks balances and terms.","required":["approvalsRequired","approverNames"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"approvalsRequired":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approvalsRequired","typeLabel":"integer\u003cint32>"},"approverNames":{"items":{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverNames.items.[INDEX]","typeLabel":"string"},"type":"array","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverNames","typeLabel":"string[]"},"approvalRequestId":{"oneOf":[{"format":"uuid","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approvalRequestId.oneOf.0","typeLabel":"string\u003cuuid>"},{"format":"uuid","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approvalRequestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approvalRequestId","typeLabel":"string\u003cuuid> | null"},"approverGroup":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroup.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroup.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroup","typeLabel":"string | null"},"approverGroupName":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroupName.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroupName.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.approverGroupName","typeLabel":"string | null"},"runId":{"oneOf":[{"format":"uuid","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.runId.oneOf.0","typeLabel":"string\u003cuuid>"},{"format":"uuid","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.runId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1.runId","typeLabel":"string\u003cuuid> | null"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutApproval","typeLabel":"null | object"},"payoutBreakdown":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.0","typeLabel":"null"},{"type":"object","description":"A payout's amounts in its asset (operator 2026-10-22: every fee-bearing\naction shows what leaves the account, the fee and what arrives). Absent\non a pay-in and on a payout with no consent yet.","required":["withdrawn","fee","receivedMin","receivedMax","basis"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"basis":{"description":"The withdrawal record these amounts come from.","enum":["consent","reviewed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.basis","typeLabel":"enum\u003cstring>"},"fee":{"description":"The most fee: a bank payout's declared payout fee (frozen by the\nwithdrawal review once there is one), else Confirm's fee bound.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.fee","typeLabel":"string"},"receivedMax":{"description":"The most that arrives.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.receivedMax","typeLabel":"string"},"receivedMin":{"description":"The least that arrives.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.receivedMin","typeLabel":"string"},"withdrawn":{"description":"The most leaving the venue account: the confirmed trade's output.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.withdrawn","typeLabel":"string"},"charging":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.charging.oneOf.0","typeLabel":"null"},{"type":"string","description":"How the venue charges a bank payout's fee, as its rail declares it\n(`deducted`, `on_top`, `unverified`). Absent on a wallet payout, whose fee\nis Confirm's bound rather than a declared rail fee.","enum":["deducted","on_top","unverified"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.charging.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1.charging","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdown","typeLabel":"null | object"},"payoutBreakdownUnavailableReason":{"oneOf":[{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdownUnavailableReason.oneOf.0","typeLabel":"string"},{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdownUnavailableReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutBreakdownUnavailableReason","typeLabel":"string | null"},"payoutHeldReason":{"oneOf":[{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutHeldReason.oneOf.0","typeLabel":"string"},{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutHeldReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.payoutHeldReason","typeLabel":"string | null"},"quotedExpectedArrivalAt":{"oneOf":[{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.quotedExpectedArrivalAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.quotedExpectedArrivalAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.quotedExpectedArrivalAt","typeLabel":"string\u003cdate-time> | null"},"rail":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.rail.oneOf.0","typeLabel":"null"},{"type":"string","description":"A bank leg's rail (`eft`, `sepa`, ...), fixed when it was planned. Absent\non a chain leg.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.rail.oneOf.1","typeLabel":"string"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.rail","typeLabel":"null | string"},"railOption":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railOption.oneOf.0","typeLabel":"null"},{"type":"string","description":"The rail option the bank leg uses (`standard` or `fast`).","enum":["standard","fast"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railOption.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railOption","typeLabel":"null | enum\u003cstring>"},"railReference":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.0","typeLabel":"null"},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"state":{"description":"New values may be added; treat unknown values as other.","enum":["notReportedYet"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.1.state","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.1","typeLabel":"object"},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["kind","value","state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["swiftUetr","sepaEndToEndId","fasterPaymentsReference","bankRailReference"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"state":{"description":"New values may be added; treat unknown values as other.","enum":["reported"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.2.state","typeLabel":"enum\u003cstring>"},"value":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference.oneOf.2","typeLabel":"object"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.railReference","typeLabel":"null · object · object"},"recipientConfirmation":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.0","typeLabel":"null"},{"type":"object","description":"The receiving workspace's assertion, never settlement or independent verification.","required":["confirmationId","legId","confirmedBy","confirmedByName","confirmedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"confirmationId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1.confirmationId","typeLabel":"string\u003cuuid>"},"confirmedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1.confirmedAt","typeLabel":"string\u003cdate-time>"},"confirmedBy":{"description":"`user:\u003cid>` or `key:\u003cid>`; immutable authenticated identity.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1.confirmedBy","typeLabel":"string"},"confirmedByName":{"description":"A safe name captured at confirmation, never an email address.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1.confirmedByName","typeLabel":"string"},"legId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1.legId","typeLabel":"string\u003cuuid>"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.recipientConfirmation","typeLabel":"null | object"},"returnWindowEndsAt":{"oneOf":[{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnWindowEndsAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnWindowEndsAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnWindowEndsAt","typeLabel":"string\u003cdate-time> | null"},"returnedAfterSettlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedAfterSettlement.oneOf.0","typeLabel":"null"},{"type":"object","description":"A settled payout the provider later returned. The leg\nstays `settled` (its row is immutable); the PayoutReturned review item\nis the one fact, and resolving that review keeps this annotation.","required":["reviewItemId","detectedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"detectedAt":{"description":"When TetraFi's own status read first saw the return.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedAfterSettlement.oneOf.1.detectedAt","typeLabel":"string\u003cdate-time>"},"reviewItemId":{"description":"The PayoutReturned review item support works the return from.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedAfterSettlement.oneOf.1.reviewItemId","typeLabel":"string"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedAfterSettlement.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedAfterSettlement","typeLabel":"null | object"},"returnedTo":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedTo.oneOf.0","typeLabel":"null"},{"type":"string","description":"Where a returned leg's funds remain, according to its dispatch backend.\n\nNew values may be added; treat unknown values as other.","enum":["lpAccount","providerBalance"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedTo.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.returnedTo","typeLabel":"null | enum\u003cstring>"},"reviewAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewAt","typeLabel":"string\u003cdate-time> | null"},"reviewEnteredAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewEnteredAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewEnteredAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewEnteredAt","typeLabel":"string\u003cdate-time> | null"},"reviewItemId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewItemId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewItemId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewItemId","typeLabel":"string | null"},"reviewReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewReason.oneOf.0","typeLabel":"null"},{"type":"string","description":"The reason a leg requires review.\n\nNew values may be added; treat unknown values as other.","enum":["uncertain_send","ambiguous_event","expected_arrival_exceeded","provider_failed_after_send","trade_fill_requires_review","late_funds_held","late_funds_worse_rate","amount_mismatch"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewReason.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.reviewReason","typeLabel":"null | enum\u003cstring>"},"submittedAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.submittedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.submittedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.submittedAt","typeLabel":"string\u003cdate-time> | null"},"transactionHash":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.transactionHash.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.transactionHash.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.transactionHash","typeLabel":"string | null"},"venueReportedCredited":{"oneOf":[{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"boolean","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueReportedCredited.oneOf.0","typeLabel":"boolean"},{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueReportedCredited.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueReportedCredited","typeLabel":"boolean | null"},"venueWithdrawalId":{"oneOf":[{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueWithdrawalId.oneOf.0","typeLabel":"string"},{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueWithdrawalId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1.venueWithdrawalId","typeLabel":"string | null"}},"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].tradeLeg","typeLabel":"null | object"},"transactions":{"description":"The transactions this leg produced (a subset of the order's `transactions[]`,\ncorrelated by `leg_index`/chain), each already enriched with an explorer URL.","items":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].actor","typeLabel":"enum\u003cstring>"},"chainId":{"format":"int64","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].chainId","typeLabel":"integer\u003cint64>"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].chainRole","typeLabel":"enum\u003cstring>"},"hash":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].hash","typeLabel":"string"},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].stage","typeLabel":"enum\u003cstring>"},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].explorerUrl.oneOf.0","typeLabel":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].explorerUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].explorerUrl","typeLabel":"string | null"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].label.oneOf.0","typeLabel":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].label.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].label","typeLabel":"string | null"},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].legIndex.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].legIndex.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].legIndex","typeLabel":"integer\u003cint32> | null"},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX].timestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].transactions","typeLabel":"object[]"},"venueRouteId":{"oneOf":[{"description":"The venue route identity that filled this leg, from the retained route quote's\n`legQuotes[].solverId`. A solver-LP leg carries a real solver id that\nresolves to a KYB'd LP workspace; a bridge leg carries a synthetic id\n(e.g. `\"circle-cctp\"`) with no LP workspace behind it. This is the handle\nthe trade-detail builder uses to resolve per-leg counterparty compliance.","type":"string","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].venueRouteId.oneOf.0","typeLabel":"string"},{"description":"The venue route identity that filled this leg, from the retained route quote's\n`legQuotes[].solverId`. A solver-LP leg carries a real solver id that\nresolves to a KYB'd LP workspace; a bridge leg carries a synthetic id\n(e.g. `\"circle-cctp\"`) with no LP workspace behind it. This is the handle\nthe trade-detail builder uses to resolve per-leg counterparty compliance.","type":"null","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].venueRouteId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX].venueRouteId","typeLabel":"string | null"}},"required":["index","kind","label","sell","buy","status"],"type":"object","uniqueKey":"oneOf.1.legs.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.1.legs.oneOf.0","typeLabel":"object[]"},{"description":"Uniform per-leg execution model for multi-leg route orders; absent for\nsingle-leg escrow / deferred orders. Mirrors `OrderResponse.legs`.","items":{"description":"One executed (or pending) route leg.","properties":{"buy":{"description":"What the leg quote ESTIMATED this leg would buy. Always the quote: a confirmed\ndelivery is reported separately in `measuredBuy` rather than overwriting this,\nso the two facts stay distinguishable on the wire.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"address":{"oneOf":[{"type":"string"},{"type":"null"}]},"assetId":{"type":"string"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer"},{"format":"int64","minimum":0,"type":"null"}]},"chainRef":{"oneOf":[{"type":"string"},{"type":"null"}]},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer"},{"format":"int32","minimum":0,"type":"null"}]},"name":{"oneOf":[{"type":"string"},{"type":"null"}]},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true},"symbol":{"type":"string"}},"required":["assetId","symbol","resolutionStatus"],"type":"object"},"decimalAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"rawAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]}},"required":["asset"],"type":"object"},"counterparty":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"Per-leg counterparty compliance posture — WHO filled this leg and their\nregulatory standing. Absent on the generic `OrderResponse`; populated only\non the admin company trade-detail. Lets a composite show \"leg 1 = KYB'd\nSolver X (Cayman Islands), leg 2 = CCTP protocol\" instead of one collapsed\ncounterparty.","required":["counterpartyType"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"counterpartyType":{"description":"`vasp` | `bilateral` | `protocol` | `solver` — the nature of this leg's filler.","enum":["vasp","bilateral","protocol","solver"],"type":"string","x-extensible-enum":true},"jurisdiction":{"oneOf":[{"description":"ISO-3166 alpha-2 home jurisdiction of the LP entity (KYB'd solver legs only).","type":"string"},{"description":"ISO-3166 alpha-2 home jurisdiction of the LP entity (KYB'd solver legs only).","type":"null"}]},"kybStatus":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"KYB status of the LP workspace behind this leg (`approved` / … ).","enum":["not_started","pending","in_review","approved","verified","rejected","denied","expired"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"licences":{"description":"Regulatory licences the leg's LP holds.","items":{"description":"A single regulatory licence held by a route leg's LP.","properties":{"expiresAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"jurisdiction":{"type":"string"},"licenceType":{"type":"string"},"status":{"description":"New values may be added; treat unknown values as other.","enum":["active","suspended","expired","revoked"],"type":"string","x-extensible-enum":true}},"required":["licenceType","jurisdiction","status"],"type":"object"},"type":"array"},"provenance":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Who supplied the LP entity's facts, when an entity profile backs this leg.\nA `platformCurated` venue (e.g. Circle) carries a raw `not_started` KYB row\nby design; this field is what distinguishes it from an unverified LP.","enum":["kybVerified","platformCurated","selfDeclared"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]}}}]},"destChainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer"},{"format":"int64","minimum":0,"type":"null"}]},"etaSeconds":{"oneOf":[{"description":"The route quote's per-leg ETA in seconds, when it carried one: the venue's\nestimate of this leg's own execution. For a CCTP leg it is the burn-to-mint\nupper bound of the chosen finality tier, set by the source chain (Fast ~20 s;\nStandard ~19 min from the L1-anchored chains). It never counts the time a\nparked route waits for its taker to sign the next leg.","format":"int64","minimum":0,"type":"integer"},{"description":"The route quote's per-leg ETA in seconds, when it carried one: the venue's\nestimate of this leg's own execution. For a CCTP leg it is the burn-to-mint\nupper bound of the chosen finality tier, set by the source chain (Fast ~20 s;\nStandard ~19 min from the L1-anchored chains). It never counts the time a\nparked route waits for its taker to sign the next leg.","format":"int64","minimum":0,"type":"null"}]},"externalRefs":{"description":"Off-chain provider references for the leg (Circle trade id, Across deposit id,\nRelay request id, …) — the identifiers a client uses to look the leg up on the\nprovider's own status surface.","items":{"description":"An off-chain provider reference for a leg.","properties":{"kind":{"description":"Reference kind, e.g. `circleTradeId` | `acrossDepositId` | `relayRequestId`.","enum":["circleTradeId","acrossDepositId","relayRequestId"],"type":"string","x-extensible-enum":true},"url":{"oneOf":[{"description":"A provider status URL for `value`, when one is known.","type":"string"},{"description":"A provider status URL for `value`, when one is known.","type":"null"}]},"value":{"type":"string"}},"required":["kind","value"],"type":"object"},"type":"array"},"feeUsd":{"oneOf":[{"description":"Concrete USD-denominated fee total for this leg. Absent when the route\nquote only carried spread/fee bps or a non-USD fee asset.","type":"string"},{"description":"Concrete USD-denominated fee total for this leg. Absent when the route\nquote only carried spread/fee bps or a non-USD fee asset.","type":"null"}]},"index":{"description":"0-indexed position in the route's execution order.","format":"int32","minimum":0,"type":"integer"},"kind":{"description":"Normalised leg mechanism: `cctp` | `across` | `relay` | `fx` | `solver`, or the\nraw `providerProduct` for a kind the backend does not special-case (clients must\ntreat this as an open set and fall back to a generic presentation).","enum":["cctp","across","relay","fx","solver","dexswap","rfqswap"],"type":"string","x-extensible-enum":true},"label":{"description":"Human-friendly leg label, e.g. `\"Circle CCTP Fast\"` or `\"CCTP: Base → Arc\"`.","type":"string"},"measuredBuy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"What this leg was OBSERVED to deliver, from the settlement receipt TetraFi\nrecorded for this leg, in the leg's buy asset. Absent until that receipt has\nconfirmed the leg, which a client must render as \"not measured\": never as\nzero, and never by silently showing `buy` in its place.\n\nThis is the only place an INTERMEDIATE leg's real delivery appears. On a\n`StableFX -> CCTP` composite the FX leg settles a different asset on a\ndifferent chain from the order's own output, so the order-level delivery\ncannot describe it.","required":["asset"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"address":{"oneOf":[{"type":"string"},{"type":"null"}]},"assetId":{"type":"string"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer"},{"format":"int64","minimum":0,"type":"null"}]},"chainRef":{"oneOf":[{"type":"string"},{"type":"null"}]},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer"},{"format":"int32","minimum":0,"type":"null"}]},"name":{"oneOf":[{"type":"string"},{"type":"null"}]},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true},"symbol":{"type":"string"}},"required":["assetId","symbol","resolutionStatus"],"type":"object"},"decimalAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"rawAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]}}}]},"measuredBuySource":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Which settlement receipt backed `measuredBuy`: `circleSettledOutput`\n| `cctpVerifiedOutput` | `relayVerifiedOutput` | `solverVerifiedOutput`\n| `nativeUniswapOutcome`. Carried so an operator can trace a per-leg number back\nto the observation that produced it instead of inferring it from the leg kind.","enum":["circleSettledOutput","cctpVerifiedOutput","relayVerifiedOutput","solverVerifiedOutput","nativeUniswapOutcome"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"product":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"The venue product of a firm-RFQ leg: `lop` (Octarine limit order) | `rfq` (Bebop\nPMM RFQ) | `bopamm` (Bebop BopAMM). Read from the handoff persisted for the leg,\nso it is absent until the venue firmed it and on every non-RFQ leg. An open set:\na client renders an unknown value generically.","enum":["lop","rfq","bopamm"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"provider":{"oneOf":[{"description":"Venue / provider display name for the leg.","type":"string"},{"description":"Venue / provider display name for the leg.","type":"null"}]},"sell":{"description":"What the leg sells: its asset, chain and `decimalAmount`, or `unresolved` when\nthe backend cannot scale it.","properties":{"asset":{"description":"Display identity for one token/asset.","properties":{"address":{"oneOf":[{"type":"string"},{"type":"null"}]},"assetId":{"type":"string"},"chainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer"},{"format":"int64","minimum":0,"type":"null"}]},"chainRef":{"oneOf":[{"type":"string"},{"type":"null"}]},"decimals":{"oneOf":[{"format":"int32","minimum":0,"type":"integer"},{"format":"int32","minimum":0,"type":"null"}]},"name":{"oneOf":[{"type":"string"},{"type":"null"}]},"resolutionStatus":{"description":"Whether the backend resolved the asset to known display metadata.\n\nNew values may be added; treat unknown values as other.","enum":["resolved","unknown"],"type":"string","x-extensible-enum":true},"symbol":{"type":"string"}},"required":["assetId","symbol","resolutionStatus"],"type":"object"},"decimalAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"rawAmount":{"oneOf":[{"type":"string"},{"type":"null"}]},"unresolved":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Why `decimalAmount` is absent; absent whenever it is present.","enum":["assetNotInRegistry","amountUnavailable"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]}},"required":["asset"],"type":"object"},"sourceChainId":{"oneOf":[{"format":"int64","minimum":0,"type":"integer"},{"format":"int64","minimum":0,"type":"null"}]},"status":{"description":"Leg status: `pending` | `executing` | `done` | `failed` | `refunded`.","enum":["pending","executing","done","failed","refunded"],"type":"string","x-extensible-enum":true},"tradeLeg":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"The money-movement facts of a hosted venue trade's leg: a\npayout or pay-in over a bank rail or a chain. Absent on route legs.","required":["legId","direction","settlementRail","state"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"boundLapsesAt":{"oneOf":[{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"string"},{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"null"}]},"confirmAgainReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Why a deposit-first pay-in in `price_beyond_bound` waits for a new consent.","enum":["priceBeyondBound","boundLapsed"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"consentedPayoutFee":{"oneOf":[{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"string"},{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"null"}]},"creditedAmount":{"oneOf":[{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"string"},{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"null"}]},"currentPayoutFee":{"oneOf":[{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"string"},{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"null"}]},"declaredPayoutFee":{"oneOf":[{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"string"},{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"null"}]},"destination":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"Where a payout leg delivers, by reference only: never bank or chain\ncoordinates.","required":["kind","ref"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"approvalId":{"oneOf":[{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"string"},{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"null"}]},"kind":{"description":"What a payout leg delivers to, in the binding's endpoint vocabulary.\n\nNew values may be added; treat unknown values as other.","enum":["wallet","bankDestination"],"type":"string","x-extensible-enum":true},"ref":{"description":"The wallet id or the Treasury Destination id.","type":"string"}}}]},"direction":{"description":"Whether the leg brings money to the LP account before the trade, or takes\nthe trade's output away from it.\n\nNew values may be added; treat unknown values as other.","enum":["pay_in","payout"],"type":"string","x-extensible-enum":true},"expectedArrivalAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"expectedArrivalSource":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"`provider` or `default`.","enum":["provider","default"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"finality":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Whether a settled payout can still be returned. Absent for an unsettled leg or a settled leg without a provider return watch.","enum":["final","returnable","returnedAfterSettlement"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"fundingDeadlineAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"fundingModel":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"A bank leg's funding model, fixed when it was planned. Absent on a\nchain leg.","enum":["prefunded","payIn","credit"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"fundsReceivedAt":{"oneOf":[{"description":"The venue's own credit time of that amount.","format":"date-time","type":"string"},{"description":"The venue's own credit time of that amount.","format":"date-time","type":"null"}]},"holidaysApplied":{"oneOf":[{"type":"boolean"},{"type":"null"}]},"legId":{"format":"uuid","type":"string"},"outcomeCode":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"The named reason on a refused, cancelled or returned leg.","enum":["trade_unfilled","authority_revoked","confirm_again_declined","deposit_first_withdrawn","unfunded_watch_ended","adjudicated_returned","provider_returned","venue_reported_returned","provider_quote_missing","provider_quote_expired","payout_backend_changed","expected_arrival_unknown","balance_insufficient","destination_not_listed","destination_approval_revoked","destination_holder_name_unavailable","withdrawal_refused_unsent","provider_refused_unsent:adjudicated","provider_refused_unsent:adapter_hand_off_deadline_passed","provider_refused_unsent:adapter_hand_off_deadline_unsupported","adapter_refused_before_send:unsupported_rail","adapter_refused_before_send:unsupported_jurisdiction","adapter_refused_before_send:amount_out_of_bounds","adapter_refused_before_send:unsupported_leg","adapter_refused_before_send:quote_expired","adapter_refused_before_send:quote_not_reservable","adapter_refused_before_send:missing_required_data","adapter_refused_before_send:provider_rejected","adapter_refused_before_send:timeout","adapter_refused_before_send:rate_limited","adapter_refused_before_send:authentication_failed","adapter_refused_before_send:invalid_request","adapter_refused_before_send:internal","adapter_refused_before_send:not_sent"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"overdueAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"overdueSince":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"ownBankVerification":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"Independent bank evidence, never the venue-reported settlement state.","required":["state","source"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"credit":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","required":["amount","currency","creditedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"Exact decimal text, never a floating-point approximation.","type":"string"},"creditedAt":{"format":"date-time","type":"string"},"currency":{"type":"string"},"referenceMasked":{"oneOf":[{"type":"string"},{"type":"null"}]}}}]},"lastGoodReadAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"matchedBy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["referenceAndAmount","amountAndWindow"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"reason":{"oneOf":[{"type":"string"},{"type":"null"}]},"reviewItemId":{"oneOf":[{"type":"string"},{"type":"null"}]},"source":{"description":"New values may be added; treat unknown values as other.","enum":["revolutBusiness"],"type":"string","x-extensible-enum":true},"state":{"description":"New values may be added; treat unknown values as other.","enum":["verified","notSeen","unavailable","disagreement"],"type":"string","x-extensible-enum":true}}}]},"payoutApproval":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"Treasury's existing Run approval for a bank payout. No funds are reserved\nwhile this approval is pending; release rechecks balances and terms.","required":["approvalsRequired","approverNames"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"approvalRequestId":{"oneOf":[{"format":"uuid","type":"string"},{"format":"uuid","type":"null"}]},"approvalsRequired":{"format":"int32","minimum":0,"type":"integer"},"approverGroup":{"oneOf":[{"type":"string"},{"type":"null"}]},"approverGroupName":{"oneOf":[{"type":"string"},{"type":"null"}]},"approverNames":{"items":{"type":"string"},"type":"array"},"runId":{"oneOf":[{"format":"uuid","type":"string"},{"format":"uuid","type":"null"}]}}}]},"payoutBreakdown":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"A payout's amounts in its asset (operator 2026-10-22: every fee-bearing\naction shows what leaves the account, the fee and what arrives). Absent\non a pay-in and on a payout with no consent yet.","required":["withdrawn","fee","receivedMin","receivedMax","basis"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"basis":{"description":"The withdrawal record these amounts come from.","enum":["consent","reviewed"],"type":"string","x-extensible-enum":true},"charging":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"How the venue charges a bank payout's fee, as its rail declares it\n(`deducted`, `on_top`, `unverified`). Absent on a wallet payout, whose fee\nis Confirm's bound rather than a declared rail fee.","enum":["deducted","on_top","unverified"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"fee":{"description":"The most fee: a bank payout's declared payout fee (frozen by the\nwithdrawal review once there is one), else Confirm's fee bound.","type":"string"},"receivedMax":{"description":"The most that arrives.","type":"string"},"receivedMin":{"description":"The least that arrives.","type":"string"},"withdrawn":{"description":"The most leaving the venue account: the confirmed trade's output.","type":"string"}}}]},"payoutBreakdownUnavailableReason":{"oneOf":[{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"string"},{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"null"}]},"payoutHeldReason":{"oneOf":[{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"string"},{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"null"}]},"quotedExpectedArrivalAt":{"oneOf":[{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"string"},{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"null"}]},"rail":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"A bank leg's rail (`eft`, `sepa`, ...), fixed when it was planned. Absent\non a chain leg.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"railOption":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"The rail option the bank leg uses (`standard` or `fast`).","enum":["standard","fast"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"railReference":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"state":{"description":"New values may be added; treat unknown values as other.","enum":["notReportedYet"],"type":"string","x-extensible-enum":true}}},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["kind","value","state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["swiftUetr","sepaEndToEndId","fasterPaymentsReference","bankRailReference"],"type":"string","x-extensible-enum":true},"state":{"description":"New values may be added; treat unknown values as other.","enum":["reported"],"type":"string","x-extensible-enum":true},"value":{"type":"string"}}}]},"recipientConfirmation":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"The receiving workspace's assertion, never settlement or independent verification.","required":["confirmationId","legId","confirmedBy","confirmedByName","confirmedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"confirmationId":{"format":"uuid","type":"string"},"confirmedAt":{"format":"date-time","type":"string"},"confirmedBy":{"description":"`user:\u003cid>` or `key:\u003cid>`; immutable authenticated identity.","type":"string"},"confirmedByName":{"description":"A safe name captured at confirmation, never an email address.","type":"string"},"legId":{"format":"uuid","type":"string"}}}]},"returnWindowEndsAt":{"oneOf":[{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"string"},{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"null"}]},"returnedAfterSettlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"object","description":"A settled payout the provider later returned. The leg\nstays `settled` (its row is immutable); the PayoutReturned review item\nis the one fact, and resolving that review keeps this annotation.","required":["reviewItemId","detectedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"detectedAt":{"description":"When TetraFi's own status read first saw the return.","format":"date-time","type":"string"},"reviewItemId":{"description":"The PayoutReturned review item support works the return from.","type":"string"}}}]},"returnedTo":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"Where a returned leg's funds remain, according to its dispatch backend.\n\nNew values may be added; treat unknown values as other.","enum":["lpAccount","providerBalance"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"reviewAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"reviewEnteredAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"reviewItemId":{"oneOf":[{"type":"string"},{"type":"null"}]},"reviewReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."},{"type":"string","description":"The reason a leg requires review.\n\nNew values may be added; treat unknown values as other.","enum":["uncertain_send","ambiguous_event","expected_arrival_exceeded","provider_failed_after_send","trade_fill_requires_review","late_funds_held","late_funds_worse_rate","amount_mismatch"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator."}]},"settlementRail":{"description":"How the leg settles: a bank rail or a chain transfer.\n\nNew values may be added; treat unknown values as other.","enum":["bank","chain"],"type":"string","x-extensible-enum":true},"state":{"description":"The leg's state. The last five are terminal.\n\nNew values may be added; treat unknown values as other.","enum":["planned","awaiting_funds","funds_received","price_beyond_bound","expired_unfunded","late_funds","awaiting_approval","dispatching","uncertain","in_transit","held_by_provider","refunding","manual_review","settled","returned","refunded","cancelled","refused"],"type":"string","x-extensible-enum":true},"submittedAt":{"oneOf":[{"format":"date-time","type":"string"},{"format":"date-time","type":"null"}]},"transactionHash":{"oneOf":[{"type":"string"},{"type":"null"}]},"venueReportedCredited":{"oneOf":[{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"boolean"},{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"null"}]},"venueWithdrawalId":{"oneOf":[{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"string"},{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"null"}]}}}]},"transactions":{"description":"The transactions this leg produced (a subset of the order's `transactions[]`,\ncorrelated by `leg_index`/chain), each already enriched with an explorer URL.","items":{"description":"A transaction in an order's timeline, for one lifecycle stage.\n\n`legIndex`, `label` and `explorerUrl` are optional: they tell a client which route\nleg the transaction belongs to, a human role label, and a ready-to-open explorer URL.","properties":{"actor":{"description":"Actor that submitted a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["user","solver","system"],"type":"string","x-extensible-enum":true},"chainId":{"format":"int64","minimum":0,"type":"integer"},"chainRole":{"description":"Chain role for a lifecycle transaction.\n\nNew values may be added; treat unknown values as other.","enum":["origin","destination","junction"],"type":"string","x-extensible-enum":true},"explorerUrl":{"oneOf":[{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"string"},{"description":"Block-explorer URL for `hash` on `chainId` when TetraFi knows the chain's explorer;\nwhen absent, the client falls back to its own per-chain explorer list.","type":"null"}]},"hash":{"type":"string"},"label":{"oneOf":[{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"string"},{"description":"Human-friendly role label (e.g. \"Bridge burn\", \"Fill\", \"Claim\"); when absent\nthe client derives it from `stage`.","type":"null"}]},"legIndex":{"oneOf":[{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"integer"},{"description":"0-indexed route leg this tx belongs to (multi-leg routes only).","format":"int32","minimum":0,"type":"null"}]},"stage":{"description":"Order lifecycle stage that a transaction belongs to.\n\nNew values may be added; treat unknown values as other.","enum":["prepare","fill","post_fill","pre_claim","claim","bridging","arrived","refund"],"type":"string","x-extensible-enum":true},"status":{"description":"Transaction status for an order lifecycle stage.\n\nNew values may be added; treat unknown values as other.","enum":["pending","executed","failed"],"type":"string","x-extensible-enum":true},"timestamp":{"oneOf":[{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"string"},{"description":"RFC 3339 UTC time at which the platform OBSERVED this transaction: when TetraFi\nrecorded it, never the block time.\n\nAbsent when TetraFi does not know when the transaction happened. A client\nmust render \"time unknown\" then, never substitute a time of its own (such as\nthe order's `updatedAt`).","format":"date-time","type":"null"}]}},"required":["stage","hash","chainId","chainRole","actor","status"],"type":"object"},"type":"array"},"venueRouteId":{"oneOf":[{"description":"The venue route identity that filled this leg, from the retained route quote's\n`legQuotes[].solverId`. A solver-LP leg carries a real solver id that\nresolves to a KYB'd LP workspace; a bridge leg carries a synthetic id\n(e.g. `\"circle-cctp\"`) with no LP workspace behind it. This is the handle\nthe trade-detail builder uses to resolve per-leg counterparty compliance.","type":"string"},{"description":"The venue route identity that filled this leg, from the retained route quote's\n`legQuotes[].solverId`. A solver-LP leg carries a real solver id that\nresolves to a KYB'd LP workspace; a bridge leg carries a synthetic id\n(e.g. `\"circle-cctp\"`) with no LP workspace behind it. This is the handle\nthe trade-detail builder uses to resolve per-leg counterparty compliance.","type":"null"}]}},"required":["index","kind","label","sell","buy","status"],"type":"object"},"type":"null","uniqueKey":"oneOf.1.legs.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.legs","typeLabel":"object[] | null"},"orderKind":{"oneOf":[{"description":"Canonical, route-aware order kind (`cctp-v0` / `composite-v0` / `fx-v0` /\n`escrow-v0` / …). Mirrors `OrderResponse.orderKind`.","type":"string","uniqueKey":"oneOf.1.orderKind.oneOf.0","typeLabel":"string"},{"description":"Canonical, route-aware order kind (`cctp-v0` / `composite-v0` / `fx-v0` /\n`escrow-v0` / …). Mirrors `OrderResponse.orderKind`.","type":"null","uniqueKey":"oneOf.1.orderKind.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.orderKind","typeLabel":"string | null"},"substatus":{"oneOf":[{"description":"Finer-grained state within the coarse status (route `routeStatus`, etc.).","type":"string","uniqueKey":"oneOf.1.substatus.oneOf.0","typeLabel":"string"},{"description":"Finer-grained state within the coarse status (route `routeStatus`, etc.).","type":"null","uniqueKey":"oneOf.1.substatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.substatus","typeLabel":"string | null"},"substatusMessage":{"oneOf":[{"description":"Human-readable elaboration of `substatus` — a Circle StableFX status line, or\nthe reason a parked/refunded/recovered order is in that state. Mirrors\n`OrderResponse.substatusMessage`.","type":"string","uniqueKey":"oneOf.1.substatusMessage.oneOf.0","typeLabel":"string"},{"description":"Human-readable elaboration of `substatus` — a Circle StableFX status line, or\nthe reason a parked/refunded/recovered order is in that state. Mirrors\n`OrderResponse.substatusMessage`.","type":"null","uniqueKey":"oneOf.1.substatusMessage.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.substatusMessage","typeLabel":"string | null"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","description":"One trade, read through the same projection as the list.","required":["tradeId","kind","projection","connectionId","operationId","executionTypeId","venueName","venueAccountName","providerSite","createdAt","submittedByYou","sell","buy","executionStatus","lifecycleStatus"],"x-undiscriminated-union-reason":"Optional flattened object: validates either the full block or absence of every block field; no separate wire value to tag.","properties":{"buy":{"description":"What the trade buys: its asset and, when recorded, the least it must receive from its consented bounds.","properties":{"asset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.buy.asset","typeLabel":"string"},"amount":{"oneOf":[{"description":"The consented bound in exact decimal units of `asset`: on `sell` the most the trade may\nspend, on `buy` the least it must receive. Absent when not recorded, never `0`.","type":"string","uniqueKey":"oneOf.2.buy.amount.oneOf.0","typeLabel":"string"},{"description":"The consented bound in exact decimal units of `asset`: on `sell` the most the trade may\nspend, on `buy` the least it must receive. Absent when not recorded, never `0`.","type":"null","uniqueKey":"oneOf.2.buy.amount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.buy.amount","typeLabel":"string | null"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.2.buy","typeLabel":"object"},"connectionId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.connectionId","typeLabel":"string"},"createdAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.2.createdAt","typeLabel":"string\u003cdate-time>"},"executionStatus":{"description":"A venue trade's execution status, in camelCase like the order `status` (`outcomeUnknown`).\n\nNew values may be added; treat unknown values as other.","enum":["notSubmitted","dispatching","outcomeUnknown","filled","unfilled","needsReview"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.executionStatus","typeLabel":"enum\u003cstring>"},"executionTypeId":{"description":"The execution type (compiled spec id), not the catalogue Venue.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.executionTypeId","typeLabel":"string"},"lifecycleStatus":{"properties":{"bucket":{"description":"Which history bucket this lifecycle belongs to: decided by the same arm that\nchose `primary`, so a filter on it can never disagree with the label.","enum":["inProgress","completed","failed","refunded","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.bucket","typeLabel":"enum\u003cstring>"},"flowKind":{"description":"New values may be added; treat unknown values as other.","enum":["instant","deferredAutoWithdraw","deferredManual","venueAccount"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.flowKind","typeLabel":"enum\u003cstring>"},"isTerminal":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.isTerminal","typeLabel":"boolean"},"primary":{"description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.primary.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.primary.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.primary.tone","typeLabel":"string"}},"required":["key","label","tone"],"type":"object","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.primary","typeLabel":"object"},"rank":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.rank","typeLabel":"integer\u003cint32>"},"rawStatus":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","post_filled","settling","settled","finalized","awaiting_lp_settlement","pre_claimed","failed","refunded","filled","unfilled","checking_balance","pending_deposit","deposit_confirmed","quote_requested","quote_received","accounting_pending","accounting_submitted","withdrawal_requested","pending_withdrawal","no_fill_confirmed","not_submitted","dispatching","outcome_unknown","needs_review","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.rawStatus","typeLabel":"enum\u003cstring>"},"execution":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.lifecycleStatus.execution.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.execution.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.execution.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.execution.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.2.lifecycleStatus.execution.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.lifecycleStatus.execution","typeLabel":"null | object"},"rawDeferredStatus":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.lifecycleStatus.rawDeferredStatus.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.lifecycleStatus.rawDeferredStatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.lifecycleStatus.rawDeferredStatus","typeLabel":"string | null"},"settlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.lifecycleStatus.settlement.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.settlement.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.settlement.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.settlement.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.2.lifecycleStatus.settlement.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.lifecycleStatus.settlement","typeLabel":"null | object"},"withdrawal":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.lifecycleStatus.withdrawal.oneOf.0","typeLabel":"null"},{"type":"object","description":"A compact backend-owned display status for personal trade/order surfaces.\n\n`orders.settlement_status` remains a coarse analytics bucket; UI should use\nthis shape for user-facing execution/settlement state.","required":["key","label","tone"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"key":{"description":"New values may be added; treat unknown values as other.","enum":["created","pending","executing","executed","settling","settled","finalized","failed","refunded","checkingBalance","pendingDeposit","depositConfirmed","quoteRequested","quoteReceived","accountingPending","accountingSubmitted","awaitingLpSettlement","withdrawalRequested","pendingWithdrawal","withdrawalFailed","settlementWindow","settlementReady","settlementPending","claimPending","onHold","notSent","notSubmitted","inProgress","completed","noFill","outcomeUnknown","needsReview","returned","settlementReview","awaitingFunds","endedUnsettled","noFillConfirmed","unknown"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.withdrawal.oneOf.1.key","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.withdrawal.oneOf.1.label","typeLabel":"string"},"tone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus.withdrawal.oneOf.1.tone","typeLabel":"string"}},"uniqueKey":"oneOf.2.lifecycleStatus.withdrawal.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.lifecycleStatus.withdrawal","typeLabel":"null | object"}},"required":["flowKind","primary","bucket","isTerminal","rank","rawStatus"],"type":"object","description":"The same lifecycle shape an order row carries; `needsReview` is not final.","isRequired":true,"uniqueKey":"oneOf.2.lifecycleStatus","typeLabel":"object"},"operationId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.operationId","typeLabel":"string"},"providerSite":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.providerSite","typeLabel":"string"},"sell":{"description":"What the trade sells: its asset and, when recorded, the most it may spend from its consented bounds.","properties":{"asset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.sell.asset","typeLabel":"string"},"amount":{"oneOf":[{"description":"The consented bound in exact decimal units of `asset`: on `sell` the most the trade may\nspend, on `buy` the least it must receive. Absent when not recorded, never `0`.","type":"string","uniqueKey":"oneOf.2.sell.amount.oneOf.0","typeLabel":"string"},{"description":"The consented bound in exact decimal units of `asset`: on `sell` the most the trade may\nspend, on `buy` the least it must receive. Absent when not recorded, never `0`.","type":"null","uniqueKey":"oneOf.2.sell.amount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.sell.amount","typeLabel":"string | null"}},"required":["asset"],"type":"object","isRequired":true,"uniqueKey":"oneOf.2.sell","typeLabel":"object"},"submittedByYou":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.2.submittedByYou","typeLabel":"boolean"},"venueAccountName":{"description":"The workspace's venue account it went through, titled by its catalogue Venue\n(\"Keyrock account\"), never by the execution type (\"Keyrock OTC\"); an on-chain venue is\nnever an account and reads as itself (\"Circle StableFX\").","type":"string","isRequired":true,"uniqueKey":"oneOf.2.venueAccountName","typeLabel":"string"},"venueName":{"description":"The venue's name, for display.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.venueName","typeLabel":"string"},"kind":{"description":"The kinds the one trade history lists.\n\nNew values may be added; treat unknown values as other.","enum":["order","venueTrade"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.kind","typeLabel":"enum\u003cstring>"},"projection":{"description":"Which view of trades answers the request: the caller's own, the workspace's,\na broker's umbrella, an LP's fills, or an LP's unsettled orders.\n\nNew values may be added; treat unknown values as other.","enum":["mine","workspace","umbrella","maker","settlement"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.projection","typeLabel":"enum\u003cstring>"},"tradeId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.tradeId","typeLabel":"string"},"amountUsd":{"oneOf":[{"description":"A reference USD value of what the trade sells, by the same price service that values an\norder row's `amountUsd`, at the price when read. `amountUsdBasis` says which amount it\nvalues. Absent when the asset has no reference price or the price read failed; never 0\nfor an unknown value.","type":"string","uniqueKey":"oneOf.2.amountUsd.oneOf.0","typeLabel":"string"},{"description":"A reference USD value of what the trade sells, by the same price service that values an\norder row's `amountUsd`, at the price when read. `amountUsdBasis` says which amount it\nvalues. Absent when the asset has no reference price or the price read failed; never 0\nfor an unknown value.","type":"null","uniqueKey":"oneOf.2.amountUsd.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.amountUsd","typeLabel":"string | null"},"amountUsdBasis":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.amountUsdBasis.oneOf.0","typeLabel":"null"},{"type":"string","description":"`executed` (what the venue debited, on a fill) or `requested` (the most the trade\ncould spend, otherwise). Present exactly when `amountUsd` is.","enum":["executed","requested"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.amountUsdBasis.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.amountUsdBasis","typeLabel":"null | enum\u003cstring>"},"apiKey":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.apiKey.oneOf.0","typeLabel":"null"},{"type":"object","required":["keyId"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"keyId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.apiKey.oneOf.1.keyId","typeLabel":"string"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.apiKey.oneOf.1.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.apiKey.oneOf.1.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.apiKey.oneOf.1.name","typeLabel":"string | null"}},"uniqueKey":"oneOf.2.apiKey.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.apiKey","typeLabel":"null | object"},"debitExpirySignature":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.debitExpirySignature.oneOf.0","typeLabel":"null"},{"type":"string","description":"For an expired debit proof, whether wallet records contain a typed signature:\n`recorded` or `unconfirmed`. Absent when the retained steps cannot establish either.","enum":["recorded","unconfirmed"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.debitExpirySignature.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.debitExpirySignature","typeLabel":"null | enum\u003cstring>"},"executionPrice":{"oneOf":[{"description":"Legacy confirmed output per input (buy asset / sell asset), computed with Decimal;\nnull when unread. executionPriceUnit states its unit; prefer statedExecutionPrice for display.","type":"string","uniqueKey":"oneOf.2.executionPrice.oneOf.0","typeLabel":"string"},{"description":"Legacy confirmed output per input (buy asset / sell asset), computed with Decimal;\nnull when unread. executionPriceUnit states its unit; prefer statedExecutionPrice for display.","type":"null","uniqueKey":"oneOf.2.executionPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.executionPrice","typeLabel":"string | null"},"executionPriceUnit":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.executionPriceUnit.oneOf.0","typeLabel":"null"},{"type":"object","description":"Unit of a price: `quoteAsset / baseAsset` means one base asset costs this many quote assets.","required":["baseAsset","quoteAsset"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"baseAsset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.executionPriceUnit.oneOf.1.baseAsset","typeLabel":"string"},"quoteAsset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.executionPriceUnit.oneOf.1.quoteAsset","typeLabel":"string"}},"uniqueKey":"oneOf.2.executionPriceUnit.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.executionPriceUnit","typeLabel":"null | object"},"feesPaid":{"oneOf":[{"description":"What a confirmed same-asset fill (a bridge) cost the taker: spent minus\nreceived, the venue's protocol and forwarding fees, in the sell asset. Absent unless confirmed and positive.","type":"string","uniqueKey":"oneOf.2.feesPaid.oneOf.0","typeLabel":"string"},{"description":"What a confirmed same-asset fill (a bridge) cost the taker: spent minus\nreceived, the venue's protocol and forwarding fees, in the sell asset. Absent unless confirmed and positive.","type":"null","uniqueKey":"oneOf.2.feesPaid.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.feesPaid","typeLabel":"string | null"},"financials":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.0","typeLabel":"null"},{"type":"object","description":"The trade's recorded money terms and payment legs, from the same records as the order read; history never re-derives a fee or minimum.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"fee":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.0","typeLabel":"null"},{"type":"object","description":"The venue's fee as recorded with the fill; absent before a fill.","required":["treatment"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"treatment":{"description":"How a fill's fee is known. `not_qualified` means the venue driver does not\nyet classify fee reporting: it is neither a zero fee nor \"not reported\".\n\nNew values may be added; treat unknown values as other.","enum":["included_in_price","reported","separate_charges","not_qualified"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.treatment","typeLabel":"enum\u003cstring>"},"amount":{"oneOf":[{"description":"Exact decimal, present when the venue reported a fee amount.","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.amount.oneOf.0","typeLabel":"string"},{"description":"Exact decimal, present when the venue reported a fee amount.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.amount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.amount","typeLabel":"string | null"},"asset":{"oneOf":[{"description":"Present exactly when `amount` is.","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.asset.oneOf.0","typeLabel":"string"},{"description":"Present exactly when `amount` is.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.asset.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.asset","typeLabel":"string | null"},"basis":{"oneOf":[{"description":"The venue contract clause, present only when the fee is in the price.","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.basis.oneOf.0","typeLabel":"string"},{"description":"The venue contract clause, present only when the fee is in the price.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.basis.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.basis","typeLabel":"string | null"},"lines":{"oneOf":[{"description":"Separate native charges, positive for a fee and negative for a rebate.\nOutcome amounts already include them in their respective assets.","items":{"properties":{"amount":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.lines.oneOf.0.items.[INDEX].amount","typeLabel":"string"},"asset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.lines.oneOf.0.items.[INDEX].asset","typeLabel":"string"}},"required":["amount","asset"],"type":"object","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.lines.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.lines.oneOf.0","typeLabel":"object[]"},{"description":"Separate native charges, positive for a fee and negative for a rebate.\nOutcome amounts already include them in their respective assets.","items":{"properties":{"amount":{"type":"string"},"asset":{"type":"string"}},"required":["amount","asset"],"type":"object"},"type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.lines.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.lines","typeLabel":"object[] | null"},"tradeFeeReport":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.tradeFeeReport.oneOf.0","typeLabel":"null"},{"type":"string","description":"Present only when the fee is in the price.","enum":["not_reported","reported"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.tradeFeeReport.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1.tradeFeeReport","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.2.financials.oneOf.1.fee.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.financials.oneOf.1.fee","typeLabel":"null | object"},"legs":{"description":"Its payment legs (bank payout, pay-in, wallet payout), as the order page reads them:\nrail, state, payout breakdown and a destination reference, never bank coordinates.","items":{"description":"The leg facts an order read carries on `OrderLegInfo.tradeLeg`.","properties":{"direction":{"description":"Whether the leg brings money to the LP account before the trade, or takes\nthe trade's output away from it.\n\nNew values may be added; treat unknown values as other.","enum":["pay_in","payout"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].direction","typeLabel":"enum\u003cstring>"},"legId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].legId","typeLabel":"string\u003cuuid>"},"settlementRail":{"description":"How the leg settles: a bank rail or a chain transfer.\n\nNew values may be added; treat unknown values as other.","enum":["bank","chain"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].settlementRail","typeLabel":"enum\u003cstring>"},"state":{"description":"The leg's state. The last five are terminal.\n\nNew values may be added; treat unknown values as other.","enum":["planned","awaiting_funds","funds_received","price_beyond_bound","expired_unfunded","late_funds","awaiting_approval","dispatching","uncertain","in_transit","held_by_provider","refunding","manual_review","settled","returned","refunded","cancelled","refused"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].state","typeLabel":"enum\u003cstring>"},"boundLapsesAt":{"oneOf":[{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].boundLapsesAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"Deposit first: the instant the consented bound stops\nauthorizing the trade, 3× the deposit's expected arrival in the rail's\nbusiness time. Absent on a leg without a deposit-first bound.","format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].boundLapsesAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].boundLapsesAt","typeLabel":"string\u003cdate-time> | null"},"confirmAgainReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].confirmAgainReason.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why a deposit-first pay-in in `price_beyond_bound` waits for a new consent.","enum":["priceBeyondBound","boundLapsed"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].confirmAgainReason.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].confirmAgainReason","typeLabel":"null | enum\u003cstring>"},"consentedPayoutFee":{"oneOf":[{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].consentedPayoutFee.oneOf.0","typeLabel":"string"},{"description":"The exact fee bound recorded by Confirm, derived from immutable consent.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].consentedPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].consentedPayoutFee","typeLabel":"string | null"},"creditedAmount":{"oneOf":[{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].creditedAmount.oneOf.0","typeLabel":"string"},{"description":"The venue-credited amount that funded this pay-in, exact decimal.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].creditedAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].creditedAmount","typeLabel":"string | null"},"currentPayoutFee":{"oneOf":[{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].currentPayoutFee.oneOf.0","typeLabel":"string"},{"description":"The qualified estimate observed when dispatch stopped for a fee rise.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].currentPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].currentPayoutFee","typeLabel":"string | null"},"declaredPayoutFee":{"oneOf":[{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].declaredPayoutFee.oneOf.0","typeLabel":"string"},{"description":"Current qualified withdrawal estimate, returned by prepare in the receipt\nasset. An absent estimate never means a zero fee.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].declaredPayoutFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].declaredPayoutFee","typeLabel":"string | null"},"destination":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.0","typeLabel":"null"},{"type":"object","description":"Where a payout leg delivers, by reference only: never bank or chain\ncoordinates.","required":["kind","ref"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"What a payout leg delivers to, in the binding's endpoint vocabulary.\n\nNew values may be added; treat unknown values as other.","enum":["wallet","bankDestination"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"ref":{"description":"The wallet id or the Treasury Destination id.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1.ref","typeLabel":"string"},"approvalId":{"oneOf":[{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1.approvalId.oneOf.0","typeLabel":"string\u003cuuid>"},{"description":"The venue destination approval a wallet delivery goes through.","format":"uuid","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1.approvalId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1.approvalId","typeLabel":"string\u003cuuid> | null"}},"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].destination.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].destination","typeLabel":"null | object"},"expectedArrivalAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].expectedArrivalAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].expectedArrivalAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].expectedArrivalAt","typeLabel":"string\u003cdate-time> | null"},"expectedArrivalSource":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].expectedArrivalSource.oneOf.0","typeLabel":"null"},{"type":"string","description":"`provider` or `default`.","enum":["provider","default"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].expectedArrivalSource.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].expectedArrivalSource","typeLabel":"null | enum\u003cstring>"},"finality":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].finality.oneOf.0","typeLabel":"null"},{"type":"string","description":"Whether a settled payout can still be returned. Absent for an unsettled leg or a settled leg without a provider return watch.","enum":["final","returnable","returnedAfterSettlement"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].finality.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].finality","typeLabel":"null | enum\u003cstring>"},"fundingDeadlineAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].fundingDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].fundingDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].fundingDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"fundingModel":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].fundingModel.oneOf.0","typeLabel":"null"},{"type":"string","description":"A bank leg's funding model, fixed when it was planned. Absent on a\nchain leg.","enum":["prefunded","payIn","credit"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].fundingModel.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].fundingModel","typeLabel":"null | enum\u003cstring>"},"fundsReceivedAt":{"oneOf":[{"description":"The venue's own credit time of that amount.","format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].fundsReceivedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The venue's own credit time of that amount.","format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].fundsReceivedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].fundsReceivedAt","typeLabel":"string\u003cdate-time> | null"},"holidaysApplied":{"oneOf":[{"type":"boolean","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].holidaysApplied.oneOf.0","typeLabel":"boolean"},{"type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].holidaysApplied.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].holidaysApplied","typeLabel":"boolean | null"},"outcomeCode":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].outcomeCode.oneOf.0","typeLabel":"null"},{"type":"string","description":"The named reason on a refused, cancelled or returned leg.","enum":["trade_unfilled","authority_revoked","confirm_again_declined","deposit_first_withdrawn","unfunded_watch_ended","adjudicated_returned","provider_returned","venue_reported_returned","provider_quote_missing","provider_quote_expired","payout_backend_changed","expected_arrival_unknown","balance_insufficient","destination_not_listed","destination_approval_revoked","destination_holder_name_unavailable","withdrawal_refused_unsent","provider_refused_unsent:adjudicated","provider_refused_unsent:adapter_hand_off_deadline_passed","provider_refused_unsent:adapter_hand_off_deadline_unsupported","adapter_refused_before_send:unsupported_rail","adapter_refused_before_send:unsupported_jurisdiction","adapter_refused_before_send:amount_out_of_bounds","adapter_refused_before_send:unsupported_leg","adapter_refused_before_send:quote_expired","adapter_refused_before_send:quote_not_reservable","adapter_refused_before_send:missing_required_data","adapter_refused_before_send:provider_rejected","adapter_refused_before_send:timeout","adapter_refused_before_send:rate_limited","adapter_refused_before_send:authentication_failed","adapter_refused_before_send:invalid_request","adapter_refused_before_send:internal","adapter_refused_before_send:not_sent"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].outcomeCode.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].outcomeCode","typeLabel":"null | enum\u003cstring>"},"overdueAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].overdueAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].overdueAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].overdueAt","typeLabel":"string\u003cdate-time> | null"},"overdueSince":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].overdueSince.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].overdueSince.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].overdueSince","typeLabel":"string\u003cdate-time> | null"},"ownBankVerification":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.0","typeLabel":"null"},{"type":"object","description":"Independent bank evidence, never the venue-reported settlement state.","required":["state","source"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"source":{"description":"New values may be added; treat unknown values as other.","enum":["revolutBusiness"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.source","typeLabel":"enum\u003cstring>"},"state":{"description":"New values may be added; treat unknown values as other.","enum":["verified","notSeen","unavailable","disagreement"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.state","typeLabel":"enum\u003cstring>"},"credit":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.0","typeLabel":"null"},{"type":"object","required":["amount","currency","creditedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"Exact decimal text, never a floating-point approximation.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.amount","typeLabel":"string"},"creditedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.creditedAt","typeLabel":"string\u003cdate-time>"},"currency":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.currency","typeLabel":"string"},"referenceMasked":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1.referenceMasked","typeLabel":"string | null"}},"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.credit","typeLabel":"null | object"},"lastGoodReadAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.lastGoodReadAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.lastGoodReadAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.lastGoodReadAt","typeLabel":"string\u003cdate-time> | null"},"matchedBy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.matchedBy.oneOf.0","typeLabel":"null"},{"type":"string","description":"New values may be added; treat unknown values as other.","enum":["referenceAndAmount","amountAndWindow"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.matchedBy.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.matchedBy","typeLabel":"null | enum\u003cstring>"},"reason":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reason","typeLabel":"string | null"},"reviewItemId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reviewItemId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reviewItemId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1.reviewItemId","typeLabel":"string | null"}},"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].ownBankVerification","typeLabel":"null | object"},"payoutApproval":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.0","typeLabel":"null"},{"type":"object","description":"Treasury's existing Run approval for a bank payout. No funds are reserved\nwhile this approval is pending; release rechecks balances and terms.","required":["approvalsRequired","approverNames"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"approvalsRequired":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approvalsRequired","typeLabel":"integer\u003cint32>"},"approverNames":{"items":{"type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverNames.items.[INDEX]","typeLabel":"string"},"type":"array","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverNames","typeLabel":"string[]"},"approvalRequestId":{"oneOf":[{"format":"uuid","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approvalRequestId.oneOf.0","typeLabel":"string\u003cuuid>"},{"format":"uuid","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approvalRequestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approvalRequestId","typeLabel":"string\u003cuuid> | null"},"approverGroup":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroup.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroup.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroup","typeLabel":"string | null"},"approverGroupName":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroupName.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroupName.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.approverGroupName","typeLabel":"string | null"},"runId":{"oneOf":[{"format":"uuid","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.runId.oneOf.0","typeLabel":"string\u003cuuid>"},{"format":"uuid","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.runId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1.runId","typeLabel":"string\u003cuuid> | null"}},"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutApproval","typeLabel":"null | object"},"payoutBreakdown":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.0","typeLabel":"null"},{"type":"object","description":"A payout's amounts in its asset (operator 2026-10-22: every fee-bearing\naction shows what leaves the account, the fee and what arrives). Absent\non a pay-in and on a payout with no consent yet.","required":["withdrawn","fee","receivedMin","receivedMax","basis"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"basis":{"description":"The withdrawal record these amounts come from.","enum":["consent","reviewed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.basis","typeLabel":"enum\u003cstring>"},"fee":{"description":"The most fee: a bank payout's declared payout fee (frozen by the\nwithdrawal review once there is one), else Confirm's fee bound.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.fee","typeLabel":"string"},"receivedMax":{"description":"The most that arrives.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.receivedMax","typeLabel":"string"},"receivedMin":{"description":"The least that arrives.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.receivedMin","typeLabel":"string"},"withdrawn":{"description":"The most leaving the venue account: the confirmed trade's output.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.withdrawn","typeLabel":"string"},"charging":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.charging.oneOf.0","typeLabel":"null"},{"type":"string","description":"How the venue charges a bank payout's fee, as its rail declares it\n(`deducted`, `on_top`, `unverified`). Absent on a wallet payout, whose fee\nis Confirm's bound rather than a declared rail fee.","enum":["deducted","on_top","unverified"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.charging.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1.charging","typeLabel":"null | enum\u003cstring>"}},"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdown","typeLabel":"null | object"},"payoutBreakdownUnavailableReason":{"oneOf":[{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdownUnavailableReason.oneOf.0","typeLabel":"string"},{"description":"A payout whose fee/charging declaration could not be read. Never means no fee.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdownUnavailableReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutBreakdownUnavailableReason","typeLabel":"string | null"},"payoutHeldReason":{"oneOf":[{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutHeldReason.oneOf.0","typeLabel":"string"},{"description":"The funding-stage refusal code holding this planned payout: FUNDING_STAGE_DISABLED, EXECUTION_STOPPED, PILOT_PAYOUT_CAP_EXCEEDED, PILOT_DAILY_CAP_EXCEEDED or EXECUTION_NOTIONAL_UNVALUED. The leg stays planned and is retried; absent when not held.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutHeldReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].payoutHeldReason","typeLabel":"string | null"},"quotedExpectedArrivalAt":{"oneOf":[{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].quotedExpectedArrivalAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The confirmed quote's estimate for this exact bank rail and option.","format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].quotedExpectedArrivalAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].quotedExpectedArrivalAt","typeLabel":"string\u003cdate-time> | null"},"rail":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].rail.oneOf.0","typeLabel":"null"},{"type":"string","description":"A bank leg's rail (`eft`, `sepa`, ...), fixed when it was planned. Absent\non a chain leg.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].rail.oneOf.1","typeLabel":"string"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].rail","typeLabel":"null | string"},"railOption":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].railOption.oneOf.0","typeLabel":"null"},{"type":"string","description":"The rail option the bank leg uses (`standard` or `fast`).","enum":["standard","fast"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].railOption.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].railOption","typeLabel":"null | enum\u003cstring>"},"railReference":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.0","typeLabel":"null"},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"state":{"description":"New values may be added; treat unknown values as other.","enum":["notReportedYet"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.1.state","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.1","typeLabel":"object"},{"type":"object","description":"A genuine bank rail reference or named not-reported state; absent on non-bank-payout legs.","required":["kind","value","state"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["swiftUetr","sepaEndToEndId","fasterPaymentsReference","bankRailReference"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"state":{"description":"New values may be added; treat unknown values as other.","enum":["reported"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.2.state","typeLabel":"enum\u003cstring>"},"value":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].railReference.oneOf.2","typeLabel":"object"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].railReference","typeLabel":"null · object · object"},"recipientConfirmation":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.0","typeLabel":"null"},{"type":"object","description":"The receiving workspace's assertion, never settlement or independent verification.","required":["confirmationId","legId","confirmedBy","confirmedByName","confirmedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"confirmationId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1.confirmationId","typeLabel":"string\u003cuuid>"},"confirmedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1.confirmedAt","typeLabel":"string\u003cdate-time>"},"confirmedBy":{"description":"`user:\u003cid>` or `key:\u003cid>`; immutable authenticated identity.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1.confirmedBy","typeLabel":"string"},"confirmedByName":{"description":"A safe name captured at confirmation, never an email address.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1.confirmedByName","typeLabel":"string"},"legId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1.legId","typeLabel":"string\u003cuuid>"}},"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].recipientConfirmation","typeLabel":"null | object"},"returnWindowEndsAt":{"oneOf":[{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].returnWindowEndsAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"For a returnable leg whose rail documents a return window, midnight after its last day in the rail's clearing time zone. Absent when no window is documented; never estimated.","format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].returnWindowEndsAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].returnWindowEndsAt","typeLabel":"string\u003cdate-time> | null"},"returnedAfterSettlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].returnedAfterSettlement.oneOf.0","typeLabel":"null"},{"type":"object","description":"A settled payout the provider later returned. The leg\nstays `settled` (its row is immutable); the PayoutReturned review item\nis the one fact, and resolving that review keeps this annotation.","required":["reviewItemId","detectedAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"detectedAt":{"description":"When TetraFi's own status read first saw the return.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].returnedAfterSettlement.oneOf.1.detectedAt","typeLabel":"string\u003cdate-time>"},"reviewItemId":{"description":"The PayoutReturned review item support works the return from.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].returnedAfterSettlement.oneOf.1.reviewItemId","typeLabel":"string"}},"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].returnedAfterSettlement.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].returnedAfterSettlement","typeLabel":"null | object"},"returnedTo":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].returnedTo.oneOf.0","typeLabel":"null"},{"type":"string","description":"Where a returned leg's funds remain, according to its dispatch backend.\n\nNew values may be added; treat unknown values as other.","enum":["lpAccount","providerBalance"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].returnedTo.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].returnedTo","typeLabel":"null | enum\u003cstring>"},"reviewAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewAt","typeLabel":"string\u003cdate-time> | null"},"reviewEnteredAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewEnteredAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewEnteredAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewEnteredAt","typeLabel":"string\u003cdate-time> | null"},"reviewItemId":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewItemId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewItemId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewItemId","typeLabel":"string | null"},"reviewReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewReason.oneOf.0","typeLabel":"null"},{"type":"string","description":"The reason a leg requires review.\n\nNew values may be added; treat unknown values as other.","enum":["uncertain_send","ambiguous_event","expected_arrival_exceeded","provider_failed_after_send","trade_fill_requires_review","late_funds_held","late_funds_worse_rate","amount_mismatch"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewReason.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].reviewReason","typeLabel":"null | enum\u003cstring>"},"submittedAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].submittedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].submittedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].submittedAt","typeLabel":"string\u003cdate-time> | null"},"transactionHash":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].transactionHash.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].transactionHash.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].transactionHash","typeLabel":"string | null"},"venueReportedCredited":{"oneOf":[{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"boolean","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].venueReportedCredited.oneOf.0","typeLabel":"boolean"},{"description":"Only an explicit receiving-bank credit report from the venue; withdrawal completion is not credit.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].venueReportedCredited.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].venueReportedCredited","typeLabel":"boolean | null"},"venueWithdrawalId":{"oneOf":[{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].venueWithdrawalId.oneOf.0","typeLabel":"string"},{"description":"A wallet payout's withdrawal as the venue recorded it, once sent: the\nvenue's own withdrawal id and the chain transaction. Absent before the send and\non a bank leg.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].venueWithdrawalId.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX].venueWithdrawalId","typeLabel":"string | null"}},"required":["legId","direction","settlementRail","state"],"type":"object","uniqueKey":"oneOf.2.financials.oneOf.1.legs.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.2.financials.oneOf.1.legs","typeLabel":"object[]"},"quotedOutput":{"oneOf":[{"description":"The confirmed quote's output, beside what was received.","type":"string","uniqueKey":"oneOf.2.financials.oneOf.1.quotedOutput.oneOf.0","typeLabel":"string"},{"description":"The confirmed quote's output, beside what was received.","type":"null","uniqueKey":"oneOf.2.financials.oneOf.1.quotedOutput.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.financials.oneOf.1.quotedOutput","typeLabel":"string | null"}},"uniqueKey":"oneOf.2.financials.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.financials","typeLabel":"null | object"},"inputSpent":{"oneOf":[{"description":"What the venue debited and credited, once its outcome is recorded.","type":"string","uniqueKey":"oneOf.2.inputSpent.oneOf.0","typeLabel":"string"},{"description":"What the venue debited and credited, once its outcome is recorded.","type":"null","uniqueKey":"oneOf.2.inputSpent.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.inputSpent","typeLabel":"string | null"},"notSentCause":{"oneOf":[{"description":"The stable code behind `notSentReason`, the same value the venue-trade detail's\n`notSentCause` carries (for example `WALLET_NONCE_PENDING`). A code this version does not\nknow is still named. Absent when no cause was retained.","type":"string","uniqueKey":"oneOf.2.notSentCause.oneOf.0","typeLabel":"string"},{"description":"The stable code behind `notSentReason`, the same value the venue-trade detail's\n`notSentCause` carries (for example `WALLET_NONCE_PENDING`). A code this version does not\nknow is still named. Absent when no cause was retained.","type":"null","uniqueKey":"oneOf.2.notSentCause.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.notSentCause","typeLabel":"string | null"},"notSentReason":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.notSentReason.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why a `not_sent` outcome was not sent, as the dispatch's `notSentReason`.","enum":["QUOTE_RECONFIRMATION_REQUIRED","VENUE_ACCEPT_ADMISSION_REFUSED","VENUE_SESSION_ACQUIRE_TIMEOUT","VENUE_GRID_CHANGED","VENUE_GRID_UNREADABLE","VENUE_REFUSED_BEFORE_ACCEPTANCE","LP_TRADING_REFUSED_UNSENT","COMPLIANCE_AUDIT_UNRECORDED","ON_CHAIN_UNSENT","BOOK_SELL_LIMIT_UNREPRESENTABLE","VENUE_DISPATCH_AUTHORITY_UNAVAILABLE","BOOK_PLACEMENT_PRICE_UNRECORDED_UNSENT","VENUE_ORDER_ABSENT_PAST_HORIZON","VENUE_REQUEST_REFUSED_UNSENT","NOT_SENT_UNCLASSIFIED"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.notSentReason.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.notSentReason","typeLabel":"null | enum\u003cstring>"},"outcomeCode":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.outcomeCode.oneOf.0","typeLabel":"null"},{"type":"string","description":"Why the trade ended as it did, as its dispatch records it (the order page's\n`dispatch.outcomeCode`): the history row names a no-fill's reason from it.\nAbsent until an outcome is recorded.","enum":["confirmed_fill","fill_requires_review","rfq_closed_no_order","confirmed_no_fill","adjudicated_not_placed","bridge_not_sent_funds_at_source","bridge_refunded_to_source","debit_authority_expired","awaiting_provider_execution","not_sent","provider_outcome_unknown"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.outcomeCode.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.outcomeCode","typeLabel":"null | enum\u003cstring>"},"outputReceived":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.outputReceived.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.outputReceived.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.outputReceived","typeLabel":"string | null"},"pair":{"oneOf":[{"description":"The recorded market pair; absent stays absent, never inferred from asset order.","type":"string","uniqueKey":"oneOf.2.pair.oneOf.0","typeLabel":"string"},{"description":"The recorded market pair; absent stays absent, never inferred from asset order.","type":"null","uniqueKey":"oneOf.2.pair.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.pair","typeLabel":"string | null"},"placedBy":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.placedBy.oneOf.0","typeLabel":"null"},{"type":"object","description":"Who placed the trade: the API key by label, else the member where this reader may see their name. Absent otherwise.","required":["userId","name","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["member"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.placedBy.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"name":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.placedBy.oneOf.1.name","typeLabel":"string"},"userId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.placedBy.oneOf.1.userId","typeLabel":"string"}},"uniqueKey":"oneOf.2.placedBy.oneOf.1","typeLabel":"object"},{"type":"object","description":"Who placed the trade: the API key by label, else the member where this reader may see their name. Absent otherwise.","required":["keyId","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"keyId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.placedBy.oneOf.2.keyId","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["apiKey"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.placedBy.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"name":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.placedBy.oneOf.2.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.placedBy.oneOf.2.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.placedBy.oneOf.2.name","typeLabel":"string | null"}},"uniqueKey":"oneOf.2.placedBy.oneOf.2","typeLabel":"object"}],"uniqueKey":"oneOf.2.placedBy","typeLabel":"null · object · object"},"settlement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlement.oneOf.0","typeLabel":"null"},{"type":"object","description":"How and when the trade settles, as recorded before it was sent: the same block the order\nread returns as `settlement` (method, timing and, for a delayed trade, its window with\n`settlesBy` and `paymentDeadlineAt`). Absent on a trade recorded without it.","required":["timing","method"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"method":{"description":"New values may be added; treat unknown values as other.","enum":["venueLedger"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.method","typeLabel":"enum\u003cstring>"},"timing":{"description":"New values may be added; treat unknown values as other.","enum":["immediate","byDeadline","delayed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.timing","typeLabel":"enum\u003cstring>"},"window":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.0","typeLabel":"null"},{"type":"object","description":"The account schedule's window a delayed trade settles in, fixed when the quote was\nmade and recorded unchanged on the executed trade. A `clock` window carries `settlesBy`,\nthe occurrence's confirmed completion; an `onAgreement` window (an LP-issued statement with\nno completion term) carries none. A window whose completion is pending on any other\nschedule is never emitted.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"oneOf.2.settlement.oneOf.1.window.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.settlement.oneOf.1.window","typeLabel":"null | object"}},"uniqueKey":"oneOf.2.settlement.oneOf.1","typeLabel":"object"},{"type":"object","description":"How and when the trade settles, as recorded before it was sent: the same block the order\nread returns as `settlement` (method, timing and, for a delayed trade, its window with\n`settlesBy` and `paymentDeadlineAt`). Absent on a trade recorded without it.","required":["timing","method"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"method":{"description":"New values may be added; treat unknown values as other.","enum":["dvp"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.method","typeLabel":"enum\u003cstring>"},"timing":{"description":"New values may be added; treat unknown values as other.","enum":["immediate","byDeadline","delayed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.timing","typeLabel":"enum\u003cstring>"},"window":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.0","typeLabel":"null"},{"type":"object","description":"The account schedule's window a delayed trade settles in, fixed when the quote was\nmade and recorded unchanged on the executed trade. A `clock` window carries `settlesBy`,\nthe occurrence's confirmed completion; an `onAgreement` window (an LP-issued statement with\nno completion term) carries none. A window whose completion is pending on any other\nschedule is never emitted.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"oneOf.2.settlement.oneOf.2.window.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.settlement.oneOf.2.window","typeLabel":"null | object"}},"uniqueKey":"oneOf.2.settlement.oneOf.2","typeLabel":"object"},{"type":"object","description":"How and when the trade settles, as recorded before it was sent: the same block the order\nread returns as `settlement` (method, timing and, for a delayed trade, its window with\n`settlesBy` and `paymentDeadlineAt`). Absent on a trade recorded without it.","required":["timing","firstLeg","method"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"firstLeg":{"description":"New values may be added; treat unknown values as other.","enum":["taker","maker"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.firstLeg","typeLabel":"enum\u003cstring>"},"method":{"description":"New values may be added; treat unknown values as other.","enum":["fop"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.method","typeLabel":"enum\u003cstring>"},"timing":{"description":"New values may be added; treat unknown values as other.","enum":["immediate","byDeadline","delayed"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.timing","typeLabel":"enum\u003cstring>"},"window":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.0","typeLabel":"null"},{"type":"object","description":"The account schedule's window a delayed trade settles in, fixed when the quote was\nmade and recorded unchanged on the executed trade. A `clock` window carries `settlesBy`,\nthe occurrence's confirmed completion; an `onAgreement` window (an LP-issued statement with\nno completion term) carries none. A window whose completion is pending on any other\nschedule is never emitted.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"oneOf.2.settlement.oneOf.3.window.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.settlement.oneOf.3.window","typeLabel":"null | object"}},"uniqueKey":"oneOf.2.settlement.oneOf.3","typeLabel":"object"}],"uniqueKey":"oneOf.2.settlement","typeLabel":"null · object · object · object"},"settlementCarriedInto":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlementCarriedInto.oneOf.0","typeLabel":"null"},{"type":"object","description":"The later window the trade's amounts were netted into, as the order read's\n`settlementCarriedInto`. Absent when nothing was netted.","required":["windowId"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"oneOf.2.settlementCarriedInto.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"oneOf.2.settlementCarriedInto.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"oneOf.2.settlementCarriedInto.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.settlementCarriedInto.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"}},"uniqueKey":"oneOf.2.settlementCarriedInto.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.settlementCarriedInto","typeLabel":"null | object"},"settlementState":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlementState.oneOf.0","typeLabel":"null"},{"type":"string","description":"Where the filled trade's settlement stands; the same value as the order read's\n`settlementState`. Absent before the fill and without recorded terms.","enum":["settled","awaitingWindow","awaitingPayment","partiallySettled","overdue","disputed","failed","inTransit"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlementState.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.settlementState","typeLabel":"null | enum\u003cstring>"},"settlementStatement":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlementStatement.oneOf.0","typeLabel":"null"},{"type":"string","description":"Whether the statement of the window the trade settles in is out, as the order read's\n`settlementStatement`. Absent with `settlementState` and without a window.","enum":["pending","issued","failed"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.settlementStatement.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.settlementStatement","typeLabel":"null | enum\u003cstring>"},"statedExecutionPrice":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.statedExecutionPrice.oneOf.0","typeLabel":"null"},{"type":"object","description":"QuoteCurrencyPriority market convention, with explicit base/quote and fallback basis.","required":["value","basis","baseAsset","quoteAsset"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"baseAsset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.statedExecutionPrice.oneOf.1.baseAsset","typeLabel":"string"},"quoteAsset":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.statedExecutionPrice.oneOf.1.quoteAsset","typeLabel":"string"},"basis":{"description":"New values may be added; treat unknown values as other.","enum":["market_convention","receipt_per_debit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.2.statedExecutionPrice.oneOf.1.basis","typeLabel":"enum\u003cstring>"},"value":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.statedExecutionPrice.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"oneOf.2.statedExecutionPrice.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.statedExecutionPrice","typeLabel":"null | object"},"tetrafiFee":{"oneOf":[{"description":"Gross TetraFi fee (list rate, before incentives) from the Basic billing ledger, in tetrafiFeeAsset; absent until accrued.","type":"string","uniqueKey":"oneOf.2.tetrafiFee.oneOf.0","typeLabel":"string"},{"description":"Gross TetraFi fee (list rate, before incentives) from the Basic billing ledger, in tetrafiFeeAsset; absent until accrued.","type":"null","uniqueKey":"oneOf.2.tetrafiFee.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.tetrafiFee","typeLabel":"string | null"},"tetrafiFeeAsset":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.tetrafiFeeAsset.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.tetrafiFeeAsset.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.tetrafiFeeAsset","typeLabel":"string | null"},"transferMode":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.transferMode.oneOf.0","typeLabel":"null"},{"type":"string","description":"CCTP's selected finality tier, as the order read's `operation.onChain.transferMode`: the\nbound selection, never re-derived. A CCTP trade without it is Standard (historical and\nomitted selections); absent on every other venue.","enum":["fast","standard"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"oneOf.2.transferMode.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.transferMode","typeLabel":"null | enum\u003cstring>"},"uncertainCode":{"oneOf":[{"description":"The dispatch's first unknown-outcome failure: a closed code, never a provider body.\nA later terminal outcome takes precedence over this retained diagnostic.","type":"string","uniqueKey":"oneOf.2.uncertainCode.oneOf.0","typeLabel":"string"},{"description":"The dispatch's first unknown-outcome failure: a closed code, never a provider body.\nA later terminal outcome takes precedence over this retained diagnostic.","type":"null","uniqueKey":"oneOf.2.uncertainCode.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.uncertainCode","typeLabel":"string | null"}},"uniqueKey":"oneOf.2","typeLabel":"object"},{"type":"object","description":"One trade, read through the same projection as the list.","required":["tradeId","kind","projection"],"x-undiscriminated-union-reason":"Optional flattened object: validates either the full block or absence of every block field; no separate wire value to tag.","properties":{"kind":{"description":"The kinds the one trade history lists.\n\nNew values may be added; treat unknown values as other.","enum":["order","venueTrade"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.3.kind","typeLabel":"enum\u003cstring>"},"projection":{"description":"Which view of trades answers the request: the caller's own, the workspace's,\na broker's umbrella, an LP's fills, or an LP's unsettled orders.\n\nNew values may be added; treat unknown values as other.","enum":["mine","workspace","umbrella","maker","settlement"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"oneOf.3.projection","typeLabel":"enum\u003cstring>"},"tradeId":{"type":"string","isRequired":true,"uniqueKey":"oneOf.3.tradeId","typeLabel":"string"}},"uniqueKey":"oneOf.3","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"lp":{"lpName":"\u003cstring>","lpSource":"\u003cstring>","routingPathLabel":"\u003cstring>","solverId":"\u003cstring>","bilateralStatus":"\u003cstring>","settlementSlaStatus":"\u003cstring>","settlementSpeedMs":1},"settlement":{"status":"pending","method":"venueLedger","timing":"immediate","cexLane":{"deposits":[{"accountAssetKey":"\u003cstring>","amount":"\u003cstring>","applicationTransaction":{"actor":"user","chainId":1,"chainRole":"origin","hash":"\u003cstring>","stage":"prepare","status":"pending","explorerUrl":"\u003cstring>","label":"\u003cstring>","legIndex":1,"timestamp":"2023-11-07T05:31:56Z"},"depositKey":"\u003cstring>","ledger":"\u003cstring>","confirmation":{"forwardTransaction":{"actor":"user","chainId":1,"chainRole":"origin","hash":"\u003cstring>","stage":"prepare","status":"pending","explorerUrl":"\u003cstring>","label":"\u003cstring>","legIndex":1,"timestamp":"2023-11-07T05:31:56Z"},"transaction":{"actor":"user","chainId":1,"chainRole":"origin","hash":"\u003cstring>","stage":"prepare","status":"pending","explorerUrl":"\u003cstring>","label":"\u003cstring>","legIndex":1,"timestamp":"2023-11-07T05:31:56Z"},"venueDepositId":"\u003cstring>","venueTxHash":"\u003cstring>"}}],"tradeFills":[{"actualInputAmount":"\u003cstring>","actualOutputAmount":"\u003cstring>","evidenceHash":"\u003cstring>","ledger":"\u003cstring>","tradeId":"\u003cstring>","transaction":{"actor":"user","chainId":1,"chainRole":"origin","hash":"\u003cstring>","stage":"prepare","status":"pending","explorerUrl":"\u003cstring>","label":"\u003cstring>","legIndex":1,"timestamp":"2023-11-07T05:31:56Z"},"venueFillId":"\u003cstring>"}]},"failureReason":"\u003cstring>","fillTx":{"chain":"\u003cstring>","explorerUrl":"\u003cstring>","hash":"\u003cstring>"},"finaliseTx":{"chain":"\u003cstring>","explorerUrl":"\u003cstring>","hash":"\u003cstring>"},"oracle":{"name":"\u003cstring>","messageId":"\u003cstring>","status":"dispatched"},"proofTx":{"chain":"\u003cstring>","explorerUrl":"\u003cstring>","hash":"\u003cstring>"},"recipientWallet":"\u003cstring>","settlementSpeedMs":1,"settlementStage":"\u003cstring>","submitTx":{"chain":"\u003cstring>","explorerUrl":"\u003cstring>","hash":"\u003cstring>"},"transactions":[{"actor":"user","chainId":1,"chainRole":"origin","hash":"\u003cstring>","stage":"prepare","status":"pending","explorerUrl":"\u003cstring>","label":"\u003cstring>","legIndex":1,"timestamp":"2023-11-07T05:31:56Z"}],"userDepositWallet":"\u003cstring>","window":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"}},"trade":{"createdAt":"2023-11-07T05:31:56Z","executionPrice":{"source":"storedQuotePrice","baseSymbol":"\u003cstring>","quoteSymbol":"\u003cstring>","value":"\u003cstring>"},"lifecycleStatus":{"bucket":"inProgress","flowKind":"instant","isTerminal":true,"primary":{"key":"created","label":"\u003cstring>","tone":"\u003cstring>"},"rank":1,"rawStatus":"created","execution":{"key":"created","label":"\u003cstring>","tone":"\u003cstring>"},"rawDeferredStatus":"\u003cstring>","settlement":{"key":"created","label":"\u003cstring>","tone":"\u003cstring>"},"withdrawal":{"key":"created","label":"\u003cstring>","tone":"\u003cstring>"}},"orderId":"\u003cstring>","route":{"buy":{"asset":{"assetId":"\u003cstring>","resolutionStatus":"resolved","symbol":"\u003cstring>","address":"\u003cstring>","chainId":1,"chainRef":"\u003cstring>","decimals":1,"name":"\u003cstring>"},"decimalAmount":"\u003cstring>","rawAmount":"\u003cstring>","unresolved":"assetNotInRegistry"},"sell":{"asset":{"assetId":"\u003cstring>","resolutionStatus":"resolved","symbol":"\u003cstring>","address":"\u003cstring>","chainId":1,"chainRef":"\u003cstring>","decimals":1,"name":"\u003cstring>"},"decimalAmount":"\u003cstring>","rawAmount":"\u003cstring>","unresolved":"assetNotInRegistry"}},"routingPathLabel":"\u003cstring>","status":"created","amountUsd":"\u003cstring>","apiKey":{"keyId":"\u003cstring>","name":"\u003cstring>"},"channel":"ui","deferredSettlement":{"autoWithdraw":true,"stage":"\u003cstring>","estimatedSettlementAvailableAt":"2023-11-07T05:31:56Z","executedAt":"2023-11-07T05:31:56Z","settlementWindowHours":1,"withdrawalStatus":"\u003cstring>","withdrawalTrackingId":"\u003cstring>","withdrawalTxHash":"\u003cstring>"},"deliveredBuy":{"asset":{"assetId":"\u003cstring>","resolutionStatus":"resolved","symbol":"\u003cstring>","address":"\u003cstring>","chainId":1,"chainRef":"\u003cstring>","decimals":1,"name":"\u003cstring>"},"decimalAmount":"\u003cstring>","rawAmount":"\u003cstring>","unresolved":"assetNotInRegistry"},"deliveredBuyProvenance":"measured","fillTimeMs":1,"routingPath":{"type":"direct"},"slippageBps":123,"slippageToleranceBps":1},"buy":{"asset":"\u003cstring>","amount":"\u003cstring>"},"connectionId":"\u003cstring>","createdAt":"2023-11-07T05:31:56Z","executionStatus":"notSubmitted","executionTypeId":"\u003cstring>","lifecycleStatus":{"bucket":"inProgress","flowKind":"instant","isTerminal":true,"primary":{"key":"created","label":"\u003cstring>","tone":"\u003cstring>"},"rank":1,"rawStatus":"created","execution":{"key":"created","label":"\u003cstring>","tone":"\u003cstring>"},"rawDeferredStatus":"\u003cstring>","settlement":{"key":"created","label":"\u003cstring>","tone":"\u003cstring>"},"withdrawal":{"key":"created","label":"\u003cstring>","tone":"\u003cstring>"}},"operationId":"\u003cstring>","providerSite":"\u003cstring>","sell":{"asset":"\u003cstring>","amount":"\u003cstring>"},"submittedByYou":true,"venueAccountName":"\u003cstring>","venueName":"\u003cstring>","kind":"order","projection":"mine","tradeId":"\u003cstring>","fees":{"totals":{"totalCostUsd":"\u003cstring>","lpSpreadUsd":"\u003cstring>","protocolFeeUsd":"\u003cstring>","solverGasUsd":"\u003cstring>","userGasUsd":"\u003cstring>"},"rows":[{"chain":"\u003cstring>","feeKind":"\u003cstring>","feePayer":"\u003cstring>","recordedAt":"2023-11-07T05:31:56Z","sequenceNumber":123,"txType":"\u003cstring>","feeUsd":"\u003cstring>","feeWei":"\u003cstring>","gasPriceWei":"\u003cstring>","gasUsed":"\u003cstring>","txHash":"\u003cstring>"}]},"legs":[{"buy":{"asset":{"assetId":"\u003cstring>","resolutionStatus":"resolved","symbol":"\u003cstring>","address":"\u003cstring>","chainId":1,"chainRef":"\u003cstring>","decimals":1,"name":"\u003cstring>"},"decimalAmount":"\u003cstring>","rawAmount":"\u003cstring>","unresolved":"assetNotInRegistry"},"index":1,"kind":"cctp","label":"\u003cstring>","sell":{"asset":{"assetId":"\u003cstring>","resolutionStatus":"resolved","symbol":"\u003cstring>","address":"\u003cstring>","chainId":1,"chainRef":"\u003cstring>","decimals":1,"name":"\u003cstring>"},"decimalAmount":"\u003cstring>","rawAmount":"\u003cstring>","unresolved":"assetNotInRegistry"},"status":"pending","counterparty":{"counterpartyType":"vasp","jurisdiction":"\u003cstring>","kybStatus":"not_started","licences":[{"jurisdiction":"\u003cstring>","licenceType":"\u003cstring>","status":"active","expiresAt":"2023-11-07T05:31:56Z"}],"provenance":"kybVerified"},"destChainId":1,"etaSeconds":1,"externalRefs":[{"kind":"circleTradeId","value":"\u003cstring>","url":"\u003cstring>"}],"feeUsd":"\u003cstring>","measuredBuy":{"asset":{"assetId":"\u003cstring>","resolutionStatus":"resolved","symbol":"\u003cstring>","address":"\u003cstring>","chainId":1,"chainRef":"\u003cstring>","decimals":1,"name":"\u003cstring>"},"decimalAmount":"\u003cstring>","rawAmount":"\u003cstring>","unresolved":"assetNotInRegistry"},"measuredBuySource":"circleSettledOutput","product":"lop","provider":"\u003cstring>","sourceChainId":1,"tradeLeg":{"direction":"pay_in","legId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","settlementRail":"bank","state":"planned","boundLapsesAt":"2023-11-07T05:31:56Z","confirmAgainReason":"priceBeyondBound","consentedPayoutFee":"\u003cstring>","creditedAmount":"\u003cstring>","currentPayoutFee":"\u003cstring>","declaredPayoutFee":"\u003cstring>","destination":{"kind":"wallet","ref":"\u003cstring>","approvalId":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"expectedArrivalAt":"2023-11-07T05:31:56Z","expectedArrivalSource":"provider","finality":"final","fundingDeadlineAt":"2023-11-07T05:31:56Z","fundingModel":"prefunded","fundsReceivedAt":"2023-11-07T05:31:56Z","holidaysApplied":true,"outcomeCode":"trade_unfilled","overdueAt":"2023-11-07T05:31:56Z","overdueSince":"2023-11-07T05:31:56Z","ownBankVerification":{"source":"revolutBusiness","state":"verified","credit":{"amount":"\u003cstring>","creditedAt":"2023-11-07T05:31:56Z","currency":"\u003cstring>","referenceMasked":"\u003cstring>"},"lastGoodReadAt":"2023-11-07T05:31:56Z","matchedBy":"referenceAndAmount","reason":"\u003cstring>","reviewItemId":"\u003cstring>"},"payoutApproval":{"approvalsRequired":1,"approverNames":["\u003cstring>"],"approvalRequestId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","approverGroup":"\u003cstring>","approverGroupName":"\u003cstring>","runId":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"payoutBreakdown":{"basis":"consent","fee":"\u003cstring>","receivedMax":"\u003cstring>","receivedMin":"\u003cstring>","withdrawn":"\u003cstring>","charging":"deducted"},"payoutBreakdownUnavailableReason":"\u003cstring>","payoutHeldReason":"\u003cstring>","quotedExpectedArrivalAt":"2023-11-07T05:31:56Z","rail":"\u003cstring>","railOption":"standard","railReference":{"state":"notReportedYet"},"recipientConfirmation":{"confirmationId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","confirmedAt":"2023-11-07T05:31:56Z","confirmedBy":"\u003cstring>","confirmedByName":"\u003cstring>","legId":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"returnWindowEndsAt":"2023-11-07T05:31:56Z","returnedAfterSettlement":{"detectedAt":"2023-11-07T05:31:56Z","reviewItemId":"\u003cstring>"},"returnedTo":"lpAccount","reviewAt":"2023-11-07T05:31:56Z","reviewEnteredAt":"2023-11-07T05:31:56Z","reviewItemId":"\u003cstring>","reviewReason":"uncertain_send","submittedAt":"2023-11-07T05:31:56Z","transactionHash":"\u003cstring>","venueReportedCredited":true,"venueWithdrawalId":"\u003cstring>"},"transactions":[{"actor":"user","chainId":1,"chainRole":"origin","hash":"\u003cstring>","stage":"prepare","status":"pending","explorerUrl":"\u003cstring>","label":"\u003cstring>","legIndex":1,"timestamp":"2023-11-07T05:31:56Z"}],"venueRouteId":"\u003cstring>"}],"orderKind":"\u003cstring>","substatus":"\u003cstring>","substatusMessage":"\u003cstring>","amountUsd":"\u003cstring>","amountUsdBasis":"executed","apiKey":{"keyId":"\u003cstring>","name":"\u003cstring>"},"debitExpirySignature":"recorded","executionPrice":"\u003cstring>","executionPriceUnit":{"baseAsset":"\u003cstring>","quoteAsset":"\u003cstring>"},"feesPaid":"\u003cstring>","financials":{"fee":{"treatment":"included_in_price","amount":"\u003cstring>","asset":"\u003cstring>","basis":"\u003cstring>","lines":[{"amount":"\u003cstring>","asset":"\u003cstring>"}],"tradeFeeReport":"not_reported"},"legs":[{"direction":"pay_in","legId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","settlementRail":"bank","state":"planned","boundLapsesAt":"2023-11-07T05:31:56Z","confirmAgainReason":"priceBeyondBound","consentedPayoutFee":"\u003cstring>","creditedAmount":"\u003cstring>","currentPayoutFee":"\u003cstring>","declaredPayoutFee":"\u003cstring>","destination":{"kind":"wallet","ref":"\u003cstring>","approvalId":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"expectedArrivalAt":"2023-11-07T05:31:56Z","expectedArrivalSource":"provider","finality":"final","fundingDeadlineAt":"2023-11-07T05:31:56Z","fundingModel":"prefunded","fundsReceivedAt":"2023-11-07T05:31:56Z","holidaysApplied":true,"outcomeCode":"trade_unfilled","overdueAt":"2023-11-07T05:31:56Z","overdueSince":"2023-11-07T05:31:56Z","ownBankVerification":{"source":"revolutBusiness","state":"verified","credit":{"amount":"\u003cstring>","creditedAt":"2023-11-07T05:31:56Z","currency":"\u003cstring>","referenceMasked":"\u003cstring>"},"lastGoodReadAt":"2023-11-07T05:31:56Z","matchedBy":"referenceAndAmount","reason":"\u003cstring>","reviewItemId":"\u003cstring>"},"payoutApproval":{"approvalsRequired":1,"approverNames":["\u003cstring>"],"approvalRequestId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","approverGroup":"\u003cstring>","approverGroupName":"\u003cstring>","runId":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"payoutBreakdown":{"basis":"consent","fee":"\u003cstring>","receivedMax":"\u003cstring>","receivedMin":"\u003cstring>","withdrawn":"\u003cstring>","charging":"deducted"},"payoutBreakdownUnavailableReason":"\u003cstring>","payoutHeldReason":"\u003cstring>","quotedExpectedArrivalAt":"2023-11-07T05:31:56Z","rail":"\u003cstring>","railOption":"standard","railReference":{"state":"notReportedYet"},"recipientConfirmation":{"confirmationId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","confirmedAt":"2023-11-07T05:31:56Z","confirmedBy":"\u003cstring>","confirmedByName":"\u003cstring>","legId":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"returnWindowEndsAt":"2023-11-07T05:31:56Z","returnedAfterSettlement":{"detectedAt":"2023-11-07T05:31:56Z","reviewItemId":"\u003cstring>"},"returnedTo":"lpAccount","reviewAt":"2023-11-07T05:31:56Z","reviewEnteredAt":"2023-11-07T05:31:56Z","reviewItemId":"\u003cstring>","reviewReason":"uncertain_send","submittedAt":"2023-11-07T05:31:56Z","transactionHash":"\u003cstring>","venueReportedCredited":true,"venueWithdrawalId":"\u003cstring>"}],"quotedOutput":"\u003cstring>"},"inputSpent":"\u003cstring>","notSentCause":"\u003cstring>","notSentReason":"QUOTE_RECONFIRMATION_REQUIRED","outcomeCode":"confirmed_fill","outputReceived":"\u003cstring>","pair":"\u003cstring>","placedBy":{"kind":"member","name":"\u003cstring>","userId":"\u003cstring>"},"settlementCarriedInto":{"windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","settlesBy":"2023-11-07T05:31:56Z"},"settlementState":"settled","settlementStatement":"pending","statedExecutionPrice":{"baseAsset":"\u003cstring>","quoteAsset":"\u003cstring>","basis":"market_convention","value":"\u003cstring>"},"tetrafiFee":"\u003cstring>","tetrafiFeeAsset":"\u003cstring>","transferMode":"fast","uncertainCode":"\u003cstring>"}}},"exampleType":"generated"}},"description":"The trade, with tradeId, kind and projection","headers":{"Deprecation":{"description":"Present when this operation is deprecated: an RFC 9745 structured date, for example @1792443399. Absence makes no deprecation claim.","schema":{"type":"string"}},"Link":{"description":"When deprecation applies, links to the deprecation notice with rel=deprecation; other link relations may also be sent.","schema":{"type":"string"}},"RateLimit":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.1 structured dictionary, for example `limit=100, remaining=41, reset=19`. Remaining is the admitted decision's headroom; reset is whole seconds until quota next becomes available, not an epoch or a promise of a full burst refill. On a limiter's 429 remaining is 0 and reset equals Retry-After. Accepted key, route and per-address policies are compared by lowest remaining, then longest reset. A venue refusal without a known quota makes no rate-limit header claim.","schema":{"type":"string"}},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.5: quota and window in seconds, for example `100;w=60`. Sent on every status when a finite limiter counted the request. The applicable policy closest to exhaustion is reported (section 3.2): lowest remaining, then longest reset. On a limiter's 429 this is exactly the policy that refused; if a venue discloses no quota, the headers are absent.","schema":{"type":"string"}},"Sunset":{"description":"Present when retirement is scheduled: the HTTP-date after which this version may stop being served (RFC 8594).","schema":{"type":"string"}},"x-request-id":{"description":"The request's id: the caller's valid `X-Request-Id`, or a generated UUID v4. Quote it when asking for support.","schema":{"type":"string"}}},"exampleType":"generated"},"09efa2b1-7cef-4589-879f-1985f5f2bc1c":{"content":{"application/json":{"schema":{"description":"The shared refusal body of every integrator operation, including edge-layer errors.\n`error` is an open, stable machine-readable code; `docUrl` links to its documentation and\n`retryable` says whether an unchanged request may succeed later. `message` is for people,\nnot matching. `timestamp` is RFC 3339 UTC; optional `requestId` mirrors `X-Request-Id`.\nOptional `next` describes recovery and `details` carries code-specific information.\nHandle known codes and fall back on the HTTP status for unknown ones.","properties":{"docUrl":{"description":"Stable documentation for this refusal code.","type":"string","isRequired":true,"uniqueKey":"docUrl","typeLabel":"string"},"error":{"description":"The machine-readable code, for example `QUOTE_EXPIRED`.","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"description":"What happened, in words a person can read. Not for matching.","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"retryable":{"description":"Whether an unchanged request may succeed later, from the error catalogue.","type":"boolean","isRequired":true,"uniqueKey":"retryable","typeLabel":"boolean"},"timestamp":{"description":"When the refusal was made, as an RFC 3339 UTC timestamp.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"details":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.0","typeLabel":"null"},{"type":"object","description":"The code's detail. Each field is present only on the codes named beside it; other codes may\ncarry further fields, named in camelCase, which a client may ignore.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"capabilityBlockers":{"oneOf":[{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].estimate","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].message","typeLabel":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].unlockStep","typeLabel":"enum\u003cstring>"},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue","typeLabel":"string[]"}},"required":["code","message","unlockStep","estimate"],"type":"object","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0","typeLabel":"object[]"},{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string"},"type":"array"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true},"message":{"type":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true}},"required":["code","message","unlockStep","estimate"],"type":"object"},"type":"null","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.capabilityBlockers","typeLabel":"object[] | null"},"conflicts":{"oneOf":[{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string","uniqueKey":"details.oneOf.1.conflicts.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.conflicts.oneOf.0","typeLabel":"string[]"},{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.conflicts.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.conflicts","typeLabel":"string[] | null"},"consentedWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the order consented to (the quoted\nwindow, or the one its `settlementWindowId` named), which is no longer the one assigned.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow","typeLabel":"null | object"},"currentWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the server assigns the trade now.\nSend the same quote again with `settlementWindowId` set to `details.currentWindow.windowId`\nto consent to it.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow","typeLabel":"null | object"},"field":{"oneOf":[{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"string","uniqueKey":"details.oneOf.1.field.oneOf.0","typeLabel":"string"},{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"null","uniqueKey":"details.oneOf.1.field.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.field","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","enum":["clockUnavailable","assetUnsupported","referenceUndeclarable","referenceNotAdmitted","referenceStale","referenceDepth","marketDataUnavailable","calibrationUnavailable","livePriceUnavailable","lpQuoteUnavailable","platformJurisdictionCountryRequired","platformJurisdictionUnavailable","platformJurisdictionBlocked","venueJurisdictionExcluded","workspaceJurisdictionRequired","jurisdictionRegionRequired","jurisdictionUnavailable","venueKeyRefusedLikelyIpAllowlist","venueWithdrawalDestinationNotWhitelisted","adapterPayloadSerializationFailed","basicVenueAccountsUnavailable","billingPaymentOverdue","walletNotOnChain","ccxtVenueRequiresCexLane","executionStageDisabled","jurisdictionUnproven","onboardedVenuesUnavailable","onchainAccountDefaultWalletRequired","onchainAccountDefaultWalletUnavailable","onchainAccountWalletRequired","onchainAssetDecimalsMismatch","onchainAssetIdentityMismatch","onchainAssetUnmapped","onchainAssetVariantFiltered","onchainWalletUnavailable","onchainCatalogueUnavailable","onchainDeliverToNotReceivingWallet","onchainDeliverToUnverified","onchainMarketsUnavailable","onchainMarketCatalogUnreadable","onchainMarketChainRequired","onchainMarketVariantRequired","onchainMarketTokenRequired","onchainSiteChainUnreadable","onchainWalletChainUnreadable","onchainWalletInactive","onchainWalletNotLinked","onchainWalletNotUsable","onchainWalletPickAmbiguous","onchainWalletWrongNetwork","signerLacksRight","signerUnavailable","signingGrantAmbiguous","signingGrantExpired","nativeGrantExpiryReapprovalRequired","nativeBalanceUnavailable","solanaFinalityUnavailable","tronSolidBlockUnavailable","signingGrantPolicyUnreadable","signingGrantPolicyChecking","signingGrantRequired","signingGrantTokenNotKept","signingGrantTokenNotPayable","solverChainUnready","walletChainMismatch","walletNotUsableByYou","walletNotVerifiedForAce","walletNotWhitelisted","withdrawalChainUnsupported","accountFeeUnavailable","comparisonCostsUnavailable","connectionListingUnavailable","feeUnverified","noPool","noPrice","noSize","notFilled","notYetPublished","priceArithmetic","priceSourceNone","referenceMidUnavailable","settlementPrecisionUnavailable","accountSetupIncomplete","admissionUnavailable","advancedAccountEligibilityUnavailable","advancedAccountStateInconsistent","advancedConnectionDisabled","advancedConnectionNotConfigured","advancedConnectionPaused","advancedSettlementNeedsVerification","advancedModeDisabled","advancedNotAvailableForAccount","advancedNotEnabledForAccount","allowanceUnavailable","acrossCapacityExceeded","relayCapacityExceeded","acrossChainNotCarried","cctpChainNotCarried","cctpWalletRequired","acrossWalletRequired","walletBrowserSigningEvmOnly","relayChainNotCarried","apiKeyAdvancedWalletUnsupported","apiKeyOrganisationWalletScopeRequired","grantCapExceeded","amountAboveMaximum","amountBelowMinimum","belowVenueMinimum","amountUnreadable","amountsUnreadable","askFirst","authorityUnavailable","automationNeverAsks","availabilityUnreadable","backgroundNeverAsks","balanceUnreadable","defaultsUnavailable","walletHasNoAddress","walletUnavailable","bondAmountUnreadable","bondAssetUnreadable","catalogueUnavailable","chainFamilyUnknown","chainUnrecorded","clientSessionRequired","clockUnreadable","comingSoon","connectionChanged","connectionRevoked","corridorInvalid","credential","deadlineExceeded","defaultsLoading","deliverToCalldataUnsupported","deliverToTagUnsupported","deliverToNotPermitted","deliverToUnreadable","tradingPermissionRequired","directPatienceHarvest","economicallyInferior","exactAmountConflictsWithCard","exactAmountConflictsWithQuote","exactOutputDeliveryUnsupported","exactOutputEstimateUnavailable","exactRouteHypothesisUnavailable","expiredOnArrival","expiryUnknown","feeUnreadable","filteredOut","firmAskRefused","firmAskFundsTimedOut","firmAskPreparationTimedOut","quotePreparationFailed","firmAskAdmissionTimedOut","seliniFirmAskMarketsTimedOut","seliniFirmAskHandoffTimedOut","seliniFirmAskBeforePostTimedOut","seliniFirmAskValidationTimedOut","seliniFirmAskResponseTimedOut","seliniFirmAskTransportFailure","rfqQuoteRefusedQuoteNotAvailable","rfqQuoteRefusedQuotingDisabled","rfqQuoteRefusedClientRfqNotConfigured","rfqQuoteRefusedClientProfileNotLoaded","rfqQuoteRefusedMarketDisabled","rfqQuoteRefusedInvalidQuantity","rfqQuoteRefusedInvalidSide","rfqQuoteRefusedInvalidCurrency","rfqQuoteRefusedPricePrecisionError","rfqQuoteRefusedRfqError","rfqQuoteRefused","venueOutcomeIndeterminate","venueBodyUnreadable","venueResponseUnmapped","venueRateLimited","venueQuoteAdmissionExpired","placementSignedPastDeadline","quoteIdentityConflict","symbolUnsupported","marketSymbolAmbiguous","firmAskPrincipalRequired","indicativeRequested","freshnessUnknown","fundingWindow","insufficientLiquidity","venueRelationship","venueRelationshipUnavailable","lpUnknown","mfaEnrolmentRequired","mfaRequired","minimumUnverified","mixedNetworks","netReceivedUnavailable","networkUnrecorded","noAddress","noCard","noFetcher","noInventory","noLaneForPair","noLegs","noOnChainCorridor","noPlannedVenue","noQuote","noRpc","notConnected","notEligible","notExecutable","orderPayloadMissing","outsideTopComposites","pairUnmapped","sellChainInvalid","permissionsUnreadable","placeOrderNotPermitted","prefundingMarkerUnreadable","prefundingRequired","indicative","priceOnRequest","priceOutOfRange","priceProtectionInvalid","pricingBookOnly","productNotQuoted","protocolChainMissing","providerFeeTreatmentUnknown","providerSiteUnrecorded","quoteIdUnissuable","quoteNotHeld","buyChainInvalid","buyAmountUnsupported","exactOutputDebitUnavailable","pairNotServed","accountFundingReadUnverified","quoteReconfirmationRequired","quoteRejected","keyrockSecurityCatalogueUnavailable","venueAnsweredAfterQuoteWindow","venueQuoteIntentMismatch","payExactUnsupported","receiveWalletNotServed","referenceMidUnreadable","referencePriceUnavailable","registryUnavailable","releaseRecheckUnavailable","requestUnbuildable","routeLegChainUnknown","routeLegUnnamed","routeLegUnplanned","routeUnavailable","secondFactorUnreadable","shortfallUnmeasured","shortfallUnreadable","singleChainVenue","siteChainUnreadable","sizeNotEligible","submitOrderBlocked","takerOnboardingIncomplete","tierNotQuoted","tradePaused","venueConnectionStorageUnavailable","venueDataStale","venueDeclined","venueNotConnected","venueNotEnabledForWorkspace","venueNotListed","venueTradeKeyUnavailable","venueTradeScopeRequired","venueTradeUnreadable","venueUnavailable","walletRefused","withdrawalFeeUnread","acrossRoutedViaCctp","apiKeyOrganisationWalletNotAllowlisted","balanceAvailabilityUnconfirmed","bankDestinationUnavailable","bebopJamKeyNotEnabled","bebopJamQuoteDeclined","bebopTokenUnavailable","relayCurrencyUnsupported","relaySwapImpactTooHigh","tetrafiSolverCallbackNotAuthorized","tradingLinkSnapshotChanged","tradingLinkSnapshotUnavailable","uniswapChainReadUnavailable","uniswapInsufficientDepth","uniswapQuoteUnreadable","uniswapUnwrapAboveDailyCap","uniswapUnwrapAboveTradeCap","uniswapRouteNotGranted","venueNotEnabled","askLimitReached","balanceMeaningUnconfirmed","bebopQuorumWalletTooSlow","bebopWalletQuorumUnreadable","bebopBrowserWalletUnsupported","connectionNotConfigured","deliveryAccountNetworkUnavailable","deliveryAccountUnavailable","destinationCannotSendOnChain","dexReferencePriceUnavailable","firmQuoteLimited","fundingAccountNetworkUnavailable","fundingAccountUnavailable","insufficientDepth","missingPermission","needsNativeGas","needsWallet","notPriced","payInTermsUnavailable","pilotTradeCapExceeded","pilotMinimumAboveTradeCap","platformFeeRateUnavailable","pricingBookPairUnserved","settlementDeclarationUnavailable","settlementNotAvailable","timedOut","timedOutBeforeSend","tradingSourceNetworkUnavailable","tradingSourceNotLinked","venueEnablementRechecking","venueEnablementUnavailable","venueListingTimedOut","venuePoliciesUnavailable","multiliquidPaused","multiliquidAssetNotAccepted","walletNotAllowlistedForAsset","walletBlacklisted","multiliquidPriceInvalid","multiliquidStablePriceOutOfBand","multiliquidInsufficientLiquidity","multiliquidProviderPrefundUnavailable","multiliquidDailyLimitReached","eligibilityUnverifiable","multiliquidInsufficientBalance","multiliquidWalletFundsInsufficient","multiliquidInsufficientAllowance","walletTokenAccountFrozen","multiliquidAmountInTooHigh","multiliquidAmountOutTooLow","multiliquidInsufficientLpFeeBalance","multiliquidTransferFeeNotSupported","multiliquidParticipantUnavailable","multiliquidChainNotSupported","multiliquidObservationWalletUnavailable","privyMultiliquidArrayPinsUnsupported","cctpDestinationNotGranted","signingGrantNativeOnly","quoteRejectedInsufficientBalance","walletGateUnreadable","policyBlocked","treasuryPolicyApprovalRequired","destinationTagRequired","destinationTagMismatch","destinationTagInvalid","acrossBasicLaneNotEnabled","creditReadUnavailable","exactOutputFirmAskUnsupported","grantEndsBeforeVenueFunding","jurisdictionNotServed","pairUnsupported","requesterJurisdictionUnknown","venueAccountHasNoKey","venueAssessmentRequired","venueConnectionInvalid","venueReenableRequiresNewCredentials","venueTradingPaused","balanceNotObserved","notPermitted","balanceNotPermitted","gasUnchecked","catalogueWaitStateUnavailable","cctpRouteUpgrading","creditOnly","dexReferencePriceMissing","quoteAuthorityUnavailable","venueRoutingOff","venueRoutingStateUnavailable","indicativeUnavailable","marketUnavailable","noReferenceMid","observationBindingUnavailable","quoteIdUnavailable","stalePrice"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.reason","typeLabel":"enum\u003cstring> | null"},"remediation":{"oneOf":[{"description":"A machine-readable recovery hint the refusing step gave.","type":"string","uniqueKey":"details.oneOf.1.remediation.oneOf.0","typeLabel":"string"},{"description":"A machine-readable recovery hint the refusing step gave.","type":"null","uniqueKey":"details.oneOf.1.remediation.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.remediation","typeLabel":"string | null"},"retryAfter":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.retryAfter.oneOf.0","typeLabel":"null"},{"type":"string","description":"Every `429`, and a `503` that knows: when to try again, as an ISO 8601 duration. The\n`Retry-After` header carries the same wait in whole seconds.","format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"PT120S","uniqueKey":"details.oneOf.1.retryAfter.oneOf.1","typeLabel":"string\u003cduration>"}],"uniqueKey":"details.oneOf.1.retryAfter","typeLabel":"null | string\u003cduration>"},"value":{"oneOf":[{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"string","uniqueKey":"details.oneOf.1.value.oneOf.0","typeLabel":"string"},{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"null","uniqueKey":"details.oneOf.1.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.value","typeLabel":"string | null"}},"additionalProperties":{"description":"Any further detail the code carries (for example `stepUpSubject`, `balanceShortfall`,\n`minimumAmount`), each named in camelCase.","uniqueKey":"details.oneOf.1.additionalProperties","typeLabel":"any"},"uniqueKey":"details.oneOf.1","typeLabel":"object"}],"uniqueKey":"details","typeLabel":"null | object"},"next":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.0","typeLabel":"null"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["order"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.1","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["preflight"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.2","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["transactions","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["transact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"transactions":{"items":{"description":"One transaction the Taker sends itself (an approval included).","properties":{"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].chain","typeLabel":"string"},"data":{"description":"Hex calldata (`0x…`).","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].data","typeLabel":"string"},"to":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].to","typeLabel":"string"},"value":{"description":"Native value in base units, as a decimal string.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].value","typeLabel":"string"}},"required":["chain","data","to","value"],"type":"object","uniqueKey":"next.oneOf.3.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.3.transactions","typeLabel":"object[]"}},"uniqueKey":"next.oneOf.3","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["typedData","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["sign"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"typedData":{"oneOf":[{"isRequired":true}],"isRequired":true,"uniqueKey":"next.oneOf.4.typedData","typeLabel":"any"}},"uniqueKey":"next.oneOf.4","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["fund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"instructions":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.5.instructions.oneOf.0","typeLabel":"null"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["asset","chainRef","networkCode","networkConfirmed","address","tokenContract","observedAt","expiresAt","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.address","typeLabel":"string"},"asset":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.asset","typeLabel":"string"},"chainRef":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.chainRef","typeLabel":"string"},"expiresAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.expiresAt","typeLabel":"string\u003cdate-time>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["venueDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"networkCode":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkCode","typeLabel":"string"},"networkConfirmed":{"description":"False when the venue reports no network for this address: `networkCode`\nis empty and `chainRef` is the caller's selection, which the customer\nmust confirm with the venue before sending.","type":"boolean","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkConfirmed","typeLabel":"boolean"},"observedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.observedAt","typeLabel":"string\u003cdate-time>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.tokenContract","typeLabel":"string"},"memo":{"oneOf":[{"type":"string","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.1","typeLabel":"null"}],"uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo","typeLabel":"string | null"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.1","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["accountLast4","amount","bankDisplayName","expiresAt","kind","revealRef"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"accountLast4":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.0","typeLabel":"null"},{"type":"string","description":"An already-qualified masked suffix, not external account ownership proof.","maxLength":4,"minLength":1,"pattern":"^[A-Za-z0-9]{1,4}$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"A1b2","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4","typeLabel":"null | string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.amount","typeLabel":"string"},"bankDisplayName":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName","typeLabel":"string | null"},"expiresAt":{"oneOf":[{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt","typeLabel":"string\u003cdate-time> | null"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["bankDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"revealRef":{"description":"Non-bearer lookup metadata for deposit instructions. Possession grants no authority. Each reveal requires current wallet-view authority and exact account membership; an API key additionally needs treasury_read. Missing and foreign accounts share a refusal. Quotes never fetch these instructions.","properties":{"connectionId":{"description":"The native held leg's exact connection id, never a first/sole-connection guess.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.currency","typeLabel":"string"},"providerBankId":{"oneOf":[{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.0","typeLabel":"string"},{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId","typeLabel":"string | null"}},"required":["connectionId","currency","providerBankId"],"type":"object","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef","typeLabel":"object"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.2","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["walletId","address","chain","asset","tokenContract","amount","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.address","typeLabel":"string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["walletTopUp"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.tokenContract","typeLabel":"string"},"walletId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.walletId","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.3","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["chain","amount","asset","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["nativeGas"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.4","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["connectionId","amount","currency","reason","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.amount","typeLabel":"string"},"connectionId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.currency","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["depositFirstNotOffered"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.reason","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.5","typeLabel":"object"}],"uniqueKey":"next.oneOf.5.instructions","typeLabel":"null · object · object · object · object · object"}},"uniqueKey":"next.oneOf.5","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["needs","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["requote"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.6.kind","typeLabel":"enum\u003cstring>"},"needs":{"items":{"description":"A funding or delivery selection a requote needs filled. An empty `needs` means requote as is.\n\nNew values may be added; treat unknown values as other.","enum":["wallet:evm","wallet:solana","wallet:tron","account","bankAccount","deliverTo"],"type":"string","x-extensible-enum":true,"uniqueKey":"next.oneOf.6.needs.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.6.needs","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"next.oneOf.6","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["search"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.7.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.7","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["retryAfter","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["wait"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.8.kind","typeLabel":"enum\u003cstring>"},"retryAfter":{"description":"An ISO 8601 duration, e.g. PT3S or PT2M.","examples":["PT120S"],"format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","type":"string","isRequired":true,"uniqueKey":"next.oneOf.8.retryAfter","typeLabel":"string\u003cduration>"}},"uniqueKey":"next.oneOf.8","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["reference","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["contact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.9.kind","typeLabel":"enum\u003cstring>"},"reference":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.9.reference","typeLabel":"string"}},"uniqueKey":"next.oneOf.9","typeLabel":"object"}],"uniqueKey":"next","typeLabel":"null · object · object · object · object · object · object · object · object · object"},"requestId":{"oneOf":[{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"string","uniqueKey":"requestId.oneOf.0","typeLabel":"string"},{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"null","uniqueKey":"requestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"requestId","typeLabel":"string | null"}},"required":["error","docUrl","retryable","message","timestamp"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"docUrl":"\u003cstring>","error":"\u003cstring>","message":"\u003cstring>","retryable":true,"timestamp":"2023-11-07T05:31:56Z","details":{"capabilityBlockers":[{"code":"WORKSPACE_NOT_FOUND","estimate":"minutes","message":"\u003cstring>","unlockStep":"finishOnboarding","currentlyDue":["\u003cstring>"]}],"conflicts":["\u003cstring>"],"consentedWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"currentWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"field":"\u003cstring>","reason":"clockUnavailable","remediation":"\u003cstring>","retryAfter":"PT120S","value":"\u003cstring>"},"next":{"kind":"order"},"requestId":"\u003cstring>"}}},"exampleType":"generated"}},"description":"INVALID_REQUEST naming the parameter in field: a list filter or a parameter the projection cannot apply","headers":{"Deprecation":{"description":"Present when this operation is deprecated: an RFC 9745 structured date, for example @1792443399. Absence makes no deprecation claim.","schema":{"type":"string"}},"Link":{"description":"When deprecation applies, links to the deprecation notice with rel=deprecation; other link relations may also be sent.","schema":{"type":"string"}},"RateLimit":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.1 structured dictionary, for example `limit=100, remaining=41, reset=19`. Remaining is the admitted decision's headroom; reset is whole seconds until quota next becomes available, not an epoch or a promise of a full burst refill. On a limiter's 429 remaining is 0 and reset equals Retry-After. Accepted key, route and per-address policies are compared by lowest remaining, then longest reset. A venue refusal without a known quota makes no rate-limit header claim.","schema":{"type":"string"}},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.5: quota and window in seconds, for example `100;w=60`. Sent on every status when a finite limiter counted the request. The applicable policy closest to exhaustion is reported (section 3.2): lowest remaining, then longest reset. On a limiter's 429 this is exactly the policy that refused; if a venue discloses no quota, the headers are absent.","schema":{"type":"string"}},"Sunset":{"description":"Present when retirement is scheduled: the HTTP-date after which this version may stop being served (RFC 8594).","schema":{"type":"string"}},"x-request-id":{"description":"The request's id: the caller's valid `X-Request-Id`, or a generated UUID v4. Quote it when asking for support.","schema":{"type":"string"}}},"exampleType":"generated"},"2bbaf8ba-269b-4e93-ab14-24140a529c95":{"content":{"application/json":{"schema":{"description":"The shared refusal body of every integrator operation, including edge-layer errors.\n`error` is an open, stable machine-readable code; `docUrl` links to its documentation and\n`retryable` says whether an unchanged request may succeed later. `message` is for people,\nnot matching. `timestamp` is RFC 3339 UTC; optional `requestId` mirrors `X-Request-Id`.\nOptional `next` describes recovery and `details` carries code-specific information.\nHandle known codes and fall back on the HTTP status for unknown ones.","properties":{"docUrl":{"description":"Stable documentation for this refusal code.","type":"string","isRequired":true,"uniqueKey":"docUrl","typeLabel":"string"},"error":{"description":"The machine-readable code, for example `QUOTE_EXPIRED`.","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"description":"What happened, in words a person can read. Not for matching.","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"retryable":{"description":"Whether an unchanged request may succeed later, from the error catalogue.","type":"boolean","isRequired":true,"uniqueKey":"retryable","typeLabel":"boolean"},"timestamp":{"description":"When the refusal was made, as an RFC 3339 UTC timestamp.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"details":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.0","typeLabel":"null"},{"type":"object","description":"The code's detail. Each field is present only on the codes named beside it; other codes may\ncarry further fields, named in camelCase, which a client may ignore.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"capabilityBlockers":{"oneOf":[{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].estimate","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].message","typeLabel":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].unlockStep","typeLabel":"enum\u003cstring>"},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue","typeLabel":"string[]"}},"required":["code","message","unlockStep","estimate"],"type":"object","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0","typeLabel":"object[]"},{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string"},"type":"array"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true},"message":{"type":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true}},"required":["code","message","unlockStep","estimate"],"type":"object"},"type":"null","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.capabilityBlockers","typeLabel":"object[] | null"},"conflicts":{"oneOf":[{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string","uniqueKey":"details.oneOf.1.conflicts.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.conflicts.oneOf.0","typeLabel":"string[]"},{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.conflicts.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.conflicts","typeLabel":"string[] | null"},"consentedWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the order consented to (the quoted\nwindow, or the one its `settlementWindowId` named), which is no longer the one assigned.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow","typeLabel":"null | object"},"currentWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the server assigns the trade now.\nSend the same quote again with `settlementWindowId` set to `details.currentWindow.windowId`\nto consent to it.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow","typeLabel":"null | object"},"field":{"oneOf":[{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"string","uniqueKey":"details.oneOf.1.field.oneOf.0","typeLabel":"string"},{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"null","uniqueKey":"details.oneOf.1.field.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.field","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","enum":["clockUnavailable","assetUnsupported","referenceUndeclarable","referenceNotAdmitted","referenceStale","referenceDepth","marketDataUnavailable","calibrationUnavailable","livePriceUnavailable","lpQuoteUnavailable","platformJurisdictionCountryRequired","platformJurisdictionUnavailable","platformJurisdictionBlocked","venueJurisdictionExcluded","workspaceJurisdictionRequired","jurisdictionRegionRequired","jurisdictionUnavailable","venueKeyRefusedLikelyIpAllowlist","venueWithdrawalDestinationNotWhitelisted","adapterPayloadSerializationFailed","basicVenueAccountsUnavailable","billingPaymentOverdue","walletNotOnChain","ccxtVenueRequiresCexLane","executionStageDisabled","jurisdictionUnproven","onboardedVenuesUnavailable","onchainAccountDefaultWalletRequired","onchainAccountDefaultWalletUnavailable","onchainAccountWalletRequired","onchainAssetDecimalsMismatch","onchainAssetIdentityMismatch","onchainAssetUnmapped","onchainAssetVariantFiltered","onchainWalletUnavailable","onchainCatalogueUnavailable","onchainDeliverToNotReceivingWallet","onchainDeliverToUnverified","onchainMarketsUnavailable","onchainMarketCatalogUnreadable","onchainMarketChainRequired","onchainMarketVariantRequired","onchainMarketTokenRequired","onchainSiteChainUnreadable","onchainWalletChainUnreadable","onchainWalletInactive","onchainWalletNotLinked","onchainWalletNotUsable","onchainWalletPickAmbiguous","onchainWalletWrongNetwork","signerLacksRight","signerUnavailable","signingGrantAmbiguous","signingGrantExpired","nativeGrantExpiryReapprovalRequired","nativeBalanceUnavailable","solanaFinalityUnavailable","tronSolidBlockUnavailable","signingGrantPolicyUnreadable","signingGrantPolicyChecking","signingGrantRequired","signingGrantTokenNotKept","signingGrantTokenNotPayable","solverChainUnready","walletChainMismatch","walletNotUsableByYou","walletNotVerifiedForAce","walletNotWhitelisted","withdrawalChainUnsupported","accountFeeUnavailable","comparisonCostsUnavailable","connectionListingUnavailable","feeUnverified","noPool","noPrice","noSize","notFilled","notYetPublished","priceArithmetic","priceSourceNone","referenceMidUnavailable","settlementPrecisionUnavailable","accountSetupIncomplete","admissionUnavailable","advancedAccountEligibilityUnavailable","advancedAccountStateInconsistent","advancedConnectionDisabled","advancedConnectionNotConfigured","advancedConnectionPaused","advancedSettlementNeedsVerification","advancedModeDisabled","advancedNotAvailableForAccount","advancedNotEnabledForAccount","allowanceUnavailable","acrossCapacityExceeded","relayCapacityExceeded","acrossChainNotCarried","cctpChainNotCarried","cctpWalletRequired","acrossWalletRequired","walletBrowserSigningEvmOnly","relayChainNotCarried","apiKeyAdvancedWalletUnsupported","apiKeyOrganisationWalletScopeRequired","grantCapExceeded","amountAboveMaximum","amountBelowMinimum","belowVenueMinimum","amountUnreadable","amountsUnreadable","askFirst","authorityUnavailable","automationNeverAsks","availabilityUnreadable","backgroundNeverAsks","balanceUnreadable","defaultsUnavailable","walletHasNoAddress","walletUnavailable","bondAmountUnreadable","bondAssetUnreadable","catalogueUnavailable","chainFamilyUnknown","chainUnrecorded","clientSessionRequired","clockUnreadable","comingSoon","connectionChanged","connectionRevoked","corridorInvalid","credential","deadlineExceeded","defaultsLoading","deliverToCalldataUnsupported","deliverToTagUnsupported","deliverToNotPermitted","deliverToUnreadable","tradingPermissionRequired","directPatienceHarvest","economicallyInferior","exactAmountConflictsWithCard","exactAmountConflictsWithQuote","exactOutputDeliveryUnsupported","exactOutputEstimateUnavailable","exactRouteHypothesisUnavailable","expiredOnArrival","expiryUnknown","feeUnreadable","filteredOut","firmAskRefused","firmAskFundsTimedOut","firmAskPreparationTimedOut","quotePreparationFailed","firmAskAdmissionTimedOut","seliniFirmAskMarketsTimedOut","seliniFirmAskHandoffTimedOut","seliniFirmAskBeforePostTimedOut","seliniFirmAskValidationTimedOut","seliniFirmAskResponseTimedOut","seliniFirmAskTransportFailure","rfqQuoteRefusedQuoteNotAvailable","rfqQuoteRefusedQuotingDisabled","rfqQuoteRefusedClientRfqNotConfigured","rfqQuoteRefusedClientProfileNotLoaded","rfqQuoteRefusedMarketDisabled","rfqQuoteRefusedInvalidQuantity","rfqQuoteRefusedInvalidSide","rfqQuoteRefusedInvalidCurrency","rfqQuoteRefusedPricePrecisionError","rfqQuoteRefusedRfqError","rfqQuoteRefused","venueOutcomeIndeterminate","venueBodyUnreadable","venueResponseUnmapped","venueRateLimited","venueQuoteAdmissionExpired","placementSignedPastDeadline","quoteIdentityConflict","symbolUnsupported","marketSymbolAmbiguous","firmAskPrincipalRequired","indicativeRequested","freshnessUnknown","fundingWindow","insufficientLiquidity","venueRelationship","venueRelationshipUnavailable","lpUnknown","mfaEnrolmentRequired","mfaRequired","minimumUnverified","mixedNetworks","netReceivedUnavailable","networkUnrecorded","noAddress","noCard","noFetcher","noInventory","noLaneForPair","noLegs","noOnChainCorridor","noPlannedVenue","noQuote","noRpc","notConnected","notEligible","notExecutable","orderPayloadMissing","outsideTopComposites","pairUnmapped","sellChainInvalid","permissionsUnreadable","placeOrderNotPermitted","prefundingMarkerUnreadable","prefundingRequired","indicative","priceOnRequest","priceOutOfRange","priceProtectionInvalid","pricingBookOnly","productNotQuoted","protocolChainMissing","providerFeeTreatmentUnknown","providerSiteUnrecorded","quoteIdUnissuable","quoteNotHeld","buyChainInvalid","buyAmountUnsupported","exactOutputDebitUnavailable","pairNotServed","accountFundingReadUnverified","quoteReconfirmationRequired","quoteRejected","keyrockSecurityCatalogueUnavailable","venueAnsweredAfterQuoteWindow","venueQuoteIntentMismatch","payExactUnsupported","receiveWalletNotServed","referenceMidUnreadable","referencePriceUnavailable","registryUnavailable","releaseRecheckUnavailable","requestUnbuildable","routeLegChainUnknown","routeLegUnnamed","routeLegUnplanned","routeUnavailable","secondFactorUnreadable","shortfallUnmeasured","shortfallUnreadable","singleChainVenue","siteChainUnreadable","sizeNotEligible","submitOrderBlocked","takerOnboardingIncomplete","tierNotQuoted","tradePaused","venueConnectionStorageUnavailable","venueDataStale","venueDeclined","venueNotConnected","venueNotEnabledForWorkspace","venueNotListed","venueTradeKeyUnavailable","venueTradeScopeRequired","venueTradeUnreadable","venueUnavailable","walletRefused","withdrawalFeeUnread","acrossRoutedViaCctp","apiKeyOrganisationWalletNotAllowlisted","balanceAvailabilityUnconfirmed","bankDestinationUnavailable","bebopJamKeyNotEnabled","bebopJamQuoteDeclined","bebopTokenUnavailable","relayCurrencyUnsupported","relaySwapImpactTooHigh","tetrafiSolverCallbackNotAuthorized","tradingLinkSnapshotChanged","tradingLinkSnapshotUnavailable","uniswapChainReadUnavailable","uniswapInsufficientDepth","uniswapQuoteUnreadable","uniswapUnwrapAboveDailyCap","uniswapUnwrapAboveTradeCap","uniswapRouteNotGranted","venueNotEnabled","askLimitReached","balanceMeaningUnconfirmed","bebopQuorumWalletTooSlow","bebopWalletQuorumUnreadable","bebopBrowserWalletUnsupported","connectionNotConfigured","deliveryAccountNetworkUnavailable","deliveryAccountUnavailable","destinationCannotSendOnChain","dexReferencePriceUnavailable","firmQuoteLimited","fundingAccountNetworkUnavailable","fundingAccountUnavailable","insufficientDepth","missingPermission","needsNativeGas","needsWallet","notPriced","payInTermsUnavailable","pilotTradeCapExceeded","pilotMinimumAboveTradeCap","platformFeeRateUnavailable","pricingBookPairUnserved","settlementDeclarationUnavailable","settlementNotAvailable","timedOut","timedOutBeforeSend","tradingSourceNetworkUnavailable","tradingSourceNotLinked","venueEnablementRechecking","venueEnablementUnavailable","venueListingTimedOut","venuePoliciesUnavailable","multiliquidPaused","multiliquidAssetNotAccepted","walletNotAllowlistedForAsset","walletBlacklisted","multiliquidPriceInvalid","multiliquidStablePriceOutOfBand","multiliquidInsufficientLiquidity","multiliquidProviderPrefundUnavailable","multiliquidDailyLimitReached","eligibilityUnverifiable","multiliquidInsufficientBalance","multiliquidWalletFundsInsufficient","multiliquidInsufficientAllowance","walletTokenAccountFrozen","multiliquidAmountInTooHigh","multiliquidAmountOutTooLow","multiliquidInsufficientLpFeeBalance","multiliquidTransferFeeNotSupported","multiliquidParticipantUnavailable","multiliquidChainNotSupported","multiliquidObservationWalletUnavailable","privyMultiliquidArrayPinsUnsupported","cctpDestinationNotGranted","signingGrantNativeOnly","quoteRejectedInsufficientBalance","walletGateUnreadable","policyBlocked","treasuryPolicyApprovalRequired","destinationTagRequired","destinationTagMismatch","destinationTagInvalid","acrossBasicLaneNotEnabled","creditReadUnavailable","exactOutputFirmAskUnsupported","grantEndsBeforeVenueFunding","jurisdictionNotServed","pairUnsupported","requesterJurisdictionUnknown","venueAccountHasNoKey","venueAssessmentRequired","venueConnectionInvalid","venueReenableRequiresNewCredentials","venueTradingPaused","balanceNotObserved","notPermitted","balanceNotPermitted","gasUnchecked","catalogueWaitStateUnavailable","cctpRouteUpgrading","creditOnly","dexReferencePriceMissing","quoteAuthorityUnavailable","venueRoutingOff","venueRoutingStateUnavailable","indicativeUnavailable","marketUnavailable","noReferenceMid","observationBindingUnavailable","quoteIdUnavailable","stalePrice"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.reason","typeLabel":"enum\u003cstring> | null"},"remediation":{"oneOf":[{"description":"A machine-readable recovery hint the refusing step gave.","type":"string","uniqueKey":"details.oneOf.1.remediation.oneOf.0","typeLabel":"string"},{"description":"A machine-readable recovery hint the refusing step gave.","type":"null","uniqueKey":"details.oneOf.1.remediation.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.remediation","typeLabel":"string | null"},"retryAfter":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.retryAfter.oneOf.0","typeLabel":"null"},{"type":"string","description":"Every `429`, and a `503` that knows: when to try again, as an ISO 8601 duration. The\n`Retry-After` header carries the same wait in whole seconds.","format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"PT120S","uniqueKey":"details.oneOf.1.retryAfter.oneOf.1","typeLabel":"string\u003cduration>"}],"uniqueKey":"details.oneOf.1.retryAfter","typeLabel":"null | string\u003cduration>"},"value":{"oneOf":[{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"string","uniqueKey":"details.oneOf.1.value.oneOf.0","typeLabel":"string"},{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"null","uniqueKey":"details.oneOf.1.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.value","typeLabel":"string | null"}},"additionalProperties":{"description":"Any further detail the code carries (for example `stepUpSubject`, `balanceShortfall`,\n`minimumAmount`), each named in camelCase.","uniqueKey":"details.oneOf.1.additionalProperties","typeLabel":"any"},"uniqueKey":"details.oneOf.1","typeLabel":"object"}],"uniqueKey":"details","typeLabel":"null | object"},"next":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.0","typeLabel":"null"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["order"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.1","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["preflight"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.2","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["transactions","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["transact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"transactions":{"items":{"description":"One transaction the Taker sends itself (an approval included).","properties":{"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].chain","typeLabel":"string"},"data":{"description":"Hex calldata (`0x…`).","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].data","typeLabel":"string"},"to":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].to","typeLabel":"string"},"value":{"description":"Native value in base units, as a decimal string.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].value","typeLabel":"string"}},"required":["chain","data","to","value"],"type":"object","uniqueKey":"next.oneOf.3.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.3.transactions","typeLabel":"object[]"}},"uniqueKey":"next.oneOf.3","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["typedData","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["sign"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"typedData":{"oneOf":[{"isRequired":true}],"isRequired":true,"uniqueKey":"next.oneOf.4.typedData","typeLabel":"any"}},"uniqueKey":"next.oneOf.4","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["fund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"instructions":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.5.instructions.oneOf.0","typeLabel":"null"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["asset","chainRef","networkCode","networkConfirmed","address","tokenContract","observedAt","expiresAt","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.address","typeLabel":"string"},"asset":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.asset","typeLabel":"string"},"chainRef":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.chainRef","typeLabel":"string"},"expiresAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.expiresAt","typeLabel":"string\u003cdate-time>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["venueDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"networkCode":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkCode","typeLabel":"string"},"networkConfirmed":{"description":"False when the venue reports no network for this address: `networkCode`\nis empty and `chainRef` is the caller's selection, which the customer\nmust confirm with the venue before sending.","type":"boolean","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkConfirmed","typeLabel":"boolean"},"observedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.observedAt","typeLabel":"string\u003cdate-time>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.tokenContract","typeLabel":"string"},"memo":{"oneOf":[{"type":"string","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.1","typeLabel":"null"}],"uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo","typeLabel":"string | null"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.1","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["accountLast4","amount","bankDisplayName","expiresAt","kind","revealRef"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"accountLast4":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.0","typeLabel":"null"},{"type":"string","description":"An already-qualified masked suffix, not external account ownership proof.","maxLength":4,"minLength":1,"pattern":"^[A-Za-z0-9]{1,4}$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"A1b2","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4","typeLabel":"null | string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.amount","typeLabel":"string"},"bankDisplayName":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName","typeLabel":"string | null"},"expiresAt":{"oneOf":[{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt","typeLabel":"string\u003cdate-time> | null"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["bankDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"revealRef":{"description":"Non-bearer lookup metadata for deposit instructions. Possession grants no authority. Each reveal requires current wallet-view authority and exact account membership; an API key additionally needs treasury_read. Missing and foreign accounts share a refusal. Quotes never fetch these instructions.","properties":{"connectionId":{"description":"The native held leg's exact connection id, never a first/sole-connection guess.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.currency","typeLabel":"string"},"providerBankId":{"oneOf":[{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.0","typeLabel":"string"},{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId","typeLabel":"string | null"}},"required":["connectionId","currency","providerBankId"],"type":"object","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef","typeLabel":"object"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.2","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["walletId","address","chain","asset","tokenContract","amount","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.address","typeLabel":"string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["walletTopUp"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.tokenContract","typeLabel":"string"},"walletId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.walletId","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.3","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["chain","amount","asset","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["nativeGas"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.4","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["connectionId","amount","currency","reason","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.amount","typeLabel":"string"},"connectionId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.currency","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["depositFirstNotOffered"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.reason","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.5","typeLabel":"object"}],"uniqueKey":"next.oneOf.5.instructions","typeLabel":"null · object · object · object · object · object"}},"uniqueKey":"next.oneOf.5","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["needs","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["requote"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.6.kind","typeLabel":"enum\u003cstring>"},"needs":{"items":{"description":"A funding or delivery selection a requote needs filled. An empty `needs` means requote as is.\n\nNew values may be added; treat unknown values as other.","enum":["wallet:evm","wallet:solana","wallet:tron","account","bankAccount","deliverTo"],"type":"string","x-extensible-enum":true,"uniqueKey":"next.oneOf.6.needs.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.6.needs","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"next.oneOf.6","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["search"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.7.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.7","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["retryAfter","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["wait"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.8.kind","typeLabel":"enum\u003cstring>"},"retryAfter":{"description":"An ISO 8601 duration, e.g. PT3S or PT2M.","examples":["PT120S"],"format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","type":"string","isRequired":true,"uniqueKey":"next.oneOf.8.retryAfter","typeLabel":"string\u003cduration>"}},"uniqueKey":"next.oneOf.8","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["reference","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["contact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.9.kind","typeLabel":"enum\u003cstring>"},"reference":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.9.reference","typeLabel":"string"}},"uniqueKey":"next.oneOf.9","typeLabel":"object"}],"uniqueKey":"next","typeLabel":"null · object · object · object · object · object · object · object · object · object"},"requestId":{"oneOf":[{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"string","uniqueKey":"requestId.oneOf.0","typeLabel":"string"},{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"null","uniqueKey":"requestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"requestId","typeLabel":"string | null"}},"required":["error","docUrl","retryable","message","timestamp"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"docUrl":"\u003cstring>","error":"\u003cstring>","message":"\u003cstring>","retryable":true,"timestamp":"2023-11-07T05:31:56Z","details":{"capabilityBlockers":[{"code":"WORKSPACE_NOT_FOUND","estimate":"minutes","message":"\u003cstring>","unlockStep":"finishOnboarding","currentlyDue":["\u003cstring>"]}],"conflicts":["\u003cstring>"],"consentedWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"currentWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"field":"\u003cstring>","reason":"clockUnavailable","remediation":"\u003cstring>","retryAfter":"PT120S","value":"\u003cstring>"},"next":{"kind":"order"},"requestId":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Authentication is missing or invalid.","headers":{"Deprecation":{"description":"Present when this operation is deprecated: an RFC 9745 structured date, for example @1792443399. Absence makes no deprecation claim.","schema":{"type":"string"}},"Link":{"description":"When deprecation applies, links to the deprecation notice with rel=deprecation; other link relations may also be sent.","schema":{"type":"string"}},"Sunset":{"description":"Present when retirement is scheduled: the HTTP-date after which this version may stop being served (RFC 8594).","schema":{"type":"string"}},"WWW-Authenticate":{"description":"Always sent on 401: `api_key, Bearer`, naming the `api_key` security scheme (X-API-Key and its HMAC request-signing contract) and the `bearer_auth` security scheme's HTTP scheme (Bearer). A presented bearer token adds `error=\"invalid_token\"` to the Bearer challenge (RFC 6750 section 3).","schema":{"type":"string"}},"x-request-id":{"description":"The request's id: the caller's valid `X-Request-Id`, or a generated UUID v4. Quote it when asking for support.","schema":{"type":"string"}}},"exampleType":"generated"},"f3ce1293-1cee-416a-a892-ebfec7477dff":{"content":{"application/json":{"schema":{"description":"The shared refusal body of every integrator operation, including edge-layer errors.\n`error` is an open, stable machine-readable code; `docUrl` links to its documentation and\n`retryable` says whether an unchanged request may succeed later. `message` is for people,\nnot matching. `timestamp` is RFC 3339 UTC; optional `requestId` mirrors `X-Request-Id`.\nOptional `next` describes recovery and `details` carries code-specific information.\nHandle known codes and fall back on the HTTP status for unknown ones.","properties":{"docUrl":{"description":"Stable documentation for this refusal code.","type":"string","isRequired":true,"uniqueKey":"docUrl","typeLabel":"string"},"error":{"description":"The machine-readable code, for example `QUOTE_EXPIRED`.","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"description":"What happened, in words a person can read. Not for matching.","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"retryable":{"description":"Whether an unchanged request may succeed later, from the error catalogue.","type":"boolean","isRequired":true,"uniqueKey":"retryable","typeLabel":"boolean"},"timestamp":{"description":"When the refusal was made, as an RFC 3339 UTC timestamp.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"details":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.0","typeLabel":"null"},{"type":"object","description":"The code's detail. Each field is present only on the codes named beside it; other codes may\ncarry further fields, named in camelCase, which a client may ignore.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"capabilityBlockers":{"oneOf":[{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].estimate","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].message","typeLabel":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].unlockStep","typeLabel":"enum\u003cstring>"},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue","typeLabel":"string[]"}},"required":["code","message","unlockStep","estimate"],"type":"object","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0","typeLabel":"object[]"},{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string"},"type":"array"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true},"message":{"type":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true}},"required":["code","message","unlockStep","estimate"],"type":"object"},"type":"null","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.capabilityBlockers","typeLabel":"object[] | null"},"conflicts":{"oneOf":[{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string","uniqueKey":"details.oneOf.1.conflicts.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.conflicts.oneOf.0","typeLabel":"string[]"},{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.conflicts.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.conflicts","typeLabel":"string[] | null"},"consentedWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the order consented to (the quoted\nwindow, or the one its `settlementWindowId` named), which is no longer the one assigned.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow","typeLabel":"null | object"},"currentWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the server assigns the trade now.\nSend the same quote again with `settlementWindowId` set to `details.currentWindow.windowId`\nto consent to it.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow","typeLabel":"null | object"},"field":{"oneOf":[{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"string","uniqueKey":"details.oneOf.1.field.oneOf.0","typeLabel":"string"},{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"null","uniqueKey":"details.oneOf.1.field.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.field","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","enum":["clockUnavailable","assetUnsupported","referenceUndeclarable","referenceNotAdmitted","referenceStale","referenceDepth","marketDataUnavailable","calibrationUnavailable","livePriceUnavailable","lpQuoteUnavailable","platformJurisdictionCountryRequired","platformJurisdictionUnavailable","platformJurisdictionBlocked","venueJurisdictionExcluded","workspaceJurisdictionRequired","jurisdictionRegionRequired","jurisdictionUnavailable","venueKeyRefusedLikelyIpAllowlist","venueWithdrawalDestinationNotWhitelisted","adapterPayloadSerializationFailed","basicVenueAccountsUnavailable","billingPaymentOverdue","walletNotOnChain","ccxtVenueRequiresCexLane","executionStageDisabled","jurisdictionUnproven","onboardedVenuesUnavailable","onchainAccountDefaultWalletRequired","onchainAccountDefaultWalletUnavailable","onchainAccountWalletRequired","onchainAssetDecimalsMismatch","onchainAssetIdentityMismatch","onchainAssetUnmapped","onchainAssetVariantFiltered","onchainWalletUnavailable","onchainCatalogueUnavailable","onchainDeliverToNotReceivingWallet","onchainDeliverToUnverified","onchainMarketsUnavailable","onchainMarketCatalogUnreadable","onchainMarketChainRequired","onchainMarketVariantRequired","onchainMarketTokenRequired","onchainSiteChainUnreadable","onchainWalletChainUnreadable","onchainWalletInactive","onchainWalletNotLinked","onchainWalletNotUsable","onchainWalletPickAmbiguous","onchainWalletWrongNetwork","signerLacksRight","signerUnavailable","signingGrantAmbiguous","signingGrantExpired","nativeGrantExpiryReapprovalRequired","nativeBalanceUnavailable","solanaFinalityUnavailable","tronSolidBlockUnavailable","signingGrantPolicyUnreadable","signingGrantPolicyChecking","signingGrantRequired","signingGrantTokenNotKept","signingGrantTokenNotPayable","solverChainUnready","walletChainMismatch","walletNotUsableByYou","walletNotVerifiedForAce","walletNotWhitelisted","withdrawalChainUnsupported","accountFeeUnavailable","comparisonCostsUnavailable","connectionListingUnavailable","feeUnverified","noPool","noPrice","noSize","notFilled","notYetPublished","priceArithmetic","priceSourceNone","referenceMidUnavailable","settlementPrecisionUnavailable","accountSetupIncomplete","admissionUnavailable","advancedAccountEligibilityUnavailable","advancedAccountStateInconsistent","advancedConnectionDisabled","advancedConnectionNotConfigured","advancedConnectionPaused","advancedSettlementNeedsVerification","advancedModeDisabled","advancedNotAvailableForAccount","advancedNotEnabledForAccount","allowanceUnavailable","acrossCapacityExceeded","relayCapacityExceeded","acrossChainNotCarried","cctpChainNotCarried","cctpWalletRequired","acrossWalletRequired","walletBrowserSigningEvmOnly","relayChainNotCarried","apiKeyAdvancedWalletUnsupported","apiKeyOrganisationWalletScopeRequired","grantCapExceeded","amountAboveMaximum","amountBelowMinimum","belowVenueMinimum","amountUnreadable","amountsUnreadable","askFirst","authorityUnavailable","automationNeverAsks","availabilityUnreadable","backgroundNeverAsks","balanceUnreadable","defaultsUnavailable","walletHasNoAddress","walletUnavailable","bondAmountUnreadable","bondAssetUnreadable","catalogueUnavailable","chainFamilyUnknown","chainUnrecorded","clientSessionRequired","clockUnreadable","comingSoon","connectionChanged","connectionRevoked","corridorInvalid","credential","deadlineExceeded","defaultsLoading","deliverToCalldataUnsupported","deliverToTagUnsupported","deliverToNotPermitted","deliverToUnreadable","tradingPermissionRequired","directPatienceHarvest","economicallyInferior","exactAmountConflictsWithCard","exactAmountConflictsWithQuote","exactOutputDeliveryUnsupported","exactOutputEstimateUnavailable","exactRouteHypothesisUnavailable","expiredOnArrival","expiryUnknown","feeUnreadable","filteredOut","firmAskRefused","firmAskFundsTimedOut","firmAskPreparationTimedOut","quotePreparationFailed","firmAskAdmissionTimedOut","seliniFirmAskMarketsTimedOut","seliniFirmAskHandoffTimedOut","seliniFirmAskBeforePostTimedOut","seliniFirmAskValidationTimedOut","seliniFirmAskResponseTimedOut","seliniFirmAskTransportFailure","rfqQuoteRefusedQuoteNotAvailable","rfqQuoteRefusedQuotingDisabled","rfqQuoteRefusedClientRfqNotConfigured","rfqQuoteRefusedClientProfileNotLoaded","rfqQuoteRefusedMarketDisabled","rfqQuoteRefusedInvalidQuantity","rfqQuoteRefusedInvalidSide","rfqQuoteRefusedInvalidCurrency","rfqQuoteRefusedPricePrecisionError","rfqQuoteRefusedRfqError","rfqQuoteRefused","venueOutcomeIndeterminate","venueBodyUnreadable","venueResponseUnmapped","venueRateLimited","venueQuoteAdmissionExpired","placementSignedPastDeadline","quoteIdentityConflict","symbolUnsupported","marketSymbolAmbiguous","firmAskPrincipalRequired","indicativeRequested","freshnessUnknown","fundingWindow","insufficientLiquidity","venueRelationship","venueRelationshipUnavailable","lpUnknown","mfaEnrolmentRequired","mfaRequired","minimumUnverified","mixedNetworks","netReceivedUnavailable","networkUnrecorded","noAddress","noCard","noFetcher","noInventory","noLaneForPair","noLegs","noOnChainCorridor","noPlannedVenue","noQuote","noRpc","notConnected","notEligible","notExecutable","orderPayloadMissing","outsideTopComposites","pairUnmapped","sellChainInvalid","permissionsUnreadable","placeOrderNotPermitted","prefundingMarkerUnreadable","prefundingRequired","indicative","priceOnRequest","priceOutOfRange","priceProtectionInvalid","pricingBookOnly","productNotQuoted","protocolChainMissing","providerFeeTreatmentUnknown","providerSiteUnrecorded","quoteIdUnissuable","quoteNotHeld","buyChainInvalid","buyAmountUnsupported","exactOutputDebitUnavailable","pairNotServed","accountFundingReadUnverified","quoteReconfirmationRequired","quoteRejected","keyrockSecurityCatalogueUnavailable","venueAnsweredAfterQuoteWindow","venueQuoteIntentMismatch","payExactUnsupported","receiveWalletNotServed","referenceMidUnreadable","referencePriceUnavailable","registryUnavailable","releaseRecheckUnavailable","requestUnbuildable","routeLegChainUnknown","routeLegUnnamed","routeLegUnplanned","routeUnavailable","secondFactorUnreadable","shortfallUnmeasured","shortfallUnreadable","singleChainVenue","siteChainUnreadable","sizeNotEligible","submitOrderBlocked","takerOnboardingIncomplete","tierNotQuoted","tradePaused","venueConnectionStorageUnavailable","venueDataStale","venueDeclined","venueNotConnected","venueNotEnabledForWorkspace","venueNotListed","venueTradeKeyUnavailable","venueTradeScopeRequired","venueTradeUnreadable","venueUnavailable","walletRefused","withdrawalFeeUnread","acrossRoutedViaCctp","apiKeyOrganisationWalletNotAllowlisted","balanceAvailabilityUnconfirmed","bankDestinationUnavailable","bebopJamKeyNotEnabled","bebopJamQuoteDeclined","bebopTokenUnavailable","relayCurrencyUnsupported","relaySwapImpactTooHigh","tetrafiSolverCallbackNotAuthorized","tradingLinkSnapshotChanged","tradingLinkSnapshotUnavailable","uniswapChainReadUnavailable","uniswapInsufficientDepth","uniswapQuoteUnreadable","uniswapUnwrapAboveDailyCap","uniswapUnwrapAboveTradeCap","uniswapRouteNotGranted","venueNotEnabled","askLimitReached","balanceMeaningUnconfirmed","bebopQuorumWalletTooSlow","bebopWalletQuorumUnreadable","bebopBrowserWalletUnsupported","connectionNotConfigured","deliveryAccountNetworkUnavailable","deliveryAccountUnavailable","destinationCannotSendOnChain","dexReferencePriceUnavailable","firmQuoteLimited","fundingAccountNetworkUnavailable","fundingAccountUnavailable","insufficientDepth","missingPermission","needsNativeGas","needsWallet","notPriced","payInTermsUnavailable","pilotTradeCapExceeded","pilotMinimumAboveTradeCap","platformFeeRateUnavailable","pricingBookPairUnserved","settlementDeclarationUnavailable","settlementNotAvailable","timedOut","timedOutBeforeSend","tradingSourceNetworkUnavailable","tradingSourceNotLinked","venueEnablementRechecking","venueEnablementUnavailable","venueListingTimedOut","venuePoliciesUnavailable","multiliquidPaused","multiliquidAssetNotAccepted","walletNotAllowlistedForAsset","walletBlacklisted","multiliquidPriceInvalid","multiliquidStablePriceOutOfBand","multiliquidInsufficientLiquidity","multiliquidProviderPrefundUnavailable","multiliquidDailyLimitReached","eligibilityUnverifiable","multiliquidInsufficientBalance","multiliquidWalletFundsInsufficient","multiliquidInsufficientAllowance","walletTokenAccountFrozen","multiliquidAmountInTooHigh","multiliquidAmountOutTooLow","multiliquidInsufficientLpFeeBalance","multiliquidTransferFeeNotSupported","multiliquidParticipantUnavailable","multiliquidChainNotSupported","multiliquidObservationWalletUnavailable","privyMultiliquidArrayPinsUnsupported","cctpDestinationNotGranted","signingGrantNativeOnly","quoteRejectedInsufficientBalance","walletGateUnreadable","policyBlocked","treasuryPolicyApprovalRequired","destinationTagRequired","destinationTagMismatch","destinationTagInvalid","acrossBasicLaneNotEnabled","creditReadUnavailable","exactOutputFirmAskUnsupported","grantEndsBeforeVenueFunding","jurisdictionNotServed","pairUnsupported","requesterJurisdictionUnknown","venueAccountHasNoKey","venueAssessmentRequired","venueConnectionInvalid","venueReenableRequiresNewCredentials","venueTradingPaused","balanceNotObserved","notPermitted","balanceNotPermitted","gasUnchecked","catalogueWaitStateUnavailable","cctpRouteUpgrading","creditOnly","dexReferencePriceMissing","quoteAuthorityUnavailable","venueRoutingOff","venueRoutingStateUnavailable","indicativeUnavailable","marketUnavailable","noReferenceMid","observationBindingUnavailable","quoteIdUnavailable","stalePrice"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.reason","typeLabel":"enum\u003cstring> | null"},"remediation":{"oneOf":[{"description":"A machine-readable recovery hint the refusing step gave.","type":"string","uniqueKey":"details.oneOf.1.remediation.oneOf.0","typeLabel":"string"},{"description":"A machine-readable recovery hint the refusing step gave.","type":"null","uniqueKey":"details.oneOf.1.remediation.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.remediation","typeLabel":"string | null"},"retryAfter":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.retryAfter.oneOf.0","typeLabel":"null"},{"type":"string","description":"Every `429`, and a `503` that knows: when to try again, as an ISO 8601 duration. The\n`Retry-After` header carries the same wait in whole seconds.","format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"PT120S","uniqueKey":"details.oneOf.1.retryAfter.oneOf.1","typeLabel":"string\u003cduration>"}],"uniqueKey":"details.oneOf.1.retryAfter","typeLabel":"null | string\u003cduration>"},"value":{"oneOf":[{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"string","uniqueKey":"details.oneOf.1.value.oneOf.0","typeLabel":"string"},{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"null","uniqueKey":"details.oneOf.1.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.value","typeLabel":"string | null"}},"additionalProperties":{"description":"Any further detail the code carries (for example `stepUpSubject`, `balanceShortfall`,\n`minimumAmount`), each named in camelCase.","uniqueKey":"details.oneOf.1.additionalProperties","typeLabel":"any"},"uniqueKey":"details.oneOf.1","typeLabel":"object"}],"uniqueKey":"details","typeLabel":"null | object"},"next":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.0","typeLabel":"null"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["order"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.1","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["preflight"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.2","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["transactions","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["transact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"transactions":{"items":{"description":"One transaction the Taker sends itself (an approval included).","properties":{"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].chain","typeLabel":"string"},"data":{"description":"Hex calldata (`0x…`).","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].data","typeLabel":"string"},"to":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].to","typeLabel":"string"},"value":{"description":"Native value in base units, as a decimal string.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].value","typeLabel":"string"}},"required":["chain","data","to","value"],"type":"object","uniqueKey":"next.oneOf.3.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.3.transactions","typeLabel":"object[]"}},"uniqueKey":"next.oneOf.3","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["typedData","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["sign"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"typedData":{"oneOf":[{"isRequired":true}],"isRequired":true,"uniqueKey":"next.oneOf.4.typedData","typeLabel":"any"}},"uniqueKey":"next.oneOf.4","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["fund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"instructions":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.5.instructions.oneOf.0","typeLabel":"null"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["asset","chainRef","networkCode","networkConfirmed","address","tokenContract","observedAt","expiresAt","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.address","typeLabel":"string"},"asset":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.asset","typeLabel":"string"},"chainRef":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.chainRef","typeLabel":"string"},"expiresAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.expiresAt","typeLabel":"string\u003cdate-time>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["venueDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"networkCode":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkCode","typeLabel":"string"},"networkConfirmed":{"description":"False when the venue reports no network for this address: `networkCode`\nis empty and `chainRef` is the caller's selection, which the customer\nmust confirm with the venue before sending.","type":"boolean","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkConfirmed","typeLabel":"boolean"},"observedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.observedAt","typeLabel":"string\u003cdate-time>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.tokenContract","typeLabel":"string"},"memo":{"oneOf":[{"type":"string","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.1","typeLabel":"null"}],"uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo","typeLabel":"string | null"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.1","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["accountLast4","amount","bankDisplayName","expiresAt","kind","revealRef"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"accountLast4":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.0","typeLabel":"null"},{"type":"string","description":"An already-qualified masked suffix, not external account ownership proof.","maxLength":4,"minLength":1,"pattern":"^[A-Za-z0-9]{1,4}$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"A1b2","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4","typeLabel":"null | string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.amount","typeLabel":"string"},"bankDisplayName":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName","typeLabel":"string | null"},"expiresAt":{"oneOf":[{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt","typeLabel":"string\u003cdate-time> | null"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["bankDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"revealRef":{"description":"Non-bearer lookup metadata for deposit instructions. Possession grants no authority. Each reveal requires current wallet-view authority and exact account membership; an API key additionally needs treasury_read. Missing and foreign accounts share a refusal. Quotes never fetch these instructions.","properties":{"connectionId":{"description":"The native held leg's exact connection id, never a first/sole-connection guess.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.currency","typeLabel":"string"},"providerBankId":{"oneOf":[{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.0","typeLabel":"string"},{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId","typeLabel":"string | null"}},"required":["connectionId","currency","providerBankId"],"type":"object","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef","typeLabel":"object"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.2","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["walletId","address","chain","asset","tokenContract","amount","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.address","typeLabel":"string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["walletTopUp"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.tokenContract","typeLabel":"string"},"walletId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.walletId","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.3","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["chain","amount","asset","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["nativeGas"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.4","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["connectionId","amount","currency","reason","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.amount","typeLabel":"string"},"connectionId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.currency","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["depositFirstNotOffered"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.reason","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.5","typeLabel":"object"}],"uniqueKey":"next.oneOf.5.instructions","typeLabel":"null · object · object · object · object · object"}},"uniqueKey":"next.oneOf.5","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["needs","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["requote"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.6.kind","typeLabel":"enum\u003cstring>"},"needs":{"items":{"description":"A funding or delivery selection a requote needs filled. An empty `needs` means requote as is.\n\nNew values may be added; treat unknown values as other.","enum":["wallet:evm","wallet:solana","wallet:tron","account","bankAccount","deliverTo"],"type":"string","x-extensible-enum":true,"uniqueKey":"next.oneOf.6.needs.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.6.needs","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"next.oneOf.6","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["search"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.7.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.7","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["retryAfter","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["wait"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.8.kind","typeLabel":"enum\u003cstring>"},"retryAfter":{"description":"An ISO 8601 duration, e.g. PT3S or PT2M.","examples":["PT120S"],"format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","type":"string","isRequired":true,"uniqueKey":"next.oneOf.8.retryAfter","typeLabel":"string\u003cduration>"}},"uniqueKey":"next.oneOf.8","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["reference","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["contact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.9.kind","typeLabel":"enum\u003cstring>"},"reference":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.9.reference","typeLabel":"string"}},"uniqueKey":"next.oneOf.9","typeLabel":"object"}],"uniqueKey":"next","typeLabel":"null · object · object · object · object · object · object · object · object · object"},"requestId":{"oneOf":[{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"string","uniqueKey":"requestId.oneOf.0","typeLabel":"string"},{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"null","uniqueKey":"requestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"requestId","typeLabel":"string | null"}},"required":["error","docUrl","retryable","message","timestamp"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"docUrl":"\u003cstring>","error":"\u003cstring>","message":"\u003cstring>","retryable":true,"timestamp":"2023-11-07T05:31:56Z","details":{"capabilityBlockers":[{"code":"WORKSPACE_NOT_FOUND","estimate":"minutes","message":"\u003cstring>","unlockStep":"finishOnboarding","currentlyDue":["\u003cstring>"]}],"conflicts":["\u003cstring>"],"consentedWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"currentWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"field":"\u003cstring>","reason":"clockUnavailable","remediation":"\u003cstring>","retryAfter":"PT120S","value":"\u003cstring>"},"next":{"kind":"order"},"requestId":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Another member's order without permission to view the workspace's compliance records (RECORDS_OUT_OF_SCOPE); scope=mine with an API key; umbrella without permission to view the broker's client compliance records; maker outside an LP workspace or without permission to view settlements; the umbrella or maker projection with an API key (JWT_REQUIRED); an API key without trades_read","headers":{"Deprecation":{"description":"Present when this operation is deprecated: an RFC 9745 structured date, for example @1792443399. Absence makes no deprecation claim.","schema":{"type":"string"}},"Link":{"description":"When deprecation applies, links to the deprecation notice with rel=deprecation; other link relations may also be sent.","schema":{"type":"string"}},"RateLimit":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.1 structured dictionary, for example `limit=100, remaining=41, reset=19`. Remaining is the admitted decision's headroom; reset is whole seconds until quota next becomes available, not an epoch or a promise of a full burst refill. On a limiter's 429 remaining is 0 and reset equals Retry-After. Accepted key, route and per-address policies are compared by lowest remaining, then longest reset. A venue refusal without a known quota makes no rate-limit header claim.","schema":{"type":"string"}},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.5: quota and window in seconds, for example `100;w=60`. Sent on every status when a finite limiter counted the request. The applicable policy closest to exhaustion is reported (section 3.2): lowest remaining, then longest reset. On a limiter's 429 this is exactly the policy that refused; if a venue discloses no quota, the headers are absent.","schema":{"type":"string"}},"Sunset":{"description":"Present when retirement is scheduled: the HTTP-date after which this version may stop being served (RFC 8594).","schema":{"type":"string"}},"x-request-id":{"description":"The request's id: the caller's valid `X-Request-Id`, or a generated UUID v4. Quote it when asking for support.","schema":{"type":"string"}}},"exampleType":"generated"},"cece8832-373f-483f-8269-986fbabb9478":{"content":{"application/json":{"schema":{"description":"The shared refusal body of every integrator operation, including edge-layer errors.\n`error` is an open, stable machine-readable code; `docUrl` links to its documentation and\n`retryable` says whether an unchanged request may succeed later. `message` is for people,\nnot matching. `timestamp` is RFC 3339 UTC; optional `requestId` mirrors `X-Request-Id`.\nOptional `next` describes recovery and `details` carries code-specific information.\nHandle known codes and fall back on the HTTP status for unknown ones.","properties":{"docUrl":{"description":"Stable documentation for this refusal code.","type":"string","isRequired":true,"uniqueKey":"docUrl","typeLabel":"string"},"error":{"description":"The machine-readable code, for example `QUOTE_EXPIRED`.","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"description":"What happened, in words a person can read. Not for matching.","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"retryable":{"description":"Whether an unchanged request may succeed later, from the error catalogue.","type":"boolean","isRequired":true,"uniqueKey":"retryable","typeLabel":"boolean"},"timestamp":{"description":"When the refusal was made, as an RFC 3339 UTC timestamp.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"details":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.0","typeLabel":"null"},{"type":"object","description":"The code's detail. Each field is present only on the codes named beside it; other codes may\ncarry further fields, named in camelCase, which a client may ignore.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"capabilityBlockers":{"oneOf":[{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].estimate","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].message","typeLabel":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].unlockStep","typeLabel":"enum\u003cstring>"},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue","typeLabel":"string[]"}},"required":["code","message","unlockStep","estimate"],"type":"object","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0","typeLabel":"object[]"},{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string"},"type":"array"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true},"message":{"type":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true}},"required":["code","message","unlockStep","estimate"],"type":"object"},"type":"null","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.capabilityBlockers","typeLabel":"object[] | null"},"conflicts":{"oneOf":[{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string","uniqueKey":"details.oneOf.1.conflicts.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.conflicts.oneOf.0","typeLabel":"string[]"},{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.conflicts.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.conflicts","typeLabel":"string[] | null"},"consentedWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the order consented to (the quoted\nwindow, or the one its `settlementWindowId` named), which is no longer the one assigned.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow","typeLabel":"null | object"},"currentWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the server assigns the trade now.\nSend the same quote again with `settlementWindowId` set to `details.currentWindow.windowId`\nto consent to it.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow","typeLabel":"null | object"},"field":{"oneOf":[{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"string","uniqueKey":"details.oneOf.1.field.oneOf.0","typeLabel":"string"},{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"null","uniqueKey":"details.oneOf.1.field.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.field","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","enum":["clockUnavailable","assetUnsupported","referenceUndeclarable","referenceNotAdmitted","referenceStale","referenceDepth","marketDataUnavailable","calibrationUnavailable","livePriceUnavailable","lpQuoteUnavailable","platformJurisdictionCountryRequired","platformJurisdictionUnavailable","platformJurisdictionBlocked","venueJurisdictionExcluded","workspaceJurisdictionRequired","jurisdictionRegionRequired","jurisdictionUnavailable","venueKeyRefusedLikelyIpAllowlist","venueWithdrawalDestinationNotWhitelisted","adapterPayloadSerializationFailed","basicVenueAccountsUnavailable","billingPaymentOverdue","walletNotOnChain","ccxtVenueRequiresCexLane","executionStageDisabled","jurisdictionUnproven","onboardedVenuesUnavailable","onchainAccountDefaultWalletRequired","onchainAccountDefaultWalletUnavailable","onchainAccountWalletRequired","onchainAssetDecimalsMismatch","onchainAssetIdentityMismatch","onchainAssetUnmapped","onchainAssetVariantFiltered","onchainWalletUnavailable","onchainCatalogueUnavailable","onchainDeliverToNotReceivingWallet","onchainDeliverToUnverified","onchainMarketsUnavailable","onchainMarketCatalogUnreadable","onchainMarketChainRequired","onchainMarketVariantRequired","onchainMarketTokenRequired","onchainSiteChainUnreadable","onchainWalletChainUnreadable","onchainWalletInactive","onchainWalletNotLinked","onchainWalletNotUsable","onchainWalletPickAmbiguous","onchainWalletWrongNetwork","signerLacksRight","signerUnavailable","signingGrantAmbiguous","signingGrantExpired","nativeGrantExpiryReapprovalRequired","nativeBalanceUnavailable","solanaFinalityUnavailable","tronSolidBlockUnavailable","signingGrantPolicyUnreadable","signingGrantPolicyChecking","signingGrantRequired","signingGrantTokenNotKept","signingGrantTokenNotPayable","solverChainUnready","walletChainMismatch","walletNotUsableByYou","walletNotVerifiedForAce","walletNotWhitelisted","withdrawalChainUnsupported","accountFeeUnavailable","comparisonCostsUnavailable","connectionListingUnavailable","feeUnverified","noPool","noPrice","noSize","notFilled","notYetPublished","priceArithmetic","priceSourceNone","referenceMidUnavailable","settlementPrecisionUnavailable","accountSetupIncomplete","admissionUnavailable","advancedAccountEligibilityUnavailable","advancedAccountStateInconsistent","advancedConnectionDisabled","advancedConnectionNotConfigured","advancedConnectionPaused","advancedSettlementNeedsVerification","advancedModeDisabled","advancedNotAvailableForAccount","advancedNotEnabledForAccount","allowanceUnavailable","acrossCapacityExceeded","relayCapacityExceeded","acrossChainNotCarried","cctpChainNotCarried","cctpWalletRequired","acrossWalletRequired","walletBrowserSigningEvmOnly","relayChainNotCarried","apiKeyAdvancedWalletUnsupported","apiKeyOrganisationWalletScopeRequired","grantCapExceeded","amountAboveMaximum","amountBelowMinimum","belowVenueMinimum","amountUnreadable","amountsUnreadable","askFirst","authorityUnavailable","automationNeverAsks","availabilityUnreadable","backgroundNeverAsks","balanceUnreadable","defaultsUnavailable","walletHasNoAddress","walletUnavailable","bondAmountUnreadable","bondAssetUnreadable","catalogueUnavailable","chainFamilyUnknown","chainUnrecorded","clientSessionRequired","clockUnreadable","comingSoon","connectionChanged","connectionRevoked","corridorInvalid","credential","deadlineExceeded","defaultsLoading","deliverToCalldataUnsupported","deliverToTagUnsupported","deliverToNotPermitted","deliverToUnreadable","tradingPermissionRequired","directPatienceHarvest","economicallyInferior","exactAmountConflictsWithCard","exactAmountConflictsWithQuote","exactOutputDeliveryUnsupported","exactOutputEstimateUnavailable","exactRouteHypothesisUnavailable","expiredOnArrival","expiryUnknown","feeUnreadable","filteredOut","firmAskRefused","firmAskFundsTimedOut","firmAskPreparationTimedOut","quotePreparationFailed","firmAskAdmissionTimedOut","seliniFirmAskMarketsTimedOut","seliniFirmAskHandoffTimedOut","seliniFirmAskBeforePostTimedOut","seliniFirmAskValidationTimedOut","seliniFirmAskResponseTimedOut","seliniFirmAskTransportFailure","rfqQuoteRefusedQuoteNotAvailable","rfqQuoteRefusedQuotingDisabled","rfqQuoteRefusedClientRfqNotConfigured","rfqQuoteRefusedClientProfileNotLoaded","rfqQuoteRefusedMarketDisabled","rfqQuoteRefusedInvalidQuantity","rfqQuoteRefusedInvalidSide","rfqQuoteRefusedInvalidCurrency","rfqQuoteRefusedPricePrecisionError","rfqQuoteRefusedRfqError","rfqQuoteRefused","venueOutcomeIndeterminate","venueBodyUnreadable","venueResponseUnmapped","venueRateLimited","venueQuoteAdmissionExpired","placementSignedPastDeadline","quoteIdentityConflict","symbolUnsupported","marketSymbolAmbiguous","firmAskPrincipalRequired","indicativeRequested","freshnessUnknown","fundingWindow","insufficientLiquidity","venueRelationship","venueRelationshipUnavailable","lpUnknown","mfaEnrolmentRequired","mfaRequired","minimumUnverified","mixedNetworks","netReceivedUnavailable","networkUnrecorded","noAddress","noCard","noFetcher","noInventory","noLaneForPair","noLegs","noOnChainCorridor","noPlannedVenue","noQuote","noRpc","notConnected","notEligible","notExecutable","orderPayloadMissing","outsideTopComposites","pairUnmapped","sellChainInvalid","permissionsUnreadable","placeOrderNotPermitted","prefundingMarkerUnreadable","prefundingRequired","indicative","priceOnRequest","priceOutOfRange","priceProtectionInvalid","pricingBookOnly","productNotQuoted","protocolChainMissing","providerFeeTreatmentUnknown","providerSiteUnrecorded","quoteIdUnissuable","quoteNotHeld","buyChainInvalid","buyAmountUnsupported","exactOutputDebitUnavailable","pairNotServed","accountFundingReadUnverified","quoteReconfirmationRequired","quoteRejected","keyrockSecurityCatalogueUnavailable","venueAnsweredAfterQuoteWindow","venueQuoteIntentMismatch","payExactUnsupported","receiveWalletNotServed","referenceMidUnreadable","referencePriceUnavailable","registryUnavailable","releaseRecheckUnavailable","requestUnbuildable","routeLegChainUnknown","routeLegUnnamed","routeLegUnplanned","routeUnavailable","secondFactorUnreadable","shortfallUnmeasured","shortfallUnreadable","singleChainVenue","siteChainUnreadable","sizeNotEligible","submitOrderBlocked","takerOnboardingIncomplete","tierNotQuoted","tradePaused","venueConnectionStorageUnavailable","venueDataStale","venueDeclined","venueNotConnected","venueNotEnabledForWorkspace","venueNotListed","venueTradeKeyUnavailable","venueTradeScopeRequired","venueTradeUnreadable","venueUnavailable","walletRefused","withdrawalFeeUnread","acrossRoutedViaCctp","apiKeyOrganisationWalletNotAllowlisted","balanceAvailabilityUnconfirmed","bankDestinationUnavailable","bebopJamKeyNotEnabled","bebopJamQuoteDeclined","bebopTokenUnavailable","relayCurrencyUnsupported","relaySwapImpactTooHigh","tetrafiSolverCallbackNotAuthorized","tradingLinkSnapshotChanged","tradingLinkSnapshotUnavailable","uniswapChainReadUnavailable","uniswapInsufficientDepth","uniswapQuoteUnreadable","uniswapUnwrapAboveDailyCap","uniswapUnwrapAboveTradeCap","uniswapRouteNotGranted","venueNotEnabled","askLimitReached","balanceMeaningUnconfirmed","bebopQuorumWalletTooSlow","bebopWalletQuorumUnreadable","bebopBrowserWalletUnsupported","connectionNotConfigured","deliveryAccountNetworkUnavailable","deliveryAccountUnavailable","destinationCannotSendOnChain","dexReferencePriceUnavailable","firmQuoteLimited","fundingAccountNetworkUnavailable","fundingAccountUnavailable","insufficientDepth","missingPermission","needsNativeGas","needsWallet","notPriced","payInTermsUnavailable","pilotTradeCapExceeded","pilotMinimumAboveTradeCap","platformFeeRateUnavailable","pricingBookPairUnserved","settlementDeclarationUnavailable","settlementNotAvailable","timedOut","timedOutBeforeSend","tradingSourceNetworkUnavailable","tradingSourceNotLinked","venueEnablementRechecking","venueEnablementUnavailable","venueListingTimedOut","venuePoliciesUnavailable","multiliquidPaused","multiliquidAssetNotAccepted","walletNotAllowlistedForAsset","walletBlacklisted","multiliquidPriceInvalid","multiliquidStablePriceOutOfBand","multiliquidInsufficientLiquidity","multiliquidProviderPrefundUnavailable","multiliquidDailyLimitReached","eligibilityUnverifiable","multiliquidInsufficientBalance","multiliquidWalletFundsInsufficient","multiliquidInsufficientAllowance","walletTokenAccountFrozen","multiliquidAmountInTooHigh","multiliquidAmountOutTooLow","multiliquidInsufficientLpFeeBalance","multiliquidTransferFeeNotSupported","multiliquidParticipantUnavailable","multiliquidChainNotSupported","multiliquidObservationWalletUnavailable","privyMultiliquidArrayPinsUnsupported","cctpDestinationNotGranted","signingGrantNativeOnly","quoteRejectedInsufficientBalance","walletGateUnreadable","policyBlocked","treasuryPolicyApprovalRequired","destinationTagRequired","destinationTagMismatch","destinationTagInvalid","acrossBasicLaneNotEnabled","creditReadUnavailable","exactOutputFirmAskUnsupported","grantEndsBeforeVenueFunding","jurisdictionNotServed","pairUnsupported","requesterJurisdictionUnknown","venueAccountHasNoKey","venueAssessmentRequired","venueConnectionInvalid","venueReenableRequiresNewCredentials","venueTradingPaused","balanceNotObserved","notPermitted","balanceNotPermitted","gasUnchecked","catalogueWaitStateUnavailable","cctpRouteUpgrading","creditOnly","dexReferencePriceMissing","quoteAuthorityUnavailable","venueRoutingOff","venueRoutingStateUnavailable","indicativeUnavailable","marketUnavailable","noReferenceMid","observationBindingUnavailable","quoteIdUnavailable","stalePrice"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.reason","typeLabel":"enum\u003cstring> | null"},"remediation":{"oneOf":[{"description":"A machine-readable recovery hint the refusing step gave.","type":"string","uniqueKey":"details.oneOf.1.remediation.oneOf.0","typeLabel":"string"},{"description":"A machine-readable recovery hint the refusing step gave.","type":"null","uniqueKey":"details.oneOf.1.remediation.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.remediation","typeLabel":"string | null"},"retryAfter":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.retryAfter.oneOf.0","typeLabel":"null"},{"type":"string","description":"Every `429`, and a `503` that knows: when to try again, as an ISO 8601 duration. The\n`Retry-After` header carries the same wait in whole seconds.","format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"PT120S","uniqueKey":"details.oneOf.1.retryAfter.oneOf.1","typeLabel":"string\u003cduration>"}],"uniqueKey":"details.oneOf.1.retryAfter","typeLabel":"null | string\u003cduration>"},"value":{"oneOf":[{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"string","uniqueKey":"details.oneOf.1.value.oneOf.0","typeLabel":"string"},{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"null","uniqueKey":"details.oneOf.1.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.value","typeLabel":"string | null"}},"additionalProperties":{"description":"Any further detail the code carries (for example `stepUpSubject`, `balanceShortfall`,\n`minimumAmount`), each named in camelCase.","uniqueKey":"details.oneOf.1.additionalProperties","typeLabel":"any"},"uniqueKey":"details.oneOf.1","typeLabel":"object"}],"uniqueKey":"details","typeLabel":"null | object"},"next":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.0","typeLabel":"null"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["order"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.1","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["preflight"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.2","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["transactions","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["transact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"transactions":{"items":{"description":"One transaction the Taker sends itself (an approval included).","properties":{"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].chain","typeLabel":"string"},"data":{"description":"Hex calldata (`0x…`).","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].data","typeLabel":"string"},"to":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].to","typeLabel":"string"},"value":{"description":"Native value in base units, as a decimal string.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].value","typeLabel":"string"}},"required":["chain","data","to","value"],"type":"object","uniqueKey":"next.oneOf.3.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.3.transactions","typeLabel":"object[]"}},"uniqueKey":"next.oneOf.3","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["typedData","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["sign"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"typedData":{"oneOf":[{"isRequired":true}],"isRequired":true,"uniqueKey":"next.oneOf.4.typedData","typeLabel":"any"}},"uniqueKey":"next.oneOf.4","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["fund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"instructions":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.5.instructions.oneOf.0","typeLabel":"null"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["asset","chainRef","networkCode","networkConfirmed","address","tokenContract","observedAt","expiresAt","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.address","typeLabel":"string"},"asset":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.asset","typeLabel":"string"},"chainRef":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.chainRef","typeLabel":"string"},"expiresAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.expiresAt","typeLabel":"string\u003cdate-time>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["venueDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"networkCode":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkCode","typeLabel":"string"},"networkConfirmed":{"description":"False when the venue reports no network for this address: `networkCode`\nis empty and `chainRef` is the caller's selection, which the customer\nmust confirm with the venue before sending.","type":"boolean","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkConfirmed","typeLabel":"boolean"},"observedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.observedAt","typeLabel":"string\u003cdate-time>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.tokenContract","typeLabel":"string"},"memo":{"oneOf":[{"type":"string","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.1","typeLabel":"null"}],"uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo","typeLabel":"string | null"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.1","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["accountLast4","amount","bankDisplayName","expiresAt","kind","revealRef"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"accountLast4":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.0","typeLabel":"null"},{"type":"string","description":"An already-qualified masked suffix, not external account ownership proof.","maxLength":4,"minLength":1,"pattern":"^[A-Za-z0-9]{1,4}$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"A1b2","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4","typeLabel":"null | string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.amount","typeLabel":"string"},"bankDisplayName":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName","typeLabel":"string | null"},"expiresAt":{"oneOf":[{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt","typeLabel":"string\u003cdate-time> | null"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["bankDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"revealRef":{"description":"Non-bearer lookup metadata for deposit instructions. Possession grants no authority. Each reveal requires current wallet-view authority and exact account membership; an API key additionally needs treasury_read. Missing and foreign accounts share a refusal. Quotes never fetch these instructions.","properties":{"connectionId":{"description":"The native held leg's exact connection id, never a first/sole-connection guess.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.currency","typeLabel":"string"},"providerBankId":{"oneOf":[{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.0","typeLabel":"string"},{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId","typeLabel":"string | null"}},"required":["connectionId","currency","providerBankId"],"type":"object","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef","typeLabel":"object"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.2","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["walletId","address","chain","asset","tokenContract","amount","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.address","typeLabel":"string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["walletTopUp"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.tokenContract","typeLabel":"string"},"walletId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.walletId","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.3","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["chain","amount","asset","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["nativeGas"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.4","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["connectionId","amount","currency","reason","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.amount","typeLabel":"string"},"connectionId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.currency","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["depositFirstNotOffered"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.reason","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.5","typeLabel":"object"}],"uniqueKey":"next.oneOf.5.instructions","typeLabel":"null · object · object · object · object · object"}},"uniqueKey":"next.oneOf.5","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["needs","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["requote"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.6.kind","typeLabel":"enum\u003cstring>"},"needs":{"items":{"description":"A funding or delivery selection a requote needs filled. An empty `needs` means requote as is.\n\nNew values may be added; treat unknown values as other.","enum":["wallet:evm","wallet:solana","wallet:tron","account","bankAccount","deliverTo"],"type":"string","x-extensible-enum":true,"uniqueKey":"next.oneOf.6.needs.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.6.needs","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"next.oneOf.6","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["search"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.7.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.7","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["retryAfter","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["wait"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.8.kind","typeLabel":"enum\u003cstring>"},"retryAfter":{"description":"An ISO 8601 duration, e.g. PT3S or PT2M.","examples":["PT120S"],"format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","type":"string","isRequired":true,"uniqueKey":"next.oneOf.8.retryAfter","typeLabel":"string\u003cduration>"}},"uniqueKey":"next.oneOf.8","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["reference","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["contact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.9.kind","typeLabel":"enum\u003cstring>"},"reference":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.9.reference","typeLabel":"string"}},"uniqueKey":"next.oneOf.9","typeLabel":"object"}],"uniqueKey":"next","typeLabel":"null · object · object · object · object · object · object · object · object · object"},"requestId":{"oneOf":[{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"string","uniqueKey":"requestId.oneOf.0","typeLabel":"string"},{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"null","uniqueKey":"requestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"requestId","typeLabel":"string | null"}},"required":["error","docUrl","retryable","message","timestamp"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"docUrl":"\u003cstring>","error":"\u003cstring>","message":"\u003cstring>","retryable":true,"timestamp":"2023-11-07T05:31:56Z","details":{"capabilityBlockers":[{"code":"WORKSPACE_NOT_FOUND","estimate":"minutes","message":"\u003cstring>","unlockStep":"finishOnboarding","currentlyDue":["\u003cstring>"]}],"conflicts":["\u003cstring>"],"consentedWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"currentWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"field":"\u003cstring>","reason":"clockUnavailable","remediation":"\u003cstring>","retryAfter":"PT120S","value":"\u003cstring>"},"next":{"kind":"order"},"requestId":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Trade not found in this projection, or WORKSPACE_NOT_FOUND","headers":{"Deprecation":{"description":"Present when this operation is deprecated: an RFC 9745 structured date, for example @1792443399. Absence makes no deprecation claim.","schema":{"type":"string"}},"Link":{"description":"When deprecation applies, links to the deprecation notice with rel=deprecation; other link relations may also be sent.","schema":{"type":"string"}},"RateLimit":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.1 structured dictionary, for example `limit=100, remaining=41, reset=19`. Remaining is the admitted decision's headroom; reset is whole seconds until quota next becomes available, not an epoch or a promise of a full burst refill. On a limiter's 429 remaining is 0 and reset equals Retry-After. Accepted key, route and per-address policies are compared by lowest remaining, then longest reset. A venue refusal without a known quota makes no rate-limit header claim.","schema":{"type":"string"}},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.5: quota and window in seconds, for example `100;w=60`. Sent on every status when a finite limiter counted the request. The applicable policy closest to exhaustion is reported (section 3.2): lowest remaining, then longest reset. On a limiter's 429 this is exactly the policy that refused; if a venue discloses no quota, the headers are absent.","schema":{"type":"string"}},"Sunset":{"description":"Present when retirement is scheduled: the HTTP-date after which this version may stop being served (RFC 8594).","schema":{"type":"string"}},"x-request-id":{"description":"The request's id: the caller's valid `X-Request-Id`, or a generated UUID v4. Quote it when asking for support.","schema":{"type":"string"}}},"exampleType":"generated"},"6b6a70af-a5fc-4427-a980-2102c756db30":{"content":{"application/json":{"schema":{"description":"The shared refusal body of every integrator operation, including edge-layer errors.\n`error` is an open, stable machine-readable code; `docUrl` links to its documentation and\n`retryable` says whether an unchanged request may succeed later. `message` is for people,\nnot matching. `timestamp` is RFC 3339 UTC; optional `requestId` mirrors `X-Request-Id`.\nOptional `next` describes recovery and `details` carries code-specific information.\nHandle known codes and fall back on the HTTP status for unknown ones.","properties":{"docUrl":{"description":"Stable documentation for this refusal code.","type":"string","isRequired":true,"uniqueKey":"docUrl","typeLabel":"string"},"error":{"description":"The machine-readable code, for example `QUOTE_EXPIRED`.","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"description":"What happened, in words a person can read. Not for matching.","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"retryable":{"description":"Whether an unchanged request may succeed later, from the error catalogue.","type":"boolean","isRequired":true,"uniqueKey":"retryable","typeLabel":"boolean"},"timestamp":{"description":"When the refusal was made, as an RFC 3339 UTC timestamp.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"details":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.0","typeLabel":"null"},{"type":"object","description":"The code's detail. Each field is present only on the codes named beside it; other codes may\ncarry further fields, named in camelCase, which a client may ignore.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"capabilityBlockers":{"oneOf":[{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].estimate","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].message","typeLabel":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].unlockStep","typeLabel":"enum\u003cstring>"},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue","typeLabel":"string[]"}},"required":["code","message","unlockStep","estimate"],"type":"object","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0","typeLabel":"object[]"},{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string"},"type":"array"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true},"message":{"type":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true}},"required":["code","message","unlockStep","estimate"],"type":"object"},"type":"null","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.capabilityBlockers","typeLabel":"object[] | null"},"conflicts":{"oneOf":[{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string","uniqueKey":"details.oneOf.1.conflicts.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.conflicts.oneOf.0","typeLabel":"string[]"},{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.conflicts.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.conflicts","typeLabel":"string[] | null"},"consentedWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the order consented to (the quoted\nwindow, or the one its `settlementWindowId` named), which is no longer the one assigned.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow","typeLabel":"null | object"},"currentWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the server assigns the trade now.\nSend the same quote again with `settlementWindowId` set to `details.currentWindow.windowId`\nto consent to it.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow","typeLabel":"null | object"},"field":{"oneOf":[{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"string","uniqueKey":"details.oneOf.1.field.oneOf.0","typeLabel":"string"},{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"null","uniqueKey":"details.oneOf.1.field.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.field","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","enum":["clockUnavailable","assetUnsupported","referenceUndeclarable","referenceNotAdmitted","referenceStale","referenceDepth","marketDataUnavailable","calibrationUnavailable","livePriceUnavailable","lpQuoteUnavailable","platformJurisdictionCountryRequired","platformJurisdictionUnavailable","platformJurisdictionBlocked","venueJurisdictionExcluded","workspaceJurisdictionRequired","jurisdictionRegionRequired","jurisdictionUnavailable","venueKeyRefusedLikelyIpAllowlist","venueWithdrawalDestinationNotWhitelisted","adapterPayloadSerializationFailed","basicVenueAccountsUnavailable","billingPaymentOverdue","walletNotOnChain","ccxtVenueRequiresCexLane","executionStageDisabled","jurisdictionUnproven","onboardedVenuesUnavailable","onchainAccountDefaultWalletRequired","onchainAccountDefaultWalletUnavailable","onchainAccountWalletRequired","onchainAssetDecimalsMismatch","onchainAssetIdentityMismatch","onchainAssetUnmapped","onchainAssetVariantFiltered","onchainWalletUnavailable","onchainCatalogueUnavailable","onchainDeliverToNotReceivingWallet","onchainDeliverToUnverified","onchainMarketsUnavailable","onchainMarketCatalogUnreadable","onchainMarketChainRequired","onchainMarketVariantRequired","onchainMarketTokenRequired","onchainSiteChainUnreadable","onchainWalletChainUnreadable","onchainWalletInactive","onchainWalletNotLinked","onchainWalletNotUsable","onchainWalletPickAmbiguous","onchainWalletWrongNetwork","signerLacksRight","signerUnavailable","signingGrantAmbiguous","signingGrantExpired","nativeGrantExpiryReapprovalRequired","nativeBalanceUnavailable","solanaFinalityUnavailable","tronSolidBlockUnavailable","signingGrantPolicyUnreadable","signingGrantPolicyChecking","signingGrantRequired","signingGrantTokenNotKept","signingGrantTokenNotPayable","solverChainUnready","walletChainMismatch","walletNotUsableByYou","walletNotVerifiedForAce","walletNotWhitelisted","withdrawalChainUnsupported","accountFeeUnavailable","comparisonCostsUnavailable","connectionListingUnavailable","feeUnverified","noPool","noPrice","noSize","notFilled","notYetPublished","priceArithmetic","priceSourceNone","referenceMidUnavailable","settlementPrecisionUnavailable","accountSetupIncomplete","admissionUnavailable","advancedAccountEligibilityUnavailable","advancedAccountStateInconsistent","advancedConnectionDisabled","advancedConnectionNotConfigured","advancedConnectionPaused","advancedSettlementNeedsVerification","advancedModeDisabled","advancedNotAvailableForAccount","advancedNotEnabledForAccount","allowanceUnavailable","acrossCapacityExceeded","relayCapacityExceeded","acrossChainNotCarried","cctpChainNotCarried","cctpWalletRequired","acrossWalletRequired","walletBrowserSigningEvmOnly","relayChainNotCarried","apiKeyAdvancedWalletUnsupported","apiKeyOrganisationWalletScopeRequired","grantCapExceeded","amountAboveMaximum","amountBelowMinimum","belowVenueMinimum","amountUnreadable","amountsUnreadable","askFirst","authorityUnavailable","automationNeverAsks","availabilityUnreadable","backgroundNeverAsks","balanceUnreadable","defaultsUnavailable","walletHasNoAddress","walletUnavailable","bondAmountUnreadable","bondAssetUnreadable","catalogueUnavailable","chainFamilyUnknown","chainUnrecorded","clientSessionRequired","clockUnreadable","comingSoon","connectionChanged","connectionRevoked","corridorInvalid","credential","deadlineExceeded","defaultsLoading","deliverToCalldataUnsupported","deliverToTagUnsupported","deliverToNotPermitted","deliverToUnreadable","tradingPermissionRequired","directPatienceHarvest","economicallyInferior","exactAmountConflictsWithCard","exactAmountConflictsWithQuote","exactOutputDeliveryUnsupported","exactOutputEstimateUnavailable","exactRouteHypothesisUnavailable","expiredOnArrival","expiryUnknown","feeUnreadable","filteredOut","firmAskRefused","firmAskFundsTimedOut","firmAskPreparationTimedOut","quotePreparationFailed","firmAskAdmissionTimedOut","seliniFirmAskMarketsTimedOut","seliniFirmAskHandoffTimedOut","seliniFirmAskBeforePostTimedOut","seliniFirmAskValidationTimedOut","seliniFirmAskResponseTimedOut","seliniFirmAskTransportFailure","rfqQuoteRefusedQuoteNotAvailable","rfqQuoteRefusedQuotingDisabled","rfqQuoteRefusedClientRfqNotConfigured","rfqQuoteRefusedClientProfileNotLoaded","rfqQuoteRefusedMarketDisabled","rfqQuoteRefusedInvalidQuantity","rfqQuoteRefusedInvalidSide","rfqQuoteRefusedInvalidCurrency","rfqQuoteRefusedPricePrecisionError","rfqQuoteRefusedRfqError","rfqQuoteRefused","venueOutcomeIndeterminate","venueBodyUnreadable","venueResponseUnmapped","venueRateLimited","venueQuoteAdmissionExpired","placementSignedPastDeadline","quoteIdentityConflict","symbolUnsupported","marketSymbolAmbiguous","firmAskPrincipalRequired","indicativeRequested","freshnessUnknown","fundingWindow","insufficientLiquidity","venueRelationship","venueRelationshipUnavailable","lpUnknown","mfaEnrolmentRequired","mfaRequired","minimumUnverified","mixedNetworks","netReceivedUnavailable","networkUnrecorded","noAddress","noCard","noFetcher","noInventory","noLaneForPair","noLegs","noOnChainCorridor","noPlannedVenue","noQuote","noRpc","notConnected","notEligible","notExecutable","orderPayloadMissing","outsideTopComposites","pairUnmapped","sellChainInvalid","permissionsUnreadable","placeOrderNotPermitted","prefundingMarkerUnreadable","prefundingRequired","indicative","priceOnRequest","priceOutOfRange","priceProtectionInvalid","pricingBookOnly","productNotQuoted","protocolChainMissing","providerFeeTreatmentUnknown","providerSiteUnrecorded","quoteIdUnissuable","quoteNotHeld","buyChainInvalid","buyAmountUnsupported","exactOutputDebitUnavailable","pairNotServed","accountFundingReadUnverified","quoteReconfirmationRequired","quoteRejected","keyrockSecurityCatalogueUnavailable","venueAnsweredAfterQuoteWindow","venueQuoteIntentMismatch","payExactUnsupported","receiveWalletNotServed","referenceMidUnreadable","referencePriceUnavailable","registryUnavailable","releaseRecheckUnavailable","requestUnbuildable","routeLegChainUnknown","routeLegUnnamed","routeLegUnplanned","routeUnavailable","secondFactorUnreadable","shortfallUnmeasured","shortfallUnreadable","singleChainVenue","siteChainUnreadable","sizeNotEligible","submitOrderBlocked","takerOnboardingIncomplete","tierNotQuoted","tradePaused","venueConnectionStorageUnavailable","venueDataStale","venueDeclined","venueNotConnected","venueNotEnabledForWorkspace","venueNotListed","venueTradeKeyUnavailable","venueTradeScopeRequired","venueTradeUnreadable","venueUnavailable","walletRefused","withdrawalFeeUnread","acrossRoutedViaCctp","apiKeyOrganisationWalletNotAllowlisted","balanceAvailabilityUnconfirmed","bankDestinationUnavailable","bebopJamKeyNotEnabled","bebopJamQuoteDeclined","bebopTokenUnavailable","relayCurrencyUnsupported","relaySwapImpactTooHigh","tetrafiSolverCallbackNotAuthorized","tradingLinkSnapshotChanged","tradingLinkSnapshotUnavailable","uniswapChainReadUnavailable","uniswapInsufficientDepth","uniswapQuoteUnreadable","uniswapUnwrapAboveDailyCap","uniswapUnwrapAboveTradeCap","uniswapRouteNotGranted","venueNotEnabled","askLimitReached","balanceMeaningUnconfirmed","bebopQuorumWalletTooSlow","bebopWalletQuorumUnreadable","bebopBrowserWalletUnsupported","connectionNotConfigured","deliveryAccountNetworkUnavailable","deliveryAccountUnavailable","destinationCannotSendOnChain","dexReferencePriceUnavailable","firmQuoteLimited","fundingAccountNetworkUnavailable","fundingAccountUnavailable","insufficientDepth","missingPermission","needsNativeGas","needsWallet","notPriced","payInTermsUnavailable","pilotTradeCapExceeded","pilotMinimumAboveTradeCap","platformFeeRateUnavailable","pricingBookPairUnserved","settlementDeclarationUnavailable","settlementNotAvailable","timedOut","timedOutBeforeSend","tradingSourceNetworkUnavailable","tradingSourceNotLinked","venueEnablementRechecking","venueEnablementUnavailable","venueListingTimedOut","venuePoliciesUnavailable","multiliquidPaused","multiliquidAssetNotAccepted","walletNotAllowlistedForAsset","walletBlacklisted","multiliquidPriceInvalid","multiliquidStablePriceOutOfBand","multiliquidInsufficientLiquidity","multiliquidProviderPrefundUnavailable","multiliquidDailyLimitReached","eligibilityUnverifiable","multiliquidInsufficientBalance","multiliquidWalletFundsInsufficient","multiliquidInsufficientAllowance","walletTokenAccountFrozen","multiliquidAmountInTooHigh","multiliquidAmountOutTooLow","multiliquidInsufficientLpFeeBalance","multiliquidTransferFeeNotSupported","multiliquidParticipantUnavailable","multiliquidChainNotSupported","multiliquidObservationWalletUnavailable","privyMultiliquidArrayPinsUnsupported","cctpDestinationNotGranted","signingGrantNativeOnly","quoteRejectedInsufficientBalance","walletGateUnreadable","policyBlocked","treasuryPolicyApprovalRequired","destinationTagRequired","destinationTagMismatch","destinationTagInvalid","acrossBasicLaneNotEnabled","creditReadUnavailable","exactOutputFirmAskUnsupported","grantEndsBeforeVenueFunding","jurisdictionNotServed","pairUnsupported","requesterJurisdictionUnknown","venueAccountHasNoKey","venueAssessmentRequired","venueConnectionInvalid","venueReenableRequiresNewCredentials","venueTradingPaused","balanceNotObserved","notPermitted","balanceNotPermitted","gasUnchecked","catalogueWaitStateUnavailable","cctpRouteUpgrading","creditOnly","dexReferencePriceMissing","quoteAuthorityUnavailable","venueRoutingOff","venueRoutingStateUnavailable","indicativeUnavailable","marketUnavailable","noReferenceMid","observationBindingUnavailable","quoteIdUnavailable","stalePrice"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.reason","typeLabel":"enum\u003cstring> | null"},"remediation":{"oneOf":[{"description":"A machine-readable recovery hint the refusing step gave.","type":"string","uniqueKey":"details.oneOf.1.remediation.oneOf.0","typeLabel":"string"},{"description":"A machine-readable recovery hint the refusing step gave.","type":"null","uniqueKey":"details.oneOf.1.remediation.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.remediation","typeLabel":"string | null"},"retryAfter":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.retryAfter.oneOf.0","typeLabel":"null"},{"type":"string","description":"Every `429`, and a `503` that knows: when to try again, as an ISO 8601 duration. The\n`Retry-After` header carries the same wait in whole seconds.","format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"PT120S","uniqueKey":"details.oneOf.1.retryAfter.oneOf.1","typeLabel":"string\u003cduration>"}],"uniqueKey":"details.oneOf.1.retryAfter","typeLabel":"null | string\u003cduration>"},"value":{"oneOf":[{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"string","uniqueKey":"details.oneOf.1.value.oneOf.0","typeLabel":"string"},{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"null","uniqueKey":"details.oneOf.1.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.value","typeLabel":"string | null"}},"additionalProperties":{"description":"Any further detail the code carries (for example `stepUpSubject`, `balanceShortfall`,\n`minimumAmount`), each named in camelCase.","uniqueKey":"details.oneOf.1.additionalProperties","typeLabel":"any"},"uniqueKey":"details.oneOf.1","typeLabel":"object"}],"uniqueKey":"details","typeLabel":"null | object"},"next":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.0","typeLabel":"null"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["order"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.1","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["preflight"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.2","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["transactions","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["transact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"transactions":{"items":{"description":"One transaction the Taker sends itself (an approval included).","properties":{"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].chain","typeLabel":"string"},"data":{"description":"Hex calldata (`0x…`).","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].data","typeLabel":"string"},"to":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].to","typeLabel":"string"},"value":{"description":"Native value in base units, as a decimal string.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].value","typeLabel":"string"}},"required":["chain","data","to","value"],"type":"object","uniqueKey":"next.oneOf.3.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.3.transactions","typeLabel":"object[]"}},"uniqueKey":"next.oneOf.3","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["typedData","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["sign"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"typedData":{"oneOf":[{"isRequired":true}],"isRequired":true,"uniqueKey":"next.oneOf.4.typedData","typeLabel":"any"}},"uniqueKey":"next.oneOf.4","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["fund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"instructions":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.5.instructions.oneOf.0","typeLabel":"null"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["asset","chainRef","networkCode","networkConfirmed","address","tokenContract","observedAt","expiresAt","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.address","typeLabel":"string"},"asset":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.asset","typeLabel":"string"},"chainRef":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.chainRef","typeLabel":"string"},"expiresAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.expiresAt","typeLabel":"string\u003cdate-time>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["venueDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"networkCode":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkCode","typeLabel":"string"},"networkConfirmed":{"description":"False when the venue reports no network for this address: `networkCode`\nis empty and `chainRef` is the caller's selection, which the customer\nmust confirm with the venue before sending.","type":"boolean","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkConfirmed","typeLabel":"boolean"},"observedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.observedAt","typeLabel":"string\u003cdate-time>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.tokenContract","typeLabel":"string"},"memo":{"oneOf":[{"type":"string","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.1","typeLabel":"null"}],"uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo","typeLabel":"string | null"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.1","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["accountLast4","amount","bankDisplayName","expiresAt","kind","revealRef"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"accountLast4":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.0","typeLabel":"null"},{"type":"string","description":"An already-qualified masked suffix, not external account ownership proof.","maxLength":4,"minLength":1,"pattern":"^[A-Za-z0-9]{1,4}$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"A1b2","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4","typeLabel":"null | string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.amount","typeLabel":"string"},"bankDisplayName":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName","typeLabel":"string | null"},"expiresAt":{"oneOf":[{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt","typeLabel":"string\u003cdate-time> | null"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["bankDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"revealRef":{"description":"Non-bearer lookup metadata for deposit instructions. Possession grants no authority. Each reveal requires current wallet-view authority and exact account membership; an API key additionally needs treasury_read. Missing and foreign accounts share a refusal. Quotes never fetch these instructions.","properties":{"connectionId":{"description":"The native held leg's exact connection id, never a first/sole-connection guess.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.currency","typeLabel":"string"},"providerBankId":{"oneOf":[{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.0","typeLabel":"string"},{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId","typeLabel":"string | null"}},"required":["connectionId","currency","providerBankId"],"type":"object","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef","typeLabel":"object"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.2","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["walletId","address","chain","asset","tokenContract","amount","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.address","typeLabel":"string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["walletTopUp"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.tokenContract","typeLabel":"string"},"walletId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.walletId","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.3","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["chain","amount","asset","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["nativeGas"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.4","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["connectionId","amount","currency","reason","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.amount","typeLabel":"string"},"connectionId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.currency","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["depositFirstNotOffered"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.reason","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.5","typeLabel":"object"}],"uniqueKey":"next.oneOf.5.instructions","typeLabel":"null · object · object · object · object · object"}},"uniqueKey":"next.oneOf.5","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["needs","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["requote"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.6.kind","typeLabel":"enum\u003cstring>"},"needs":{"items":{"description":"A funding or delivery selection a requote needs filled. An empty `needs` means requote as is.\n\nNew values may be added; treat unknown values as other.","enum":["wallet:evm","wallet:solana","wallet:tron","account","bankAccount","deliverTo"],"type":"string","x-extensible-enum":true,"uniqueKey":"next.oneOf.6.needs.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.6.needs","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"next.oneOf.6","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["search"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.7.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.7","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["retryAfter","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["wait"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.8.kind","typeLabel":"enum\u003cstring>"},"retryAfter":{"description":"An ISO 8601 duration, e.g. PT3S or PT2M.","examples":["PT120S"],"format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","type":"string","isRequired":true,"uniqueKey":"next.oneOf.8.retryAfter","typeLabel":"string\u003cduration>"}},"uniqueKey":"next.oneOf.8","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["reference","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["contact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.9.kind","typeLabel":"enum\u003cstring>"},"reference":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.9.reference","typeLabel":"string"}},"uniqueKey":"next.oneOf.9","typeLabel":"object"}],"uniqueKey":"next","typeLabel":"null · object · object · object · object · object · object · object · object · object"},"requestId":{"oneOf":[{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"string","uniqueKey":"requestId.oneOf.0","typeLabel":"string"},{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"null","uniqueKey":"requestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"requestId","typeLabel":"string | null"}},"required":["error","docUrl","retryable","message","timestamp"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"docUrl":"\u003cstring>","error":"\u003cstring>","message":"\u003cstring>","retryable":true,"timestamp":"2023-11-07T05:31:56Z","details":{"capabilityBlockers":[{"code":"WORKSPACE_NOT_FOUND","estimate":"minutes","message":"\u003cstring>","unlockStep":"finishOnboarding","currentlyDue":["\u003cstring>"]}],"conflicts":["\u003cstring>"],"consentedWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"currentWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"field":"\u003cstring>","reason":"clockUnavailable","remediation":"\u003cstring>","retryAfter":"PT120S","value":"\u003cstring>"},"next":{"kind":"order"},"requestId":"\u003cstring>"}}},"exampleType":"generated"}},"description":"The request timed out before a response was ready.","headers":{"Deprecation":{"description":"Present when this operation is deprecated: an RFC 9745 structured date, for example @1792443399. Absence makes no deprecation claim.","schema":{"type":"string"}},"Link":{"description":"When deprecation applies, links to the deprecation notice with rel=deprecation; other link relations may also be sent.","schema":{"type":"string"}},"RateLimit":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.1 structured dictionary, for example `limit=100, remaining=41, reset=19`. Remaining is the admitted decision's headroom; reset is whole seconds until quota next becomes available, not an epoch or a promise of a full burst refill. On a limiter's 429 remaining is 0 and reset equals Retry-After. Accepted key, route and per-address policies are compared by lowest remaining, then longest reset. A venue refusal without a known quota makes no rate-limit header claim.","schema":{"type":"string"}},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.5: quota and window in seconds, for example `100;w=60`. Sent on every status when a finite limiter counted the request. The applicable policy closest to exhaustion is reported (section 3.2): lowest remaining, then longest reset. On a limiter's 429 this is exactly the policy that refused; if a venue discloses no quota, the headers are absent.","schema":{"type":"string"}},"Sunset":{"description":"Present when retirement is scheduled: the HTTP-date after which this version may stop being served (RFC 8594).","schema":{"type":"string"}},"x-request-id":{"description":"The request's id: the caller's valid `X-Request-Id`, or a generated UUID v4. Quote it when asking for support.","schema":{"type":"string"}}},"exampleType":"generated"},"0c638c2e-9201-489e-a4be-d0f05c10d05c":{"content":{"application/json":{"schema":{"description":"The shared refusal body of every integrator operation, including edge-layer errors.\n`error` is an open, stable machine-readable code; `docUrl` links to its documentation and\n`retryable` says whether an unchanged request may succeed later. `message` is for people,\nnot matching. `timestamp` is RFC 3339 UTC; optional `requestId` mirrors `X-Request-Id`.\nOptional `next` describes recovery and `details` carries code-specific information.\nHandle known codes and fall back on the HTTP status for unknown ones.","properties":{"docUrl":{"description":"Stable documentation for this refusal code.","type":"string","isRequired":true,"uniqueKey":"docUrl","typeLabel":"string"},"error":{"description":"The machine-readable code, for example `QUOTE_EXPIRED`.","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"description":"What happened, in words a person can read. Not for matching.","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"retryable":{"description":"Whether an unchanged request may succeed later, from the error catalogue.","type":"boolean","isRequired":true,"uniqueKey":"retryable","typeLabel":"boolean"},"timestamp":{"description":"When the refusal was made, as an RFC 3339 UTC timestamp.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"details":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.0","typeLabel":"null"},{"type":"object","description":"The code's detail. Each field is present only on the codes named beside it; other codes may\ncarry further fields, named in camelCase, which a client may ignore.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"capabilityBlockers":{"oneOf":[{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].estimate","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].message","typeLabel":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].unlockStep","typeLabel":"enum\u003cstring>"},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue","typeLabel":"string[]"}},"required":["code","message","unlockStep","estimate"],"type":"object","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0","typeLabel":"object[]"},{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string"},"type":"array"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true},"message":{"type":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true}},"required":["code","message","unlockStep","estimate"],"type":"object"},"type":"null","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.capabilityBlockers","typeLabel":"object[] | null"},"conflicts":{"oneOf":[{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string","uniqueKey":"details.oneOf.1.conflicts.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.conflicts.oneOf.0","typeLabel":"string[]"},{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.conflicts.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.conflicts","typeLabel":"string[] | null"},"consentedWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the order consented to (the quoted\nwindow, or the one its `settlementWindowId` named), which is no longer the one assigned.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow","typeLabel":"null | object"},"currentWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the server assigns the trade now.\nSend the same quote again with `settlementWindowId` set to `details.currentWindow.windowId`\nto consent to it.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow","typeLabel":"null | object"},"field":{"oneOf":[{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"string","uniqueKey":"details.oneOf.1.field.oneOf.0","typeLabel":"string"},{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"null","uniqueKey":"details.oneOf.1.field.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.field","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","enum":["clockUnavailable","assetUnsupported","referenceUndeclarable","referenceNotAdmitted","referenceStale","referenceDepth","marketDataUnavailable","calibrationUnavailable","livePriceUnavailable","lpQuoteUnavailable","platformJurisdictionCountryRequired","platformJurisdictionUnavailable","platformJurisdictionBlocked","venueJurisdictionExcluded","workspaceJurisdictionRequired","jurisdictionRegionRequired","jurisdictionUnavailable","venueKeyRefusedLikelyIpAllowlist","venueWithdrawalDestinationNotWhitelisted","adapterPayloadSerializationFailed","basicVenueAccountsUnavailable","billingPaymentOverdue","walletNotOnChain","ccxtVenueRequiresCexLane","executionStageDisabled","jurisdictionUnproven","onboardedVenuesUnavailable","onchainAccountDefaultWalletRequired","onchainAccountDefaultWalletUnavailable","onchainAccountWalletRequired","onchainAssetDecimalsMismatch","onchainAssetIdentityMismatch","onchainAssetUnmapped","onchainAssetVariantFiltered","onchainWalletUnavailable","onchainCatalogueUnavailable","onchainDeliverToNotReceivingWallet","onchainDeliverToUnverified","onchainMarketsUnavailable","onchainMarketCatalogUnreadable","onchainMarketChainRequired","onchainMarketVariantRequired","onchainMarketTokenRequired","onchainSiteChainUnreadable","onchainWalletChainUnreadable","onchainWalletInactive","onchainWalletNotLinked","onchainWalletNotUsable","onchainWalletPickAmbiguous","onchainWalletWrongNetwork","signerLacksRight","signerUnavailable","signingGrantAmbiguous","signingGrantExpired","nativeGrantExpiryReapprovalRequired","nativeBalanceUnavailable","solanaFinalityUnavailable","tronSolidBlockUnavailable","signingGrantPolicyUnreadable","signingGrantPolicyChecking","signingGrantRequired","signingGrantTokenNotKept","signingGrantTokenNotPayable","solverChainUnready","walletChainMismatch","walletNotUsableByYou","walletNotVerifiedForAce","walletNotWhitelisted","withdrawalChainUnsupported","accountFeeUnavailable","comparisonCostsUnavailable","connectionListingUnavailable","feeUnverified","noPool","noPrice","noSize","notFilled","notYetPublished","priceArithmetic","priceSourceNone","referenceMidUnavailable","settlementPrecisionUnavailable","accountSetupIncomplete","admissionUnavailable","advancedAccountEligibilityUnavailable","advancedAccountStateInconsistent","advancedConnectionDisabled","advancedConnectionNotConfigured","advancedConnectionPaused","advancedSettlementNeedsVerification","advancedModeDisabled","advancedNotAvailableForAccount","advancedNotEnabledForAccount","allowanceUnavailable","acrossCapacityExceeded","relayCapacityExceeded","acrossChainNotCarried","cctpChainNotCarried","cctpWalletRequired","acrossWalletRequired","walletBrowserSigningEvmOnly","relayChainNotCarried","apiKeyAdvancedWalletUnsupported","apiKeyOrganisationWalletScopeRequired","grantCapExceeded","amountAboveMaximum","amountBelowMinimum","belowVenueMinimum","amountUnreadable","amountsUnreadable","askFirst","authorityUnavailable","automationNeverAsks","availabilityUnreadable","backgroundNeverAsks","balanceUnreadable","defaultsUnavailable","walletHasNoAddress","walletUnavailable","bondAmountUnreadable","bondAssetUnreadable","catalogueUnavailable","chainFamilyUnknown","chainUnrecorded","clientSessionRequired","clockUnreadable","comingSoon","connectionChanged","connectionRevoked","corridorInvalid","credential","deadlineExceeded","defaultsLoading","deliverToCalldataUnsupported","deliverToTagUnsupported","deliverToNotPermitted","deliverToUnreadable","tradingPermissionRequired","directPatienceHarvest","economicallyInferior","exactAmountConflictsWithCard","exactAmountConflictsWithQuote","exactOutputDeliveryUnsupported","exactOutputEstimateUnavailable","exactRouteHypothesisUnavailable","expiredOnArrival","expiryUnknown","feeUnreadable","filteredOut","firmAskRefused","firmAskFundsTimedOut","firmAskPreparationTimedOut","quotePreparationFailed","firmAskAdmissionTimedOut","seliniFirmAskMarketsTimedOut","seliniFirmAskHandoffTimedOut","seliniFirmAskBeforePostTimedOut","seliniFirmAskValidationTimedOut","seliniFirmAskResponseTimedOut","seliniFirmAskTransportFailure","rfqQuoteRefusedQuoteNotAvailable","rfqQuoteRefusedQuotingDisabled","rfqQuoteRefusedClientRfqNotConfigured","rfqQuoteRefusedClientProfileNotLoaded","rfqQuoteRefusedMarketDisabled","rfqQuoteRefusedInvalidQuantity","rfqQuoteRefusedInvalidSide","rfqQuoteRefusedInvalidCurrency","rfqQuoteRefusedPricePrecisionError","rfqQuoteRefusedRfqError","rfqQuoteRefused","venueOutcomeIndeterminate","venueBodyUnreadable","venueResponseUnmapped","venueRateLimited","venueQuoteAdmissionExpired","placementSignedPastDeadline","quoteIdentityConflict","symbolUnsupported","marketSymbolAmbiguous","firmAskPrincipalRequired","indicativeRequested","freshnessUnknown","fundingWindow","insufficientLiquidity","venueRelationship","venueRelationshipUnavailable","lpUnknown","mfaEnrolmentRequired","mfaRequired","minimumUnverified","mixedNetworks","netReceivedUnavailable","networkUnrecorded","noAddress","noCard","noFetcher","noInventory","noLaneForPair","noLegs","noOnChainCorridor","noPlannedVenue","noQuote","noRpc","notConnected","notEligible","notExecutable","orderPayloadMissing","outsideTopComposites","pairUnmapped","sellChainInvalid","permissionsUnreadable","placeOrderNotPermitted","prefundingMarkerUnreadable","prefundingRequired","indicative","priceOnRequest","priceOutOfRange","priceProtectionInvalid","pricingBookOnly","productNotQuoted","protocolChainMissing","providerFeeTreatmentUnknown","providerSiteUnrecorded","quoteIdUnissuable","quoteNotHeld","buyChainInvalid","buyAmountUnsupported","exactOutputDebitUnavailable","pairNotServed","accountFundingReadUnverified","quoteReconfirmationRequired","quoteRejected","keyrockSecurityCatalogueUnavailable","venueAnsweredAfterQuoteWindow","venueQuoteIntentMismatch","payExactUnsupported","receiveWalletNotServed","referenceMidUnreadable","referencePriceUnavailable","registryUnavailable","releaseRecheckUnavailable","requestUnbuildable","routeLegChainUnknown","routeLegUnnamed","routeLegUnplanned","routeUnavailable","secondFactorUnreadable","shortfallUnmeasured","shortfallUnreadable","singleChainVenue","siteChainUnreadable","sizeNotEligible","submitOrderBlocked","takerOnboardingIncomplete","tierNotQuoted","tradePaused","venueConnectionStorageUnavailable","venueDataStale","venueDeclined","venueNotConnected","venueNotEnabledForWorkspace","venueNotListed","venueTradeKeyUnavailable","venueTradeScopeRequired","venueTradeUnreadable","venueUnavailable","walletRefused","withdrawalFeeUnread","acrossRoutedViaCctp","apiKeyOrganisationWalletNotAllowlisted","balanceAvailabilityUnconfirmed","bankDestinationUnavailable","bebopJamKeyNotEnabled","bebopJamQuoteDeclined","bebopTokenUnavailable","relayCurrencyUnsupported","relaySwapImpactTooHigh","tetrafiSolverCallbackNotAuthorized","tradingLinkSnapshotChanged","tradingLinkSnapshotUnavailable","uniswapChainReadUnavailable","uniswapInsufficientDepth","uniswapQuoteUnreadable","uniswapUnwrapAboveDailyCap","uniswapUnwrapAboveTradeCap","uniswapRouteNotGranted","venueNotEnabled","askLimitReached","balanceMeaningUnconfirmed","bebopQuorumWalletTooSlow","bebopWalletQuorumUnreadable","bebopBrowserWalletUnsupported","connectionNotConfigured","deliveryAccountNetworkUnavailable","deliveryAccountUnavailable","destinationCannotSendOnChain","dexReferencePriceUnavailable","firmQuoteLimited","fundingAccountNetworkUnavailable","fundingAccountUnavailable","insufficientDepth","missingPermission","needsNativeGas","needsWallet","notPriced","payInTermsUnavailable","pilotTradeCapExceeded","pilotMinimumAboveTradeCap","platformFeeRateUnavailable","pricingBookPairUnserved","settlementDeclarationUnavailable","settlementNotAvailable","timedOut","timedOutBeforeSend","tradingSourceNetworkUnavailable","tradingSourceNotLinked","venueEnablementRechecking","venueEnablementUnavailable","venueListingTimedOut","venuePoliciesUnavailable","multiliquidPaused","multiliquidAssetNotAccepted","walletNotAllowlistedForAsset","walletBlacklisted","multiliquidPriceInvalid","multiliquidStablePriceOutOfBand","multiliquidInsufficientLiquidity","multiliquidProviderPrefundUnavailable","multiliquidDailyLimitReached","eligibilityUnverifiable","multiliquidInsufficientBalance","multiliquidWalletFundsInsufficient","multiliquidInsufficientAllowance","walletTokenAccountFrozen","multiliquidAmountInTooHigh","multiliquidAmountOutTooLow","multiliquidInsufficientLpFeeBalance","multiliquidTransferFeeNotSupported","multiliquidParticipantUnavailable","multiliquidChainNotSupported","multiliquidObservationWalletUnavailable","privyMultiliquidArrayPinsUnsupported","cctpDestinationNotGranted","signingGrantNativeOnly","quoteRejectedInsufficientBalance","walletGateUnreadable","policyBlocked","treasuryPolicyApprovalRequired","destinationTagRequired","destinationTagMismatch","destinationTagInvalid","acrossBasicLaneNotEnabled","creditReadUnavailable","exactOutputFirmAskUnsupported","grantEndsBeforeVenueFunding","jurisdictionNotServed","pairUnsupported","requesterJurisdictionUnknown","venueAccountHasNoKey","venueAssessmentRequired","venueConnectionInvalid","venueReenableRequiresNewCredentials","venueTradingPaused","balanceNotObserved","notPermitted","balanceNotPermitted","gasUnchecked","catalogueWaitStateUnavailable","cctpRouteUpgrading","creditOnly","dexReferencePriceMissing","quoteAuthorityUnavailable","venueRoutingOff","venueRoutingStateUnavailable","indicativeUnavailable","marketUnavailable","noReferenceMid","observationBindingUnavailable","quoteIdUnavailable","stalePrice"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.reason","typeLabel":"enum\u003cstring> | null"},"remediation":{"oneOf":[{"description":"A machine-readable recovery hint the refusing step gave.","type":"string","uniqueKey":"details.oneOf.1.remediation.oneOf.0","typeLabel":"string"},{"description":"A machine-readable recovery hint the refusing step gave.","type":"null","uniqueKey":"details.oneOf.1.remediation.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.remediation","typeLabel":"string | null"},"retryAfter":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.retryAfter.oneOf.0","typeLabel":"null"},{"type":"string","description":"Every `429`, and a `503` that knows: when to try again, as an ISO 8601 duration. The\n`Retry-After` header carries the same wait in whole seconds.","format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"PT120S","uniqueKey":"details.oneOf.1.retryAfter.oneOf.1","typeLabel":"string\u003cduration>"}],"uniqueKey":"details.oneOf.1.retryAfter","typeLabel":"null | string\u003cduration>"},"value":{"oneOf":[{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"string","uniqueKey":"details.oneOf.1.value.oneOf.0","typeLabel":"string"},{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"null","uniqueKey":"details.oneOf.1.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.value","typeLabel":"string | null"}},"additionalProperties":{"description":"Any further detail the code carries (for example `stepUpSubject`, `balanceShortfall`,\n`minimumAmount`), each named in camelCase.","uniqueKey":"details.oneOf.1.additionalProperties","typeLabel":"any"},"uniqueKey":"details.oneOf.1","typeLabel":"object"}],"uniqueKey":"details","typeLabel":"null | object"},"next":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.0","typeLabel":"null"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["order"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.1","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["preflight"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.2","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["transactions","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["transact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"transactions":{"items":{"description":"One transaction the Taker sends itself (an approval included).","properties":{"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].chain","typeLabel":"string"},"data":{"description":"Hex calldata (`0x…`).","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].data","typeLabel":"string"},"to":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].to","typeLabel":"string"},"value":{"description":"Native value in base units, as a decimal string.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].value","typeLabel":"string"}},"required":["chain","data","to","value"],"type":"object","uniqueKey":"next.oneOf.3.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.3.transactions","typeLabel":"object[]"}},"uniqueKey":"next.oneOf.3","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["typedData","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["sign"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"typedData":{"oneOf":[{"isRequired":true}],"isRequired":true,"uniqueKey":"next.oneOf.4.typedData","typeLabel":"any"}},"uniqueKey":"next.oneOf.4","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["fund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"instructions":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.5.instructions.oneOf.0","typeLabel":"null"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["asset","chainRef","networkCode","networkConfirmed","address","tokenContract","observedAt","expiresAt","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.address","typeLabel":"string"},"asset":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.asset","typeLabel":"string"},"chainRef":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.chainRef","typeLabel":"string"},"expiresAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.expiresAt","typeLabel":"string\u003cdate-time>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["venueDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"networkCode":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkCode","typeLabel":"string"},"networkConfirmed":{"description":"False when the venue reports no network for this address: `networkCode`\nis empty and `chainRef` is the caller's selection, which the customer\nmust confirm with the venue before sending.","type":"boolean","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkConfirmed","typeLabel":"boolean"},"observedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.observedAt","typeLabel":"string\u003cdate-time>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.tokenContract","typeLabel":"string"},"memo":{"oneOf":[{"type":"string","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.1","typeLabel":"null"}],"uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo","typeLabel":"string | null"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.1","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["accountLast4","amount","bankDisplayName","expiresAt","kind","revealRef"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"accountLast4":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.0","typeLabel":"null"},{"type":"string","description":"An already-qualified masked suffix, not external account ownership proof.","maxLength":4,"minLength":1,"pattern":"^[A-Za-z0-9]{1,4}$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"A1b2","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4","typeLabel":"null | string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.amount","typeLabel":"string"},"bankDisplayName":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName","typeLabel":"string | null"},"expiresAt":{"oneOf":[{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt","typeLabel":"string\u003cdate-time> | null"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["bankDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"revealRef":{"description":"Non-bearer lookup metadata for deposit instructions. Possession grants no authority. Each reveal requires current wallet-view authority and exact account membership; an API key additionally needs treasury_read. Missing and foreign accounts share a refusal. Quotes never fetch these instructions.","properties":{"connectionId":{"description":"The native held leg's exact connection id, never a first/sole-connection guess.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.currency","typeLabel":"string"},"providerBankId":{"oneOf":[{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.0","typeLabel":"string"},{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId","typeLabel":"string | null"}},"required":["connectionId","currency","providerBankId"],"type":"object","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef","typeLabel":"object"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.2","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["walletId","address","chain","asset","tokenContract","amount","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.address","typeLabel":"string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["walletTopUp"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.tokenContract","typeLabel":"string"},"walletId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.walletId","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.3","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["chain","amount","asset","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["nativeGas"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.4","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["connectionId","amount","currency","reason","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.amount","typeLabel":"string"},"connectionId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.currency","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["depositFirstNotOffered"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.reason","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.5","typeLabel":"object"}],"uniqueKey":"next.oneOf.5.instructions","typeLabel":"null · object · object · object · object · object"}},"uniqueKey":"next.oneOf.5","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["needs","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["requote"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.6.kind","typeLabel":"enum\u003cstring>"},"needs":{"items":{"description":"A funding or delivery selection a requote needs filled. An empty `needs` means requote as is.\n\nNew values may be added; treat unknown values as other.","enum":["wallet:evm","wallet:solana","wallet:tron","account","bankAccount","deliverTo"],"type":"string","x-extensible-enum":true,"uniqueKey":"next.oneOf.6.needs.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.6.needs","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"next.oneOf.6","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["search"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.7.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.7","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["retryAfter","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["wait"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.8.kind","typeLabel":"enum\u003cstring>"},"retryAfter":{"description":"An ISO 8601 duration, e.g. PT3S or PT2M.","examples":["PT120S"],"format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","type":"string","isRequired":true,"uniqueKey":"next.oneOf.8.retryAfter","typeLabel":"string\u003cduration>"}},"uniqueKey":"next.oneOf.8","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["reference","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["contact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.9.kind","typeLabel":"enum\u003cstring>"},"reference":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.9.reference","typeLabel":"string"}},"uniqueKey":"next.oneOf.9","typeLabel":"object"}],"uniqueKey":"next","typeLabel":"null · object · object · object · object · object · object · object · object · object"},"requestId":{"oneOf":[{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"string","uniqueKey":"requestId.oneOf.0","typeLabel":"string"},{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"null","uniqueKey":"requestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"requestId","typeLabel":"string | null"}},"required":["error","docUrl","retryable","message","timestamp"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"docUrl":"\u003cstring>","error":"\u003cstring>","message":"\u003cstring>","retryable":true,"timestamp":"2023-11-07T05:31:56Z","details":{"capabilityBlockers":[{"code":"WORKSPACE_NOT_FOUND","estimate":"minutes","message":"\u003cstring>","unlockStep":"finishOnboarding","currentlyDue":["\u003cstring>"]}],"conflicts":["\u003cstring>"],"consentedWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"currentWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"field":"\u003cstring>","reason":"clockUnavailable","remediation":"\u003cstring>","retryAfter":"PT120S","value":"\u003cstring>"},"next":{"kind":"order"},"requestId":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Too many requests. Wait the number of seconds in `Retry-After` before retrying.","headers":{"Deprecation":{"description":"Present when this operation is deprecated: an RFC 9745 structured date, for example @1792443399. Absence makes no deprecation claim.","schema":{"type":"string"}},"Link":{"description":"When deprecation applies, links to the deprecation notice with rel=deprecation; other link relations may also be sent.","schema":{"type":"string"}},"RateLimit":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.1 structured dictionary, for example `limit=100, remaining=41, reset=19`. Remaining is the admitted decision's headroom; reset is whole seconds until quota next becomes available, not an epoch or a promise of a full burst refill. On a limiter's 429 remaining is 0 and reset equals Retry-After. Accepted key, route and per-address policies are compared by lowest remaining, then longest reset. A venue refusal without a known quota makes no rate-limit header claim.","schema":{"type":"string"}},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.5: quota and window in seconds, for example `100;w=60`. Sent on every status when a finite limiter counted the request. The applicable policy closest to exhaustion is reported (section 3.2): lowest remaining, then longest reset. On a limiter's 429 this is exactly the policy that refused; if a venue discloses no quota, the headers are absent.","schema":{"type":"string"}},"Retry-After":{"description":"Whole seconds to wait before retrying. Always sent on 429; sent on 503 when the wait is known. `details.retryAfter` carries the same wait as an ISO 8601 duration.","schema":{"minimum":0,"type":"integer"}},"Sunset":{"description":"Present when retirement is scheduled: the HTTP-date after which this version may stop being served (RFC 8594).","schema":{"type":"string"}},"x-request-id":{"description":"The request's id: the caller's valid `X-Request-Id`, or a generated UUID v4. Quote it when asking for support.","schema":{"type":"string"}}},"exampleType":"generated"},"6b987b7d-0894-463a-8c80-60bb718c7fb0":{"content":{"application/json":{"schema":{"description":"The shared refusal body of every integrator operation, including edge-layer errors.\n`error` is an open, stable machine-readable code; `docUrl` links to its documentation and\n`retryable` says whether an unchanged request may succeed later. `message` is for people,\nnot matching. `timestamp` is RFC 3339 UTC; optional `requestId` mirrors `X-Request-Id`.\nOptional `next` describes recovery and `details` carries code-specific information.\nHandle known codes and fall back on the HTTP status for unknown ones.","properties":{"docUrl":{"description":"Stable documentation for this refusal code.","type":"string","isRequired":true,"uniqueKey":"docUrl","typeLabel":"string"},"error":{"description":"The machine-readable code, for example `QUOTE_EXPIRED`.","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"description":"What happened, in words a person can read. Not for matching.","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"retryable":{"description":"Whether an unchanged request may succeed later, from the error catalogue.","type":"boolean","isRequired":true,"uniqueKey":"retryable","typeLabel":"boolean"},"timestamp":{"description":"When the refusal was made, as an RFC 3339 UTC timestamp.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"details":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.0","typeLabel":"null"},{"type":"object","description":"The code's detail. Each field is present only on the codes named beside it; other codes may\ncarry further fields, named in camelCase, which a client may ignore.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"capabilityBlockers":{"oneOf":[{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].estimate","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].message","typeLabel":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].unlockStep","typeLabel":"enum\u003cstring>"},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue","typeLabel":"string[]"}},"required":["code","message","unlockStep","estimate"],"type":"object","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0","typeLabel":"object[]"},{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string"},"type":"array"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true},"message":{"type":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true}},"required":["code","message","unlockStep","estimate"],"type":"object"},"type":"null","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.capabilityBlockers","typeLabel":"object[] | null"},"conflicts":{"oneOf":[{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string","uniqueKey":"details.oneOf.1.conflicts.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.conflicts.oneOf.0","typeLabel":"string[]"},{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.conflicts.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.conflicts","typeLabel":"string[] | null"},"consentedWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the order consented to (the quoted\nwindow, or the one its `settlementWindowId` named), which is no longer the one assigned.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow","typeLabel":"null | object"},"currentWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the server assigns the trade now.\nSend the same quote again with `settlementWindowId` set to `details.currentWindow.windowId`\nto consent to it.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow","typeLabel":"null | object"},"field":{"oneOf":[{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"string","uniqueKey":"details.oneOf.1.field.oneOf.0","typeLabel":"string"},{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"null","uniqueKey":"details.oneOf.1.field.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.field","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","enum":["clockUnavailable","assetUnsupported","referenceUndeclarable","referenceNotAdmitted","referenceStale","referenceDepth","marketDataUnavailable","calibrationUnavailable","livePriceUnavailable","lpQuoteUnavailable","platformJurisdictionCountryRequired","platformJurisdictionUnavailable","platformJurisdictionBlocked","venueJurisdictionExcluded","workspaceJurisdictionRequired","jurisdictionRegionRequired","jurisdictionUnavailable","venueKeyRefusedLikelyIpAllowlist","venueWithdrawalDestinationNotWhitelisted","adapterPayloadSerializationFailed","basicVenueAccountsUnavailable","billingPaymentOverdue","walletNotOnChain","ccxtVenueRequiresCexLane","executionStageDisabled","jurisdictionUnproven","onboardedVenuesUnavailable","onchainAccountDefaultWalletRequired","onchainAccountDefaultWalletUnavailable","onchainAccountWalletRequired","onchainAssetDecimalsMismatch","onchainAssetIdentityMismatch","onchainAssetUnmapped","onchainAssetVariantFiltered","onchainWalletUnavailable","onchainCatalogueUnavailable","onchainDeliverToNotReceivingWallet","onchainDeliverToUnverified","onchainMarketsUnavailable","onchainMarketCatalogUnreadable","onchainMarketChainRequired","onchainMarketVariantRequired","onchainMarketTokenRequired","onchainSiteChainUnreadable","onchainWalletChainUnreadable","onchainWalletInactive","onchainWalletNotLinked","onchainWalletNotUsable","onchainWalletPickAmbiguous","onchainWalletWrongNetwork","signerLacksRight","signerUnavailable","signingGrantAmbiguous","signingGrantExpired","nativeGrantExpiryReapprovalRequired","nativeBalanceUnavailable","solanaFinalityUnavailable","tronSolidBlockUnavailable","signingGrantPolicyUnreadable","signingGrantPolicyChecking","signingGrantRequired","signingGrantTokenNotKept","signingGrantTokenNotPayable","solverChainUnready","walletChainMismatch","walletNotUsableByYou","walletNotVerifiedForAce","walletNotWhitelisted","withdrawalChainUnsupported","accountFeeUnavailable","comparisonCostsUnavailable","connectionListingUnavailable","feeUnverified","noPool","noPrice","noSize","notFilled","notYetPublished","priceArithmetic","priceSourceNone","referenceMidUnavailable","settlementPrecisionUnavailable","accountSetupIncomplete","admissionUnavailable","advancedAccountEligibilityUnavailable","advancedAccountStateInconsistent","advancedConnectionDisabled","advancedConnectionNotConfigured","advancedConnectionPaused","advancedSettlementNeedsVerification","advancedModeDisabled","advancedNotAvailableForAccount","advancedNotEnabledForAccount","allowanceUnavailable","acrossCapacityExceeded","relayCapacityExceeded","acrossChainNotCarried","cctpChainNotCarried","cctpWalletRequired","acrossWalletRequired","walletBrowserSigningEvmOnly","relayChainNotCarried","apiKeyAdvancedWalletUnsupported","apiKeyOrganisationWalletScopeRequired","grantCapExceeded","amountAboveMaximum","amountBelowMinimum","belowVenueMinimum","amountUnreadable","amountsUnreadable","askFirst","authorityUnavailable","automationNeverAsks","availabilityUnreadable","backgroundNeverAsks","balanceUnreadable","defaultsUnavailable","walletHasNoAddress","walletUnavailable","bondAmountUnreadable","bondAssetUnreadable","catalogueUnavailable","chainFamilyUnknown","chainUnrecorded","clientSessionRequired","clockUnreadable","comingSoon","connectionChanged","connectionRevoked","corridorInvalid","credential","deadlineExceeded","defaultsLoading","deliverToCalldataUnsupported","deliverToTagUnsupported","deliverToNotPermitted","deliverToUnreadable","tradingPermissionRequired","directPatienceHarvest","economicallyInferior","exactAmountConflictsWithCard","exactAmountConflictsWithQuote","exactOutputDeliveryUnsupported","exactOutputEstimateUnavailable","exactRouteHypothesisUnavailable","expiredOnArrival","expiryUnknown","feeUnreadable","filteredOut","firmAskRefused","firmAskFundsTimedOut","firmAskPreparationTimedOut","quotePreparationFailed","firmAskAdmissionTimedOut","seliniFirmAskMarketsTimedOut","seliniFirmAskHandoffTimedOut","seliniFirmAskBeforePostTimedOut","seliniFirmAskValidationTimedOut","seliniFirmAskResponseTimedOut","seliniFirmAskTransportFailure","rfqQuoteRefusedQuoteNotAvailable","rfqQuoteRefusedQuotingDisabled","rfqQuoteRefusedClientRfqNotConfigured","rfqQuoteRefusedClientProfileNotLoaded","rfqQuoteRefusedMarketDisabled","rfqQuoteRefusedInvalidQuantity","rfqQuoteRefusedInvalidSide","rfqQuoteRefusedInvalidCurrency","rfqQuoteRefusedPricePrecisionError","rfqQuoteRefusedRfqError","rfqQuoteRefused","venueOutcomeIndeterminate","venueBodyUnreadable","venueResponseUnmapped","venueRateLimited","venueQuoteAdmissionExpired","placementSignedPastDeadline","quoteIdentityConflict","symbolUnsupported","marketSymbolAmbiguous","firmAskPrincipalRequired","indicativeRequested","freshnessUnknown","fundingWindow","insufficientLiquidity","venueRelationship","venueRelationshipUnavailable","lpUnknown","mfaEnrolmentRequired","mfaRequired","minimumUnverified","mixedNetworks","netReceivedUnavailable","networkUnrecorded","noAddress","noCard","noFetcher","noInventory","noLaneForPair","noLegs","noOnChainCorridor","noPlannedVenue","noQuote","noRpc","notConnected","notEligible","notExecutable","orderPayloadMissing","outsideTopComposites","pairUnmapped","sellChainInvalid","permissionsUnreadable","placeOrderNotPermitted","prefundingMarkerUnreadable","prefundingRequired","indicative","priceOnRequest","priceOutOfRange","priceProtectionInvalid","pricingBookOnly","productNotQuoted","protocolChainMissing","providerFeeTreatmentUnknown","providerSiteUnrecorded","quoteIdUnissuable","quoteNotHeld","buyChainInvalid","buyAmountUnsupported","exactOutputDebitUnavailable","pairNotServed","accountFundingReadUnverified","quoteReconfirmationRequired","quoteRejected","keyrockSecurityCatalogueUnavailable","venueAnsweredAfterQuoteWindow","venueQuoteIntentMismatch","payExactUnsupported","receiveWalletNotServed","referenceMidUnreadable","referencePriceUnavailable","registryUnavailable","releaseRecheckUnavailable","requestUnbuildable","routeLegChainUnknown","routeLegUnnamed","routeLegUnplanned","routeUnavailable","secondFactorUnreadable","shortfallUnmeasured","shortfallUnreadable","singleChainVenue","siteChainUnreadable","sizeNotEligible","submitOrderBlocked","takerOnboardingIncomplete","tierNotQuoted","tradePaused","venueConnectionStorageUnavailable","venueDataStale","venueDeclined","venueNotConnected","venueNotEnabledForWorkspace","venueNotListed","venueTradeKeyUnavailable","venueTradeScopeRequired","venueTradeUnreadable","venueUnavailable","walletRefused","withdrawalFeeUnread","acrossRoutedViaCctp","apiKeyOrganisationWalletNotAllowlisted","balanceAvailabilityUnconfirmed","bankDestinationUnavailable","bebopJamKeyNotEnabled","bebopJamQuoteDeclined","bebopTokenUnavailable","relayCurrencyUnsupported","relaySwapImpactTooHigh","tetrafiSolverCallbackNotAuthorized","tradingLinkSnapshotChanged","tradingLinkSnapshotUnavailable","uniswapChainReadUnavailable","uniswapInsufficientDepth","uniswapQuoteUnreadable","uniswapUnwrapAboveDailyCap","uniswapUnwrapAboveTradeCap","uniswapRouteNotGranted","venueNotEnabled","askLimitReached","balanceMeaningUnconfirmed","bebopQuorumWalletTooSlow","bebopWalletQuorumUnreadable","bebopBrowserWalletUnsupported","connectionNotConfigured","deliveryAccountNetworkUnavailable","deliveryAccountUnavailable","destinationCannotSendOnChain","dexReferencePriceUnavailable","firmQuoteLimited","fundingAccountNetworkUnavailable","fundingAccountUnavailable","insufficientDepth","missingPermission","needsNativeGas","needsWallet","notPriced","payInTermsUnavailable","pilotTradeCapExceeded","pilotMinimumAboveTradeCap","platformFeeRateUnavailable","pricingBookPairUnserved","settlementDeclarationUnavailable","settlementNotAvailable","timedOut","timedOutBeforeSend","tradingSourceNetworkUnavailable","tradingSourceNotLinked","venueEnablementRechecking","venueEnablementUnavailable","venueListingTimedOut","venuePoliciesUnavailable","multiliquidPaused","multiliquidAssetNotAccepted","walletNotAllowlistedForAsset","walletBlacklisted","multiliquidPriceInvalid","multiliquidStablePriceOutOfBand","multiliquidInsufficientLiquidity","multiliquidProviderPrefundUnavailable","multiliquidDailyLimitReached","eligibilityUnverifiable","multiliquidInsufficientBalance","multiliquidWalletFundsInsufficient","multiliquidInsufficientAllowance","walletTokenAccountFrozen","multiliquidAmountInTooHigh","multiliquidAmountOutTooLow","multiliquidInsufficientLpFeeBalance","multiliquidTransferFeeNotSupported","multiliquidParticipantUnavailable","multiliquidChainNotSupported","multiliquidObservationWalletUnavailable","privyMultiliquidArrayPinsUnsupported","cctpDestinationNotGranted","signingGrantNativeOnly","quoteRejectedInsufficientBalance","walletGateUnreadable","policyBlocked","treasuryPolicyApprovalRequired","destinationTagRequired","destinationTagMismatch","destinationTagInvalid","acrossBasicLaneNotEnabled","creditReadUnavailable","exactOutputFirmAskUnsupported","grantEndsBeforeVenueFunding","jurisdictionNotServed","pairUnsupported","requesterJurisdictionUnknown","venueAccountHasNoKey","venueAssessmentRequired","venueConnectionInvalid","venueReenableRequiresNewCredentials","venueTradingPaused","balanceNotObserved","notPermitted","balanceNotPermitted","gasUnchecked","catalogueWaitStateUnavailable","cctpRouteUpgrading","creditOnly","dexReferencePriceMissing","quoteAuthorityUnavailable","venueRoutingOff","venueRoutingStateUnavailable","indicativeUnavailable","marketUnavailable","noReferenceMid","observationBindingUnavailable","quoteIdUnavailable","stalePrice"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.reason","typeLabel":"enum\u003cstring> | null"},"remediation":{"oneOf":[{"description":"A machine-readable recovery hint the refusing step gave.","type":"string","uniqueKey":"details.oneOf.1.remediation.oneOf.0","typeLabel":"string"},{"description":"A machine-readable recovery hint the refusing step gave.","type":"null","uniqueKey":"details.oneOf.1.remediation.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.remediation","typeLabel":"string | null"},"retryAfter":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.retryAfter.oneOf.0","typeLabel":"null"},{"type":"string","description":"Every `429`, and a `503` that knows: when to try again, as an ISO 8601 duration. The\n`Retry-After` header carries the same wait in whole seconds.","format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"PT120S","uniqueKey":"details.oneOf.1.retryAfter.oneOf.1","typeLabel":"string\u003cduration>"}],"uniqueKey":"details.oneOf.1.retryAfter","typeLabel":"null | string\u003cduration>"},"value":{"oneOf":[{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"string","uniqueKey":"details.oneOf.1.value.oneOf.0","typeLabel":"string"},{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"null","uniqueKey":"details.oneOf.1.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.value","typeLabel":"string | null"}},"additionalProperties":{"description":"Any further detail the code carries (for example `stepUpSubject`, `balanceShortfall`,\n`minimumAmount`), each named in camelCase.","uniqueKey":"details.oneOf.1.additionalProperties","typeLabel":"any"},"uniqueKey":"details.oneOf.1","typeLabel":"object"}],"uniqueKey":"details","typeLabel":"null | object"},"next":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.0","typeLabel":"null"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["order"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.1","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["preflight"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.2","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["transactions","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["transact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"transactions":{"items":{"description":"One transaction the Taker sends itself (an approval included).","properties":{"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].chain","typeLabel":"string"},"data":{"description":"Hex calldata (`0x…`).","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].data","typeLabel":"string"},"to":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].to","typeLabel":"string"},"value":{"description":"Native value in base units, as a decimal string.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].value","typeLabel":"string"}},"required":["chain","data","to","value"],"type":"object","uniqueKey":"next.oneOf.3.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.3.transactions","typeLabel":"object[]"}},"uniqueKey":"next.oneOf.3","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["typedData","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["sign"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"typedData":{"oneOf":[{"isRequired":true}],"isRequired":true,"uniqueKey":"next.oneOf.4.typedData","typeLabel":"any"}},"uniqueKey":"next.oneOf.4","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["fund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"instructions":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.5.instructions.oneOf.0","typeLabel":"null"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["asset","chainRef","networkCode","networkConfirmed","address","tokenContract","observedAt","expiresAt","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.address","typeLabel":"string"},"asset":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.asset","typeLabel":"string"},"chainRef":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.chainRef","typeLabel":"string"},"expiresAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.expiresAt","typeLabel":"string\u003cdate-time>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["venueDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"networkCode":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkCode","typeLabel":"string"},"networkConfirmed":{"description":"False when the venue reports no network for this address: `networkCode`\nis empty and `chainRef` is the caller's selection, which the customer\nmust confirm with the venue before sending.","type":"boolean","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkConfirmed","typeLabel":"boolean"},"observedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.observedAt","typeLabel":"string\u003cdate-time>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.tokenContract","typeLabel":"string"},"memo":{"oneOf":[{"type":"string","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.1","typeLabel":"null"}],"uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo","typeLabel":"string | null"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.1","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["accountLast4","amount","bankDisplayName","expiresAt","kind","revealRef"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"accountLast4":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.0","typeLabel":"null"},{"type":"string","description":"An already-qualified masked suffix, not external account ownership proof.","maxLength":4,"minLength":1,"pattern":"^[A-Za-z0-9]{1,4}$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"A1b2","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4","typeLabel":"null | string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.amount","typeLabel":"string"},"bankDisplayName":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName","typeLabel":"string | null"},"expiresAt":{"oneOf":[{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt","typeLabel":"string\u003cdate-time> | null"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["bankDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"revealRef":{"description":"Non-bearer lookup metadata for deposit instructions. Possession grants no authority. Each reveal requires current wallet-view authority and exact account membership; an API key additionally needs treasury_read. Missing and foreign accounts share a refusal. Quotes never fetch these instructions.","properties":{"connectionId":{"description":"The native held leg's exact connection id, never a first/sole-connection guess.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.currency","typeLabel":"string"},"providerBankId":{"oneOf":[{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.0","typeLabel":"string"},{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId","typeLabel":"string | null"}},"required":["connectionId","currency","providerBankId"],"type":"object","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef","typeLabel":"object"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.2","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["walletId","address","chain","asset","tokenContract","amount","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.address","typeLabel":"string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["walletTopUp"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.tokenContract","typeLabel":"string"},"walletId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.walletId","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.3","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["chain","amount","asset","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["nativeGas"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.4","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["connectionId","amount","currency","reason","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.amount","typeLabel":"string"},"connectionId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.currency","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["depositFirstNotOffered"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.reason","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.5","typeLabel":"object"}],"uniqueKey":"next.oneOf.5.instructions","typeLabel":"null · object · object · object · object · object"}},"uniqueKey":"next.oneOf.5","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["needs","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["requote"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.6.kind","typeLabel":"enum\u003cstring>"},"needs":{"items":{"description":"A funding or delivery selection a requote needs filled. An empty `needs` means requote as is.\n\nNew values may be added; treat unknown values as other.","enum":["wallet:evm","wallet:solana","wallet:tron","account","bankAccount","deliverTo"],"type":"string","x-extensible-enum":true,"uniqueKey":"next.oneOf.6.needs.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.6.needs","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"next.oneOf.6","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["search"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.7.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.7","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["retryAfter","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["wait"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.8.kind","typeLabel":"enum\u003cstring>"},"retryAfter":{"description":"An ISO 8601 duration, e.g. PT3S or PT2M.","examples":["PT120S"],"format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","type":"string","isRequired":true,"uniqueKey":"next.oneOf.8.retryAfter","typeLabel":"string\u003cduration>"}},"uniqueKey":"next.oneOf.8","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["reference","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["contact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.9.kind","typeLabel":"enum\u003cstring>"},"reference":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.9.reference","typeLabel":"string"}},"uniqueKey":"next.oneOf.9","typeLabel":"object"}],"uniqueKey":"next","typeLabel":"null · object · object · object · object · object · object · object · object · object"},"requestId":{"oneOf":[{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"string","uniqueKey":"requestId.oneOf.0","typeLabel":"string"},{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"null","uniqueKey":"requestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"requestId","typeLabel":"string | null"}},"required":["error","docUrl","retryable","message","timestamp"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"docUrl":"\u003cstring>","error":"\u003cstring>","message":"\u003cstring>","retryable":true,"timestamp":"2023-11-07T05:31:56Z","details":{"capabilityBlockers":[{"code":"WORKSPACE_NOT_FOUND","estimate":"minutes","message":"\u003cstring>","unlockStep":"finishOnboarding","currentlyDue":["\u003cstring>"]}],"conflicts":["\u003cstring>"],"consentedWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"currentWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"field":"\u003cstring>","reason":"clockUnavailable","remediation":"\u003cstring>","retryAfter":"PT120S","value":"\u003cstring>"},"next":{"kind":"order"},"requestId":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Something went wrong on our side.","headers":{"Deprecation":{"description":"Present when this operation is deprecated: an RFC 9745 structured date, for example @1792443399. Absence makes no deprecation claim.","schema":{"type":"string"}},"Link":{"description":"When deprecation applies, links to the deprecation notice with rel=deprecation; other link relations may also be sent.","schema":{"type":"string"}},"RateLimit":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.1 structured dictionary, for example `limit=100, remaining=41, reset=19`. Remaining is the admitted decision's headroom; reset is whole seconds until quota next becomes available, not an epoch or a promise of a full burst refill. On a limiter's 429 remaining is 0 and reset equals Retry-After. Accepted key, route and per-address policies are compared by lowest remaining, then longest reset. A venue refusal without a known quota makes no rate-limit header claim.","schema":{"type":"string"}},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.5: quota and window in seconds, for example `100;w=60`. Sent on every status when a finite limiter counted the request. The applicable policy closest to exhaustion is reported (section 3.2): lowest remaining, then longest reset. On a limiter's 429 this is exactly the policy that refused; if a venue discloses no quota, the headers are absent.","schema":{"type":"string"}},"Sunset":{"description":"Present when retirement is scheduled: the HTTP-date after which this version may stop being served (RFC 8594).","schema":{"type":"string"}},"x-request-id":{"description":"The request's id: the caller's valid `X-Request-Id`, or a generated UUID v4. Quote it when asking for support.","schema":{"type":"string"}}},"exampleType":"generated"},"86150e65-34ac-4983-bc4b-cd694317243d":{"content":{"application/json":{"schema":{"description":"The shared refusal body of every integrator operation, including edge-layer errors.\n`error` is an open, stable machine-readable code; `docUrl` links to its documentation and\n`retryable` says whether an unchanged request may succeed later. `message` is for people,\nnot matching. `timestamp` is RFC 3339 UTC; optional `requestId` mirrors `X-Request-Id`.\nOptional `next` describes recovery and `details` carries code-specific information.\nHandle known codes and fall back on the HTTP status for unknown ones.","properties":{"docUrl":{"description":"Stable documentation for this refusal code.","type":"string","isRequired":true,"uniqueKey":"docUrl","typeLabel":"string"},"error":{"description":"The machine-readable code, for example `QUOTE_EXPIRED`.","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"description":"What happened, in words a person can read. Not for matching.","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"retryable":{"description":"Whether an unchanged request may succeed later, from the error catalogue.","type":"boolean","isRequired":true,"uniqueKey":"retryable","typeLabel":"boolean"},"timestamp":{"description":"When the refusal was made, as an RFC 3339 UTC timestamp.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"details":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.0","typeLabel":"null"},{"type":"object","description":"The code's detail. Each field is present only on the codes named beside it; other codes may\ncarry further fields, named in camelCase, which a client may ignore.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"capabilityBlockers":{"oneOf":[{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].estimate","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].message","typeLabel":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].unlockStep","typeLabel":"enum\u003cstring>"},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX].currentlyDue","typeLabel":"string[]"}},"required":["code","message","unlockStep","estimate"],"type":"object","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.0","typeLabel":"object[]"},{"description":"`CAPABILITY_BLOCKED` and the other capability refusals: what blocks the workspace.","items":{"description":"One reason a capability is blocked, plus the step that unlocks it.","properties":{"code":{"description":"Stable machine-readable blocker codes returned by the capability gate.\n\nNew values may be added; treat unknown values as other.","enum":["WORKSPACE_NOT_FOUND","WORKSPACE_NOT_ACTIVE","WORKSPACE_SUSPENDED","PARENT_WORKSPACE_INACTIVE","INSUFFICIENT_PERMISSION","WORKSPACE_TYPE_UNSUPPORTED","BASE_PROFILE_INCOMPLETE","BASE_PROFILE_UNREADABLE","KYB_NOT_VERIFIED","KYC_NOT_VERIFIED","SANCTIONS_FLAGGED","MEMBER_COMPLIANCE_FROZEN","MEMBER_COMPLIANCE_DENIED","SCREENING_PENDING","SCREENING_UNAVAILABLE","GEO_RESTRICTED","WALLET_NOT_VERIFIED","DIRECT_USER_NOT_FOUND","DIRECT_USER_SUSPENDED","DIRECT_USER_KYC_NOT_VERIFIED","INSUFFICIENT_SCOPE","TREASURY_DISABLED","NO_USABLE_CREDENTIAL","CROSS_OWNER_WRITE_DENIED","AGGREGATE_SCOPE_READ_ONLY","OWNER_SCOPE_REQUIRED","VENUE_OPERATION_UNSUPPORTED","TAKER_ONBOARDING_INCOMPLETE","TAKER_ADMISSION_UNAVAILABLE"],"type":"string","x-extensible-enum":true},"currentlyDue":{"description":"Requirement keys still due, such as `kyb_review`, `actor_kyc` or\n`permission:place_order`. Empty when nothing specific is due.","items":{"type":"string"},"type":"array"},"estimate":{"description":"Coarse time-to-unlock class. The UI owns the copy; figures are engineering\nestimates until the KYB queue and Sumsub webhooks supply measured values.\n\nNew values may be added; treat unknown values as other.","enum":["minutes","formsThenReview","adminAction","otherParty","unknown","notUnlockable"],"type":"string","x-extensible-enum":true},"message":{"type":"string"},"unlockStep":{"description":"Stable key of the step that unlocks this blocker. The UI maps it to a\nroute or dialog.","enum":["finishOnboarding","companyDetails","kybProfile","kycDialog","linkWallet","askAdmin","contactBroker","manageDirectUsers","manageApiKey","connectCustodian","switchAccountScope","contactSupport","awaitScreening","none"],"type":"string","x-extensible-enum":true}},"required":["code","message","unlockStep","estimate"],"type":"object"},"type":"null","uniqueKey":"details.oneOf.1.capabilityBlockers.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.capabilityBlockers","typeLabel":"object[] | null"},"conflicts":{"oneOf":[{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string","uniqueKey":"details.oneOf.1.conflicts.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.conflicts.oneOf.0","typeLabel":"string[]"},{"description":"`REQUOTE_FIELDS_CONFLICT`: the fields that cannot go with `requote`.","items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.conflicts.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.conflicts","typeLabel":"string[] | null"},"consentedWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the order consented to (the quoted\nwindow, or the one its `settlementWindowId` named), which is no longer the one assigned.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.consentedWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.consentedWindow","typeLabel":"null | object"},"currentWindow":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.0","typeLabel":"null"},{"type":"object","description":"`SETTLEMENT_WINDOW_CHANGED`: the settlement window the server assigns the trade now.\nSend the same quote again with `settlementWindowId` set to `details.currentWindow.windowId`\nto consent to it.","required":["windowId","scheduleId","scheduleVersion","scheduleLabel","cadence","snapshotAt"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"cadence":{"oneOf":[{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.dayBasis","typeLabel":"enum\u003cstring>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["intraday"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"everyHours":{"oneOf":[{"format":"int32","minimum":0,"type":"integer","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","minimum":0,"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.everyHours","typeLabel":"integer\u003cint32> | null"},"localTimes":{"oneOf":[{"items":{"type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0.localTimes","typeLabel":"string[] | null"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.0","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["daily"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.1","typeLabel":"object"},{"type":"object","description":"How often a settlement schedule's windows occur (the schedule owns the terms).\n\nNew values may be added; treat unknown values as other.","required":["days","dayBasis","kind"],"x-extensible-enum":true,"properties":{"dayBasis":{"description":"A settlement schedule's day basis.\n\nNew values may be added; treat unknown values as other.","enum":["calendarDays","businessDays"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.dayBasis","typeLabel":"enum\u003cstring>"},"days":{"format":"int32","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.days","typeLabel":"integer\u003cint32>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["multiDay"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cadence","typeLabel":"object"},"scheduleId":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleId","typeLabel":"string"},"scheduleLabel":{"description":"The published schedule version's display name (e.g. \"EU\"), so a quote card or Review\nnames the window without a settlement read permission.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleLabel","typeLabel":"string"},"scheduleVersion":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.scheduleVersion","typeLabel":"integer\u003cint64>"},"snapshotAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.snapshotAt","typeLabel":"string\u003cdate-time>"},"windowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.windowId","typeLabel":"string\u003cuuid>"},"assumedBoundary":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.0","typeLabel":"null"},{"type":"object","description":"Present when the window's boundary comes from an assumed schedule term rather than the\nLP's confirmation: every surface shows the window as assumed until the LP confirms it.","required":["timeZone","source","lpName"],"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"lpName":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.lpName","typeLabel":"string"},"source":{"description":"Where the assumed boundary came from, as recorded in the settlement schedule; free text.","type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.source","typeLabel":"string"},"timeZone":{"type":"string","isRequired":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1.timeZone","typeLabel":"string"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.assumedBoundary","typeLabel":"null | object"},"cutoffAt":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.cutoffAt","typeLabel":"string\u003cdate-time> | null"},"paymentDeadlineAt":{"oneOf":[{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"The occurrence's payment deadline from its schedule terms: what a credit trade's debt is\npaid by. Absent while the schedule has not confirmed it; never derived from `settlesBy`.","format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.paymentDeadlineAt","typeLabel":"string\u003cdate-time> | null"},"settlementBasis":{"description":"What completes a window's settlement. `clock`: the occurrence's confirmed completion time\n(`settlesBy`). `onAgreement`: the LP issues the window's statement and the trade settles\nonce that statement is agreed (Keyrock), so the window states no clock time.\n\nNew values may be added; treat unknown values as other.","enum":["clock","onAgreement"],"type":"string","x-extensible-enum":true,"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlementBasis","typeLabel":"enum\u003cstring>"},"settlesBy":{"oneOf":[{"format":"date-time","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.0","typeLabel":"string\u003cdate-time>"},{"format":"date-time","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.settlesBy","typeLabel":"string\u003cdate-time> | null"},"statementIssuer":{"oneOf":[{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"string","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.0","typeLabel":"string"},{"description":"The LP whose statement settles an `onAgreement` window (\"Keyrock\"); absent on a clock window.","type":"null","uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1.statementIssuer","typeLabel":"string | null"}},"uniqueKey":"details.oneOf.1.currentWindow.oneOf.1","typeLabel":"object"}],"uniqueKey":"details.oneOf.1.currentWindow","typeLabel":"null | object"},"field":{"oneOf":[{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"string","uniqueKey":"details.oneOf.1.field.oneOf.0","typeLabel":"string"},{"description":"`INVALID_REQUEST`: the path of a missing required, unknown, mistyped or out-of-range\nfield (for example `buy` or `sell.asset`), never the parser's message or input value.","type":"null","uniqueKey":"details.oneOf.1.field.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.field","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","enum":["clockUnavailable","assetUnsupported","referenceUndeclarable","referenceNotAdmitted","referenceStale","referenceDepth","marketDataUnavailable","calibrationUnavailable","livePriceUnavailable","lpQuoteUnavailable","platformJurisdictionCountryRequired","platformJurisdictionUnavailable","platformJurisdictionBlocked","venueJurisdictionExcluded","workspaceJurisdictionRequired","jurisdictionRegionRequired","jurisdictionUnavailable","venueKeyRefusedLikelyIpAllowlist","venueWithdrawalDestinationNotWhitelisted","adapterPayloadSerializationFailed","basicVenueAccountsUnavailable","billingPaymentOverdue","walletNotOnChain","ccxtVenueRequiresCexLane","executionStageDisabled","jurisdictionUnproven","onboardedVenuesUnavailable","onchainAccountDefaultWalletRequired","onchainAccountDefaultWalletUnavailable","onchainAccountWalletRequired","onchainAssetDecimalsMismatch","onchainAssetIdentityMismatch","onchainAssetUnmapped","onchainAssetVariantFiltered","onchainWalletUnavailable","onchainCatalogueUnavailable","onchainDeliverToNotReceivingWallet","onchainDeliverToUnverified","onchainMarketsUnavailable","onchainMarketCatalogUnreadable","onchainMarketChainRequired","onchainMarketVariantRequired","onchainMarketTokenRequired","onchainSiteChainUnreadable","onchainWalletChainUnreadable","onchainWalletInactive","onchainWalletNotLinked","onchainWalletNotUsable","onchainWalletPickAmbiguous","onchainWalletWrongNetwork","signerLacksRight","signerUnavailable","signingGrantAmbiguous","signingGrantExpired","nativeGrantExpiryReapprovalRequired","nativeBalanceUnavailable","solanaFinalityUnavailable","tronSolidBlockUnavailable","signingGrantPolicyUnreadable","signingGrantPolicyChecking","signingGrantRequired","signingGrantTokenNotKept","signingGrantTokenNotPayable","solverChainUnready","walletChainMismatch","walletNotUsableByYou","walletNotVerifiedForAce","walletNotWhitelisted","withdrawalChainUnsupported","accountFeeUnavailable","comparisonCostsUnavailable","connectionListingUnavailable","feeUnverified","noPool","noPrice","noSize","notFilled","notYetPublished","priceArithmetic","priceSourceNone","referenceMidUnavailable","settlementPrecisionUnavailable","accountSetupIncomplete","admissionUnavailable","advancedAccountEligibilityUnavailable","advancedAccountStateInconsistent","advancedConnectionDisabled","advancedConnectionNotConfigured","advancedConnectionPaused","advancedSettlementNeedsVerification","advancedModeDisabled","advancedNotAvailableForAccount","advancedNotEnabledForAccount","allowanceUnavailable","acrossCapacityExceeded","relayCapacityExceeded","acrossChainNotCarried","cctpChainNotCarried","cctpWalletRequired","acrossWalletRequired","walletBrowserSigningEvmOnly","relayChainNotCarried","apiKeyAdvancedWalletUnsupported","apiKeyOrganisationWalletScopeRequired","grantCapExceeded","amountAboveMaximum","amountBelowMinimum","belowVenueMinimum","amountUnreadable","amountsUnreadable","askFirst","authorityUnavailable","automationNeverAsks","availabilityUnreadable","backgroundNeverAsks","balanceUnreadable","defaultsUnavailable","walletHasNoAddress","walletUnavailable","bondAmountUnreadable","bondAssetUnreadable","catalogueUnavailable","chainFamilyUnknown","chainUnrecorded","clientSessionRequired","clockUnreadable","comingSoon","connectionChanged","connectionRevoked","corridorInvalid","credential","deadlineExceeded","defaultsLoading","deliverToCalldataUnsupported","deliverToTagUnsupported","deliverToNotPermitted","deliverToUnreadable","tradingPermissionRequired","directPatienceHarvest","economicallyInferior","exactAmountConflictsWithCard","exactAmountConflictsWithQuote","exactOutputDeliveryUnsupported","exactOutputEstimateUnavailable","exactRouteHypothesisUnavailable","expiredOnArrival","expiryUnknown","feeUnreadable","filteredOut","firmAskRefused","firmAskFundsTimedOut","firmAskPreparationTimedOut","quotePreparationFailed","firmAskAdmissionTimedOut","seliniFirmAskMarketsTimedOut","seliniFirmAskHandoffTimedOut","seliniFirmAskBeforePostTimedOut","seliniFirmAskValidationTimedOut","seliniFirmAskResponseTimedOut","seliniFirmAskTransportFailure","rfqQuoteRefusedQuoteNotAvailable","rfqQuoteRefusedQuotingDisabled","rfqQuoteRefusedClientRfqNotConfigured","rfqQuoteRefusedClientProfileNotLoaded","rfqQuoteRefusedMarketDisabled","rfqQuoteRefusedInvalidQuantity","rfqQuoteRefusedInvalidSide","rfqQuoteRefusedInvalidCurrency","rfqQuoteRefusedPricePrecisionError","rfqQuoteRefusedRfqError","rfqQuoteRefused","venueOutcomeIndeterminate","venueBodyUnreadable","venueResponseUnmapped","venueRateLimited","venueQuoteAdmissionExpired","placementSignedPastDeadline","quoteIdentityConflict","symbolUnsupported","marketSymbolAmbiguous","firmAskPrincipalRequired","indicativeRequested","freshnessUnknown","fundingWindow","insufficientLiquidity","venueRelationship","venueRelationshipUnavailable","lpUnknown","mfaEnrolmentRequired","mfaRequired","minimumUnverified","mixedNetworks","netReceivedUnavailable","networkUnrecorded","noAddress","noCard","noFetcher","noInventory","noLaneForPair","noLegs","noOnChainCorridor","noPlannedVenue","noQuote","noRpc","notConnected","notEligible","notExecutable","orderPayloadMissing","outsideTopComposites","pairUnmapped","sellChainInvalid","permissionsUnreadable","placeOrderNotPermitted","prefundingMarkerUnreadable","prefundingRequired","indicative","priceOnRequest","priceOutOfRange","priceProtectionInvalid","pricingBookOnly","productNotQuoted","protocolChainMissing","providerFeeTreatmentUnknown","providerSiteUnrecorded","quoteIdUnissuable","quoteNotHeld","buyChainInvalid","buyAmountUnsupported","exactOutputDebitUnavailable","pairNotServed","accountFundingReadUnverified","quoteReconfirmationRequired","quoteRejected","keyrockSecurityCatalogueUnavailable","venueAnsweredAfterQuoteWindow","venueQuoteIntentMismatch","payExactUnsupported","receiveWalletNotServed","referenceMidUnreadable","referencePriceUnavailable","registryUnavailable","releaseRecheckUnavailable","requestUnbuildable","routeLegChainUnknown","routeLegUnnamed","routeLegUnplanned","routeUnavailable","secondFactorUnreadable","shortfallUnmeasured","shortfallUnreadable","singleChainVenue","siteChainUnreadable","sizeNotEligible","submitOrderBlocked","takerOnboardingIncomplete","tierNotQuoted","tradePaused","venueConnectionStorageUnavailable","venueDataStale","venueDeclined","venueNotConnected","venueNotEnabledForWorkspace","venueNotListed","venueTradeKeyUnavailable","venueTradeScopeRequired","venueTradeUnreadable","venueUnavailable","walletRefused","withdrawalFeeUnread","acrossRoutedViaCctp","apiKeyOrganisationWalletNotAllowlisted","balanceAvailabilityUnconfirmed","bankDestinationUnavailable","bebopJamKeyNotEnabled","bebopJamQuoteDeclined","bebopTokenUnavailable","relayCurrencyUnsupported","relaySwapImpactTooHigh","tetrafiSolverCallbackNotAuthorized","tradingLinkSnapshotChanged","tradingLinkSnapshotUnavailable","uniswapChainReadUnavailable","uniswapInsufficientDepth","uniswapQuoteUnreadable","uniswapUnwrapAboveDailyCap","uniswapUnwrapAboveTradeCap","uniswapRouteNotGranted","venueNotEnabled","askLimitReached","balanceMeaningUnconfirmed","bebopQuorumWalletTooSlow","bebopWalletQuorumUnreadable","bebopBrowserWalletUnsupported","connectionNotConfigured","deliveryAccountNetworkUnavailable","deliveryAccountUnavailable","destinationCannotSendOnChain","dexReferencePriceUnavailable","firmQuoteLimited","fundingAccountNetworkUnavailable","fundingAccountUnavailable","insufficientDepth","missingPermission","needsNativeGas","needsWallet","notPriced","payInTermsUnavailable","pilotTradeCapExceeded","pilotMinimumAboveTradeCap","platformFeeRateUnavailable","pricingBookPairUnserved","settlementDeclarationUnavailable","settlementNotAvailable","timedOut","timedOutBeforeSend","tradingSourceNetworkUnavailable","tradingSourceNotLinked","venueEnablementRechecking","venueEnablementUnavailable","venueListingTimedOut","venuePoliciesUnavailable","multiliquidPaused","multiliquidAssetNotAccepted","walletNotAllowlistedForAsset","walletBlacklisted","multiliquidPriceInvalid","multiliquidStablePriceOutOfBand","multiliquidInsufficientLiquidity","multiliquidProviderPrefundUnavailable","multiliquidDailyLimitReached","eligibilityUnverifiable","multiliquidInsufficientBalance","multiliquidWalletFundsInsufficient","multiliquidInsufficientAllowance","walletTokenAccountFrozen","multiliquidAmountInTooHigh","multiliquidAmountOutTooLow","multiliquidInsufficientLpFeeBalance","multiliquidTransferFeeNotSupported","multiliquidParticipantUnavailable","multiliquidChainNotSupported","multiliquidObservationWalletUnavailable","privyMultiliquidArrayPinsUnsupported","cctpDestinationNotGranted","signingGrantNativeOnly","quoteRejectedInsufficientBalance","walletGateUnreadable","policyBlocked","treasuryPolicyApprovalRequired","destinationTagRequired","destinationTagMismatch","destinationTagInvalid","acrossBasicLaneNotEnabled","creditReadUnavailable","exactOutputFirmAskUnsupported","grantEndsBeforeVenueFunding","jurisdictionNotServed","pairUnsupported","requesterJurisdictionUnknown","venueAccountHasNoKey","venueAssessmentRequired","venueConnectionInvalid","venueReenableRequiresNewCredentials","venueTradingPaused","balanceNotObserved","notPermitted","balanceNotPermitted","gasUnchecked","catalogueWaitStateUnavailable","cctpRouteUpgrading","creditOnly","dexReferencePriceMissing","quoteAuthorityUnavailable","venueRoutingOff","venueRoutingStateUnavailable","indicativeUnavailable","marketUnavailable","noReferenceMid","observationBindingUnavailable","quoteIdUnavailable","stalePrice"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"A machine-readable reason token the refusing step gave.\n\nKnown source reason tokens (not all apply to every status): `clockUnavailable`, `assetUnsupported`, `referenceUndeclarable`, `referenceNotAdmitted`, `referenceStale`, `referenceDepth`, `marketDataUnavailable`, `calibrationUnavailable`, `livePriceUnavailable`, `lpQuoteUnavailable`, `platformJurisdictionCountryRequired`, `platformJurisdictionUnavailable`, `platformJurisdictionBlocked`, `venueJurisdictionExcluded`, `workspaceJurisdictionRequired`, `jurisdictionRegionRequired`, `jurisdictionUnavailable`, `venueKeyRefusedLikelyIpAllowlist`, `venueWithdrawalDestinationNotWhitelisted`, `adapterPayloadSerializationFailed`, `basicVenueAccountsUnavailable`, `billingPaymentOverdue`, `walletNotOnChain`, `ccxtVenueRequiresCexLane`, `executionStageDisabled`, `jurisdictionUnproven`, `onboardedVenuesUnavailable`, `onchainAccountDefaultWalletRequired`, `onchainAccountDefaultWalletUnavailable`, `onchainAccountWalletRequired`, `onchainAssetDecimalsMismatch`, `onchainAssetIdentityMismatch`, `onchainAssetUnmapped`, `onchainAssetVariantFiltered`, `onchainWalletUnavailable`, `onchainCatalogueUnavailable`, `onchainDeliverToNotReceivingWallet`, `onchainDeliverToUnverified`, `onchainMarketsUnavailable`, `onchainMarketCatalogUnreadable`, `onchainMarketChainRequired`, `onchainMarketVariantRequired`, `onchainMarketTokenRequired`, `onchainSiteChainUnreadable`, `onchainWalletChainUnreadable`, `onchainWalletInactive`, `onchainWalletNotLinked`, `onchainWalletNotUsable`, `onchainWalletPickAmbiguous`, `onchainWalletWrongNetwork`, `signerLacksRight`, `signerUnavailable`, `signingGrantAmbiguous`, `signingGrantExpired`, `nativeGrantExpiryReapprovalRequired`, `nativeBalanceUnavailable`, `solanaFinalityUnavailable`, `tronSolidBlockUnavailable`, `signingGrantPolicyUnreadable`, `signingGrantPolicyChecking`, `signingGrantRequired`, `signingGrantTokenNotKept`, `signingGrantTokenNotPayable`, `solverChainUnready`, `walletChainMismatch`, `walletNotUsableByYou`, `walletNotVerifiedForAce`, `walletNotWhitelisted`, `withdrawalChainUnsupported`, `accountFeeUnavailable`, `comparisonCostsUnavailable`, `connectionListingUnavailable`, `feeUnverified`, `noPool`, `noPrice`, `noSize`, `notFilled`, `notYetPublished`, `priceArithmetic`, `priceSourceNone`, `referenceMidUnavailable`, `settlementPrecisionUnavailable`, `accountSetupIncomplete`, `admissionUnavailable`, `advancedAccountEligibilityUnavailable`, `advancedAccountStateInconsistent`, `advancedConnectionDisabled`, `advancedConnectionNotConfigured`, `advancedConnectionPaused`, `advancedSettlementNeedsVerification`, `advancedModeDisabled`, `advancedNotAvailableForAccount`, `advancedNotEnabledForAccount`, `allowanceUnavailable`, `acrossCapacityExceeded`, `relayCapacityExceeded`, `acrossChainNotCarried`, `cctpChainNotCarried`, `cctpWalletRequired`, `acrossWalletRequired`, `walletBrowserSigningEvmOnly`, `relayChainNotCarried`, `apiKeyAdvancedWalletUnsupported`, `apiKeyOrganisationWalletScopeRequired`, `grantCapExceeded`, `amountAboveMaximum`, `amountBelowMinimum`, `belowVenueMinimum`, `amountUnreadable`, `amountsUnreadable`, `askFirst`, `authorityUnavailable`, `automationNeverAsks`, `availabilityUnreadable`, `backgroundNeverAsks`, `balanceUnreadable`, `defaultsUnavailable`, `walletHasNoAddress`, `walletUnavailable`, `bondAmountUnreadable`, `bondAssetUnreadable`, `catalogueUnavailable`, `chainFamilyUnknown`, `chainUnrecorded`, `clientSessionRequired`, `clockUnreadable`, `comingSoon`, `connectionChanged`, `connectionRevoked`, `corridorInvalid`, `credential`, `deadlineExceeded`, `defaultsLoading`, `deliverToCalldataUnsupported`, `deliverToTagUnsupported`, `deliverToNotPermitted`, `deliverToUnreadable`, `tradingPermissionRequired`, `directPatienceHarvest`, `economicallyInferior`, `exactAmountConflictsWithCard`, `exactAmountConflictsWithQuote`, `exactOutputDeliveryUnsupported`, `exactOutputEstimateUnavailable`, `exactRouteHypothesisUnavailable`, `expiredOnArrival`, `expiryUnknown`, `feeUnreadable`, `filteredOut`, `firmAskRefused`, `firmAskFundsTimedOut`, `firmAskPreparationTimedOut`, `quotePreparationFailed`, `firmAskAdmissionTimedOut`, `seliniFirmAskMarketsTimedOut`, `seliniFirmAskHandoffTimedOut`, `seliniFirmAskBeforePostTimedOut`, `seliniFirmAskValidationTimedOut`, `seliniFirmAskResponseTimedOut`, `seliniFirmAskTransportFailure`, `rfqQuoteRefusedQuoteNotAvailable`, `rfqQuoteRefusedQuotingDisabled`, `rfqQuoteRefusedClientRfqNotConfigured`, `rfqQuoteRefusedClientProfileNotLoaded`, `rfqQuoteRefusedMarketDisabled`, `rfqQuoteRefusedInvalidQuantity`, `rfqQuoteRefusedInvalidSide`, `rfqQuoteRefusedInvalidCurrency`, `rfqQuoteRefusedPricePrecisionError`, `rfqQuoteRefusedRfqError`, `rfqQuoteRefused`, `venueOutcomeIndeterminate`, `venueBodyUnreadable`, `venueResponseUnmapped`, `venueRateLimited`, `venueQuoteAdmissionExpired`, `placementSignedPastDeadline`, `quoteIdentityConflict`, `symbolUnsupported`, `marketSymbolAmbiguous`, `firmAskPrincipalRequired`, `indicativeRequested`, `freshnessUnknown`, `fundingWindow`, `insufficientLiquidity`, `venueRelationship`, `venueRelationshipUnavailable`, `lpUnknown`, `mfaEnrolmentRequired`, `mfaRequired`, `minimumUnverified`, `mixedNetworks`, `netReceivedUnavailable`, `networkUnrecorded`, `noAddress`, `noCard`, `noFetcher`, `noInventory`, `noLaneForPair`, `noLegs`, `noOnChainCorridor`, `noPlannedVenue`, `noQuote`, `noRpc`, `notConnected`, `notEligible`, `notExecutable`, `orderPayloadMissing`, `outsideTopComposites`, `pairUnmapped`, `sellChainInvalid`, `permissionsUnreadable`, `placeOrderNotPermitted`, `prefundingMarkerUnreadable`, `prefundingRequired`, `indicative`, `priceOnRequest`, `priceOutOfRange`, `priceProtectionInvalid`, `pricingBookOnly`, `productNotQuoted`, `protocolChainMissing`, `providerFeeTreatmentUnknown`, `providerSiteUnrecorded`, `quoteIdUnissuable`, `quoteNotHeld`, `buyChainInvalid`, `buyAmountUnsupported`, `exactOutputDebitUnavailable`, `pairNotServed`, `accountFundingReadUnverified`, `quoteReconfirmationRequired`, `quoteRejected`, `keyrockSecurityCatalogueUnavailable`, `venueAnsweredAfterQuoteWindow`, `venueQuoteIntentMismatch`, `payExactUnsupported`, `receiveWalletNotServed`, `referenceMidUnreadable`, `referencePriceUnavailable`, `registryUnavailable`, `releaseRecheckUnavailable`, `requestUnbuildable`, `routeLegChainUnknown`, `routeLegUnnamed`, `routeLegUnplanned`, `routeUnavailable`, `secondFactorUnreadable`, `shortfallUnmeasured`, `shortfallUnreadable`, `singleChainVenue`, `siteChainUnreadable`, `sizeNotEligible`, `submitOrderBlocked`, `takerOnboardingIncomplete`, `tierNotQuoted`, `tradePaused`, `venueConnectionStorageUnavailable`, `venueDataStale`, `venueDeclined`, `venueNotConnected`, `venueNotEnabledForWorkspace`, `venueNotListed`, `venueTradeKeyUnavailable`, `venueTradeScopeRequired`, `venueTradeUnreadable`, `venueUnavailable`, `walletRefused`, `withdrawalFeeUnread`, `acrossRoutedViaCctp`, `apiKeyOrganisationWalletNotAllowlisted`, `balanceAvailabilityUnconfirmed`, `bankDestinationUnavailable`, `bebopJamKeyNotEnabled`, `bebopJamQuoteDeclined`, `bebopTokenUnavailable`, `relayCurrencyUnsupported`, `relaySwapImpactTooHigh`, `tetrafiSolverCallbackNotAuthorized`, `tradingLinkSnapshotChanged`, `tradingLinkSnapshotUnavailable`, `uniswapChainReadUnavailable`, `uniswapInsufficientDepth`, `uniswapQuoteUnreadable`, `uniswapUnwrapAboveDailyCap`, `uniswapUnwrapAboveTradeCap`, `uniswapRouteNotGranted`, `venueNotEnabled`, `askLimitReached`, `balanceMeaningUnconfirmed`, `bebopQuorumWalletTooSlow`, `bebopWalletQuorumUnreadable`, `bebopBrowserWalletUnsupported`, `connectionNotConfigured`, `deliveryAccountNetworkUnavailable`, `deliveryAccountUnavailable`, `destinationCannotSendOnChain`, `dexReferencePriceUnavailable`, `firmQuoteLimited`, `fundingAccountNetworkUnavailable`, `fundingAccountUnavailable`, `insufficientDepth`, `missingPermission`, `needsNativeGas`, `needsWallet`, `notPriced`, `payInTermsUnavailable`, `pilotTradeCapExceeded`, `pilotMinimumAboveTradeCap`, `platformFeeRateUnavailable`, `pricingBookPairUnserved`, `settlementDeclarationUnavailable`, `settlementNotAvailable`, `timedOut`, `timedOutBeforeSend`, `tradingSourceNetworkUnavailable`, `tradingSourceNotLinked`, `venueEnablementRechecking`, `venueEnablementUnavailable`, `venueListingTimedOut`, `venuePoliciesUnavailable`, `multiliquidPaused`, `multiliquidAssetNotAccepted`, `walletNotAllowlistedForAsset`, `walletBlacklisted`, `multiliquidPriceInvalid`, `multiliquidStablePriceOutOfBand`, `multiliquidInsufficientLiquidity`, `multiliquidProviderPrefundUnavailable`, `multiliquidDailyLimitReached`, `eligibilityUnverifiable`, `multiliquidInsufficientBalance`, `multiliquidWalletFundsInsufficient`, `multiliquidInsufficientAllowance`, `walletTokenAccountFrozen`, `multiliquidAmountInTooHigh`, `multiliquidAmountOutTooLow`, `multiliquidInsufficientLpFeeBalance`, `multiliquidTransferFeeNotSupported`, `multiliquidParticipantUnavailable`, `multiliquidChainNotSupported`, `multiliquidObservationWalletUnavailable`, `privyMultiliquidArrayPinsUnsupported`, `cctpDestinationNotGranted`, `signingGrantNativeOnly`, `quoteRejectedInsufficientBalance`, `walletGateUnreadable`, `policyBlocked`, `treasuryPolicyApprovalRequired`, `destinationTagRequired`, `destinationTagMismatch`, `destinationTagInvalid`, `acrossBasicLaneNotEnabled`, `creditReadUnavailable`, `exactOutputFirmAskUnsupported`, `grantEndsBeforeVenueFunding`, `jurisdictionNotServed`, `pairUnsupported`, `requesterJurisdictionUnknown`, `venueAccountHasNoKey`, `venueAssessmentRequired`, `venueConnectionInvalid`, `venueReenableRequiresNewCredentials`, `venueTradingPaused`, `balanceNotObserved`, `notPermitted`, `balanceNotPermitted`, `gasUnchecked`, `catalogueWaitStateUnavailable`, `cctpRouteUpgrading`, `creditOnly`, `dexReferencePriceMissing`, `quoteAuthorityUnavailable`, `venueRoutingOff`, `venueRoutingStateUnavailable`, `indicativeUnavailable`, `marketUnavailable`, `noReferenceMid`, `observationBindingUnavailable`, `quoteIdUnavailable`, `stalePrice`.\n\nNew values may be added; treat unknown values as other.","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.reason","typeLabel":"enum\u003cstring> | null"},"remediation":{"oneOf":[{"description":"A machine-readable recovery hint the refusing step gave.","type":"string","uniqueKey":"details.oneOf.1.remediation.oneOf.0","typeLabel":"string"},{"description":"A machine-readable recovery hint the refusing step gave.","type":"null","uniqueKey":"details.oneOf.1.remediation.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.remediation","typeLabel":"string | null"},"retryAfter":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"details.oneOf.1.retryAfter.oneOf.0","typeLabel":"null"},{"type":"string","description":"Every `429`, and a `503` that knows: when to try again, as an ISO 8601 duration. The\n`Retry-After` header carries the same wait in whole seconds.","format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"PT120S","uniqueKey":"details.oneOf.1.retryAfter.oneOf.1","typeLabel":"string\u003cduration>"}],"uniqueKey":"details.oneOf.1.retryAfter","typeLabel":"null | string\u003cduration>"},"value":{"oneOf":[{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"string","uniqueKey":"details.oneOf.1.value.oneOf.0","typeLabel":"string"},{"description":"`UNKNOWN_ASSET`, `UNKNOWN_CHAIN`, `UNKNOWN_VENUE`, `INVALID_AMOUNT`: the value refused;\n`ASSET_NOT_ON_CHAIN`: the pinned chain the Asset is not on.","type":"null","uniqueKey":"details.oneOf.1.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"details.oneOf.1.value","typeLabel":"string | null"}},"additionalProperties":{"description":"Any further detail the code carries (for example `stepUpSubject`, `balanceShortfall`,\n`minimumAmount`), each named in camelCase.","uniqueKey":"details.oneOf.1.additionalProperties","typeLabel":"any"},"uniqueKey":"details.oneOf.1","typeLabel":"object"}],"uniqueKey":"details","typeLabel":"null | object"},"next":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.0","typeLabel":"null"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["order"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.1","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["preflight"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.2.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.2","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["transactions","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["transact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"transactions":{"items":{"description":"One transaction the Taker sends itself (an approval included).","properties":{"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].chain","typeLabel":"string"},"data":{"description":"Hex calldata (`0x…`).","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].data","typeLabel":"string"},"to":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].to","typeLabel":"string"},"value":{"description":"Native value in base units, as a decimal string.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.3.transactions.items.[INDEX].value","typeLabel":"string"}},"required":["chain","data","to","value"],"type":"object","uniqueKey":"next.oneOf.3.transactions.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.3.transactions","typeLabel":"object[]"}},"uniqueKey":"next.oneOf.3","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["typedData","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["sign"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"typedData":{"oneOf":[{"isRequired":true}],"isRequired":true,"uniqueKey":"next.oneOf.4.typedData","typeLabel":"any"}},"uniqueKey":"next.oneOf.4","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["fund"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"instructions":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","uniqueKey":"next.oneOf.5.instructions.oneOf.0","typeLabel":"null"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["asset","chainRef","networkCode","networkConfirmed","address","tokenContract","observedAt","expiresAt","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.address","typeLabel":"string"},"asset":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.asset","typeLabel":"string"},"chainRef":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.chainRef","typeLabel":"string"},"expiresAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.expiresAt","typeLabel":"string\u003cdate-time>"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["venueDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"networkCode":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkCode","typeLabel":"string"},"networkConfirmed":{"description":"False when the venue reports no network for this address: `networkCode`\nis empty and `chainRef` is the caller's selection, which the customer\nmust confirm with the venue before sending.","type":"boolean","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.networkConfirmed","typeLabel":"boolean"},"observedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.observedAt","typeLabel":"string\u003cdate-time>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.1.tokenContract","typeLabel":"string"},"memo":{"oneOf":[{"type":"string","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo.oneOf.1","typeLabel":"null"}],"uniqueKey":"next.oneOf.5.instructions.oneOf.1.memo","typeLabel":"string | null"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.1","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["accountLast4","amount","bankDisplayName","expiresAt","kind","revealRef"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"accountLast4":{"oneOf":[{"type":"null","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.0","typeLabel":"null"},{"type":"string","description":"An already-qualified masked suffix, not external account ownership proof.","maxLength":4,"minLength":1,"pattern":"^[A-Za-z0-9]{1,4}$","x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","example":"A1b2","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.accountLast4","typeLabel":"null | string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.amount","typeLabel":"string"},"bankDisplayName":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.bankDisplayName","typeLabel":"string | null"},"expiresAt":{"oneOf":[{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"description":"UTC ISO instant, or null when expiry is UNKNOWN. Null never means no expiry.","format":"date-time","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.expiresAt","typeLabel":"string\u003cdate-time> | null"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["bankDeposit"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"revealRef":{"description":"Non-bearer lookup metadata for deposit instructions. Possession grants no authority. Each reveal requires current wallet-view authority and exact account membership; an API key additionally needs treasury_read. Missing and foreign accounts share a refusal. Quotes never fetch these instructions.","properties":{"connectionId":{"description":"The native held leg's exact connection id, never a first/sole-connection guess.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.currency","typeLabel":"string"},"providerBankId":{"oneOf":[{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.0","typeLabel":"string"},{"description":"The provider's linked-bank id when required by that venue; otherwise unknown/null.","type":"null","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef.providerBankId","typeLabel":"string | null"}},"required":["connectionId","currency","providerBankId"],"type":"object","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.2.revealRef","typeLabel":"object"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.2","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["walletId","address","chain","asset","tokenContract","amount","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.address","typeLabel":"string"},"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["walletTopUp"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"tokenContract":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.tokenContract","typeLabel":"string"},"walletId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.3.walletId","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.3","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["chain","amount","asset","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.amount","typeLabel":"string"},"asset":{"description":"A registry Asset id (`USDC`, `USDe`). Matched case-insensitively against the catalogue,\nwhich answers it in the registry's own spelling.","example":"USDC","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.asset","typeLabel":"string"},"chain":{"description":"A CAIP-2 chain id (`eip155:8453`, `solana:\u003cgenesis>`, `tron:shasta`), syntax-checked:\na namespace of 3 to 8 lowercase letters, digits or `-`, and a reference of 1 to 32\nletters, digits, `-` or `_`. Compared exactly, as CAIP-2 references are case-sensitive.","example":"eip155:8453","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.chain","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["nativeGas"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.4.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.4","typeLabel":"object"},{"type":"object","description":"What to fund and how. Bank funding carries only a privacy-safe summary and a\nnon-bearer reference to the separately authorized reveal read.\n\nNew values may be added; treat unknown values as other.","required":["connectionId","amount","currency","reason","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"amount":{"description":"A non-negative decimal string in Asset units (`\"10000\"`, `\"9994.0\"`): digits with an\noptional fraction, no sign, exponent or leading zero. Never a float and never base\nunits. A request amount must also be positive (`INVALID_AMOUNT`); a fee or a\nknown balance may be zero.","example":"10000","type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.amount","typeLabel":"string"},"connectionId":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.connectionId","typeLabel":"string"},"currency":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.currency","typeLabel":"string"},"kind":{"description":"New values may be added; treat unknown values as other.","enum":["depositFirstNotOffered"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.5.instructions.oneOf.5.reason","typeLabel":"string"}},"uniqueKey":"next.oneOf.5.instructions.oneOf.5","typeLabel":"object"}],"uniqueKey":"next.oneOf.5.instructions","typeLabel":"null · object · object · object · object · object"}},"uniqueKey":"next.oneOf.5","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["needs","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["requote"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.6.kind","typeLabel":"enum\u003cstring>"},"needs":{"items":{"description":"A funding or delivery selection a requote needs filled. An empty `needs` means requote as is.\n\nNew values may be added; treat unknown values as other.","enum":["wallet:evm","wallet:solana","wallet:tron","account","bankAccount","deliverTo"],"type":"string","x-extensible-enum":true,"uniqueKey":"next.oneOf.6.needs.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"next.oneOf.6.needs","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"next.oneOf.6","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["search"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.7.kind","typeLabel":"enum\u003cstring>"}},"uniqueKey":"next.oneOf.7","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["retryAfter","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["wait"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.8.kind","typeLabel":"enum\u003cstring>"},"retryAfter":{"description":"An ISO 8601 duration, e.g. PT3S or PT2M.","examples":["PT120S"],"format":"duration","pattern":"^PT(?:[0-9]+H(?:[0-9]+M)?(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+M(?:[0-9]+(?:\\.[0-9]{1,3})?S)?|[0-9]+(?:\\.[0-9]{1,3})?S)$","type":"string","isRequired":true,"uniqueKey":"next.oneOf.8.retryAfter","typeLabel":"string\u003cduration>"}},"uniqueKey":"next.oneOf.8","typeLabel":"object"},{"type":"object","description":"The way forward, when there is one (for example `requote` on an expired quote).","required":["reference","kind"],"x-extensible-enum":true,"x-undiscriminated-union-reason":"Nullable value: JSON null has no properties and cannot carry a discriminator.","properties":{"kind":{"description":"New values may be added; treat unknown values as other.","enum":["contact"],"type":"string","x-extensible-enum":true,"isRequired":true,"uniqueKey":"next.oneOf.9.kind","typeLabel":"enum\u003cstring>"},"reference":{"type":"string","isRequired":true,"uniqueKey":"next.oneOf.9.reference","typeLabel":"string"}},"uniqueKey":"next.oneOf.9","typeLabel":"object"}],"uniqueKey":"next","typeLabel":"null · object · object · object · object · object · object · object · object · object"},"requestId":{"oneOf":[{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"string","uniqueKey":"requestId.oneOf.0","typeLabel":"string"},{"description":"The request's id, the value the `X-Request-Id` response header carries. Quote it when\nasking for support.","type":"null","uniqueKey":"requestId.oneOf.1","typeLabel":"null"}],"uniqueKey":"requestId","typeLabel":"string | null"}},"required":["error","docUrl","retryable","message","timestamp"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"docUrl":"\u003cstring>","error":"\u003cstring>","message":"\u003cstring>","retryable":true,"timestamp":"2023-11-07T05:31:56Z","details":{"capabilityBlockers":[{"code":"WORKSPACE_NOT_FOUND","estimate":"minutes","message":"\u003cstring>","unlockStep":"finishOnboarding","currentlyDue":["\u003cstring>"]}],"conflicts":["\u003cstring>"],"consentedWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"currentWindow":{"cadence":{"dayBasis":"calendarDays","kind":"intraday","everyHours":1,"localTimes":["\u003cstring>"]},"scheduleId":"\u003cstring>","scheduleLabel":"\u003cstring>","scheduleVersion":123,"snapshotAt":"2023-11-07T05:31:56Z","windowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","assumedBoundary":{"lpName":"\u003cstring>","source":"\u003cstring>","timeZone":"\u003cstring>"},"cutoffAt":"2023-11-07T05:31:56Z","paymentDeadlineAt":"2023-11-07T05:31:56Z","settlementBasis":"clock","settlesBy":"2023-11-07T05:31:56Z","statementIssuer":"\u003cstring>"},"field":"\u003cstring>","reason":"clockUnavailable","remediation":"\u003cstring>","retryAfter":"PT120S","value":"\u003cstring>"},"next":{"kind":"order"},"requestId":"\u003cstring>"}}},"exampleType":"generated"}},"description":"TRADE_PROJECTION_UNAVAILABLE: the projection's owner is not installed on this stack","headers":{"Deprecation":{"description":"Present when this operation is deprecated: an RFC 9745 structured date, for example @1792443399. Absence makes no deprecation claim.","schema":{"type":"string"}},"Link":{"description":"When deprecation applies, links to the deprecation notice with rel=deprecation; other link relations may also be sent.","schema":{"type":"string"}},"RateLimit":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.1 structured dictionary, for example `limit=100, remaining=41, reset=19`. Remaining is the admitted decision's headroom; reset is whole seconds until quota next becomes available, not an epoch or a promise of a full burst refill. On a limiter's 429 remaining is 0 and reset equals Retry-After. Accepted key, route and per-address policies are compared by lowest remaining, then longest reset. A venue refusal without a known quota makes no rate-limit header claim.","schema":{"type":"string"}},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-07 section 3.5: quota and window in seconds, for example `100;w=60`. Sent on every status when a finite limiter counted the request. The applicable policy closest to exhaustion is reported (section 3.2): lowest remaining, then longest reset. On a limiter's 429 this is exactly the policy that refused; if a venue discloses no quota, the headers are absent.","schema":{"type":"string"}},"Retry-After":{"description":"Whole seconds to wait before retrying. Always sent on 429; sent on 503 when the wait is known. `details.retryAfter` carries the same wait as an ISO 8601 duration.","schema":{"minimum":0,"type":"integer"}},"Sunset":{"description":"Present when retirement is scheduled: the HTTP-date after which this version may stop being served (RFC 8594).","schema":{"type":"string"}},"x-request-id":{"description":"The request's id: the caller's valid `X-Request-Id`, or a generated UUID v4. Quote it when asking for support.","schema":{"type":"string"}}},"exampleType":"generated"}},"security":{"5cc1afa6-6b8f-4814-87a6-7cb62b56a2bd":{"bearer_auth":{"bearerFormat":"JWT","scheme":"bearer","type":"http","scopes":["trades_read"],"schemeName":"bearer_auth"}},"9ff8da62-0d95-40b6-be7d-6151f6158f6f":{"api_key":{"description":"Send the API key in `X-API-Key`.\n\n**Request signing.** A key with signing enabled (enabled for the key in its workspace's credential settings, which return the signing secret once; see [Sign requests](https://docs.tetrafi.io/authentication#sign-requests)) must also sign every request:\n\n- `X-Timestamp`: the current Unix time in seconds, within 300 seconds of the server clock (at most 10 seconds ahead of it on a request that sends `X-Nonce`).\n- `X-Nonce`: a fresh random value for each request, 16 to 128 characters of `A-Z`, `a-z`, `0-9`, `-` and `_` (a UUID fits). Required on a write (POST, PUT, PATCH, DELETE); optional on a read (GET, HEAD).\n- `X-Signature`: lower-case hex HMAC-SHA256 of the canonical string, keyed with the signing secret's 32 bytes (the secret is 64 hex characters; decode it first).\n\nThe canonical string is joined by `\\n`, with no trailing newline: the `X-Timestamp` value, the `X-Nonce` value, the upper-case method, the path with its query exactly as sent (`/api/v1/orders?limit=1`), and the lower-case hex SHA-256 of the exact body bytes (the SHA-256 of an empty body when there is none). A request without `X-Nonce` (a read) omits the nonce line and signs four lines.\n\nA nonce is accepted once per key: the same nonce again inside the window is refused, whatever the body, so two identical writes in one second each carry their own nonce and both succeed, and a retry signs again with a new nonce. Every API server shares one nonce record, so a nonce accepted by one server is refused by all of them. Rate admission runs first: a rate-limited write (429) does not consume its nonce, and a replay sent while the key is rate limited is answered 429; otherwise a replay spends a rate token and is refused. A read without a nonce changes nothing, so an identical signed read inside the window is admitted again. A write whose window has already passed on the nonce record's clock when its nonce is recorded is refused as `TIMESTAMP_OUT_OF_RANGE`. If the nonce record cannot be read or written the request is refused with 503 `API_KEY_UNAVAILABLE`; the nonce may have been consumed, so sign again with a new `X-Timestamp` and `X-Nonce` before retrying.\n\nA signing refusal is a 401 `AUTH_REQUIRED` whose `details.reason` names the cause: `SIGNATURE_REQUIRED` (a header is missing), `SIGNATURE_INVALID` (a malformed header or a wrong signature), `TIMESTAMP_OUT_OF_RANGE`, `NONCE_REQUIRED` (a write without `X-Nonce`), `NONCE_INVALID` (a malformed or repeated `X-Nonce` header), `SIGNATURE_REPLAYED` (the nonce was already accepted). `SIGNATURE_PREDATES_RESTART` and 429 `REPLAY_WINDOW_FULL` are reserved and not answered today.","in":"header","name":"X-API-Key","type":"apiKey","x-request-signing":{"algorithm":"HMAC-SHA256","canonicalRequest":["timestamp","nonce","method","pathWithQuery","bodySha256Hex"],"canonicalRequestWithoutNonce":["timestamp","method","pathWithQuery","bodySha256Hex"],"canonicalSeparator":"\n","nonceFutureSkewSeconds":10,"nonceHeader":"X-Nonce","noncePattern":"^[A-Za-z0-9_-]{16,128}$","nonceRequiredMethods":["POST","PUT","PATCH","DELETE"],"refusal":{"error":"AUTH_REQUIRED","reasons":["SIGNATURE_REQUIRED","SIGNATURE_INVALID","TIMESTAMP_OUT_OF_RANGE","NONCE_REQUIRED","NONCE_INVALID","SIGNATURE_REPLAYED"],"status":401},"reserved":[{"error":"AUTH_REQUIRED","reason":"SIGNATURE_PREDATES_RESTART","status":401},{"error":"REPLAY_WINDOW_FULL","status":429}],"secretEncoding":"hex","signatureEncoding":"hex-lower","signatureHeader":"X-Signature","timestampHeader":"X-Timestamp","timestampWindowSeconds":300},"x-tetrafi-scopes":{"compliance_read":{"description":"View compliance policies, denials, evidence, and reports","permission":"Read compliance","permissionIds":["ReadCompliance"]},"fee_schedule_read":{"description":"Read the current and upcoming fee rates for this workspace. Does not change rates.","permission":"Read fee schedule","permissionIds":["ReadFeeSchedule"]},"orders_read":{"description":"View order status and history","permission":"Read orders","permissionIds":["ReadOrders"]},"orders_write":{"description":"Submit orders for execution","permission":"Submit orders","permissionIds":["SubmitOrders"]},"prices_read":{"description":"Read-only access to prices and recorded quotes. Also select Submit orders to request new quotes.","permission":"Read quotes","permissionIds":["ReadQuotes"]},"quotes_read":{"description":"Read-only access to prices and recorded quotes. Also select Submit orders to request new quotes.","permission":"Read quotes","permissionIds":["ReadQuotes"]},"quotes_request":{"description":"Read-only access to prices and recorded quotes. Also select Submit orders to request new quotes. Submit orders for execution","permission":"Read quotes + Submit orders","permissionIds":["ReadQuotes","SubmitOrders"]},"settlements_read":{"description":"See settlement status and detail.","permission":"Read settlements","permissionIds":["ReadSettlements"]},"trades_read":{"description":"View trade history and audit trails","permission":"Read trades","permissionIds":["ReadTrades"]},"treasury_read":{"description":"See permitted accounts, balances, payouts and Runs, and refresh balances. Does not move money.","permission":"Treasury read","permissionIds":["ReadWallets"]},"webhooks_manage":{"description":"Configure endpoints and events, test deliveries, read outcomes and redeliver. Requires your current Manage webhooks permission.","permission":"Manage webhooks","permissionIds":["ManageWebhooks"]}},"scopes":["trades_read"],"schemeName":"api_key"}}},"servers":{"92d20a25-080c-474f-9db4-28984500f104":{"description":"Production. Uses real assets and venue accounts.","url":"https://api.tetrafi.io"},"07a83933-bc6b-4ce5-848c-8f94d4edfd7a":{"description":"Shared development sandbox backed by the dev testnet chain registry. Use testnet assets and your workspace's sandbox/testnet venue accounts; makers are not simulated. Credentials and workspaces are environment-specific.","url":"https://api-dev.tetrafi.io"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"bearerFormat":"JWT","scheme":"bearer","type":"http","scopes":["trades_read"],"schemeName":"bearer_auth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearer_auth","name":"Authorization"}],"title":"bearer_auth"},{"schemes":[{"scheme":{"description":"Send the API key in `X-API-Key`.\n\n**Request signing.** A key with signing enabled (enabled for the key in its workspace's credential settings, which return the signing secret once; see [Sign requests](https://docs.tetrafi.io/authentication#sign-requests)) must also sign every request:\n\n- `X-Timestamp`: the current Unix time in seconds, within 300 seconds of the server clock (at most 10 seconds ahead of it on a request that sends `X-Nonce`).\n- `X-Nonce`: a fresh random value for each request, 16 to 128 characters of `A-Z`, `a-z`, `0-9`, `-` and `_` (a UUID fits). Required on a write (POST, PUT, PATCH, DELETE); optional on a read (GET, HEAD).\n- `X-Signature`: lower-case hex HMAC-SHA256 of the canonical string, keyed with the signing secret's 32 bytes (the secret is 64 hex characters; decode it first).\n\nThe canonical string is joined by `\\n`, with no trailing newline: the `X-Timestamp` value, the `X-Nonce` value, the upper-case method, the path with its query exactly as sent (`/api/v1/orders?limit=1`), and the lower-case hex SHA-256 of the exact body bytes (the SHA-256 of an empty body when there is none). A request without `X-Nonce` (a read) omits the nonce line and signs four lines.\n\nA nonce is accepted once per key: the same nonce again inside the window is refused, whatever the body, so two identical writes in one second each carry their own nonce and both succeed, and a retry signs again with a new nonce. Every API server shares one nonce record, so a nonce accepted by one server is refused by all of them. Rate admission runs first: a rate-limited write (429) does not consume its nonce, and a replay sent while the key is rate limited is answered 429; otherwise a replay spends a rate token and is refused. A read without a nonce changes nothing, so an identical signed read inside the window is admitted again. A write whose window has already passed on the nonce record's clock when its nonce is recorded is refused as `TIMESTAMP_OUT_OF_RANGE`. If the nonce record cannot be read or written the request is refused with 503 `API_KEY_UNAVAILABLE`; the nonce may have been consumed, so sign again with a new `X-Timestamp` and `X-Nonce` before retrying.\n\nA signing refusal is a 401 `AUTH_REQUIRED` whose `details.reason` names the cause: `SIGNATURE_REQUIRED` (a header is missing), `SIGNATURE_INVALID` (a malformed header or a wrong signature), `TIMESTAMP_OUT_OF_RANGE`, `NONCE_REQUIRED` (a write without `X-Nonce`), `NONCE_INVALID` (a malformed or repeated `X-Nonce` header), `SIGNATURE_REPLAYED` (the nonce was already accepted). `SIGNATURE_PREDATES_RESTART` and 429 `REPLAY_WINDOW_FULL` are reserved and not answered today.","in":"header","name":"X-API-Key","type":"apiKey","x-request-signing":{"algorithm":"HMAC-SHA256","canonicalRequest":["timestamp","nonce","method","pathWithQuery","bodySha256Hex"],"canonicalRequestWithoutNonce":["timestamp","method","pathWithQuery","bodySha256Hex"],"canonicalSeparator":"\n","nonceFutureSkewSeconds":10,"nonceHeader":"X-Nonce","noncePattern":"^[A-Za-z0-9_-]{16,128}$","nonceRequiredMethods":["POST","PUT","PATCH","DELETE"],"refusal":{"error":"AUTH_REQUIRED","reasons":["SIGNATURE_REQUIRED","SIGNATURE_INVALID","TIMESTAMP_OUT_OF_RANGE","NONCE_REQUIRED","NONCE_INVALID","SIGNATURE_REPLAYED"],"status":401},"reserved":[{"error":"AUTH_REQUIRED","reason":"SIGNATURE_PREDATES_RESTART","status":401},{"error":"REPLAY_WINDOW_FULL","status":429}],"secretEncoding":"hex","signatureEncoding":"hex-lower","signatureHeader":"X-Signature","timestampHeader":"X-Timestamp","timestampWindowSeconds":300},"x-tetrafi-scopes":{"compliance_read":{"description":"View compliance policies, denials, evidence, and reports","permission":"Read compliance","permissionIds":["ReadCompliance"]},"fee_schedule_read":{"description":"Read the current and upcoming fee rates for this workspace. Does not change rates.","permission":"Read fee schedule","permissionIds":["ReadFeeSchedule"]},"orders_read":{"description":"View order status and history","permission":"Read orders","permissionIds":["ReadOrders"]},"orders_write":{"description":"Submit orders for execution","permission":"Submit orders","permissionIds":["SubmitOrders"]},"prices_read":{"description":"Read-only access to prices and recorded quotes. Also select Submit orders to request new quotes.","permission":"Read quotes","permissionIds":["ReadQuotes"]},"quotes_read":{"description":"Read-only access to prices and recorded quotes. Also select Submit orders to request new quotes.","permission":"Read quotes","permissionIds":["ReadQuotes"]},"quotes_request":{"description":"Read-only access to prices and recorded quotes. Also select Submit orders to request new quotes. Submit orders for execution","permission":"Read quotes + Submit orders","permissionIds":["ReadQuotes","SubmitOrders"]},"settlements_read":{"description":"See settlement status and detail.","permission":"Read settlements","permissionIds":["ReadSettlements"]},"trades_read":{"description":"View trade history and audit trails","permission":"Read trades","permissionIds":["ReadTrades"]},"treasury_read":{"description":"See permitted accounts, balances, payouts and Runs, and refresh balances. Does not move money.","permission":"Treasury read","permissionIds":["ReadWallets"]},"webhooks_manage":{"description":"Configure endpoints and events, test deliveries, read outcomes and redeliver. Requires your current Manage webhooks permission.","permission":"Manage webhooks","permissionIds":["ManageWebhooks"]}},"scopes":["trades_read"],"schemeName":"api_key"},"schema":{"title":"X-API-Key","type":"string","description":"Send the API key in `X-API-Key`.\n\n**Request signing.** A key with signing enabled (enabled for the key in its workspace's credential settings, which return the signing secret once; see [Sign requests](https://docs.tetrafi.io/authentication#sign-requests)) must also sign every request:\n\n- `X-Timestamp`: the current Unix time in seconds, within 300 seconds of the server clock (at most 10 seconds ahead of it on a request that sends `X-Nonce`).\n- `X-Nonce`: a fresh random value for each request, 16 to 128 characters of `A-Z`, `a-z`, `0-9`, `-` and `_` (a UUID fits). Required on a write (POST, PUT, PATCH, DELETE); optional on a read (GET, HEAD).\n- `X-Signature`: lower-case hex HMAC-SHA256 of the canonical string, keyed with the signing secret's 32 bytes (the secret is 64 hex characters; decode it first).\n\nThe canonical string is joined by `\\n`, with no trailing newline: the `X-Timestamp` value, the `X-Nonce` value, the upper-case method, the path with its query exactly as sent (`/api/v1/orders?limit=1`), and the lower-case hex SHA-256 of the exact body bytes (the SHA-256 of an empty body when there is none). A request without `X-Nonce` (a read) omits the nonce line and signs four lines.\n\nA nonce is accepted once per key: the same nonce again inside the window is refused, whatever the body, so two identical writes in one second each carry their own nonce and both succeed, and a retry signs again with a new nonce. Every API server shares one nonce record, so a nonce accepted by one server is refused by all of them. Rate admission runs first: a rate-limited write (429) does not consume its nonce, and a replay sent while the key is rate limited is answered 429; otherwise a replay spends a rate token and is refused. A read without a nonce changes nothing, so an identical signed read inside the window is admitted again. A write whose window has already passed on the nonce record's clock when its nonce is recorded is refused as `TIMESTAMP_OUT_OF_RANGE`. If the nonce record cannot be read or written the request is refused with 503 `API_KEY_UNAVAILABLE`; the nonce may have been consumed, so sign again with a new `X-Timestamp` and `X-Nonce` before retrying.\n\nA signing refusal is a 401 `AUTH_REQUIRED` whose `details.reason` names the cause: `SIGNATURE_REQUIRED` (a header is missing), `SIGNATURE_INVALID` (a malformed header or a wrong signature), `TIMESTAMP_OUT_OF_RANGE`, `NONCE_REQUIRED` (a write without `X-Nonce`), `NONCE_INVALID` (a malformed or repeated `X-Nonce` header), `SIGNATURE_REPLAYED` (the nonce was already accepted). `SIGNATURE_PREDATES_RESTART` and 429 `REPLAY_WINDOW_FULL` are reserved and not answered today.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"api_key","name":"X-API-Key"}],"title":"api_key"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"tetrafi","siteName":"TetraFi","title":"Get trade - TetraFi","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-12T14:08:21.531Z","originalFileLocation":"api-reference/trades/get-trade.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"One trade through the same projection as the list: the workspace\u0026#x27;s or the caller\u0026#x27;s own taker order or venue trade, a broker umbrella record with the client category\u0026#x27;s field visibility, or an LP\u0026#x27;s fill with pseudonymised counterparties. Taker orders keep their detail fields at the top level. Accepts a member session or an API key with trades_read.\">\u003cmeta data-mint-head name=\"application-name\" content=\"TetraFi\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/tetrafi/KyIavbnRkast31EL/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/tetrafi/KyIavbnRkast31EL/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/tetrafi/KyIavbnRkast31EL/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/tetrafi/KyIavbnRkast31EL/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/tetrafi/KyIavbnRkast31EL/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/tetrafi/KyIavbnRkast31EL/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/tetrafi/KyIavbnRkast31EL/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/tetrafi/KyIavbnRkast31EL/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/tetrafi/KyIavbnRkast31EL/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get trade - TetraFi\">\u003cmeta data-mint-head property=\"og:description\" content=\"One trade through the same projection as the list: the workspace\u0026#x27;s or the caller\u0026#x27;s own taker order or venue trade, a broker umbrella record with the client category\u0026#x27;s field visibility, or an LP\u0026#x27;s fill with pseudonymised counterparties. Taker orders keep their detail fields at the top level. Accepts a member session or an API key with trades_read.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"TetraFi\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://tetrafi.mintlify.app/api-reference/trades/get-trade\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://tetrafi.mintlify.app/images/og-default.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Get trade - TetraFi\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"One trade through the same projection as the list: the workspace\u0026#x27;s or the caller\u0026#x27;s own taker order or venue trade, a broker umbrella record with the client category\u0026#x27;s field visibility, or an LP\u0026#x27;s fill with pseudonymised counterparties. Taker orders keep their detail fields at the top level. Accepts a member session or an API key with trades_read.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://tetrafi.mintlify.app/images/og-default.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/tetrafi/KyIavbnRkast31EL/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"TetraFi\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2c5282\">\u003clink data-mint-head rel=\"canonical\" href=\"https://tetrafi.mintlify.app/api-reference/trades/get-trade\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/trades/get-trade.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://tetrafi.mintlify.app/#organization\",\"name\":\"TetraFi\",\"url\":\"https://tetrafi.mintlify.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/tetrafi/hT7nGse44PNS7QpH/logo/tetrafi-mark-light.svg?fit=max\u0026auto=format\u0026n=hT7nGse44PNS7QpH\u0026q=85\u0026s=cd79dd1bf9d966d0f47e539b4d3775f6\"}},{\"@type\":\"WebSite\",\"@id\":\"https://tetrafi.mintlify.app#website\",\"name\":\"TetraFi\",\"url\":\"https://tetrafi.mintlify.app\",\"publisher\":{\"@id\":\"https://tetrafi.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://tetrafi.mintlify.app/api-reference/trades/get-trade#webpage\",\"url\":\"https://tetrafi.mintlify.app/api-reference/trades/get-trade\",\"name\":\"Get trade\",\"description\":\"One trade through the same projection as the list: the workspace's or the caller's own taker order or venue trade, a broker umbrella record with the client category's field visibility, or an LP's fill with pseudonymised counterparties. Taker orders keep their detail fields at the top level. Accepts a member session or an API key with trades_read.\",\"dateModified\":\"2026-11-12T14:08:21.531Z\",\"isPartOf\":{\"@id\":\"https://tetrafi.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://tetrafi.mintlify.app/api-reference/trades/get-trade#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://tetrafi.mintlify.app/api-reference/trades/get-trade#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Trades and settlement\",\"item\":\"https://tetrafi.mintlify.app/api-reference/trades/list-trades\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get trade\",\"item\":\"https://tetrafi.mintlify.app/api-reference/trades/get-trade\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://tetrafi.mintlify.app/api-reference/trades/get-trade#apireference\",\"headline\":\"Get trade\",\"name\":\"Get trade\",\"description\":\"One trade through the same projection as the list: the workspace's or the caller's own taker order or venue trade, a broker umbrella record with the client category's field visibility, or an LP's fill with pseudonymised counterparties. Taker orders keep their detail fields at the top level. Accepts a member session or an API key with trades_read.\",\"url\":\"https://tetrafi.mintlify.app/api-reference/trades/get-trade\",\"mainEntityOfPage\":{\"@id\":\"https://tetrafi.mintlify.app/api-reference/trades/get-trade#webpage\"},\"image\":\"https://tetrafi.mintlify.app/images/og-default.png\",\"dateModified\":\"2026-11-12T14:08:21.531Z\",\"publisher\":{\"@id\":\"https://tetrafi.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://tetrafi.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"TetraFi\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"TetraFi\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/trades/get-trade.md","siteName":"TetraFi","nav":{"global":null,"tabs":[{"tab":"Discover","pages":[{"title":"Discover","href":"/why-tetrafi"}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/overview"}]},{"tab":"API reference","groups":[{"group":"Overview","pages":[{"title":"API reference","href":"/reference/introduction"},{"title":"Endpoints at a glance","href":"/reference/endpoints"}]},{"group":"Authentication","pages":[{"title":"Get current credential","openapi":"api-reference/openapi.json GET /api/v1/me","href":"/api-reference/auth/get-current-credential"},{"title":"Create access token","openapi":"api-reference/openapi.json POST /api/v1/oauth/token","href":"/api-reference/auth/create-access-token"}]},{"group":"Assets and prices","pages":[{"title":"List assets","openapi":"api-reference/openapi.json GET /api/v1/assets","href":"/api-reference/trading/list-assets"},{"title":"Get prices","openapi":"api-reference/openapi.json GET /api/v1/prices","href":"/api-reference/trading/get-prices"},{"title":"Stream prices","openapi":"api-reference/openapi.json GET /api/v1/prices/stream","href":"/api-reference/trading/stream-prices"}]},{"group":"Quotes","pages":[{"title":"Request quotes","openapi":"api-reference/openapi.json POST /api/v1/quotes","href":"/api-reference/quotes/request-quotes"},{"title":"Get quote request","openapi":"api-reference/openapi.json GET /api/v1/quotes/requests/{quoteRequestId}","href":"/api-reference/quotes/get-quote-request"}]},{"group":"Orders","pages":[{"title":"List orders","openapi":"api-reference/openapi.json GET /api/v1/orders","href":"/api-reference/orders/list-orders"},{"title":"Place order","openapi":"api-reference/openapi.json POST /api/v1/orders","href":"/api-reference/orders/place-order"},{"title":"Get order by quote","openapi":"api-reference/openapi.json GET /api/v1/orders/by-quote/{quoteId}","href":"/api-reference/orders/get-order-by-quote"},{"title":"Get order","openapi":"api-reference/openapi.json GET /api/v1/orders/{orderId}","href":"/api-reference/orders/get-order"},{"title":"Cancel order","openapi":"api-reference/openapi.json POST /api/v1/orders/{orderId}/cancel","href":"/api-reference/orders/cancel-order"}]},{"group":"Trades and settlement","pages":[{"title":"List trades","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/trades","description":"The one trade history. Projections: scope=workspace (default) reads the workspace's taker orders and venue trades; a caller not allowed to view the workspace's compliance records reads only their own, whatever the scope. scope=mine reads the caller's own (a member session only). scope=umbrella reads a broker's clients' orders with each client category's field visibility (a member session allowed to view client compliance records). perspective=maker reads an LP workspace's fills with pseudonymised counterparties (a member session allowed to view settlements); with settlementStage or minAgeSeconds, its unsettled orders by stage (a member session allowed to view bilateral documents). The default perspective is taker in every workspace. Every row carries tradeId, kind (order or venueTrade) and projection. Page with limit and cursor; format=csv returns the same filtered rows. Required API-key scope: `trades_read`; CSV is a member session only.","href":"/api-reference/trades/list-trades"},{"title":"Get trade","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/trades/{tradeId}","href":"/api-reference/trades/get-trade"},{"title":"Get trade settlement","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/trades/{tradeId}/settlement","description":"One trade's settlement state. The taker perspective is the order's settlement detail (required API-key scope: `settlements_read`; the caller must be allowed to view settlements). The maker perspective is the LP's settlement pipeline for the order, a member-session read for a member allowed to view bilateral documents. Each perspective answers exactly what its own route answers.","href":"/api-reference/trades/get-trade-settlement"},{"title":"List trade obligations","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/trades/{tradeId}/settlement/obligations","href":"/api-reference/trades/list-trade-obligations"},{"title":"Get settlement plan","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/settlement/plan","href":"/api-reference/settlements/get-settlement-plan"},{"title":"List account movements","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/settlement/movements","href":"/api-reference/settlements/list-account-movements"},{"title":"Get account movement","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/settlement/movements/{movementId}","href":"/api-reference/settlements/get-account-movement"},{"title":"List account obligations","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/settlement/obligations","href":"/api-reference/settlements/list-account-obligations"},{"title":"Get account obligation","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/settlement/obligations/{obligationId}","href":"/api-reference/settlements/get-account-obligation"},{"title":"Get account schedules","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/settlement/schedules","href":"/api-reference/settlements/get-account-schedules"},{"title":"List account windows","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/settlement/windows","href":"/api-reference/settlements/list-account-windows"},{"title":"Get account window","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/settlement/windows/{windowId}","href":"/api-reference/settlements/get-account-window"},{"title":"List account window matches","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/settlement/windows/{windowId}/matches","href":"/api-reference/settlements/list-account-window-matches"}]},{"group":"Balances and accounts","pages":[{"title":"List workspace balances","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/balances","href":"/api-reference/treasury/list-workspace-balances"},{"title":"Get account balances","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/balances","href":"/api-reference/venue-accounts/get-account-balances"},{"title":"Get account credit","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/credit","href":"/api-reference/venue-accounts/get-account-credit"},{"title":"List account deposits","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/deposit-history","href":"/api-reference/venue-accounts/list-account-deposits"},{"title":"Get deposit instructions","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/deposit-instructions","href":"/api-reference/venue-accounts/get-deposit-instructions"},{"title":"Get account ledger","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-accounts/{venueAccountId}/ledger","href":"/api-reference/venue-accounts/get-account-ledger"},{"title":"List venue accounts","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/venue-enablements","href":"/api-reference/venue-enablements/list-venue-accounts"},{"title":"Get capabilities","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/capabilities","href":"/api-reference/workspaces/get-capabilities"},{"title":"Get fee schedule","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/fee-schedule","href":"/api-reference/workspaces/get-fee-schedule"}]},{"group":"Webhooks","pages":[{"title":"List webhooks","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/webhooks","href":"/api-reference/webhooks/list-webhooks"},{"title":"Create webhook","openapi":"api-reference/openapi.json POST /api/v1/workspaces/{workspaceId}/webhooks","href":"/api-reference/webhooks/create-webhook"},{"title":"Get webhook","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}","href":"/api-reference/webhooks/get-webhook"},{"title":"Update webhook","openapi":"api-reference/openapi.json PATCH /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}","href":"/api-reference/webhooks/update-webhook"},{"title":"Delete webhook","openapi":"api-reference/openapi.json DELETE /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}","href":"/api-reference/webhooks/delete-webhook"},{"title":"List deliveries","openapi":"api-reference/openapi.json GET /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}/deliveries","href":"/api-reference/webhooks/list-deliveries"},{"title":"Send test delivery","openapi":"api-reference/openapi.json POST /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}/deliveries","href":"/api-reference/webhooks/send-test-delivery"},{"title":"Retry delivery","openapi":"api-reference/openapi.json POST /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}/deliveries/{deliveryId}/retry","href":"/api-reference/webhooks/retry-delivery"},{"title":"Resume webhook","openapi":"api-reference/openapi.json POST /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}/resume","href":"/api-reference/webhooks/resume-webhook"},{"title":"Rotate webhook secret","openapi":"api-reference/openapi.json POST /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}/rotate","href":"/api-reference/webhooks/rotate-webhook-secret"}]},{"group":"Batch","pages":[{"title":"Batch reads","openapi":"api-reference/openapi.json POST /api/v1/batch","href":"/api-reference/batch/batch-reads"}]},{"group":"Rules","pages":[{"title":"Conventions","href":"/reference/conventions"},{"title":"Rate limits","href":"/reference/rate-limits"},{"title":"Permissions","href":"/reference/permissions"},{"title":"Error codes","href":"/reference/error-codes"},{"title":"Webhook events","href":"/reference/webhook-events"},{"title":"Compatibility policy","href":"/compatibility"},{"title":"Changelog","href":"/changelog"}]}]},{"tab":"Resources","pages":[{"title":"Resources","href":"/support"}]}]},"basePath":"","title":"Get trade - TetraFi","buildId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","deploymentId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","dynamics":["10e4515597","c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["BannerMarkdown-DV3Oq1fY.js","dist-C-XZBk9h.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-D3Isdib3.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","OpenApiReferenceProvider-CybtLBIt.js","utils-BMLj2fvV.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-B6In562Y.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dr8Mfhp9.js","snippetPresets-2rmQvMVl.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-WMqJYdZj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CJ-MlPHu.js","shallow-dY3TMRCk.js","getApiPlaygroundDisplay-v-1B2bKm.js","CodeSnippet-BDhiTB7U.js","CodeSnippets-D9hnzQcS.js","Page-C4GwDT3_.js","getPastedJson-Th2V45jI.js","icon-BQXch1W9.js","MethodPill-BCqUneP3.js","DuplicateIcon-Q_-bhurZ.js","createIcon-DUjLHRqp.js","DynamicMarkdown-B-f2cqXQ.js","SectionHeading-Da5NsV4v.js","axios-vUo_bRtp.js","Markdown-D13FWkIM.js","AssistantPageLink--qIqmmVG.js"]}