Computes a quote for an intent: token transfers, target executions, and cost breakdown. Returns a pre-ranked routes[] with per-route intentId to pass to POST /intents for execution.
Quote request. Chain ids are CAIP-2 strings (e.g. eip155:8453, solana:…, tron:…); amounts are decimal strings in the token's smallest unit. Funds come from one source pair and land on one destination.
The account this intent spends from and delivers to, per VM. A quote needs a configured evm entry, or for a Solana-only account a swigsvm entry and no evm entry: a receiver cannot fund one.
The single (chain, token) pair that funds the intent, including refunds and any destination credit. Optional only for a request that delivers no token and sets options.sponsorship.gas (destination execution or instructions, a Swig creation or authority change); a delivery requires it. A Solana-only account without a source must target a Solana destination.
Show child attributes
Response
OK
Response body for POST /quotes on the caucasus API version
Route candidates ranked by the orchestrator's internal scoring (cheaper + faster wins). The first entry is the recommended route — most clients should submit it without inspecting the rest.
A single ranked route candidate, tagged with its purpose
Option 1
Option 2
Show child attributes
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Rhinestone","colors":{"primary":"#4f41ef","light":"#8479ff","dark":"#3428d1"},"logo":{"light":"https://mintcdn.com/rhinestone/IVpDy9zUkncYAe5u/logo/light.svg?fit=max\u0026auto=format\u0026n=IVpDy9zUkncYAe5u\u0026q=85\u0026s=6868a5854576ff60d371d5fdc0ae55c9","dark":"https://mintcdn.com/rhinestone/IVpDy9zUkncYAe5u/logo/dark.svg?fit=max\u0026auto=format\u0026n=IVpDy9zUkncYAe5u\u0026q=85\u0026s=2f9bff4fef6da993b8782b8e5d7357c5"},"favicon":"https://mintcdn.com/rhinestone/BVnq0VV8MigHINpS/favicon.svg?fit=max\u0026auto=format\u0026n=BVnq0VV8MigHINpS\u0026q=85\u0026s=25439e41b789b8369c52fa15ceae2644","appearance":{"default":"dark","strict":true},"background":{"color":{"dark":"#0C0C0C"}},"navbar":{"links":[{"href":"https://dashboard.rhinestone.dev","label":"Dashboard"},{"href":"https://github.com/rhinestonewtf","label":"GitHub"}]},"icons":{"library":"lucide"},"contextual":{"options":["copy","view","claude","chatgpt"],"display":"header"},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"Create API Key","icon":"key","href":"https://tally.so/r/wg22x4"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"rhinestone","hasAudioNarration":false,"actualSubdomain":"rhinestone","customDomains":["docs.rhinestone.dev"],"gitSource":{"type":"github","owner":"rhinestonewtf","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aeb4295a60f76c94453464a","clientVersion":"0.0.4088","searchFilterCounts":[{"language":"default","tag":"Wallets","count":153},{"language":"default","tag":"Custom signer","count":107},{"language":"default","tag":"Deposits","count":88},{"language":"default","tag":"SDK reference","count":74},{"language":"default","tag":"API Reference","count":67},{"language":"default","tag":"Transactions","count":30},{"language":"default","tag":"Account","count":28},{"language":"default","tag":"Overview","count":25},{"language":"default","tag":"Actions","count":25},{"language":"default","tag":"Session keys","count":21}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","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},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":":root{--background: #0C0C0C}.vm-code-group{--vm-menu-bg: #fff;--vm-menu-border: rgb(0 0 0 / 10%);--vm-hover: rgb(0 0 0 / 5%);margin:1.5rem 0;border:1px solid #404045;border-radius:12px}.dark .vm-code-group{--vm-menu-bg: #171717;--vm-menu-border: rgb(255 255 255 / 10%);--vm-hover: rgb(255 255 255 / 7%)}.vm-code-group-header{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;padding:0.375rem 0.75rem;border-bottom:1px solid #404045;font-size:0.8125rem}.vm-code-caption{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:0.65}.vm-code-selector{position:relative;flex:none}.vm-code-trigger,.vm-code-option{display:flex;align-items:center;gap:0.5rem;min-height:32px;padding:0.375rem 0.5rem;border:0;border-radius:6px;background:transparent;color:inherit;font:inherit;line-height:1.25;cursor:pointer}.vm-code-trigger:hover,.vm-code-trigger[aria-expanded=\"true\"],.vm-code-option:hover,.vm-code-option:focus{background:var(--vm-hover)}.vm-code-trigger:focus-visible,.vm-code-option:focus-visible{outline:2px solid #8b7bf7;outline-offset:2px}.vm-code-group .vm-code-icon{display:block;flex:none;width:16px;height:16px;margin:0;border-radius:0}.vm-code-chevron{margin-left:0.125rem;opacity:0.55;transition:transform 150ms ease}.vm-code-trigger[aria-expanded=\"true\"] .vm-code-chevron{transform:rotate(180deg)}.vm-code-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;min-width:156px;padding:4px;border:1px solid var(--vm-menu-border);border-radius:10px;background:var(--vm-menu-bg);box-shadow:0 8px 24px rgb(0 0 0 / 18%)}.vm-code-option{width:100%;text-align:left}.vm-code-check{margin-left:auto;opacity:0.65}@media (pointer: coarse){.vm-code-trigger,.vm-code-option{min-height:44px}}@media (prefers-reduced-motion: reduce){.vm-code-chevron{transition:none}}.vm-code-group-panel>*{margin:0!important;border:0!important;border-radius:0 0 12px 12px;box-shadow:none!important}.vm-code-group-panel[hidden]{display:none}.prose table{display:table}table{border-collapse:separate;border-spacing:0;border:1px solid #404045;border-radius:8px;width:fit-content!important}table th,table td{border-right:1px solid #404045;border-bottom:1px solid #404045;padding:12px 16px!important}table th:last-child,table td:last-child{border-right:none}table tr:last-child td{border-bottom:none}table th{background-color:#201E2C}table th:first-child{border-radius:8px 0 0 0}table th:last-child{border-radius:0 8px 0 0}[data-component-name=\"mermaid-controls-wrapper\"]{display:none!important}.mermaid svg .actor{fill:#17132E!important;stroke:#373352!important}.mermaid svg rect.actor{rx:6;ry:6}.mermaid svg text.actor>tspan{fill:#D3CFF7!important}.mermaid svg .actor-line{stroke:#464359!important;stroke-width:1!important}.mermaid svg .messageLine0,.mermaid svg .messageLine1{stroke:#464359!important;stroke-width:1.5!important}.mermaid svg #arrowhead path,.mermaid svg [id$=\"-arrowhead\"] path{fill:#464359!important;stroke:#464359!important}.mermaid svg #crosshead path,.mermaid svg [id$=\"-crosshead\"] path{stroke:#464359!important}.mermaid svg .messageText{fill:#C7C6CC!important}.mermaid svg .activation0,.mermaid svg .activation1,.mermaid svg .activation2{fill:#17132E!important;stroke:#373352!important}.mermaid svg .note{fill:#17132E!important;stroke:#373352!important}.mermaid svg .noteText,.mermaid svg .noteText>tspan{fill:#C7C6CC!important}.mermaid svg .loopText,.mermaid svg .loopText>tspan{fill:#C7C6CC!important}.mermaid svg .loopLine{stroke:#373352!important}.mermaid svg .labelBox{fill:#17132E!important;stroke:#373352!important}.mermaid svg .labelText,.mermaid svg .labelText>tspan{fill:#C7C6CC!important}.mermaid svg .sequenceNumber{fill:#D3CFF7!important}.mermaid svg .node rect,.mermaid svg .node circle,.mermaid svg .node ellipse,.mermaid svg .node polygon,.mermaid svg .node path{fill:#17132E!important;stroke:#373352!important}.mermaid svg .nodeLabel,.mermaid svg .node .label{color:#D3CFF7!important;fill:#D3CFF7!important}.mermaid svg .flowchart-link{stroke:#464359!important}.mermaid svg .edgeLabel,.mermaid svg .edge-label{color:#C7C6CC!important;fill:#C7C6CC!important}.mermaid .labelBkg,.mermaid .labelBkg *{background:transparent!important}.mermaid svg .marker{fill:#464359!important;stroke:#464359!important}.dark #sidebar [data-active=\"true\"]{background-color:#141414!important;border-radius:6px}.deposit-demo{container-type:inline-size}.deposit-demo-loading{position:absolute;inset:0;display:grid;place-items:center;margin:0}.deposit-demo-stage:has(iframe[data-ready=\"true\"]) .deposit-demo-loading{visibility:hidden}@container (max-width: 411px){.deposit-demo-stage{--deposit-demo-height: 629px}}"}],"page":{"pagePath":"api-reference/orchestrator/quotes/create-quote","slug":"/api-reference/orchestrator/quotes/create-quote","pageMetadata":{"title":"Create Quote","description":"Computes a quote for an intent: token transfers, target executions, and cost breakdown. Returns a pre-ranked `routes[]` with per-route `intentId` to pass to `POST /intents` for execution.","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json post /quotes","href":"/api-reference/orchestrator/quotes/create-quote","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Computes a quote for an intent: token transfers, target executions, and cost breakdown. Returns a pre-ranked \", _jsx(_components.code, {\n children: \"routes[]\"\n }), \" with per-route \", _jsx(_components.code, {\n children: \"intentId\"\n }), \" to pass to \", _jsx(_components.code, {\n children: \"POST /intents\"\n }), \" for execution.\"]\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":"Create Quote","description":"Computes a quote for an intent: token transfers, target executions, and cost breakdown. Returns a pre-ranked `routes[]` with per-route `intentId` to pass to `POST /intents` for execution.","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json post /quotes","href":"/api-reference/orchestrator/quotes/create-quote","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"createQuote","parameters":["e4faefb0-6ae3-4253-ab27-04c7af60b382"],"responses":{"200":"3c7342a1-d26a-465a-9d08-2885ef344f6e","400":"199bac97-5924-4ced-aac4-a136b8e22723","401":"c5c06e70-66e9-4257-9533-9a0973af168f","403":"e074af44-ea06-4be1-871a-dbeccb2cbeea","404":"c1d873f7-3312-4eba-bdf5-19dec82bb0a2","422":"abada396-f0d3-4f7c-81fc-9ae70d53277f","500":"e492e23b-6716-473b-92c2-db8f174b7344","503":"73ab5642-10c6-4e1e-b2d2-605d981b1708","504":"608cfea2-24f4-4de8-842d-f190820b3daa"},"security":["a017a207-d9f5-4627-a5ad-8b6e87156d07","266eba01-901f-4159-a0fb-31579809793e"],"summary":"Create Quote","description":"Computes a quote for an intent: token transfers, target executions, and cost breakdown. Returns a pre-ranked `routes[]` with per-route `intentId` to pass to `POST /intents` for execution.","tags":["Quotes"],"requestBody":"a1dfb478-3f21-4867-a7a6-054ca58f5cc9","method":"post","type":"path","servers":["4fe19911-84c7-4e3e-a133-37ef11315796"],"path":"/quotes","baseUrlOptions":["https://v1.orchestrator.rhinestone.dev"],"title":"Create Quote","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"e4faefb0-6ae3-4253-ab27-04c7af60b382":{"name":"x-api-version","in":"header","required":true,"schema":{"type":"string","enum":["2026-09.caucasus"],"isRequired":true,"description":"API version. Required; pinned to this document.","uniqueKey":"","typeLabel":"enum\u003cstring>"},"description":"API version. Required; pinned to this document."}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"account":{"type":"object","properties":{"evm":{"oneOf":[{"type":"object","description":"The EVM side of the account","required":["address"],"properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"account.evm.oneOf.0.address","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"account.evm.oneOf.0","typeLabel":"object"},{"type":"object","description":"The EVM side of the account","required":["type","address"],"properties":{"type":{"type":"string","enum":["eoa"],"isRequired":true,"uniqueKey":"account.evm.oneOf.1.type","typeLabel":"enum\u003cstring>"},"address":{"type":"string","isRequired":true,"uniqueKey":"account.evm.oneOf.1.address","typeLabel":"string"},"signatureMode":{"type":"integer","enum":[0,1,2,3,4,5,6],"description":"How the user's intent signature is verified onchain. The orchestrator picks a default from the account type — set this only to override. `0` emissary, `1` ERC-1271, `2` emissary then ERC-1271, `3` ERC-1271 then emissary, `4` emissary execution, `5` emissary execution then ERC-1271, `6` ERC-1271 then emissary execution.","example":3,"uniqueKey":"account.evm.oneOf.1.signatureMode","typeLabel":"enum\u003cinteger>"},"delegations":{"type":"object","properties":{"default":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"account.evm.oneOf.1.delegations.default.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"account.evm.oneOf.1.delegations.default","typeLabel":"object"},"chains":{"type":"object","additionalProperties":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"account.evm.oneOf.1.delegations.chains.additionalProperties.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"account.evm.oneOf.1.delegations.chains.additionalProperties","typeLabel":"object"},"description":"Per-chain delegate contracts, keyed by CAIP-2 chain id","example":{"eip155:8453":{"contract":"0x…"}},"uniqueKey":"account.evm.oneOf.1.delegations.chains","typeLabel":"object"}},"additionalProperties":false,"description":"EIP-7702 delegations for this account","uniqueKey":"account.evm.oneOf.1.delegations","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"account.evm.oneOf.1","typeLabel":"object"},{"type":"object","description":"The EVM side of the account","required":["type","address"],"properties":{"type":{"type":"string","enum":["erc7579"],"isRequired":true,"uniqueKey":"account.evm.oneOf.2.type","typeLabel":"enum\u003cstring>"},"address":{"type":"string","isRequired":true,"uniqueKey":"account.evm.oneOf.2.address","typeLabel":"string"},"initData":{"type":"object","properties":{"setupOps":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Account deployment factory address","isRequired":true,"uniqueKey":"account.evm.oneOf.2.initData.setupOps.items.[INDEX].to","typeLabel":"string"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Account deployment data","isRequired":true,"uniqueKey":"account.evm.oneOf.2.initData.setupOps.items.[INDEX].data","typeLabel":"string"}},"required":["to","data"],"additionalProperties":false,"uniqueKey":"account.evm.oneOf.2.initData.setupOps.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"account.evm.oneOf.2.initData.setupOps","typeLabel":"object[]"}},"required":["setupOps"],"additionalProperties":false,"description":"Deployment data, used only where the account is not yet deployed","uniqueKey":"account.evm.oneOf.2.initData","typeLabel":"object"},"signatureMode":{"type":"integer","enum":[0,1,2,3,4,5,6],"description":"How the user's intent signature is verified onchain. The orchestrator picks a default from the account type — set this only to override. `0` emissary, `1` ERC-1271, `2` emissary then ERC-1271, `3` ERC-1271 then emissary, `4` emissary execution, `5` emissary execution then ERC-1271, `6` ERC-1271 then emissary execution.","example":3,"uniqueKey":"account.evm.oneOf.2.signatureMode","typeLabel":"enum\u003cinteger>"},"delegations":{"type":"object","properties":{"default":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"account.evm.oneOf.2.delegations.default.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"account.evm.oneOf.2.delegations.default","typeLabel":"object"},"chains":{"type":"object","additionalProperties":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"account.evm.oneOf.2.delegations.chains.additionalProperties.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"account.evm.oneOf.2.delegations.chains.additionalProperties","typeLabel":"object"},"description":"Per-chain delegate contracts, keyed by CAIP-2 chain id","example":{"eip155:8453":{"contract":"0x…"}},"uniqueKey":"account.evm.oneOf.2.delegations.chains","typeLabel":"object"}},"additionalProperties":false,"description":"EIP-7702 delegations for this account","uniqueKey":"account.evm.oneOf.2.delegations","typeLabel":"object"},"simulation":{"type":"object","properties":{"mockSignature":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Cross-chain fallback stub signature, used where no per-chain entry matches","uniqueKey":"account.evm.oneOf.2.simulation.mockSignature","typeLabel":"string"},"mockSignaturesByChain":{"type":"object","additionalProperties":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","uniqueKey":"account.evm.oneOf.2.simulation.mockSignaturesByChain.additionalProperties","typeLabel":"string"},"description":"Per-chain stub signatures, keyed by CAIP-2 chain id","uniqueKey":"account.evm.oneOf.2.simulation.mockSignaturesByChain","typeLabel":"object"}},"additionalProperties":false,"description":"Gas-estimation inputs for this account","uniqueKey":"account.evm.oneOf.2.simulation","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"account.evm.oneOf.2","typeLabel":"object"}],"uniqueKey":"account.evm","typeLabel":"object"},"svm":{"oneOf":[{"type":"object","description":"The Solana side of the account","required":["address"],"properties":{"address":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$","isRequired":true,"uniqueKey":"account.svm.oneOf.0.address","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"account.svm.oneOf.0","typeLabel":"object"},{"type":"object","description":"The Solana side of the account","required":["type","address","authorization"],"properties":{"type":{"type":"string","enum":["swig"],"isRequired":true,"uniqueKey":"account.svm.oneOf.1.type","typeLabel":"enum\u003cstring>"},"address":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$","description":"The asset-holding Swig wallet, not the Swig state account. Must be the wallet the orchestrator derives for the EVM account or, for a Solana-only account, the wallet of `swigAccount`.","isRequired":true,"uniqueKey":"account.svm.oneOf.1.address","typeLabel":"string"},"authorization":{"oneOf":[{"type":"object","description":"The authority that signs this request. On a Solana-only account it selects the one Swig role carrying this key, which must hold `All` or `AllButManageAuthority` for a spend, or `All` or `ManageAuthority` for an authority change; no match, several matches or another permission is refused, so a `ManageAuthority`-only role never spends. On an account paired with an EVM entry, the root role signs.","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"account.svm.oneOf.1.authorization.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"EVM address the signing Swig role recovers to","isRequired":true,"uniqueKey":"account.svm.oneOf.1.authorization.oneOf.0.address","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"account.svm.oneOf.1.authorization.oneOf.0","typeLabel":"object"},{"type":"object","description":"The authority that signs this request. On a Solana-only account it selects the one Swig role carrying this key, which must hold `All` or `AllButManageAuthority` for a spend, or `All` or `ManageAuthority` for an authority change; no match, several matches or another permission is refused, so a `ManageAuthority`-only role never spends. On an account paired with an EVM entry, the root role signs.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"account.svm.oneOf.1.authorization.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"Passkey public key on the signing Swig role: SEC1-compressed P-256, 33 bytes as 0x-prefixed hex","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"account.svm.oneOf.1.authorization.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"account.svm.oneOf.1.authorization.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"account.svm.oneOf.1.authorization","typeLabel":"object"},"swigAccount":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$","description":"The Swig state account holding the roles. Required for a Solana-only account (no `evm` entry); optional for an account paired with an EVM entry, whose Swig the orchestrator derives.","uniqueKey":"account.svm.oneOf.1.swigAccount","typeLabel":"string"},"initData":{"type":"object","properties":{"authority":{"oneOf":[{"type":"object","description":"The public key installed as the Swig root, with every permission. Taken as supplied and permanent: a wrong key strands the wallet. Must agree with `authorization`.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"account.svm.oneOf.1.initData.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x(0[23][0-9a-fA-F]{64}|04[0-9a-fA-F]{128})$","description":"SEC1 secp256k1 public key as 0x-prefixed hex: compressed (33 bytes, leading 02 or 03) or uncompressed (65 bytes, leading 04)","isRequired":true,"uniqueKey":"account.svm.oneOf.1.initData.authority.oneOf.0.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"account.svm.oneOf.1.initData.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"The public key installed as the Swig root, with every permission. Taken as supplied and permanent: a wrong key strands the wallet. Must agree with `authorization`.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"account.svm.oneOf.1.initData.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 passkey point, 33 bytes as 0x-prefixed hex","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"account.svm.oneOf.1.initData.authority.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"account.svm.oneOf.1.initData.authority.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"account.svm.oneOf.1.initData.authority","typeLabel":"object"},"id":{"type":"string","pattern":"^0x[0-9a-fA-F]{64}$","description":"The 32-byte Swig id, 0x-prefixed hex. Required for a Solana-only account, whose `swigAccount` it must derive; refused for an account paired with an EVM entry, whose id the orchestrator derives.","uniqueKey":"account.svm.oneOf.1.initData.id","typeLabel":"string"}},"required":["authority"],"additionalProperties":false,"description":"Creation data, accepted only on a request with no delivery, execution or recipient: such a request creates the Swig.","uniqueKey":"account.svm.oneOf.1.initData","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"account.svm.oneOf.1","typeLabel":"object"}],"uniqueKey":"account.svm","typeLabel":"object"}},"additionalProperties":false,"description":"The account this intent spends from and delivers to, per VM. A quote needs a configured `evm` entry, or for a Solana-only account a `swig` `svm` entry and no `evm` entry: a receiver cannot fund one.","example":{"evm":{"type":"eoa","address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"}},"isRequired":true,"uniqueKey":"account","typeLabel":"object"},"destination":{"oneOf":[{"type":"object","description":"Where the intent lands, tagged by VM: the token and exact amount to deliver, and any execution there.","required":["vm","chainId"],"properties":{"vm":{"type":"string","enum":["evm"],"isRequired":true,"uniqueKey":"destination.oneOf.0.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the destination chain.","example":"eip155:8453","isRequired":true,"uniqueKey":"destination.oneOf.0.chainId","typeLabel":"string"},"token":{"oneOf":[{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.0.token.oneOf.0","typeLabel":"string"},{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.0.token.oneOf.1","typeLabel":"string"},{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","enum":["ETH","USDC","WETH","USDT","USDT0","BNB","WBNB","XDAI","WXDAI","POL","WPOL","MON","WMON","S","WS","OKB","WOKB","HYPE","WHYPE","RON","WRON","USDG","XPL","WXPL","AVAX","WAVAX","MockUSD","USDC_TEST","XLM","ensUSDC","ensUSDC2","ensUSDC3","TRX","WTRX","SOL","WSOL"],"example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.0.token.oneOf.2","typeLabel":"enum\u003cstring>"}],"uniqueKey":"destination.oneOf.0.token","typeLabel":"string · string · enum\u003cstring>"},"amount":{"type":"string","pattern":"^[0-9]+$","format":"uint256","description":"Exact delivery, in the token's smallest unit. Requires `token`; omit it with a `token` for a max-out intent.","example":"1000000","uniqueKey":"destination.oneOf.0.amount","typeLabel":"string\u003cuint256>"},"recipient":{"oneOf":[{"type":"object","description":"Where the delivery lands. Omit to deliver to the account.","required":["address"],"properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.0.address","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.0.recipient.oneOf.0","typeLabel":"object"},{"type":"object","description":"Where the delivery lands. Omit to deliver to the account.","required":["type","address"],"properties":{"type":{"type":"string","enum":["eoa"],"isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.1.type","typeLabel":"enum\u003cstring>"},"address":{"type":"string","isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.1.address","typeLabel":"string"},"delegations":{"type":"object","properties":{"default":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.1.delegations.default.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"destination.oneOf.0.recipient.oneOf.1.delegations.default","typeLabel":"object"},"chains":{"type":"object","additionalProperties":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.1.delegations.chains.additionalProperties.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"destination.oneOf.0.recipient.oneOf.1.delegations.chains.additionalProperties","typeLabel":"object"},"description":"Per-chain delegate contracts, keyed by CAIP-2 chain id","example":{"eip155:8453":{"contract":"0x…"}},"uniqueKey":"destination.oneOf.0.recipient.oneOf.1.delegations.chains","typeLabel":"object"}},"additionalProperties":false,"description":"EIP-7702 delegations for this account","uniqueKey":"destination.oneOf.0.recipient.oneOf.1.delegations","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.0.recipient.oneOf.1","typeLabel":"object"},{"type":"object","description":"Where the delivery lands. Omit to deliver to the account.","required":["type","address"],"properties":{"type":{"type":"string","enum":["erc7579"],"isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.2.type","typeLabel":"enum\u003cstring>"},"address":{"type":"string","isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.2.address","typeLabel":"string"},"initData":{"type":"object","properties":{"setupOps":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Account deployment factory address","isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.2.initData.setupOps.items.[INDEX].to","typeLabel":"string"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Account deployment data","isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.2.initData.setupOps.items.[INDEX].data","typeLabel":"string"}},"required":["to","data"],"additionalProperties":false,"uniqueKey":"destination.oneOf.0.recipient.oneOf.2.initData.setupOps.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.2.initData.setupOps","typeLabel":"object[]"}},"required":["setupOps"],"additionalProperties":false,"description":"Deployment data, used only where the account is not yet deployed","uniqueKey":"destination.oneOf.0.recipient.oneOf.2.initData","typeLabel":"object"},"delegations":{"type":"object","properties":{"default":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.2.delegations.default.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"destination.oneOf.0.recipient.oneOf.2.delegations.default","typeLabel":"object"},"chains":{"type":"object","additionalProperties":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"destination.oneOf.0.recipient.oneOf.2.delegations.chains.additionalProperties.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"destination.oneOf.0.recipient.oneOf.2.delegations.chains.additionalProperties","typeLabel":"object"},"description":"Per-chain delegate contracts, keyed by CAIP-2 chain id","example":{"eip155:8453":{"contract":"0x…"}},"uniqueKey":"destination.oneOf.0.recipient.oneOf.2.delegations.chains","typeLabel":"object"}},"additionalProperties":false,"description":"EIP-7702 delegations for this account","uniqueKey":"destination.oneOf.0.recipient.oneOf.2.delegations","typeLabel":"object"},"simulation":{"type":"object","properties":{"mockSignature":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Cross-chain fallback stub signature, used where no per-chain entry matches","uniqueKey":"destination.oneOf.0.recipient.oneOf.2.simulation.mockSignature","typeLabel":"string"},"mockSignaturesByChain":{"type":"object","additionalProperties":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","uniqueKey":"destination.oneOf.0.recipient.oneOf.2.simulation.mockSignaturesByChain.additionalProperties","typeLabel":"string"},"description":"Per-chain stub signatures, keyed by CAIP-2 chain id","uniqueKey":"destination.oneOf.0.recipient.oneOf.2.simulation.mockSignaturesByChain","typeLabel":"object"}},"additionalProperties":false,"description":"Gas-estimation inputs for this account","uniqueKey":"destination.oneOf.0.recipient.oneOf.2.simulation","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.0.recipient.oneOf.2","typeLabel":"object"}],"uniqueKey":"destination.oneOf.0.recipient","typeLabel":"object"},"execution":{"type":"object","properties":{"calls":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Target contract address for execution","example":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","isRequired":true,"uniqueKey":"destination.oneOf.0.execution.calls.items.[INDEX].to","typeLabel":"string"},"value":{"type":"string","pattern":"^[0-9]+$","format":"uint256","description":"Amount must be a non-negative decimal integer string in smallest units","example":"1000000","isRequired":true,"uniqueKey":"destination.oneOf.0.execution.calls.items.[INDEX].value","typeLabel":"string\u003cuint256>"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Encoded function call data","example":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240","isRequired":true,"uniqueKey":"destination.oneOf.0.execution.calls.items.[INDEX].data","typeLabel":"string"}},"required":["to","value","data"],"uniqueKey":"destination.oneOf.0.execution.calls.items.[INDEX]","typeLabel":"object"},"minItems":1,"description":"Execution calls to run on the destination chain, in order.","isRequired":true,"uniqueKey":"destination.oneOf.0.execution.calls","typeLabel":"object[]"},"gasLimit":{"type":"string","format":"uint256","description":"Gas limit for the destination-chain executions","example":"100000","uniqueKey":"destination.oneOf.0.execution.gasLimit","typeLabel":"string\u003cuint256>"},"executionTokensReceived":{"type":"array","items":{"type":"string","uniqueKey":"destination.oneOf.0.execution.executionTokensReceived.items.[INDEX]","typeLabel":"string"},"description":"Tokens that will be received by EOA executions. These will be swept to the recipient account.","example":["0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"],"uniqueKey":"destination.oneOf.0.execution.executionTokensReceived","typeLabel":"string[]"}},"required":["calls"],"additionalProperties":false,"uniqueKey":"destination.oneOf.0.execution","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.0","typeLabel":"object"},{"type":"object","description":"Where the intent lands, tagged by VM: the token and exact amount to deliver, and any execution there.","required":["vm","chainId"],"properties":{"vm":{"type":"string","enum":["svm"],"isRequired":true,"uniqueKey":"destination.oneOf.1.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the destination chain.","example":"eip155:8453","isRequired":true,"uniqueKey":"destination.oneOf.1.chainId","typeLabel":"string"},"token":{"oneOf":[{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.1.token.oneOf.0","typeLabel":"string"},{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.1.token.oneOf.1","typeLabel":"string"},{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","enum":["ETH","USDC","WETH","USDT","USDT0","BNB","WBNB","XDAI","WXDAI","POL","WPOL","MON","WMON","S","WS","OKB","WOKB","HYPE","WHYPE","RON","WRON","USDG","XPL","WXPL","AVAX","WAVAX","MockUSD","USDC_TEST","XLM","ensUSDC","ensUSDC2","ensUSDC3","TRX","WTRX","SOL","WSOL"],"example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.1.token.oneOf.2","typeLabel":"enum\u003cstring>"}],"uniqueKey":"destination.oneOf.1.token","typeLabel":"string · string · enum\u003cstring>"},"amount":{"type":"string","pattern":"^[0-9]+$","format":"uint256","description":"Exact delivery, in the token's smallest unit. Requires `token`; omit it with a `token` for a max-out intent.","example":"1000000","uniqueKey":"destination.oneOf.1.amount","typeLabel":"string\u003cuint256>"},"recipient":{"type":"object","properties":{"address":{"type":"string","minLength":1,"description":"Recipient address. Format depends on destination chain — 0x-hex for EVM destinations, base58 for Solana, T-address for Tron.","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"destination.oneOf.1.recipient.address","typeLabel":"string"}},"required":["address"],"additionalProperties":false,"description":"Where the delivery lands. Omit to deliver to the account.","uniqueKey":"destination.oneOf.1.recipient","typeLabel":"object"},"execution":{"oneOf":[{"type":"object","description":"What the destination runs out of the account's Swig: caller `instructions`, or an `authority` change. Never both.","required":["instructions"],"properties":{"instructions":{"type":"array","items":{"type":"object","properties":{"programId":{"type":"string","description":"Program to invoke, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.0.instructions.items.[INDEX].programId","typeLabel":"string"},"accounts":{"type":"array","items":{"type":"object","properties":{"pubkey":{"type":"string","description":"Account address, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.0.instructions.items.[INDEX].accounts.items.[INDEX].pubkey","typeLabel":"string"},"isSigner":{"type":"boolean","description":"Whether the instruction requires this account to sign.","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.0.instructions.items.[INDEX].accounts.items.[INDEX].isSigner","typeLabel":"boolean"},"isWritable":{"type":"boolean","description":"Whether the instruction writes to this account.","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.0.instructions.items.[INDEX].accounts.items.[INDEX].isWritable","typeLabel":"boolean"}},"required":["pubkey","isSigner","isWritable"],"uniqueKey":"destination.oneOf.1.execution.oneOf.0.instructions.items.[INDEX].accounts.items.[INDEX]","typeLabel":"object"},"maxItems":64,"description":"Accounts the instruction reads or writes, in the order the program expects.","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.0.instructions.items.[INDEX].accounts","typeLabel":"object[]"},"data":{"type":"string","description":"Instruction data, base64.","example":"CQ==","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.0.instructions.items.[INDEX].data","typeLabel":"string"}},"required":["programId","accounts","data"],"description":"A Solana instruction in the JSON shape `@solana/web3.js` and Jupiter `/swap-instructions` produce, so protocol output passes through unchanged.","uniqueKey":"destination.oneOf.1.execution.oneOf.0.instructions.items.[INDEX]","typeLabel":"object"},"minItems":1,"maxItems":32,"description":"Solana instructions to run, in order, out of the account's own wallet. The wallet executes them, so `recipient` must be omitted: a payee is encoded inside the instructions. No route serves them yet, so a request carrying them is refused with `UNSUPPORTED_DESTINATION_INSTRUCTIONS`.","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.0.instructions","typeLabel":"object[]"},"addressLookupTables":{"type":"array","items":{"type":"string","uniqueKey":"destination.oneOf.1.execution.oneOf.0.addressLookupTables.items.[INDEX]","typeLabel":"string"},"maxItems":8,"description":"Address lookup tables the instructions resolve accounts through, base58, as Jupiter `/swap-instructions` returns them.","uniqueKey":"destination.oneOf.1.execution.oneOf.0.addressLookupTables","typeLabel":"string[]"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.1.execution.oneOf.0","typeLabel":"object"},{"type":"object","description":"What the destination runs out of the account's Swig: caller `instructions`, or an `authority` change. Never both.","required":["authority"],"properties":{"authority":{"oneOf":[{"type":"object","description":"Add a passkey or secp256k1 authority to the account's existing Swig, or remove a non-root one by its key. The added role holds exactly the requested permission, with no program permission added. Signed by the role `account.svm.authorization` names, which must hold `All` or `ManageAuthority`. The root role (id 0) is never removed. A removal that would leave no signable role holding `All` or `ManageAuthority` is refused, and so is adding a key already on the Swig. Solana-only accounts, sponsored (`options.sponsorship.gas`) only, and one change per intent.","required":["action","key","permission"],"properties":{"action":{"type":"string","enum":["add"],"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.0.action","typeLabel":"enum\u003cstring>"},"key":{"oneOf":[{"type":"object","description":"The authority key: a passkey (`secp256r1`) or a secp256k1 public key. Either must be SEC1-compressed and lie on its curve.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.0.key.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"The SEC1-compressed P-256 passkey public key, as 33 bytes of 0x-prefixed hex","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.0.key.oneOf.0.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.0.key.oneOf.0","typeLabel":"object"},{"type":"object","description":"The authority key: a passkey (`secp256r1`) or a secp256k1 public key. Either must be SEC1-compressed and lie on its curve.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.0.key.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"The SEC1-compressed secp256k1 public key, as 33 bytes of 0x-prefixed hex. Uncompressed keys are refused: compress them first. Never an EVM address.","example":"0x0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.0.key.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.0.key.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.0.key","typeLabel":"object"},"permission":{"type":"string","enum":["all","allButManageAuthority","manageAuthority"],"description":"What the added authority may do, installed as exactly that one Swig action. `all`: every action, including adding and removing the Swig's non-root authorities. `allButManageAuthority`: spend and execute, but never add or remove an authority. `manageAuthority`: add and remove non-root authorities — including granting `all`, so effectively takeover power — but never spend or execute: the Swig program refuses every wallet-signed instruction it signs. Required; there is no default.","example":"allButManageAuthority","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.0.permission","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"Add a passkey or secp256k1 authority to the account's existing Swig, or remove a non-root one by its key. The added role holds exactly the requested permission, with no program permission added. Signed by the role `account.svm.authorization` names, which must hold `All` or `ManageAuthority`. The root role (id 0) is never removed. A removal that would leave no signable role holding `All` or `ManageAuthority` is refused, and so is adding a key already on the Swig. Solana-only accounts, sponsored (`options.sponsorship.gas`) only, and one change per intent.","required":["action","key"],"properties":{"action":{"type":"string","enum":["remove"],"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.1.action","typeLabel":"enum\u003cstring>"},"key":{"oneOf":[{"type":"object","description":"The authority key: a passkey (`secp256r1`) or a secp256k1 public key. Either must be SEC1-compressed and lie on its curve.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.1.key.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"The SEC1-compressed P-256 passkey public key, as 33 bytes of 0x-prefixed hex","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.1.key.oneOf.0.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.1.key.oneOf.0","typeLabel":"object"},{"type":"object","description":"The authority key: a passkey (`secp256r1`) or a secp256k1 public key. Either must be SEC1-compressed and lie on its curve.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.1.key.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"The SEC1-compressed secp256k1 public key, as 33 bytes of 0x-prefixed hex. Uncompressed keys are refused: compress them first. Never an EVM address.","example":"0x0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.1.key.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.1.key.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.1.key","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"destination.oneOf.1.execution.oneOf.1.authority","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.1.execution.oneOf.1","typeLabel":"object"}],"uniqueKey":"destination.oneOf.1.execution","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.1","typeLabel":"object"},{"type":"object","description":"Where the intent lands, tagged by VM: the token and exact amount to deliver, and any execution there.","required":["vm","chainId","recipient"],"properties":{"vm":{"type":"string","enum":["tvm"],"isRequired":true,"uniqueKey":"destination.oneOf.2.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the destination chain.","example":"eip155:8453","isRequired":true,"uniqueKey":"destination.oneOf.2.chainId","typeLabel":"string"},"recipient":{"type":"object","properties":{"address":{"type":"string","minLength":1,"description":"Recipient address. Format depends on destination chain — 0x-hex for EVM destinations, base58 for Solana, T-address for Tron.","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"destination.oneOf.2.recipient.address","typeLabel":"string"}},"required":["address"],"additionalProperties":false,"description":"Where the delivery lands. Omit to deliver to the account.","isRequired":true,"uniqueKey":"destination.oneOf.2.recipient","typeLabel":"object"},"token":{"oneOf":[{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.2.token.oneOf.0","typeLabel":"string"},{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.2.token.oneOf.1","typeLabel":"string"},{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","enum":["ETH","USDC","WETH","USDT","USDT0","BNB","WBNB","XDAI","WXDAI","POL","WPOL","MON","WMON","S","WS","OKB","WOKB","HYPE","WHYPE","RON","WRON","USDG","XPL","WXPL","AVAX","WAVAX","MockUSD","USDC_TEST","XLM","ensUSDC","ensUSDC2","ensUSDC3","TRX","WTRX","SOL","WSOL"],"example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.2.token.oneOf.2","typeLabel":"enum\u003cstring>"}],"uniqueKey":"destination.oneOf.2.token","typeLabel":"string · string · enum\u003cstring>"},"amount":{"type":"string","pattern":"^[0-9]+$","format":"uint256","description":"Exact delivery, in the token's smallest unit. Requires `token`; omit it with a `token` for a max-out intent.","example":"1000000","uniqueKey":"destination.oneOf.2.amount","typeLabel":"string\u003cuint256>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.2","typeLabel":"object"},{"type":"object","description":"Where the intent lands, tagged by VM: the token and exact amount to deliver, and any execution there.","required":["vm","chainId","recipient"],"properties":{"vm":{"type":"string","enum":["stellar"],"isRequired":true,"uniqueKey":"destination.oneOf.3.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the destination chain.","example":"eip155:8453","isRequired":true,"uniqueKey":"destination.oneOf.3.chainId","typeLabel":"string"},"recipient":{"type":"object","properties":{"address":{"type":"string","minLength":1,"description":"Recipient address. Format depends on destination chain — 0x-hex for EVM destinations, base58 for Solana, T-address for Tron.","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"destination.oneOf.3.recipient.address","typeLabel":"string"}},"required":["address"],"additionalProperties":false,"description":"Where the delivery lands. Omit to deliver to the account.","isRequired":true,"uniqueKey":"destination.oneOf.3.recipient","typeLabel":"object"},"token":{"oneOf":[{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.3.token.oneOf.0","typeLabel":"string"},{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.3.token.oneOf.1","typeLabel":"string"},{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","enum":["ETH","USDC","WETH","USDT","USDT0","BNB","WBNB","XDAI","WXDAI","POL","WPOL","MON","WMON","S","WS","OKB","WOKB","HYPE","WHYPE","RON","WRON","USDG","XPL","WXPL","AVAX","WAVAX","MockUSD","USDC_TEST","XLM","ensUSDC","ensUSDC2","ensUSDC3","TRX","WTRX","SOL","WSOL"],"example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.3.token.oneOf.2","typeLabel":"enum\u003cstring>"}],"uniqueKey":"destination.oneOf.3.token","typeLabel":"string · string · enum\u003cstring>"},"amount":{"type":"string","pattern":"^[0-9]+$","format":"uint256","description":"Exact delivery, in the token's smallest unit. Requires `token`; omit it with a `token` for a max-out intent.","example":"1000000","uniqueKey":"destination.oneOf.3.amount","typeLabel":"string\u003cuint256>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.3","typeLabel":"object"},{"type":"object","description":"Where the intent lands, tagged by VM: the token and exact amount to deliver, and any execution there.","required":["vm","chainId"],"properties":{"vm":{"type":"string","enum":["hypercore"],"isRequired":true,"uniqueKey":"destination.oneOf.4.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the destination chain.","example":"eip155:8453","isRequired":true,"uniqueKey":"destination.oneOf.4.chainId","typeLabel":"string"},"token":{"oneOf":[{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.4.token.oneOf.0","typeLabel":"string"},{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.4.token.oneOf.1","typeLabel":"string"},{"type":"string","description":"Token to deliver: a registry symbol or a token address on the destination chain. Omit it for an intent that delivers nothing.","enum":["ETH","USDC","WETH","USDT","USDT0","BNB","WBNB","XDAI","WXDAI","POL","WPOL","MON","WMON","S","WS","OKB","WOKB","HYPE","WHYPE","RON","WRON","USDG","XPL","WXPL","AVAX","WAVAX","MockUSD","USDC_TEST","XLM","ensUSDC","ensUSDC2","ensUSDC3","TRX","WTRX","SOL","WSOL"],"example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","uniqueKey":"destination.oneOf.4.token.oneOf.2","typeLabel":"enum\u003cstring>"}],"uniqueKey":"destination.oneOf.4.token","typeLabel":"string · string · enum\u003cstring>"},"amount":{"type":"string","pattern":"^[0-9]+$","format":"uint256","description":"Exact delivery, in the token's smallest unit. Requires `token`; omit it with a `token` for a max-out intent.","example":"1000000","uniqueKey":"destination.oneOf.4.amount","typeLabel":"string\u003cuint256>"},"recipient":{"oneOf":[{"type":"object","description":"Where the delivery lands. Omit to deliver to the account.","required":["address"],"properties":{"address":{"type":"string","isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.0.address","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.recipient.oneOf.0","typeLabel":"object"},{"type":"object","description":"Where the delivery lands. Omit to deliver to the account.","required":["type","address"],"properties":{"type":{"type":"string","enum":["eoa"],"isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.1.type","typeLabel":"enum\u003cstring>"},"address":{"type":"string","isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.1.address","typeLabel":"string"},"delegations":{"type":"object","properties":{"default":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.1.delegations.default.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"destination.oneOf.4.recipient.oneOf.1.delegations.default","typeLabel":"object"},"chains":{"type":"object","additionalProperties":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.1.delegations.chains.additionalProperties.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"destination.oneOf.4.recipient.oneOf.1.delegations.chains.additionalProperties","typeLabel":"object"},"description":"Per-chain delegate contracts, keyed by CAIP-2 chain id","example":{"eip155:8453":{"contract":"0x…"}},"uniqueKey":"destination.oneOf.4.recipient.oneOf.1.delegations.chains","typeLabel":"object"}},"additionalProperties":false,"description":"EIP-7702 delegations for this account","uniqueKey":"destination.oneOf.4.recipient.oneOf.1.delegations","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.recipient.oneOf.1","typeLabel":"object"},{"type":"object","description":"Where the delivery lands. Omit to deliver to the account.","required":["type","address"],"properties":{"type":{"type":"string","enum":["erc7579"],"isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.2.type","typeLabel":"enum\u003cstring>"},"address":{"type":"string","isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.2.address","typeLabel":"string"},"initData":{"type":"object","properties":{"setupOps":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Account deployment factory address","isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.2.initData.setupOps.items.[INDEX].to","typeLabel":"string"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Account deployment data","isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.2.initData.setupOps.items.[INDEX].data","typeLabel":"string"}},"required":["to","data"],"additionalProperties":false,"uniqueKey":"destination.oneOf.4.recipient.oneOf.2.initData.setupOps.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.2.initData.setupOps","typeLabel":"object[]"}},"required":["setupOps"],"additionalProperties":false,"description":"Deployment data, used only where the account is not yet deployed","uniqueKey":"destination.oneOf.4.recipient.oneOf.2.initData","typeLabel":"object"},"delegations":{"type":"object","properties":{"default":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.2.delegations.default.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"destination.oneOf.4.recipient.oneOf.2.delegations.default","typeLabel":"object"},"chains":{"type":"object","additionalProperties":{"type":"object","properties":{"contract":{"type":"string","description":"Contract the account delegates to under EIP-7702","isRequired":true,"uniqueKey":"destination.oneOf.4.recipient.oneOf.2.delegations.chains.additionalProperties.contract","typeLabel":"string"}},"required":["contract"],"additionalProperties":false,"uniqueKey":"destination.oneOf.4.recipient.oneOf.2.delegations.chains.additionalProperties","typeLabel":"object"},"description":"Per-chain delegate contracts, keyed by CAIP-2 chain id","example":{"eip155:8453":{"contract":"0x…"}},"uniqueKey":"destination.oneOf.4.recipient.oneOf.2.delegations.chains","typeLabel":"object"}},"additionalProperties":false,"description":"EIP-7702 delegations for this account","uniqueKey":"destination.oneOf.4.recipient.oneOf.2.delegations","typeLabel":"object"},"simulation":{"type":"object","properties":{"mockSignature":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Cross-chain fallback stub signature, used where no per-chain entry matches","uniqueKey":"destination.oneOf.4.recipient.oneOf.2.simulation.mockSignature","typeLabel":"string"},"mockSignaturesByChain":{"type":"object","additionalProperties":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","uniqueKey":"destination.oneOf.4.recipient.oneOf.2.simulation.mockSignaturesByChain.additionalProperties","typeLabel":"string"},"description":"Per-chain stub signatures, keyed by CAIP-2 chain id","uniqueKey":"destination.oneOf.4.recipient.oneOf.2.simulation.mockSignaturesByChain","typeLabel":"object"}},"additionalProperties":false,"description":"Gas-estimation inputs for this account","uniqueKey":"destination.oneOf.4.recipient.oneOf.2.simulation","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.recipient.oneOf.2","typeLabel":"object"}],"uniqueKey":"destination.oneOf.4.recipient","typeLabel":"object"},"execution":{"type":"object","properties":{"actions":{"type":"array","items":{"oneOf":[{"type":"object","description":"A Hyperliquid L1 action, passed through as they define it. Keys are re-emitted in their canonical order before the action is hashed, so the order you send them in does not matter.","required":["type","orders","grouping"],"properties":{"type":{"type":"string","enum":["order"],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.type","typeLabel":"enum\u003cstring>"},"orders":{"type":"array","items":{"type":"object","properties":{"a":{"type":"integer","minimum":0,"description":"Asset index. Perps use the index in the `meta` universe; spot uses `10000 + index` from `spotMeta`. This is an INDEX, not a ticker — resolve it from the info endpoint, and note that an index built against the wrong universe places a valid order in the wrong market.","example":0,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].a","typeLabel":"integer"},"b":{"type":"boolean","description":"Buy (`true`) or sell (`false`).","example":true,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].b","typeLabel":"boolean"},"p":{"type":"string","pattern":"^\\d+(\\.\\d+)?$","description":"Limit price. Must satisfy Hyperliquid's tick rules — at most 5 significant figures and at most `6 - szDecimals` decimals for a perp — and is refused there, not here.\n\nThis price is fixed when you sign, and an intent that bridges to HyperCore takes ~30s to deliver. Price it to still cross after that move, or the order is refused with your funds already delivered.","example":"64250.5","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].p","typeLabel":"string"},"s":{"type":"string","pattern":"^\\d+(\\.\\d+)?$","description":"Size in units of the asset, to at most the asset's `szDecimals`. Hyperliquid refuses an order worth under ~$10.","example":"0.0002","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].s","typeLabel":"string"},"r":{"type":"boolean","description":"Reduce-only. `true` is how a position is CLOSED — pair it with a tokenless intent, since closing needs no delivered collateral.","example":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].r","typeLabel":"boolean"},"t":{"oneOf":[{"type":"object","description":"Either `{ limit: { tif } }` or `{ trigger: { isMarket, triggerPx, tpsl } }`.","required":["limit"],"properties":{"limit":{"type":"object","properties":{"tif":{"type":"string","enum":["Alo","Ioc","Gtc"],"description":"Time in force. `Ioc` fills what it can and cancels the rest, which is how a market order is expressed here — there is no market order type. `Alo` is post-only. `Gtc` rests on the book.\n\nPrefer `Ioc` for anything an intent delivers funds for: a resting order leaves the account holding USDC and no position, and the agent that could have cancelled it is already spent.","example":"Ioc","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].t.oneOf.0.limit.tif","typeLabel":"enum\u003cstring>"}},"required":["tif"],"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].t.oneOf.0.limit","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].t.oneOf.0","typeLabel":"object"},{"type":"object","description":"Either `{ limit: { tif } }` or `{ trigger: { isMarket, triggerPx, tpsl } }`.","required":["trigger"],"properties":{"trigger":{"type":"object","properties":{"isMarket":{"type":"boolean","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].t.oneOf.1.trigger.isMarket","typeLabel":"boolean"},"triggerPx":{"type":"string","pattern":"^\\d+(\\.\\d+)?$","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].t.oneOf.1.trigger.triggerPx","typeLabel":"string"},"tpsl":{"type":"string","enum":["tp","sl"],"description":"Take-profit or stop-loss.","example":"sl","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].t.oneOf.1.trigger.tpsl","typeLabel":"enum\u003cstring>"}},"required":["isMarket","triggerPx","tpsl"],"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].t.oneOf.1.trigger","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].t.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].t","typeLabel":"object"},"c":{"type":"string","pattern":"^0x[0-9a-fA-F]{32}$","description":"Optional client order id — 128-bit hex. Your handle on the order afterwards: the exchange echoes it back, so it is the only way to correlate a fill with the intent that placed it without polling by asset.","example":"0x1234567890abcdef1234567890abcdef","uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX].c","typeLabel":"string"}},"required":["a","b","p","s","r","t"],"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders.items.[INDEX]","typeLabel":"object"},"minItems":1,"maxItems":100,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.orders","typeLabel":"object[]"},"grouping":{"type":"string","enum":["na","normalTpsl","positionTpsl"],"description":"`na` for a plain order. The TP/SL groupings attach the orders as a bracket around a position.","example":"na","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.grouping","typeLabel":"enum\u003cstring>"},"builder":{"type":"object","properties":{"b":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Address receiving the builder fee.","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.builder.b","typeLabel":"string"},"f":{"type":"integer","minimum":0,"description":"Builder fee in TENTHS of a basis point — `10` is 1bp of order notional.","example":10,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.builder.f","typeLabel":"integer"}},"required":["b","f"],"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0.builder","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","description":"A Hyperliquid L1 action, passed through as they define it. Keys are re-emitted in their canonical order before the action is hashed, so the order you send them in does not matter.","required":["type","cancels"],"properties":{"type":{"type":"string","enum":["cancel"],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.1.type","typeLabel":"enum\u003cstring>"},"cancels":{"type":"array","items":{"type":"object","properties":{"a":{"type":"integer","minimum":0,"description":"Asset index.","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.1.cancels.items.[INDEX].a","typeLabel":"integer"},"o":{"type":"integer","minimum":0,"description":"Order id.","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.1.cancels.items.[INDEX].o","typeLabel":"integer"}},"required":["a","o"],"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.1.cancels.items.[INDEX]","typeLabel":"object"},"minItems":1,"maxItems":100,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.1.cancels","typeLabel":"object[]"},"f":{"type":"boolean","description":"Fast cancel.","uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.1.f","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.1","typeLabel":"object"},{"type":"object","description":"A Hyperliquid L1 action, passed through as they define it. Keys are re-emitted in their canonical order before the action is hashed, so the order you send them in does not matter.","required":["type","cancels"],"properties":{"type":{"type":"string","enum":["cancelByCloid"],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.2.type","typeLabel":"enum\u003cstring>"},"cancels":{"type":"array","items":{"type":"object","properties":{"asset":{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.2.cancels.items.[INDEX].asset","typeLabel":"integer"},"cloid":{"type":"string","pattern":"^0x[0-9a-fA-F]{32}$","description":"Optional client order id — 128-bit hex. Your handle on the order afterwards: the exchange echoes it back, so it is the only way to correlate a fill with the intent that placed it without polling by asset.","example":"0x1234567890abcdef1234567890abcdef","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.2.cancels.items.[INDEX].cloid","typeLabel":"string"}},"required":["asset","cloid"],"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.2.cancels.items.[INDEX]","typeLabel":"object"},"minItems":1,"maxItems":100,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.2.cancels","typeLabel":"object[]"},"f":{"type":"boolean","uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.2.f","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.2","typeLabel":"object"},{"type":"object","description":"A Hyperliquid L1 action, passed through as they define it. Keys are re-emitted in their canonical order before the action is hashed, so the order you send them in does not matter.","required":["type","oid","order"],"properties":{"type":{"type":"string","enum":["modify"],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.type","typeLabel":"enum\u003cstring>"},"oid":{"oneOf":[{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.oid.oneOf.0","typeLabel":"integer"},{"type":"string","description":"Optional client order id — 128-bit hex. Your handle on the order afterwards: the exchange echoes it back, so it is the only way to correlate a fill with the intent that placed it without polling by asset.","pattern":"^0x[0-9a-fA-F]{32}$","example":"0x1234567890abcdef1234567890abcdef","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.oid.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.oid","typeLabel":"integer | string"},"order":{"type":"object","properties":{"a":{"type":"integer","minimum":0,"description":"Asset index. Perps use the index in the `meta` universe; spot uses `10000 + index` from `spotMeta`. This is an INDEX, not a ticker — resolve it from the info endpoint, and note that an index built against the wrong universe places a valid order in the wrong market.","example":0,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.a","typeLabel":"integer"},"b":{"type":"boolean","description":"Buy (`true`) or sell (`false`).","example":true,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.b","typeLabel":"boolean"},"p":{"type":"string","pattern":"^\\d+(\\.\\d+)?$","description":"Limit price. Must satisfy Hyperliquid's tick rules — at most 5 significant figures and at most `6 - szDecimals` decimals for a perp — and is refused there, not here.\n\nThis price is fixed when you sign, and an intent that bridges to HyperCore takes ~30s to deliver. Price it to still cross after that move, or the order is refused with your funds already delivered.","example":"64250.5","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.p","typeLabel":"string"},"s":{"type":"string","pattern":"^\\d+(\\.\\d+)?$","description":"Size in units of the asset, to at most the asset's `szDecimals`. Hyperliquid refuses an order worth under ~$10.","example":"0.0002","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.s","typeLabel":"string"},"r":{"type":"boolean","description":"Reduce-only. `true` is how a position is CLOSED — pair it with a tokenless intent, since closing needs no delivered collateral.","example":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.r","typeLabel":"boolean"},"t":{"oneOf":[{"type":"object","description":"Either `{ limit: { tif } }` or `{ trigger: { isMarket, triggerPx, tpsl } }`.","required":["limit"],"properties":{"limit":{"type":"object","properties":{"tif":{"type":"string","enum":["Alo","Ioc","Gtc"],"description":"Time in force. `Ioc` fills what it can and cancels the rest, which is how a market order is expressed here — there is no market order type. `Alo` is post-only. `Gtc` rests on the book.\n\nPrefer `Ioc` for anything an intent delivers funds for: a resting order leaves the account holding USDC and no position, and the agent that could have cancelled it is already spent.","example":"Ioc","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.t.oneOf.0.limit.tif","typeLabel":"enum\u003cstring>"}},"required":["tif"],"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.t.oneOf.0.limit","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.t.oneOf.0","typeLabel":"object"},{"type":"object","description":"Either `{ limit: { tif } }` or `{ trigger: { isMarket, triggerPx, tpsl } }`.","required":["trigger"],"properties":{"trigger":{"type":"object","properties":{"isMarket":{"type":"boolean","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.t.oneOf.1.trigger.isMarket","typeLabel":"boolean"},"triggerPx":{"type":"string","pattern":"^\\d+(\\.\\d+)?$","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.t.oneOf.1.trigger.triggerPx","typeLabel":"string"},"tpsl":{"type":"string","enum":["tp","sl"],"description":"Take-profit or stop-loss.","example":"sl","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.t.oneOf.1.trigger.tpsl","typeLabel":"enum\u003cstring>"}},"required":["isMarket","triggerPx","tpsl"],"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.t.oneOf.1.trigger","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.t.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.t","typeLabel":"object"},"c":{"type":"string","pattern":"^0x[0-9a-fA-F]{32}$","description":"Optional client order id — 128-bit hex. Your handle on the order afterwards: the exchange echoes it back, so it is the only way to correlate a fill with the intent that placed it without polling by asset.","example":"0x1234567890abcdef1234567890abcdef","uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order.c","typeLabel":"string"}},"required":["a","b","p","s","r","t"],"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.order","typeLabel":"object"},"a":{"type":"boolean","enum":[true],"description":"Place the replacement even if the cancel failed. Omit it entirely for the default — Hyperliquid rejects an action hashed with `a: false`, so `false` is not a legal value.","uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3.a","typeLabel":"enum\u003cboolean>"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.3","typeLabel":"object"},{"type":"object","description":"A Hyperliquid L1 action, passed through as they define it. Keys are re-emitted in their canonical order before the action is hashed, so the order you send them in does not matter.","required":["type","modifies"],"properties":{"type":{"type":"string","enum":["batchModify"],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.type","typeLabel":"enum\u003cstring>"},"modifies":{"type":"array","items":{"type":"object","properties":{"oid":{"oneOf":[{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].oid.oneOf.0","typeLabel":"integer"},{"type":"string","description":"Optional client order id — 128-bit hex. Your handle on the order afterwards: the exchange echoes it back, so it is the only way to correlate a fill with the intent that placed it without polling by asset.","pattern":"^0x[0-9a-fA-F]{32}$","example":"0x1234567890abcdef1234567890abcdef","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].oid.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].oid","typeLabel":"integer | string"},"order":{"type":"object","properties":{"a":{"type":"integer","minimum":0,"description":"Asset index. Perps use the index in the `meta` universe; spot uses `10000 + index` from `spotMeta`. This is an INDEX, not a ticker — resolve it from the info endpoint, and note that an index built against the wrong universe places a valid order in the wrong market.","example":0,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.a","typeLabel":"integer"},"b":{"type":"boolean","description":"Buy (`true`) or sell (`false`).","example":true,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.b","typeLabel":"boolean"},"p":{"type":"string","pattern":"^\\d+(\\.\\d+)?$","description":"Limit price. Must satisfy Hyperliquid's tick rules — at most 5 significant figures and at most `6 - szDecimals` decimals for a perp — and is refused there, not here.\n\nThis price is fixed when you sign, and an intent that bridges to HyperCore takes ~30s to deliver. Price it to still cross after that move, or the order is refused with your funds already delivered.","example":"64250.5","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.p","typeLabel":"string"},"s":{"type":"string","pattern":"^\\d+(\\.\\d+)?$","description":"Size in units of the asset, to at most the asset's `szDecimals`. Hyperliquid refuses an order worth under ~$10.","example":"0.0002","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.s","typeLabel":"string"},"r":{"type":"boolean","description":"Reduce-only. `true` is how a position is CLOSED — pair it with a tokenless intent, since closing needs no delivered collateral.","example":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.r","typeLabel":"boolean"},"t":{"oneOf":[{"type":"object","description":"Either `{ limit: { tif } }` or `{ trigger: { isMarket, triggerPx, tpsl } }`.","required":["limit"],"properties":{"limit":{"type":"object","properties":{"tif":{"type":"string","enum":["Alo","Ioc","Gtc"],"description":"Time in force. `Ioc` fills what it can and cancels the rest, which is how a market order is expressed here — there is no market order type. `Alo` is post-only. `Gtc` rests on the book.\n\nPrefer `Ioc` for anything an intent delivers funds for: a resting order leaves the account holding USDC and no position, and the agent that could have cancelled it is already spent.","example":"Ioc","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.t.oneOf.0.limit.tif","typeLabel":"enum\u003cstring>"}},"required":["tif"],"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.t.oneOf.0.limit","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.t.oneOf.0","typeLabel":"object"},{"type":"object","description":"Either `{ limit: { tif } }` or `{ trigger: { isMarket, triggerPx, tpsl } }`.","required":["trigger"],"properties":{"trigger":{"type":"object","properties":{"isMarket":{"type":"boolean","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.t.oneOf.1.trigger.isMarket","typeLabel":"boolean"},"triggerPx":{"type":"string","pattern":"^\\d+(\\.\\d+)?$","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.t.oneOf.1.trigger.triggerPx","typeLabel":"string"},"tpsl":{"type":"string","enum":["tp","sl"],"description":"Take-profit or stop-loss.","example":"sl","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.t.oneOf.1.trigger.tpsl","typeLabel":"enum\u003cstring>"}},"required":["isMarket","triggerPx","tpsl"],"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.t.oneOf.1.trigger","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.t.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.t","typeLabel":"object"},"c":{"type":"string","pattern":"^0x[0-9a-fA-F]{32}$","description":"Optional client order id — 128-bit hex. Your handle on the order afterwards: the exchange echoes it back, so it is the only way to correlate a fill with the intent that placed it without polling by asset.","example":"0x1234567890abcdef1234567890abcdef","uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order.c","typeLabel":"string"}},"required":["a","b","p","s","r","t"],"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX].order","typeLabel":"object"}},"required":["oid","order"],"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies.items.[INDEX]","typeLabel":"object"},"minItems":1,"maxItems":100,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.modifies","typeLabel":"object[]"},"a":{"type":"boolean","enum":[true],"description":"Place the replacement even if the cancel failed. Omit it entirely for the default — Hyperliquid rejects an action hashed with `a: false`, so `false` is not a legal value.","uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4.a","typeLabel":"enum\u003cboolean>"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.4","typeLabel":"object"},{"type":"object","description":"A Hyperliquid L1 action, passed through as they define it. Keys are re-emitted in their canonical order before the action is hashed, so the order you send them in does not matter.","required":["type","asset","isCross","leverage"],"properties":{"type":{"type":"string","enum":["updateLeverage"],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.5.type","typeLabel":"enum\u003cstring>"},"asset":{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.5.asset","typeLabel":"integer"},"isCross":{"type":"boolean","description":"Cross margin (`true`) or isolated (`false`).","example":true,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.5.isCross","typeLabel":"boolean"},"leverage":{"type":"integer","minimum":0,"exclusiveMinimum":true,"description":"New leverage, capped by the asset's own maximum. Set it BEFORE the intent that opens the position: leverage applied afterwards does not resize an existing one.","example":5,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.5.leverage","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.5","typeLabel":"object"},{"type":"object","description":"A Hyperliquid L1 action, passed through as they define it. Keys are re-emitted in their canonical order before the action is hashed, so the order you send them in does not matter.","required":["type","asset","isBuy","ntli"],"properties":{"type":{"type":"string","enum":["updateIsolatedMargin"],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.6.type","typeLabel":"enum\u003cstring>"},"asset":{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.6.asset","typeLabel":"integer"},"isBuy":{"type":"boolean","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.6.isBuy","typeLabel":"boolean"},"ntli":{"type":"integer","description":"Margin to add (positive) or remove (negative), in USDC with 6 decimals — `1000000` is 1 USD.","example":1000000,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.6.ntli","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.6","typeLabel":"object"},{"type":"object","description":"A Hyperliquid L1 action, passed through as they define it. Keys are re-emitted in their canonical order before the action is hashed, so the order you send them in does not matter.","required":["type","twap"],"properties":{"type":{"type":"string","enum":["twapOrder"],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.7.type","typeLabel":"enum\u003cstring>"},"twap":{"type":"object","properties":{"a":{"type":"integer","minimum":0,"description":"Asset index, as for an order.","example":0,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.7.twap.a","typeLabel":"integer"},"b":{"type":"boolean","description":"Buy (`true`) or sell (`false`).","example":true,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.7.twap.b","typeLabel":"boolean"},"s":{"type":"string","pattern":"^\\d+(\\.\\d+)?$","description":"Total size to work, in units of the asset.","example":"0.01","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.7.twap.s","typeLabel":"string"},"r":{"type":"boolean","description":"Reduce-only.","example":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.7.twap.r","typeLabel":"boolean"},"m":{"type":"integer","minimum":0,"exclusiveMinimum":true,"description":"Duration in MINUTES. Hyperliquid enforces its own bounds and refuses a duration outside them (\"Invalid TWAP duration\"), so none are imposed here.","example":30,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.7.twap.m","typeLabel":"integer"},"t":{"type":"boolean","description":"Randomize the timing of the sub-orders rather than spacing them evenly.","example":true,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.7.twap.t","typeLabel":"boolean"}},"required":["a","b","s","r","m","t"],"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.7.twap","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.7","typeLabel":"object"},{"type":"object","description":"A Hyperliquid L1 action, passed through as they define it. Keys are re-emitted in their canonical order before the action is hashed, so the order you send them in does not matter.","required":["type","a","t"],"properties":{"type":{"type":"string","enum":["twapCancel"],"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.8.type","typeLabel":"enum\u003cstring>"},"a":{"type":"integer","minimum":0,"description":"Asset index of the running TWAP.","example":0,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.8.a","typeLabel":"integer"},"t":{"type":"integer","minimum":0,"description":"The TWAP id, which Hyperliquid returns when it accepts the `twapOrder` and is not echoed on the intent. Read it back from the exchange — the agent that placed the TWAP authorised only that one action, so cancelling is a second intent.","example":12345,"isRequired":true,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.8.t","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX].oneOf.8","typeLabel":"object"}],"uniqueKey":"destination.oneOf.4.execution.actions.items.[INDEX]","typeLabel":"object"},"minItems":1,"maxItems":3,"description":"The Hyperliquid actions to authorise, IN ORDER. Each gets its own agent in its own API-wallet slot, registered one at a time, and they are sent to the exchange in the order given once every agent is live — the first refusal stops the rest. Order is the contract: `updateLeverage` has to land before the order it applies to. Capped at three, which is how many named API-wallet slots an account has.","uniqueKey":"destination.oneOf.4.execution.actions","typeLabel":"object[]"},"settlement":{"type":"object","properties":{"calls":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Target contract address for execution","example":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.settlement.calls.items.[INDEX].to","typeLabel":"string"},"value":{"type":"string","pattern":"^[0-9]+$","format":"uint256","description":"Amount must be a non-negative decimal integer string in smallest units","example":"1000000","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.settlement.calls.items.[INDEX].value","typeLabel":"string\u003cuint256>"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Encoded function call data","example":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.settlement.calls.items.[INDEX].data","typeLabel":"string"}},"required":["to","value","data"],"uniqueKey":"destination.oneOf.4.execution.settlement.calls.items.[INDEX]","typeLabel":"object"},"minItems":1,"description":"Execution calls to run on the destination chain, in order.","isRequired":true,"uniqueKey":"destination.oneOf.4.execution.settlement.calls","typeLabel":"object[]"},"gasLimit":{"type":"string","format":"uint256","description":"Gas limit for the destination-chain executions","example":"100000","uniqueKey":"destination.oneOf.4.execution.settlement.gasLimit","typeLabel":"string\u003cuint256>"},"executionTokensReceived":{"type":"array","items":{"type":"string","uniqueKey":"destination.oneOf.4.execution.settlement.executionTokensReceived.items.[INDEX]","typeLabel":"string"},"description":"Tokens that will be received by EOA executions. These will be swept to the recipient account.","example":["0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"],"uniqueKey":"destination.oneOf.4.execution.settlement.executionTokensReceived","typeLabel":"string[]"}},"required":["calls"],"additionalProperties":false,"description":"Calls to run on HyperEVM, where the delivery settles before it reaches Core. Its `gasLimit` sizes those calls — Core actions are not EVM transactions and have no gas.","uniqueKey":"destination.oneOf.4.execution.settlement","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"destination.oneOf.4.execution","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"destination.oneOf.4","typeLabel":"object"}],"isRequired":true,"uniqueKey":"destination","typeLabel":"object"},"options":{"type":"object","properties":{"settlementLayers":{"oneOf":[{"type":"array","items":{"type":"string","enum":["ACROSS","ECO","RELAY","OFT","NEAR","RHINO","CCTP","LZ"],"uniqueKey":"options.settlementLayers.oneOf.0.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Which settlement layers the orchestrator may use. `{ include: [...] }` (allow-list) or `{ exclude: [...] }` (deny-list, inverted against the orchestrator's live layer set); a bare array means `include`. Internal modes (`SAME_CHAIN`, `INTENT_EXECUTOR`) are not selectable. Default unset = all layers eligible.","example":{"exclude":["RELAY"]},"uniqueKey":"options.settlementLayers.oneOf.0","typeLabel":"enum\u003cstring>[]"},{"type":"object","description":"Which settlement layers the orchestrator may use. `{ include: [...] }` (allow-list) or `{ exclude: [...] }` (deny-list, inverted against the orchestrator's live layer set); a bare array means `include`. Internal modes (`SAME_CHAIN`, `INTENT_EXECUTOR`) are not selectable. Default unset = all layers eligible.","required":["include"],"properties":{"include":{"type":"array","items":{"type":"string","enum":["ACROSS","ECO","RELAY","OFT","NEAR","RHINO","CCTP","LZ"],"uniqueKey":"options.settlementLayers.oneOf.1.include.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"options.settlementLayers.oneOf.1.include","typeLabel":"enum\u003cstring>[]"}},"additionalProperties":false,"uniqueKey":"options.settlementLayers.oneOf.1","typeLabel":"object"},{"type":"object","description":"Which settlement layers the orchestrator may use. `{ include: [...] }` (allow-list) or `{ exclude: [...] }` (deny-list, inverted against the orchestrator's live layer set); a bare array means `include`. Internal modes (`SAME_CHAIN`, `INTENT_EXECUTOR`) are not selectable. Default unset = all layers eligible.","required":["exclude"],"example":{"exclude":["RELAY"]},"properties":{"exclude":{"type":"array","items":{"type":"string","enum":["ACROSS","ECO","RELAY","OFT","NEAR","RHINO","CCTP","LZ"],"uniqueKey":"options.settlementLayers.oneOf.2.exclude.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"options.settlementLayers.oneOf.2.exclude","typeLabel":"enum\u003cstring>[]"}},"additionalProperties":false,"uniqueKey":"options.settlementLayers.oneOf.2","typeLabel":"object"}],"uniqueKey":"options.settlementLayers","typeLabel":"enum\u003cstring>[] · object · object"},"quoters":{"oneOf":[{"type":"array","items":{"type":"string","enum":["1inch","0x","velora","kyberswap","fynd","fynd-hosted","bebop","relay"],"uniqueKey":"options.quoters.oneOf.0.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Which swap quoters the orchestrator may source swap routes from. `{ include: [...] }` (allow-list) or `{ exclude: [...] }` (deny-list, inverted against the full quoter set); a bare array means `include`. Use this to keep a swap on the venue a smart-session policy is scoped to. Default unset = every quoter the chain supports.","example":{"include":["0x"]},"uniqueKey":"options.quoters.oneOf.0","typeLabel":"enum\u003cstring>[]"},{"type":"object","description":"Which swap quoters the orchestrator may source swap routes from. `{ include: [...] }` (allow-list) or `{ exclude: [...] }` (deny-list, inverted against the full quoter set); a bare array means `include`. Use this to keep a swap on the venue a smart-session policy is scoped to. Default unset = every quoter the chain supports.","required":["include"],"example":{"include":["0x"]},"properties":{"include":{"type":"array","items":{"type":"string","enum":["1inch","0x","velora","kyberswap","fynd","fynd-hosted","bebop","relay"],"uniqueKey":"options.quoters.oneOf.1.include.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"options.quoters.oneOf.1.include","typeLabel":"enum\u003cstring>[]"}},"additionalProperties":false,"uniqueKey":"options.quoters.oneOf.1","typeLabel":"object"},{"type":"object","description":"Which swap quoters the orchestrator may source swap routes from. `{ include: [...] }` (allow-list) or `{ exclude: [...] }` (deny-list, inverted against the full quoter set); a bare array means `include`. Use this to keep a swap on the venue a smart-session policy is scoped to. Default unset = every quoter the chain supports.","required":["exclude"],"properties":{"exclude":{"type":"array","items":{"type":"string","enum":["1inch","0x","velora","kyberswap","fynd","fynd-hosted","bebop","relay"],"uniqueKey":"options.quoters.oneOf.2.exclude.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"options.quoters.oneOf.2.exclude","typeLabel":"enum\u003cstring>[]"}},"additionalProperties":false,"uniqueKey":"options.quoters.oneOf.2","typeLabel":"object"}],"uniqueKey":"options.quoters","typeLabel":"enum\u003cstring>[] · object · object"},"appFees":{"type":"object","properties":{"feeBps":{"type":"integer","minimum":0,"maximum":10000,"description":"App fee rate in basis points (0–10000 = 0–100%). The base is the USD value of the intent, and which value depends on the intent shape: for a fixed-output intent it is the requested `destination.amount`; for a max-out intent it is the spendable source balance; for a destination-swap intent it is the swap input. Note the fixed-output base is the full requested amount, not the delta over any balance already held.","example":25,"isRequired":true,"uniqueKey":"options.appFees.feeBps","typeLabel":"integer"}},"required":["feeBps"],"uniqueKey":"options.appFees","typeLabel":"object"},"protocolFees":{"type":"object","properties":{"feeBps":{"type":"integer","minimum":0,"maximum":10000,"description":"Rhinestone protocol fee rate in basis points (0–10000 = 0–100%), on the same base as `appFees.feeBps` — see that field. Collected alongside the app fee in one batched transfer and always accrues to Rhinestone; sponsor it via `options.sponsorship.protocolFees` to charge the integrator balance instead of the user.","example":35,"isRequired":true,"uniqueKey":"options.protocolFees.feeBps","typeLabel":"integer"}},"required":["feeBps"],"uniqueKey":"options.protocolFees","typeLabel":"object"},"selectionStrategy":{"type":"string","enum":["cheapest","fastest","best"],"description":"How to rank candidate plans. `cheapest` minimizes direct USD cost. `fastest` minimizes estimated fill time (with cost tiebreaker). `best` minimizes total USD given up: delivered-output forgone versus the best candidate, plus cost, plus the cost of waiting. Waiting is charged both in proportion to notional (0.8 bps per minute, modelling price risk on funds in flight) and as a flat $0.10 per minute independent of size, so small intents are ranked mostly on speed and large ones mostly on price. The two are equal at $1,250 of notional.","example":"best","uniqueKey":"options.selectionStrategy","typeLabel":"enum\u003cstring>"},"customDeadline":{"type":"integer","minimum":0,"exclusiveMinimum":true,"description":"Absolute unix timestamp (seconds) overriding the on-chain fill deadline. **TOKENLESS intents only.** If the intent resolves to any other route (cross-chain or same-chain), the request is **rejected** with `INVALID_CUSTOM_DEADLINE` (422) rather than silently ignoring the override. Must be between `now + 120s` and `now + 86400s`. The bundle claim/nonce expiry and the response `expiresAt` track this value automatically.","example":1893456000,"uniqueKey":"options.customDeadline","typeLabel":"integer"},"sponsorship":{"type":"object","properties":{"gas":{"default":false,"type":"boolean","description":"Whether to sponsor gas for the intent","example":true,"uniqueKey":"options.sponsorship.gas","typeLabel":"boolean"},"bridgeFees":{"default":false,"type":"boolean","description":"Whether to sponsor bridge fees for the intent","uniqueKey":"options.sponsorship.bridgeFees","typeLabel":"boolean"},"swapFees":{"default":false,"type":"boolean","description":"Whether to sponsor swap fees for the intent. For an integrator enabled for it, this also sponsors the VALUE of an eligible same-chain swap, so the user trades at par: the user contributes the 1:1 amount and the sponsor pays whatever the market is short. That applies only to pairs where par is a meaningful rate (both sides USD-pegged) and only up to a configured per-swap ceiling; outside those bounds the swap is priced at market.","uniqueKey":"options.sponsorship.swapFees","typeLabel":"boolean"},"protocolFees":{"default":false,"type":"boolean","description":"Whether to sponsor the Rhinestone protocol fee (`options.protocolFees`) for the intent. When `true`, the fee is charged to the integrator's sponsorship balance instead of carved from the user, without the sponsorship surcharge.","uniqueKey":"options.sponsorship.protocolFees","typeLabel":"boolean"}},"description":"Sponsor settings for the intent","example":{"gas":true,"bridgeFees":true,"swapFees":true},"uniqueKey":"options.sponsorship","typeLabel":"object"}},"description":"Intent options","example":{"settlementLayers":{"include":["ECO"]},"sponsorship":{"gas":true,"bridgeFees":true,"swapFees":true}},"uniqueKey":"options","typeLabel":"object"},"source":{"type":"object","properties":{"vm":{"type":"string","enum":["evm","svm","tvm","stellar"],"description":"VM of the source chain; must match `chainId`.","example":"evm","isRequired":true,"uniqueKey":"source.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the source chain.","example":"eip155:42161","isRequired":true,"uniqueKey":"source.chainId","typeLabel":"string"},"token":{"oneOf":[{"type":"string","description":"Source token: a registry symbol or a token address on the source chain.","example":"USDC","isRequired":true,"uniqueKey":"source.token.oneOf.0","typeLabel":"string"},{"type":"string","description":"Source token: a registry symbol or a token address on the source chain.","example":"USDC","isRequired":true,"uniqueKey":"source.token.oneOf.1","typeLabel":"string"},{"type":"string","description":"Source token: a registry symbol or a token address on the source chain.","enum":["ETH","USDC","WETH","USDT","USDT0","BNB","WBNB","XDAI","WXDAI","POL","WPOL","MON","WMON","S","WS","OKB","WOKB","HYPE","WHYPE","RON","WRON","USDG","XPL","WXPL","AVAX","WAVAX","MockUSD","USDC_TEST","XLM","ensUSDC","ensUSDC2","ensUSDC3","TRX","WTRX","SOL","WSOL"],"example":"USDC","isRequired":true,"uniqueKey":"source.token.oneOf.2","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"source.token","typeLabel":"string · string · enum\u003cstring>"},"maxAmount":{"type":"string","pattern":"^[0-9]+$","format":"uint256","description":"Caps the unlocked balance of this pair the intent may observe, in the token's smallest unit.","example":"1000000","uniqueKey":"source.maxAmount","typeLabel":"string\u003cuint256>"},"auxiliaryFunds":{"type":"string","pattern":"^[0-9]+$","format":"uint256","description":"Extra availability added after the `maxAmount` cap, in the token's smallest unit. Strictly positive; EVM source and a token address only.","example":"1000000","uniqueKey":"source.auxiliaryFunds","typeLabel":"string\u003cuint256>"},"execution":{"type":"object","properties":{"calls":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Target contract address for execution","example":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","isRequired":true,"uniqueKey":"source.execution.calls.items.[INDEX].to","typeLabel":"string"},"value":{"type":"string","pattern":"^[0-9]+$","format":"uint256","description":"Amount must be a non-negative decimal integer string in smallest units","example":"1000000","isRequired":true,"uniqueKey":"source.execution.calls.items.[INDEX].value","typeLabel":"string\u003cuint256>"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Encoded function call data","example":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240","isRequired":true,"uniqueKey":"source.execution.calls.items.[INDEX].data","typeLabel":"string"}},"required":["to","value","data"],"uniqueKey":"source.execution.calls.items.[INDEX]","typeLabel":"object"},"minItems":1,"maxItems":10,"description":"1–10 calls run in order.","isRequired":true,"uniqueKey":"source.execution.calls","typeLabel":"object[]"}},"required":["calls"],"additionalProperties":false,"description":"Calls run on the source chain before the claim. EVM source only.","uniqueKey":"source.execution","typeLabel":"object"}},"required":["vm","chainId","token"],"additionalProperties":false,"description":"The single (chain, token) pair that funds the intent, including refunds and any destination credit. Optional only for a request that delivers no token and sets `options.sponsorship.gas` (destination execution or instructions, a Swig creation or authority change); a delivery requires it. A Solana-only account without a source must target a Solana destination.","uniqueKey":"source","typeLabel":"object"}},"required":["account","destination"],"additionalProperties":false,"description":"Quote request. Chain ids are CAIP-2 strings (e.g. `eip155:8453`, `solana:…`, `tron:…`); amounts are decimal strings in the token's smallest unit. Funds come from one `source` pair and land on one `destination`.","example":{"account":{"evm":{"type":"eoa","address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"}},"source":{"vm":"evm","chainId":"eip155:42161","token":"USDC"},"destination":{"vm":"evm","chainId":"eip155:8453","token":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","amount":"1000000"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"account":{"evm":{"type":"eoa","address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"}},"source":{"vm":"evm","chainId":"eip155:42161","token":"USDC"},"destination":{"vm":"evm","chainId":"eip155:8453","token":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","amount":"1000000"}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"3c7342a1-d26a-465a-9d08-2885ef344f6e":{"description":"OK","content":{"application/json":{"schema":{"type":"object","description":"Response body for `POST /quotes` on the caucasus API version","required":["status","routes"],"properties":{"status":{"type":"string","enum":["quoted"],"description":"The orchestrator quoted the intent.","example":"quoted","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"routes":{"type":"array","items":{"oneOf":[{"type":"object","description":"A single ranked route candidate, tagged with its purpose","required":["intentId","purpose","expiresAt","estimatedFillTime","settlementLayer","plan","cost","requirements","signingRequests"],"properties":{"intentId":{"type":"string","pattern":"^\\d+$","description":"Server-stored intent identifier. Pass back to `POST /intents` to submit.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.intentId","typeLabel":"string"},"purpose":{"type":"string","enum":["execution"],"description":"What this route is for: `execution` moves funds or runs calls, `deployment` only initializes an account.","example":"execution","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.purpose","typeLabel":"enum\u003cstring>"},"expiresAt":{"type":"integer","minimum":0,"description":"Quote expiry timestamp (Unix seconds). After this point, assume the quote is dead and re-quote.","example":1733493192,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.expiresAt","typeLabel":"integer"},"estimatedFillTime":{"type":"object","properties":{"seconds":{"type":"number","description":"Typical end-to-end fill time for this route in seconds. Directional, not guaranteed.","example":3,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.estimatedFillTime.seconds","typeLabel":"number"}},"required":["seconds"],"description":"Estimated fill time for the route","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.estimatedFillTime","typeLabel":"object"},"settlementLayer":{"type":"string","enum":["INTENT_EXECUTOR","SAME_CHAIN","ACROSS","ECO","RELAY","OFT","NEAR","RHINO","CCTP","LZ"],"description":"Settlement layer selected for this route","example":"RELAY","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.settlementLayer","typeLabel":"enum\u003cstring>"},"plan":{"type":"object","properties":{"source":{"type":"array","items":{"type":"object","properties":{"vm":{"type":"string","enum":["evm","svm","tvm","stellar","hypercore"],"description":"Public native execution environment of the chain. A HyperCore delivery venue is `hypercore`, never the HyperEVM chain it settles on.","example":"evm","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id this account is resolved on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].chainId","typeLabel":"string"},"account":{"oneOf":[{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address","type"],"properties":{"address":{"type":"string","description":"Account address","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.0.address","typeLabel":"string"},"type":{"type":"string","enum":["eoa","erc7579"],"description":"Whether the account is an EOA or an ERC-7579 smart account","example":"erc7579","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.0.type","typeLabel":"enum\u003cstring>"},"deployed":{"type":"boolean","description":"Whether the account is deployed on this chain. Absent when planning read no account state for the chain — never defaulted, which would claim an undeployed account is deployed.","example":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.0.deployed","typeLabel":"boolean"},"implementation":{"type":"object","properties":{"name":{"type":"string","enum":["Safe","Kernel","Nexus"],"description":"ERC-7579 account implementation","example":"Nexus","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.0.implementation.name","typeLabel":"enum\u003cstring>"},"version":{"type":"string","description":"Raw trailing version token returned by ERC-7579 `accountId()`, when valid; preserved without normalization","example":"v1.0.0","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.0.implementation.version","typeLabel":"string"}},"required":["name"],"description":"ERC-7579 implementation planning read on this chain. Absent for an EOA, and for a smart account whose implementation was not resolved.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.0.implementation","typeLabel":"object"},"delegation":{"type":"object","properties":{"contract":{"type":"string","description":"Delegate contract this intent installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.0.delegation.contract","typeLabel":"string"}},"required":["contract"],"description":"The EIP-7702 delegate this intent INSTALLS on this chain. Present only where the delegate is not yet in place — a delegation already in force is not reported here.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.0.delegation","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["wallet","swigAccount"],"properties":{"wallet":{"type":"string","description":"Asset-holding Swig wallet the intent spends from","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","description":"Swig state account holding the wallet authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.1.swigAccount","typeLabel":"string"},"authority":{"oneOf":[{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Authority the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.0.address","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.1.publicKey","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.1.authority","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.1","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address"],"properties":{"address":{"type":"string","minLength":1,"description":"Address funds are delivered to, in the destination chain's own format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.2.address","typeLabel":"string"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].account","typeLabel":"object"},"execution":{"oneOf":[{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","calls"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.0.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.0.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.0.executedBy","typeLabel":"object"},"calls":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Target contract address for execution","example":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.0.calls.items.[INDEX].to","typeLabel":"string"},"value":{"type":"string","format":"uint256","description":"Amount of ETH (in wei) sent in the execution","example":"0","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.0.calls.items.[INDEX].value","typeLabel":"string\u003cuint256>"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Encoded function call data","example":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.0.calls.items.[INDEX].data","typeLabel":"string"}},"required":["to","value","data"],"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.0.calls.items.[INDEX]","typeLabel":"object"},"description":"The caller's own calls, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.0.calls","typeLabel":"object[]"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.0","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","instructions","addressLookupTables"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.executedBy","typeLabel":"object"},"instructions":{"type":"array","items":{"type":"object","properties":{"programId":{"type":"string","description":"Program to invoke, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].programId","typeLabel":"string"},"accounts":{"type":"array","items":{"type":"object","properties":{"pubkey":{"type":"string","description":"Account address, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].pubkey","typeLabel":"string"},"isSigner":{"type":"boolean","description":"Whether the instruction requires this account to sign.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isSigner","typeLabel":"boolean"},"isWritable":{"type":"boolean","description":"Whether the instruction writes to this account.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isWritable","typeLabel":"boolean"}},"required":["pubkey","isSigner","isWritable"],"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX]","typeLabel":"object"},"maxItems":64,"description":"Accounts the instruction reads or writes, in the order the program expects.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].accounts","typeLabel":"object[]"},"data":{"type":"string","description":"Instruction data, base64.","example":"CQ==","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].data","typeLabel":"string"}},"required":["programId","accounts","data"],"description":"A Solana instruction in the JSON shape `@solana/web3.js` and Jupiter `/swap-instructions` produce, so protocol output passes through unchanged.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX]","typeLabel":"object"},"description":"The caller's own instructions, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.instructions","typeLabel":"object[]"},"addressLookupTables":{"type":"array","items":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.addressLookupTables.items.[INDEX]","typeLabel":"string"},"description":"Address lookup tables the instructions resolve against","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1.addressLookupTables","typeLabel":"string[]"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.1","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","authority"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.executedBy","typeLabel":"object"},"authority":{"type":"object","properties":{"action":{"type":"string","enum":["add","remove"],"description":"Whether the authority is added or removed","example":"add","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.action","typeLabel":"enum\u003cstring>"},"key":{"oneOf":[{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.0.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.0","typeLabel":"object"},{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed secp256k1 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03. Not an EVM address.","example":"0x0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.key","typeLabel":"object"},"roleId":{"type":"integer","minimum":0,"description":"The Swig role id the added authority gets, or the id of the role removed","example":3,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.roleId","typeLabel":"integer"},"rent":{"type":"object","properties":{"amount":{"type":"string","format":"uint256","description":"Lamports of rent: locked in the Swig state account on an add, which the sponsor funds, or returned to the Swig wallet on a removal","example":"325120","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.rent.amount","typeLabel":"string\u003cuint256>"},"usd":{"type":"number","description":"The rent in USD","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.rent.usd","typeLabel":"number"}},"required":["amount","usd"],"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.rent","typeLabel":"object"},"permission":{"type":"string","enum":["all","allButManageAuthority","manageAuthority"],"description":"The added authority's permission, as requested and installed. Absent on a removal.","example":"allButManageAuthority","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority.permission","typeLabel":"enum\u003cstring>"}},"required":["action","key","roleId","rent"],"additionalProperties":false,"description":"A change to the Swig's own authorities","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2.authority","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.2","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","properties":{"actions":{"type":"array","items":{"type":"object","properties":{"nonce":{"type":"number","description":"The nonce the action commits to","example":1633493192000,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.actions.items.[INDEX].nonce","typeLabel":"number"},"agent":{"type":"string","minLength":1,"description":"The agent that authorises it","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.actions.items.[INDEX].agent","typeLabel":"string"},"action":{"type":"object","description":"The canonical Hyperliquid action, in the key order the agent address commits to","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.actions.items.[INDEX].action","typeLabel":"object"}},"required":["nonce","agent"],"description":"One HyperCore action and the agent it runs as","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.actions.items.[INDEX]","typeLabel":"object"},"description":"The canonical actions, IN THE ORDER they are sent, each with its nonce and the agent that authorises it. Absent when the route carries none.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.actions","typeLabel":"object[]"},"settlement":{"type":"object","properties":{"vm":{"type":"string","enum":["evm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.settlement.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the calls execute on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.settlement.chainId","typeLabel":"string"},"calls":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Target contract address for execution","example":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.settlement.calls.items.[INDEX].to","typeLabel":"string"},"value":{"type":"string","format":"uint256","description":"Amount of ETH (in wei) sent in the execution","example":"0","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.settlement.calls.items.[INDEX].value","typeLabel":"string\u003cuint256>"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Encoded function call data","example":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.settlement.calls.items.[INDEX].data","typeLabel":"string"}},"required":["to","value","data"],"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.settlement.calls.items.[INDEX]","typeLabel":"object"},"description":"The calls, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.settlement.calls","typeLabel":"object[]"},"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.settlement.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.settlement.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"Absent where the chain is no longer in force, so the executing contract cannot be named.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.settlement.executedBy","typeLabel":"object"}},"required":["vm","chainId","calls"],"description":"The caller's own HyperEVM calls, in execution order. Only calls the caller sent: the gas-refund allowance, the core deposit and the agent registrations the orchestrator composes are not disclosed here (the registrations are disclosed in the signing request's `scope.hyperCore`). Absent when the caller sent none, and on a record written before caller calls were attributed.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3.settlement","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution.oneOf.3","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX].execution","typeLabel":"object"}},"required":["vm","chainId","account"],"description":"One chain the route acts on","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source.items.[INDEX]","typeLabel":"object"},"description":"One block per chain the route spends on, in the order the route reaches them.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.source","typeLabel":"object[]"},"destination":{"type":"object","properties":{"vm":{"type":"string","enum":["evm","svm","tvm","stellar","hypercore"],"description":"Public native execution environment of the chain. A HyperCore delivery venue is `hypercore`, never the HyperEVM chain it settles on.","example":"evm","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id this account is resolved on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.chainId","typeLabel":"string"},"account":{"oneOf":[{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address","type"],"properties":{"address":{"type":"string","description":"Account address","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.0.address","typeLabel":"string"},"type":{"type":"string","enum":["eoa","erc7579"],"description":"Whether the account is an EOA or an ERC-7579 smart account","example":"erc7579","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.0.type","typeLabel":"enum\u003cstring>"},"deployed":{"type":"boolean","description":"Whether the account is deployed on this chain. Absent when planning read no account state for the chain — never defaulted, which would claim an undeployed account is deployed.","example":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.0.deployed","typeLabel":"boolean"},"implementation":{"type":"object","properties":{"name":{"type":"string","enum":["Safe","Kernel","Nexus"],"description":"ERC-7579 account implementation","example":"Nexus","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.0.implementation.name","typeLabel":"enum\u003cstring>"},"version":{"type":"string","description":"Raw trailing version token returned by ERC-7579 `accountId()`, when valid; preserved without normalization","example":"v1.0.0","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.0.implementation.version","typeLabel":"string"}},"required":["name"],"description":"ERC-7579 implementation planning read on this chain. Absent for an EOA, and for a smart account whose implementation was not resolved.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.0.implementation","typeLabel":"object"},"delegation":{"type":"object","properties":{"contract":{"type":"string","description":"Delegate contract this intent installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.0.delegation.contract","typeLabel":"string"}},"required":["contract"],"description":"The EIP-7702 delegate this intent INSTALLS on this chain. Present only where the delegate is not yet in place — a delegation already in force is not reported here.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.0.delegation","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["wallet","swigAccount"],"properties":{"wallet":{"type":"string","description":"Asset-holding Swig wallet the intent spends from","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","description":"Swig state account holding the wallet authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.1.swigAccount","typeLabel":"string"},"authority":{"oneOf":[{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.1.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Authority the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.1.authority.oneOf.0.address","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.1.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.1.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.1.authority.oneOf.1.publicKey","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.1.authority.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.1.authority","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.1","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address"],"properties":{"address":{"type":"string","minLength":1,"description":"Address funds are delivered to, in the destination chain's own format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.2.address","typeLabel":"string"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.account","typeLabel":"object"},"execution":{"oneOf":[{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","calls"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.0.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.0.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.0.executedBy","typeLabel":"object"},"calls":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Target contract address for execution","example":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.0.calls.items.[INDEX].to","typeLabel":"string"},"value":{"type":"string","format":"uint256","description":"Amount of ETH (in wei) sent in the execution","example":"0","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.0.calls.items.[INDEX].value","typeLabel":"string\u003cuint256>"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Encoded function call data","example":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.0.calls.items.[INDEX].data","typeLabel":"string"}},"required":["to","value","data"],"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.0.calls.items.[INDEX]","typeLabel":"object"},"description":"The caller's own calls, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.0.calls","typeLabel":"object[]"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.0","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","instructions","addressLookupTables"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.executedBy","typeLabel":"object"},"instructions":{"type":"array","items":{"type":"object","properties":{"programId":{"type":"string","description":"Program to invoke, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.instructions.items.[INDEX].programId","typeLabel":"string"},"accounts":{"type":"array","items":{"type":"object","properties":{"pubkey":{"type":"string","description":"Account address, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].pubkey","typeLabel":"string"},"isSigner":{"type":"boolean","description":"Whether the instruction requires this account to sign.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isSigner","typeLabel":"boolean"},"isWritable":{"type":"boolean","description":"Whether the instruction writes to this account.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isWritable","typeLabel":"boolean"}},"required":["pubkey","isSigner","isWritable"],"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX]","typeLabel":"object"},"maxItems":64,"description":"Accounts the instruction reads or writes, in the order the program expects.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.instructions.items.[INDEX].accounts","typeLabel":"object[]"},"data":{"type":"string","description":"Instruction data, base64.","example":"CQ==","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.instructions.items.[INDEX].data","typeLabel":"string"}},"required":["programId","accounts","data"],"description":"A Solana instruction in the JSON shape `@solana/web3.js` and Jupiter `/swap-instructions` produce, so protocol output passes through unchanged.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.instructions.items.[INDEX]","typeLabel":"object"},"description":"The caller's own instructions, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.instructions","typeLabel":"object[]"},"addressLookupTables":{"type":"array","items":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.addressLookupTables.items.[INDEX]","typeLabel":"string"},"description":"Address lookup tables the instructions resolve against","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1.addressLookupTables","typeLabel":"string[]"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.1","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","authority"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.executedBy","typeLabel":"object"},"authority":{"type":"object","properties":{"action":{"type":"string","enum":["add","remove"],"description":"Whether the authority is added or removed","example":"add","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.action","typeLabel":"enum\u003cstring>"},"key":{"oneOf":[{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.key.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.key.oneOf.0.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.key.oneOf.0","typeLabel":"object"},{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.key.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed secp256k1 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03. Not an EVM address.","example":"0x0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.key.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.key.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.key","typeLabel":"object"},"roleId":{"type":"integer","minimum":0,"description":"The Swig role id the added authority gets, or the id of the role removed","example":3,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.roleId","typeLabel":"integer"},"rent":{"type":"object","properties":{"amount":{"type":"string","format":"uint256","description":"Lamports of rent: locked in the Swig state account on an add, which the sponsor funds, or returned to the Swig wallet on a removal","example":"325120","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.rent.amount","typeLabel":"string\u003cuint256>"},"usd":{"type":"number","description":"The rent in USD","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.rent.usd","typeLabel":"number"}},"required":["amount","usd"],"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.rent","typeLabel":"object"},"permission":{"type":"string","enum":["all","allButManageAuthority","manageAuthority"],"description":"The added authority's permission, as requested and installed. Absent on a removal.","example":"allButManageAuthority","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority.permission","typeLabel":"enum\u003cstring>"}},"required":["action","key","roleId","rent"],"additionalProperties":false,"description":"A change to the Swig's own authorities","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2.authority","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.2","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","properties":{"actions":{"type":"array","items":{"type":"object","properties":{"nonce":{"type":"number","description":"The nonce the action commits to","example":1633493192000,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.actions.items.[INDEX].nonce","typeLabel":"number"},"agent":{"type":"string","minLength":1,"description":"The agent that authorises it","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.actions.items.[INDEX].agent","typeLabel":"string"},"action":{"type":"object","description":"The canonical Hyperliquid action, in the key order the agent address commits to","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.actions.items.[INDEX].action","typeLabel":"object"}},"required":["nonce","agent"],"description":"One HyperCore action and the agent it runs as","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.actions.items.[INDEX]","typeLabel":"object"},"description":"The canonical actions, IN THE ORDER they are sent, each with its nonce and the agent that authorises it. Absent when the route carries none.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.actions","typeLabel":"object[]"},"settlement":{"type":"object","properties":{"vm":{"type":"string","enum":["evm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.settlement.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the calls execute on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.settlement.chainId","typeLabel":"string"},"calls":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Target contract address for execution","example":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.settlement.calls.items.[INDEX].to","typeLabel":"string"},"value":{"type":"string","format":"uint256","description":"Amount of ETH (in wei) sent in the execution","example":"0","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.settlement.calls.items.[INDEX].value","typeLabel":"string\u003cuint256>"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Encoded function call data","example":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.settlement.calls.items.[INDEX].data","typeLabel":"string"}},"required":["to","value","data"],"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.settlement.calls.items.[INDEX]","typeLabel":"object"},"description":"The calls, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.settlement.calls","typeLabel":"object[]"},"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.settlement.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.settlement.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"Absent where the chain is no longer in force, so the executing contract cannot be named.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.settlement.executedBy","typeLabel":"object"}},"required":["vm","chainId","calls"],"description":"The caller's own HyperEVM calls, in execution order. Only calls the caller sent: the gas-refund allowance, the core deposit and the agent registrations the orchestrator composes are not disclosed here (the registrations are disclosed in the signing request's `scope.hyperCore`). Absent when the caller sent none, and on a record written before caller calls were attributed.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3.settlement","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution.oneOf.3","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination.execution","typeLabel":"object"}},"required":["vm","chainId","account"],"description":"The single block the route delivers to, on the chain the caller named.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.destination","typeLabel":"object"},"deployments":{"type":"array","items":{"type":"object","properties":{"vm":{"type":"string","enum":["evm","svm","tvm","stellar","hypercore"],"description":"Public native execution environment of the chain. A HyperCore delivery venue is `hypercore`, never the HyperEVM chain it settles on.","example":"evm","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id this account is resolved on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].chainId","typeLabel":"string"},"account":{"oneOf":[{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address","type"],"properties":{"address":{"type":"string","description":"Account address","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.0.address","typeLabel":"string"},"type":{"type":"string","enum":["eoa","erc7579"],"description":"Whether the account is an EOA or an ERC-7579 smart account","example":"erc7579","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.0.type","typeLabel":"enum\u003cstring>"},"deployed":{"type":"boolean","description":"Whether the account is deployed on this chain. Absent when planning read no account state for the chain — never defaulted, which would claim an undeployed account is deployed.","example":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.0.deployed","typeLabel":"boolean"},"implementation":{"type":"object","properties":{"name":{"type":"string","enum":["Safe","Kernel","Nexus"],"description":"ERC-7579 account implementation","example":"Nexus","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.0.implementation.name","typeLabel":"enum\u003cstring>"},"version":{"type":"string","description":"Raw trailing version token returned by ERC-7579 `accountId()`, when valid; preserved without normalization","example":"v1.0.0","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.0.implementation.version","typeLabel":"string"}},"required":["name"],"description":"ERC-7579 implementation planning read on this chain. Absent for an EOA, and for a smart account whose implementation was not resolved.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.0.implementation","typeLabel":"object"},"delegation":{"type":"object","properties":{"contract":{"type":"string","description":"Delegate contract this intent installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.0.delegation.contract","typeLabel":"string"}},"required":["contract"],"description":"The EIP-7702 delegate this intent INSTALLS on this chain. Present only where the delegate is not yet in place — a delegation already in force is not reported here.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.0.delegation","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["wallet","swigAccount"],"properties":{"wallet":{"type":"string","description":"Asset-holding Swig wallet the intent spends from","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","description":"Swig state account holding the wallet authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.1.swigAccount","typeLabel":"string"},"authority":{"oneOf":[{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Authority the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.0.address","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.1.publicKey","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.1.authority","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.1","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address"],"properties":{"address":{"type":"string","minLength":1,"description":"Address funds are delivered to, in the destination chain's own format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.2.address","typeLabel":"string"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX].account","typeLabel":"object"}},"required":["vm","chainId","account"],"description":"An account initialization the route performs, disclosed separately even when it shares a transaction with a claim or a fill.","uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments.items.[INDEX]","typeLabel":"object"},"description":"Account initializations the route performs. Empty when it performs none.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan.deployments","typeLabel":"object[]"}},"required":["source","destination","deployments"],"description":"What the route does, resolved inline: where it spends, where it delivers, what it executes and who executes it, and the accounts it initializes.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.plan","typeLabel":"object"},"cost":{"type":"object","properties":{"input":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"Chain where this token leg settles (CAIP-2, any namespace)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].chainId","typeLabel":"string"},"tokenAddress":{"type":"string","minLength":1,"description":"Contract address of the debited token (EVM 0x or non-EVM base58)","example":"0xaf88d065e77c8cc2239327c5edb3a432268e5831","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].tokenAddress","typeLabel":"string"},"symbol":{"oneOf":[{"type":"string","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].symbol.oneOf.0","typeLabel":"string"},{"type":"null","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].symbol.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].symbol","typeLabel":"string | null"},"decimals":{"oneOf":[{"type":"integer","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].decimals.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].decimals.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].decimals","typeLabel":"integer | null"},"price":{"oneOf":[{"type":"object","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].price.oneOf.0.usd","typeLabel":"number"}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].price.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].price.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].price","typeLabel":"object | null"},"amount":{"type":"string","format":"uint256","description":"Token amount in the token's smallest unit","example":"1050000","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX].amount","typeLabel":"string\u003cuint256>"}},"required":["chainId","tokenAddress","symbol","decimals","price","amount"],"description":"A single (chain, token) leg with amount, price, and metadata","uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input.items.[INDEX]","typeLabel":"object"},"description":"Tokens debited from the user, coalesced by (chainId, tokenAddress)","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.input","typeLabel":"object[]"},"output":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"Chain where this token leg settles (CAIP-2, any namespace)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].chainId","typeLabel":"string"},"tokenAddress":{"type":"string","minLength":1,"description":"Contract address of the delivered token (EVM 0x or non-EVM base58)","example":"0xaf88d065e77c8cc2239327c5edb3a432268e5831","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].tokenAddress","typeLabel":"string"},"symbol":{"oneOf":[{"type":"string","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].symbol.oneOf.0","typeLabel":"string"},{"type":"null","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].symbol.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].symbol","typeLabel":"string | null"},"decimals":{"oneOf":[{"type":"integer","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].decimals.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].decimals.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].decimals","typeLabel":"integer | null"},"price":{"oneOf":[{"type":"object","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].price.oneOf.0.usd","typeLabel":"number"}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].price.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].price.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].price","typeLabel":"object | null"},"amount":{"type":"string","format":"uint256","description":"Token amount in the token's smallest unit","example":"1050000","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX].amount","typeLabel":"string\u003cuint256>"}},"required":["chainId","tokenAddress","symbol","decimals","price","amount"],"description":"A single (chain, token) leg with amount, price, and metadata","uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output.items.[INDEX]","typeLabel":"object"},"description":"Tokens delivered to the recipient, coalesced by (chainId, tokenAddress)","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.output","typeLabel":"object[]"},"fees":{"type":"object","properties":{"total":{"type":"object","properties":{"usd":{"type":"number","description":"USD-denominated value","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.total.usd","typeLabel":"number"}},"required":["usd"],"description":"Full route cost in USD, regardless of who pays. Equal to `sum(breakdown.*.usd)` modulo rounding.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.total","typeLabel":"object"},"breakdown":{"type":"object","properties":{"gas":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.gas.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.gas.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Aggregate gas cost (destination fill, swap execution, origin gas)","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.gas","typeLabel":"object"},"bridge":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.bridge.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.bridge.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Aggregate settlement-layer bridge cost","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.bridge","typeLabel":"object"},"swap":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.swap.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.swap.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Aggregate solver swap commission","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.swap","typeLabel":"object"},"app":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.app.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.app.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Aggregate integrator app fee","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.app","typeLabel":"object"},"protocol":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.protocol.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.protocol.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Rhinestone protocol fee (`options.protocolFees`). `sponsored: true` when the integrator sponsorship balance pays it instead of the user.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.protocol","typeLabel":"object"},"sponsorSurcharge":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.sponsorSurcharge.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.sponsorSurcharge.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Rhinestone's surcharge on the sponsored relayer coverage, charged to the sponsor. 0 when the intent is not sponsored. Pure surcharge — a sponsored protocol fee is shown on `protocol`, never here.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown.sponsorSurcharge","typeLabel":"object"}},"required":["gas","bridge","swap","app","protocol","sponsorSurcharge"],"description":"Per-category fee breakdown","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees.breakdown","typeLabel":"object"}},"required":["total","breakdown"],"description":"Aggregate route fees with per-category breakdown","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.fees","typeLabel":"object"},"executionPayment":{"oneOf":[{"type":"object","description":"Solana instruction execution only: the exact fixed wallet debit, or confirmation that the sponsor pays and the wallet has no execution debit. The wallet debit also appears in input.","required":["paidBy","walletDebit"],"properties":{"paidBy":{"type":"string","enum":["wallet"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.paidBy","typeLabel":"enum\u003cstring>"},"walletDebit":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"Chain where this token leg settles (CAIP-2, any namespace)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.chainId","typeLabel":"string"},"tokenAddress":{"type":"string","minLength":1,"description":"Contract address of the debited token (EVM 0x or non-EVM base58)","example":"0xaf88d065e77c8cc2239327c5edb3a432268e5831","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.tokenAddress","typeLabel":"string"},"symbol":{"oneOf":[{"type":"string","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.symbol.oneOf.0","typeLabel":"string"},{"type":"null","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.symbol.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.symbol","typeLabel":"string | null"},"decimals":{"oneOf":[{"type":"integer","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.decimals.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.decimals.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.decimals","typeLabel":"integer | null"},"price":{"oneOf":[{"type":"object","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.price.oneOf.0.usd","typeLabel":"number"}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.price.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.price.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.price","typeLabel":"object | null"},"amount":{"type":"string","format":"uint256","description":"Token amount in the token's smallest unit","example":"1050000","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit.amount","typeLabel":"string\u003cuint256>"}},"required":["chainId","tokenAddress","symbol","decimals","price","amount"],"description":"A single (chain, token) leg with amount, price, and metadata","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0.walletDebit","typeLabel":"object"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.0","typeLabel":"object"},{"type":"object","description":"Solana instruction execution only: the exact fixed wallet debit, or confirmation that the sponsor pays and the wallet has no execution debit. The wallet debit also appears in input.","required":["paidBy"],"properties":{"paidBy":{"type":"string","enum":["sponsor"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.1.paidBy","typeLabel":"enum\u003cstring>"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.0.cost.executionPayment","typeLabel":"object"}},"required":["input","output","fees"],"description":"Route cost: inputs, outputs, and fee breakdown","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.cost","typeLabel":"object"},"requirements":{"type":"array","items":{"oneOf":[{"type":"object","description":"A pre-flight operation the account must perform before this route can be claimed. `quoted` does not mean it is already fulfilled.","required":["kind","vm","chainId","account","tokenAddress","amount","spender"],"properties":{"kind":{"type":"string","enum":["erc20Approval"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.kind","typeLabel":"enum\u003cstring>"},"vm":{"type":"string","enum":["evm","svm","tvm","stellar","hypercore"],"description":"Public native execution environment of the chain. A HyperCore delivery venue is `hypercore`, never the HyperEVM chain it settles on.","example":"evm","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the requirement applies on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.chainId","typeLabel":"string"},"account":{"oneOf":[{"type":"object","description":"The account the requirement applies to","required":["address","type"],"properties":{"address":{"type":"string","description":"Account address","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.0.address","typeLabel":"string"},"type":{"type":"string","enum":["eoa","erc7579"],"description":"Whether the account is an EOA or an ERC-7579 smart account","example":"erc7579","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.0.type","typeLabel":"enum\u003cstring>"},"deployed":{"type":"boolean","description":"Whether the account is deployed on this chain. Absent when planning read no account state for the chain — never defaulted, which would claim an undeployed account is deployed.","example":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.0.deployed","typeLabel":"boolean"},"implementation":{"type":"object","properties":{"name":{"type":"string","enum":["Safe","Kernel","Nexus"],"description":"ERC-7579 account implementation","example":"Nexus","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.0.implementation.name","typeLabel":"enum\u003cstring>"},"version":{"type":"string","description":"Raw trailing version token returned by ERC-7579 `accountId()`, when valid; preserved without normalization","example":"v1.0.0","uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.0.implementation.version","typeLabel":"string"}},"required":["name"],"description":"ERC-7579 implementation planning read on this chain. Absent for an EOA, and for a smart account whose implementation was not resolved.","uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.0.implementation","typeLabel":"object"},"delegation":{"type":"object","properties":{"contract":{"type":"string","description":"Delegate contract this intent installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.0.delegation.contract","typeLabel":"string"}},"required":["contract"],"description":"The EIP-7702 delegate this intent INSTALLS on this chain. Present only where the delegate is not yet in place — a delegation already in force is not reported here.","uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.0.delegation","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account the requirement applies to","required":["wallet","swigAccount"],"properties":{"wallet":{"type":"string","description":"Asset-holding Swig wallet the intent spends from","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","description":"Swig state account holding the wallet authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.1.swigAccount","typeLabel":"string"},"authority":{"oneOf":[{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Authority the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.0.address","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.1.publicKey","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.1","typeLabel":"object"},{"type":"object","description":"The account the requirement applies to","required":["address"],"properties":{"address":{"type":"string","minLength":1,"description":"Address funds are delivered to, in the destination chain's own format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.2.address","typeLabel":"string"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.account","typeLabel":"object"},"tokenAddress":{"type":"string","description":"Token the requirement applies to","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.tokenAddress","typeLabel":"string"},"amount":{"type":"string","format":"uint256","description":"Minimum amount, in the token's smallest unit","example":"1000000","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.amount","typeLabel":"string\u003cuint256>"},"spender":{"type":"string","description":"Always the canonical Permit2 contract on this chain. The account approves Permit2; the settlement contract pulls funds via Permit2 at claim time.","example":"0x000000000022d473030f116ddee9f6b43ac78ba3","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0.spender","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","description":"A pre-flight operation the account must perform before this route can be claimed. `quoted` does not mean it is already fulfilled.","required":["kind","vm","chainId","account","tokenAddress","amount"],"properties":{"kind":{"type":"string","enum":["wrapNative"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.kind","typeLabel":"enum\u003cstring>"},"vm":{"type":"string","enum":["evm","svm","tvm","stellar","hypercore"],"description":"Public native execution environment of the chain. A HyperCore delivery venue is `hypercore`, never the HyperEVM chain it settles on.","example":"evm","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the requirement applies on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.chainId","typeLabel":"string"},"account":{"oneOf":[{"type":"object","description":"The account the requirement applies to","required":["address","type"],"properties":{"address":{"type":"string","description":"Account address","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.0.address","typeLabel":"string"},"type":{"type":"string","enum":["eoa","erc7579"],"description":"Whether the account is an EOA or an ERC-7579 smart account","example":"erc7579","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.0.type","typeLabel":"enum\u003cstring>"},"deployed":{"type":"boolean","description":"Whether the account is deployed on this chain. Absent when planning read no account state for the chain — never defaulted, which would claim an undeployed account is deployed.","example":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.0.deployed","typeLabel":"boolean"},"implementation":{"type":"object","properties":{"name":{"type":"string","enum":["Safe","Kernel","Nexus"],"description":"ERC-7579 account implementation","example":"Nexus","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.0.implementation.name","typeLabel":"enum\u003cstring>"},"version":{"type":"string","description":"Raw trailing version token returned by ERC-7579 `accountId()`, when valid; preserved without normalization","example":"v1.0.0","uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.0.implementation.version","typeLabel":"string"}},"required":["name"],"description":"ERC-7579 implementation planning read on this chain. Absent for an EOA, and for a smart account whose implementation was not resolved.","uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.0.implementation","typeLabel":"object"},"delegation":{"type":"object","properties":{"contract":{"type":"string","description":"Delegate contract this intent installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.0.delegation.contract","typeLabel":"string"}},"required":["contract"],"description":"The EIP-7702 delegate this intent INSTALLS on this chain. Present only where the delegate is not yet in place — a delegation already in force is not reported here.","uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.0.delegation","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account the requirement applies to","required":["wallet","swigAccount"],"properties":{"wallet":{"type":"string","description":"Asset-holding Swig wallet the intent spends from","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","description":"Swig state account holding the wallet authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.1.swigAccount","typeLabel":"string"},"authority":{"oneOf":[{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Authority the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.0.address","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.1.publicKey","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.1","typeLabel":"object"},{"type":"object","description":"The account the requirement applies to","required":["address"],"properties":{"address":{"type":"string","minLength":1,"description":"Address funds are delivered to, in the destination chain's own format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.2.address","typeLabel":"string"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.account","typeLabel":"object"},"tokenAddress":{"type":"string","description":"Token the requirement applies to","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.tokenAddress","typeLabel":"string"},"amount":{"type":"string","format":"uint256","description":"Minimum amount, in the token's smallest unit","example":"1000000","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1.amount","typeLabel":"string\u003cuint256>"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX].oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements.items.[INDEX]","typeLabel":"object"},"description":"Pre-flight operations the account must perform before this route can be claimed. Always present; empty when the route needs none. Emitted for EOA accounts only — smart accounts handle these internally.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.requirements","typeLabel":"object[]"},"signingRequests":{"type":"array","items":{"type":"object","properties":{"account":{"oneOf":[{"type":"object","description":"The account this signature acts for, named inline per VM. Carries no per-chain observation, since one request can span chains.","required":["vm","address"],"properties":{"vm":{"type":"string","enum":["evm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].account.oneOf.0.vm","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Account the signature authorizes","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].account.oneOf.0.address","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account this signature acts for, named inline per VM. Carries no per-chain observation, since one request can span chains.","required":["vm","wallet","swigAccount"],"properties":{"vm":{"type":"string","enum":["svm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].account.oneOf.1.vm","typeLabel":"enum\u003cstring>"},"wallet":{"type":"string","minLength":1,"description":"Asset-holding Swig wallet the spend debits","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","minLength":1,"description":"Swig state account holding the authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].account.oneOf.1.swigAccount","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].account.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].account","typeLabel":"object"},"authority":{"oneOf":[{"type":"object","description":"What verifies the signature","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Address the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.0.address","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"What verifies the signature","required":["kind","vm","address"],"properties":{"kind":{"type":"string","enum":["account"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"vm":{"type":"string","enum":["evm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.1.vm","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Account that verifies the signature itself","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.1.address","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.1","typeLabel":"object"},{"type":"object","description":"What verifies the signature","required":["kind","roleId","authority"],"properties":{"kind":{"type":"string","enum":["swigRole"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"roleId":{"type":"integer","minimum":0,"description":"Swig role the spend was authorized under","example":1,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.2.roleId","typeLabel":"integer"},"authority":{"oneOf":[{"type":"object","description":"The authority configured on that role","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Address the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.0.address","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"The authority configured on that role","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.2.authority","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].authority","typeLabel":"object"},"scope":{"oneOf":[{"type":"object","description":"What the signature authorizes. Always agrees with the payload; never a restatement of the route.","required":["vm","action","accounts"],"properties":{"vm":{"type":"string","enum":["evm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.vm","typeLabel":"enum\u003cstring>"},"action":{"type":"string","enum":["claim","fill","targetExecution","delegation"],"description":"What the signature authorizes","example":"claim","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.action","typeLabel":"enum\u003cstring>"},"accounts":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the account is authorized on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.accounts.items.[INDEX].chainId","typeLabel":"string"},"address":{"type":"string","minLength":1,"description":"Account address, in its own chain's format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.accounts.items.[INDEX].address","typeLabel":"string"}},"required":["chainId","address"],"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.accounts.items.[INDEX]","typeLabel":"object"},"description":"The accounts and chains the action runs against","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.accounts","typeLabel":"object[]"},"hyperCore":{"type":"array","items":{"type":"object","properties":{"nonce":{"type":"number","description":"The nonce the action commits to","example":1633493192000,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore.items.[INDEX].nonce","typeLabel":"number"},"agent":{"type":"string","description":"The agent this registration installs. It is derived from the action bytes above, so it authorises that action and nothing else.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore.items.[INDEX].agent","typeLabel":"string"},"slot":{"type":"string","description":"The named API-wallet slot the agent goes in. Registering evicts whatever the account had in that slot; the account's unnamed wallet is never used.","example":"rh1","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore.items.[INDEX].slot","typeLabel":"string"},"action":{"type":"object","description":"The canonical Hyperliquid action, exactly as the agent commits to it. Key order is part of the commitment — the agent address is recovered from a signature over its msgpack encoding — so it is served in the order it was signed in, not re-sorted.","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore.items.[INDEX].action","typeLabel":"object"}},"required":["nonce","agent","slot"],"additionalProperties":false,"description":"One HyperCore agent registration","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore.items.[INDEX]","typeLabel":"object"},"minItems":1,"description":"Present only on a request that authorizes at least one HyperCore agent registration. Lists every registration the payload commits to, in registration (slot) order: one item for a per-leg payload, all of them for an aggregate `MultiChainOps` payload. Names what each registration commits to, which the payload itself carries only as CoreWriter calldata. Changing any action, their order, a nonce or an agent requires a fresh quote.","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.0","typeLabel":"object"},{"type":"object","description":"What the signature authorizes. Always agrees with the payload; never a restatement of the route.","required":["vm","action","accounts","instructions","addressLookupTables","feePayer","slotWindow"],"properties":{"vm":{"type":"string","enum":["svm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.vm","typeLabel":"enum\u003cstring>"},"action":{"type":"string","enum":["spend"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.action","typeLabel":"enum\u003cstring>"},"accounts":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the account is authorized on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.accounts.items.[INDEX].chainId","typeLabel":"string"},"address":{"type":"string","minLength":1,"description":"Account address, in its own chain's format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.accounts.items.[INDEX].address","typeLabel":"string"}},"required":["chainId","address"],"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.accounts.items.[INDEX]","typeLabel":"object"},"description":"The wallet the spend debits, on its chain","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.accounts","typeLabel":"object[]"},"instructions":{"type":"array","items":{"type":"object","properties":{"programId":{"type":"string","description":"Program to invoke, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].programId","typeLabel":"string"},"accounts":{"type":"array","items":{"type":"object","properties":{"pubkey":{"type":"string","description":"Account address, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].pubkey","typeLabel":"string"},"isSigner":{"type":"boolean","description":"Whether the instruction requires this account to sign.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isSigner","typeLabel":"boolean"},"isWritable":{"type":"boolean","description":"Whether the instruction writes to this account.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isWritable","typeLabel":"boolean"}},"required":["pubkey","isSigner","isWritable"],"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX]","typeLabel":"object"},"maxItems":64,"description":"Accounts the instruction reads or writes, in the order the program expects.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].accounts","typeLabel":"object[]"},"data":{"type":"string","description":"Instruction data, base64.","example":"CQ==","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].data","typeLabel":"string"}},"required":["programId","accounts","data"],"description":"A Solana instruction in the JSON shape `@solana/web3.js` and Jupiter `/swap-instructions` produce, so protocol output passes through unchanged.","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX]","typeLabel":"object"},"description":"The full instruction set this signature authorizes, in execution order, in the same shape a request carries instructions in.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.instructions","typeLabel":"object[]"},"addressLookupTables":{"type":"array","items":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.addressLookupTables.items.[INDEX]","typeLabel":"string"},"description":"Address lookup tables the instructions resolve accounts through. The tables themselves are not inlined.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.addressLookupTables","typeLabel":"string[]"},"feePayer":{"type":"object","properties":{"kind":{"type":"string","enum":["role"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.feePayer.kind","typeLabel":"enum\u003cstring>"},"role":{"type":"string","enum":["relayer"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.feePayer.role","typeLabel":"enum\u003cstring>"}},"required":["kind","role"],"additionalProperties":false,"description":"Who pays the transaction fee, as a role rather than a key: the payload names no payer, and the relayer picks its own.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.feePayer","typeLabel":"object"},"slotWindow":{"type":"object","properties":{"from":{"type":"string","description":"Slot the payload was pinned to","example":"370123456","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.slotWindow.from","typeLabel":"string"},"to":{"type":"string","description":"Last slot it can be landed in","example":"370123516","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.slotWindow.to","typeLabel":"string"}},"required":["from","to"],"additionalProperties":false,"description":"Slot range the payload is signable in","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1.slotWindow","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.1","typeLabel":"object"},{"type":"object","description":"What the signature authorizes. Always agrees with the payload; never a restatement of the route.","required":["vm","action","accounts","authority","instructions","feePayer","slotWindow"],"properties":{"vm":{"type":"string","enum":["svm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.vm","typeLabel":"enum\u003cstring>"},"action":{"type":"string","enum":["manageAuthority"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.action","typeLabel":"enum\u003cstring>"},"accounts":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the account is authorized on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.accounts.items.[INDEX].chainId","typeLabel":"string"},"address":{"type":"string","minLength":1,"description":"Account address, in its own chain's format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.accounts.items.[INDEX].address","typeLabel":"string"}},"required":["chainId","address"],"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.accounts.items.[INDEX]","typeLabel":"object"},"description":"The Swig state account whose authorities change, on its chain","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.accounts","typeLabel":"object[]"},"authority":{"type":"object","properties":{"action":{"type":"string","enum":["add","remove"],"description":"Whether the authority is added or removed","example":"add","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.action","typeLabel":"enum\u003cstring>"},"key":{"oneOf":[{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.0.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.0","typeLabel":"object"},{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed secp256k1 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03. Not an EVM address.","example":"0x0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.key","typeLabel":"object"},"roleId":{"type":"integer","minimum":0,"description":"The Swig role id the added authority gets, or the id of the role removed","example":3,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.roleId","typeLabel":"integer"},"rent":{"type":"object","properties":{"amount":{"type":"string","format":"uint256","description":"Lamports of rent: locked in the Swig state account on an add, which the sponsor funds, or returned to the Swig wallet on a removal","example":"325120","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.rent.amount","typeLabel":"string\u003cuint256>"},"usd":{"type":"number","description":"The rent in USD","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.rent.usd","typeLabel":"number"}},"required":["amount","usd"],"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.rent","typeLabel":"object"},"permission":{"type":"string","enum":["all","allButManageAuthority","manageAuthority"],"description":"The added authority's permission, as requested and installed. Absent on a removal.","example":"allButManageAuthority","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority.permission","typeLabel":"enum\u003cstring>"}},"required":["action","key","roleId","rent"],"additionalProperties":false,"description":"The change this signature authorizes, exactly as the plan discloses it","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.authority","typeLabel":"object"},"instructions":{"type":"array","items":{"type":"object","properties":{"programId":{"type":"string","description":"Program to invoke, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].programId","typeLabel":"string"},"accounts":{"type":"array","items":{"type":"object","properties":{"pubkey":{"type":"string","description":"Account address, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].accounts.items.[INDEX].pubkey","typeLabel":"string"},"isSigner":{"type":"boolean","description":"Whether the instruction requires this account to sign.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].accounts.items.[INDEX].isSigner","typeLabel":"boolean"},"isWritable":{"type":"boolean","description":"Whether the instruction writes to this account.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].accounts.items.[INDEX].isWritable","typeLabel":"boolean"}},"required":["pubkey","isSigner","isWritable"],"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].accounts.items.[INDEX]","typeLabel":"object"},"maxItems":64,"description":"Accounts the instruction reads or writes, in the order the program expects.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].accounts","typeLabel":"object[]"},"data":{"type":"string","description":"Instruction data, base64.","example":"CQ==","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].data","typeLabel":"string"}},"required":["programId","accounts","data"],"description":"A Solana instruction in the JSON shape `@solana/web3.js` and Jupiter `/swap-instructions` produce, so protocol output passes through unchanged.","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX]","typeLabel":"object"},"description":"The sealed instructions this signature authorizes, in execution order: a passkey signer's secp256r1 precompile, then the Swig `AddAuthorityV1` or `RemoveAuthorityV1`, whose payer is a one-off key the relayer funds.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.instructions","typeLabel":"object[]"},"feePayer":{"type":"object","properties":{"kind":{"type":"string","enum":["role"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.feePayer.kind","typeLabel":"enum\u003cstring>"},"role":{"type":"string","enum":["relayer"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.feePayer.role","typeLabel":"enum\u003cstring>"}},"required":["kind","role"],"additionalProperties":false,"description":"Who pays the transaction fee, as a role rather than a key: the payload names no payer, and the relayer picks its own.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.feePayer","typeLabel":"object"},"slotWindow":{"type":"object","properties":{"from":{"type":"string","description":"Slot the payload was pinned to","example":"370123456","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.slotWindow.from","typeLabel":"string"},"to":{"type":"string","description":"Last slot it can be landed in","example":"370123516","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.slotWindow.to","typeLabel":"string"}},"required":["from","to"],"additionalProperties":false,"description":"Slot range the payload is signable in","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2.slotWindow","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].scope","typeLabel":"object"},"chainIds":{"type":"array","items":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].chainIds.items.[INDEX]","typeLabel":"string"},"description":"The chains the payload is cryptographically BOUND to, CAIP-2, each listed once — a `MultiChainOps` payload with several legs on one chain still names it once. This is what was signed rather than what the route is about: a Permit2 payload binds to the chain it claims funds on, so a destination request repeats the chain of the origin payload it duplicates.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].chainIds","typeLabel":"string[]"},"purpose":{"type":"string","enum":["originAuthorization","destinationAuthorization","targetExecutionAuthorization","delegationAuthorization"],"description":"What the signature is for","example":"originAuthorization","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].purpose","typeLabel":"enum\u003cstring>"},"validity":{"type":"array","items":{"oneOf":[{"type":"object","description":"A native deadline the payload is bound by. Every constraint returned applies; an empty list means the payload carries none of its own.","required":["kind","expiresAt"],"properties":{"kind":{"type":"string","enum":["timestamp"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.0.kind","typeLabel":"enum\u003cstring>"},"expiresAt":{"type":"integer","minimum":0,"description":"Unix seconds after which the payload is dead","example":1733493192,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.0.expiresAt","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","description":"A native deadline the payload is bound by. Every constraint returned applies; an empty list means the payload carries none of its own.","required":["kind","chainId","expiresAtSlot"],"properties":{"kind":{"type":"string","enum":["svmSlot"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.1.kind","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id whose slots the deadline counts in","example":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.1.chainId","typeLabel":"string"},"expiresAtSlot":{"type":"string","description":"Slot after which the payload is dead","example":"370123516","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.1.expiresAtSlot","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].validity.items.[INDEX]","typeLabel":"object"},"description":"Native deadlines that apply to this payload. Empty when it carries none — quote retention is a separate thing and is not a promise that a stale payload is submittable.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].validity","typeLabel":"object[]"},"payload":{"oneOf":[{"type":"object","description":"The native payload to sign","required":["kind","typedData","signatureFormat"],"properties":{"kind":{"type":"string","enum":["eip712"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"typedData":{"type":"object","properties":{"domain":{"type":"object","properties":{"name":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain.name","typeLabel":"string"},"version":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain.version","typeLabel":"string"},"chainId":{"type":"number","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain.chainId","typeLabel":"number"},"verifyingContract":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain.verifyingContract","typeLabel":"string"},"salt":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain.salt","typeLabel":"string"}},"description":"EIP-712 domain separator fields","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain","typeLabel":"object"},"types":{"type":"object","additionalProperties":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.types.additionalProperties.items.[INDEX].name","typeLabel":"string"},"type":{"type":"string","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.types.additionalProperties.items.[INDEX].type","typeLabel":"string"}},"required":["name","type"],"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.types.additionalProperties.items.[INDEX]","typeLabel":"object"},"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.types.additionalProperties","typeLabel":"object[]"},"description":"EIP-712 type definitions keyed by type name","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.types","typeLabel":"object"},"primaryType":{"type":"string","description":"Name of the top-level type to sign","example":"PermitBatchWitnessTransferFrom","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.primaryType","typeLabel":"string"},"message":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.message.additionalProperties","typeLabel":"any"},"description":"Message values keyed by field name. uint256 fields are encoded as decimal strings on the wire and re-coerced to bigint client-side before signing.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData.message","typeLabel":"object"}},"required":["domain","types","primaryType","message"],"description":"EIP-712 typed data definition ready for `signTypedData`","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.typedData","typeLabel":"object"},"signatureFormat":{"type":"string","enum":["secp256k1","account"],"description":"How the proof is encoded: raw 65-byte ECDSA for an EOA, or the account-native encoding for an ERC-7579 account, on which no length rule is imposed.","example":"secp256k1","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0.signatureFormat","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.0","typeLabel":"object"},{"type":"object","description":"The native payload to sign","required":["kind","message"],"properties":{"kind":{"type":"string","enum":["personalSign"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"message":{"type":"object","properties":{"encoding":{"type":"string","enum":["utf8"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.1.message.encoding","typeLabel":"enum\u003cstring>"},"value":{"type":"string","description":"Sign these characters as UTF-8 TEXT — viem `signMessage({ message })`, never `{ raw }`. Signing the decoded bytes yields a well-formed signature the chain rejects.","example":"a3f2c1d4e5b6a7980f1e2d3c4b5a69788796a5b4c3d2e1f0a1b2c3d4e5f60718","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.1.message.value","typeLabel":"string"}},"required":["encoding","value"],"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.1.message","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.1","typeLabel":"object"},{"type":"object","description":"The native payload to sign","required":["kind","authorization"],"properties":{"kind":{"type":"string","enum":["eip7702"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"authorization":{"type":"object","properties":{"chainId":{"type":"integer","minimum":0,"description":"Native chain value of the authorization tuple, not CAIP-2","example":8453,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.2.authorization.chainId","typeLabel":"integer"},"address":{"type":"string","description":"Delegate contract the authorization installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.2.authorization.address","typeLabel":"string"}},"required":["chainId","address"],"additionalProperties":false,"description":"The delegation to authorize. Carries no nonce: the orchestrator observes no EOA nonces, and one read at quote time is stale by signing time — the signer supplies it with the proof.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.2.authorization","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.2","typeLabel":"object"},{"type":"object","description":"The native payload to sign","required":["kind","challenge"],"properties":{"kind":{"type":"string","enum":["webauthn"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"challenge":{"type":"string","pattern":"^0x[0-9a-fA-F]{64}$","description":"Challenge the authenticator signs: 32 bytes as 0x-prefixed hex. Pass the decoded bytes as the WebAuthn `challenge`, not the hex text.","example":"0xa3f2c1d4e5b6a7980f1e2d3c4b5a69788796a5b4c3d2e1f0a1b2c3d4e5f60718","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.3.challenge","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload.oneOf.3","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX].payload","typeLabel":"object"}},"required":["account","authority","scope","chainIds","purpose","validity","payload"],"additionalProperties":false,"description":"One payload the caller must sign. Answer request `i` with proof `i`.","uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests.items.[INDEX]","typeLabel":"object"},"description":"Everything the caller must sign, in the order to answer it: the origin authorizations, the destination authorization, the target execution where one applies, then any EIP-7702 delegations. Each entry states its own account, authority, scope, chains, purpose and validity, so a new signing path joins the array rather than adding a field.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.signingRequests","typeLabel":"object[]"},"bridgeFill":{"oneOf":[{"type":"object","description":"Provider handle for resolving the destination-chain delivery transaction when settlement hands off to a third-party bridge (ECO, RHINO, RELAY, NEAR, CCTP, OFT). Absent when the orchestrator settles end-to-end (e.g. ACROSS).","required":["destinationChainId","fillStatusTimeout","type"],"properties":{"destinationChainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the chain the bridge delivers to (e.g. `eip155:8453`, `solana:…`)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.0.destinationChainId","typeLabel":"string"},"fillStatusTimeout":{"type":"integer","minimum":0,"description":"Fill-tracker watch window, in seconds. The orchestrator owns this timeout; the fill-tracker reads it here to decide when a bridge fill has timed out.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.0.fillStatusTimeout","typeLabel":"integer"},"type":{"type":"string","enum":["OFT"],"description":"LayerZero OFT","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.0.type","typeLabel":"enum\u003cstring>"},"fillExpirationPeriod":{"type":"integer","minimum":0,"description":"Optional bridge-specific fill deadline duration, in seconds. Preserved on stored quote reload so checksum validation uses the same bridgeFill payload that was signed at quote time.","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.0.fillExpirationPeriod","typeLabel":"integer"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.0","typeLabel":"object"},{"type":"object","description":"Provider handle for resolving the destination-chain delivery transaction when settlement hands off to a third-party bridge (ECO, RHINO, RELAY, NEAR, CCTP, OFT). Absent when the orchestrator settles end-to-end (e.g. ACROSS).","required":["destinationChainId","fillStatusTimeout","type","depositId"],"properties":{"destinationChainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the chain the bridge delivers to (e.g. `eip155:8453`, `solana:…`)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.1.destinationChainId","typeLabel":"string"},"fillStatusTimeout":{"type":"integer","minimum":0,"description":"Fill-tracker watch window, in seconds. The orchestrator owns this timeout; the fill-tracker reads it here to decide when a bridge fill has timed out.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.1.fillStatusTimeout","typeLabel":"integer"},"type":{"type":"string","enum":["ACROSS"],"description":"Across spoke-pool deposit. Names a deposit to watch for a refund, not a delivery — an ACROSS intent is filled by our own relayer and tracked as an ordinary fill.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.1.type","typeLabel":"enum\u003cstring>"},"depositId":{"type":"string","pattern":"^[0-9]{1,78}$","description":"The Across deposit id our claim opens on the origin chain, as a decimal uint256. Derived as keccak(arbiter | sponsor | nonce).","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.1.depositId","typeLabel":"string"},"fillExpirationPeriod":{"type":"integer","minimum":0,"description":"Optional bridge-specific fill deadline duration, in seconds. Preserved on stored quote reload so checksum validation uses the same bridgeFill payload that was signed at quote time.","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.1.fillExpirationPeriod","typeLabel":"integer"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.1","typeLabel":"object"},{"type":"object","description":"Provider handle for resolving the destination-chain delivery transaction when settlement hands off to a third-party bridge (ECO, RHINO, RELAY, NEAR, CCTP, OFT). Absent when the orchestrator settles end-to-end (e.g. ACROSS).","required":["destinationChainId","fillStatusTimeout","type","intentHash"],"properties":{"destinationChainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the chain the bridge delivers to (e.g. `eip155:8453`, `solana:…`)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.2.destinationChainId","typeLabel":"string"},"fillStatusTimeout":{"type":"integer","minimum":0,"description":"Fill-tracker watch window, in seconds. The orchestrator owns this timeout; the fill-tracker reads it here to decide when a bridge fill has timed out.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.2.fillStatusTimeout","typeLabel":"integer"},"type":{"type":"string","enum":["ECO"],"description":"Eco solver-network delivery","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.2.type","typeLabel":"enum\u003cstring>"},"intentHash":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Eco Portal intent hash. Use against Eco's intent status API to resolve the destination delivery transaction.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.2.intentHash","typeLabel":"string"},"fillExpirationPeriod":{"type":"integer","minimum":0,"description":"Optional bridge-specific fill deadline duration, in seconds. Preserved on stored quote reload so checksum validation uses the same bridgeFill payload that was signed at quote time.","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.2.fillExpirationPeriod","typeLabel":"integer"},"quoteId":{"type":"string","pattern":"^quote:[0-9a-f-]{36}$","description":"Eco v1 quote ID for detailed delivery and refund tracking.","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.2.quoteId","typeLabel":"string"},"providerDestinationChainId":{"type":"integer","minimum":0,"exclusiveMinimum":true,"description":"Eco's own id for the delivery chain, present only where it differs from `destinationChainId` (non-EVM destinations). Eco's status API reports fulfilment against this id.","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.2.providerDestinationChainId","typeLabel":"integer"},"providerSourceChainId":{"type":"integer","minimum":0,"exclusiveMinimum":true,"description":"Eco's own id for the chain the reward was funded on, present only where it differs from the deposit chain (non-EVM origins).","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.2.providerSourceChainId","typeLabel":"integer"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.2","typeLabel":"object"},{"type":"object","description":"Provider handle for resolving the destination-chain delivery transaction when settlement hands off to a third-party bridge (ECO, RHINO, RELAY, NEAR, CCTP, OFT). Absent when the orchestrator settles end-to-end (e.g. ACROSS).","required":["destinationChainId","fillStatusTimeout","type","requestId"],"properties":{"destinationChainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the chain the bridge delivers to (e.g. `eip155:8453`, `solana:…`)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.3.destinationChainId","typeLabel":"string"},"fillStatusTimeout":{"type":"integer","minimum":0,"description":"Fill-tracker watch window, in seconds. The orchestrator owns this timeout; the fill-tracker reads it here to decide when a bridge fill has timed out.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.3.fillStatusTimeout","typeLabel":"integer"},"type":{"type":"string","enum":["RELAY"],"description":"Relay.link","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.3.type","typeLabel":"enum\u003cstring>"},"requestId":{"type":"string","description":"Relay.link request ID. Use against Relay.link's status API to track the destination-chain fill.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.3.requestId","typeLabel":"string"},"fillExpirationPeriod":{"type":"integer","minimum":0,"description":"Optional bridge-specific fill deadline duration, in seconds. Preserved on stored quote reload so checksum validation uses the same bridgeFill payload that was signed at quote time.","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.3.fillExpirationPeriod","typeLabel":"integer"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.3","typeLabel":"object"},{"type":"object","description":"Provider handle for resolving the destination-chain delivery transaction when settlement hands off to a third-party bridge (ECO, RHINO, RELAY, NEAR, CCTP, OFT). Absent when the orchestrator settles end-to-end (e.g. ACROSS).","required":["destinationChainId","fillStatusTimeout","type","depositAddress"],"properties":{"destinationChainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the chain the bridge delivers to (e.g. `eip155:8453`, `solana:…`)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.4.destinationChainId","typeLabel":"string"},"fillStatusTimeout":{"type":"integer","minimum":0,"description":"Fill-tracker watch window, in seconds. The orchestrator owns this timeout; the fill-tracker reads it here to decide when a bridge fill has timed out.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.4.fillStatusTimeout","typeLabel":"integer"},"type":{"type":"string","enum":["NEAR"],"description":"NEAR Intents","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.4.type","typeLabel":"enum\u003cstring>"},"depositAddress":{"oneOf":[{"type":"string","description":"NEAR Intents deposit address on the origin chain, in its native form (EVM 0x or Solana base58). Track fill status via the NEAR Intents status API keyed on this address.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.4.depositAddress.oneOf.0","typeLabel":"string"},{"type":"string","description":"NEAR Intents deposit address on the origin chain, in its native form (EVM 0x or Solana base58). Track fill status via the NEAR Intents status API keyed on this address.","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.4.depositAddress.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.4.depositAddress","typeLabel":"string"},"fillExpirationPeriod":{"type":"integer","minimum":0,"description":"Optional bridge-specific fill deadline duration, in seconds. Preserved on stored quote reload so checksum validation uses the same bridgeFill payload that was signed at quote time.","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.4.fillExpirationPeriod","typeLabel":"integer"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.4","typeLabel":"object"},{"type":"object","description":"Provider handle for resolving the destination-chain delivery transaction when settlement hands off to a third-party bridge (ECO, RHINO, RELAY, NEAR, CCTP, OFT). Absent when the orchestrator settles end-to-end (e.g. ACROSS).","required":["destinationChainId","fillStatusTimeout","type","commitmentId"],"properties":{"destinationChainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the chain the bridge delivers to (e.g. `eip155:8453`, `solana:…`)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.5.destinationChainId","typeLabel":"string"},"fillStatusTimeout":{"type":"integer","minimum":0,"description":"Fill-tracker watch window, in seconds. The orchestrator owns this timeout; the fill-tracker reads it here to decide when a bridge fill has timed out.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.5.fillStatusTimeout","typeLabel":"integer"},"type":{"type":"string","enum":["RHINO"],"description":"Rhino.fi","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.5.type","typeLabel":"enum\u003cstring>"},"commitmentId":{"type":"string","description":"Rhino.fi commitment ID. Use against Rhino.fi's status API to track the destination-chain fill.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.5.commitmentId","typeLabel":"string"},"fillExpirationPeriod":{"type":"integer","minimum":0,"description":"Optional bridge-specific fill deadline duration, in seconds. Preserved on stored quote reload so checksum validation uses the same bridgeFill payload that was signed at quote time.","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.5.fillExpirationPeriod","typeLabel":"integer"},"keyVariant":{"type":"string","enum":["user_fee"],"description":"Rhino.fi API key variant the commitment was quoted under. Rhino.fi answers a status lookup only under that key, so the fill-tracker asks for the same variant.","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.5.keyVariant","typeLabel":"enum\u003cstring>"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.5","typeLabel":"object"},{"type":"object","description":"Provider handle for resolving the destination-chain delivery transaction when settlement hands off to a third-party bridge (ECO, RHINO, RELAY, NEAR, CCTP, OFT). Absent when the orchestrator settles end-to-end (e.g. ACROSS).","required":["destinationChainId","fillStatusTimeout","type","sourceDomainId","destinationDomainId"],"properties":{"destinationChainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the chain the bridge delivers to (e.g. `eip155:8453`, `solana:…`)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.6.destinationChainId","typeLabel":"string"},"fillStatusTimeout":{"type":"integer","minimum":0,"description":"Fill-tracker watch window, in seconds. The orchestrator owns this timeout; the fill-tracker reads it here to decide when a bridge fill has timed out.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.6.fillStatusTimeout","typeLabel":"integer"},"type":{"type":"string","enum":["CCTP"],"description":"Circle CCTP","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.6.type","typeLabel":"enum\u003cstring>"},"sourceDomainId":{"type":"number","description":"Circle CCTP source domain ID — needed to fetch the attestation for the burn message on the source chain.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.6.sourceDomainId","typeLabel":"number"},"destinationDomainId":{"type":"number","description":"Circle CCTP destination domain ID.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.6.destinationDomainId","typeLabel":"number"},"fillExpirationPeriod":{"type":"integer","minimum":0,"description":"Optional bridge-specific fill deadline duration, in seconds. Preserved on stored quote reload so checksum validation uses the same bridgeFill payload that was signed at quote time.","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.6.fillExpirationPeriod","typeLabel":"integer"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.6","typeLabel":"object"},{"type":"object","description":"Provider handle for resolving the destination-chain delivery transaction when settlement hands off to a third-party bridge (ECO, RHINO, RELAY, NEAR, CCTP, OFT). Absent when the orchestrator settles end-to-end (e.g. ACROSS).","required":["destinationChainId","fillStatusTimeout","type","quoteId","dstChainKey","routeTypes"],"properties":{"destinationChainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id of the chain the bridge delivers to (e.g. `eip155:8453`, `solana:…`)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.7.destinationChainId","typeLabel":"string"},"fillStatusTimeout":{"type":"integer","minimum":0,"description":"Fill-tracker watch window, in seconds. The orchestrator owns this timeout; the fill-tracker reads it here to decide when a bridge fill has timed out.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.7.fillStatusTimeout","typeLabel":"integer"},"type":{"type":"string","enum":["LZ"],"description":"LayerZero Value Transfer","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.7.type","typeLabel":"enum\u003cstring>"},"quoteId":{"type":"string","description":"LayerZero quote ID. Use against LayerZero's transfer status API to track the destination-chain fill.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.7.quoteId","typeLabel":"string"},"dstChainKey":{"type":"string","description":"LayerZero's own chain key for the destination (e.g. `base`). Its status response names chains by key rather than id.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.7.dstChainKey","typeLabel":"string"},"routeTypes":{"type":"array","items":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.7.routeTypes.items.[INDEX]","typeLabel":"string"},"description":"Protocols the quote routed through (e.g. STARGATE_V2_TAXI, CCTP_V2). One transfer can span several.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.7.routeTypes","typeLabel":"string[]"},"fillExpirationPeriod":{"type":"integer","minimum":0,"description":"Optional bridge-specific fill deadline duration, in seconds. Preserved on stored quote reload so checksum validation uses the same bridgeFill payload that was signed at quote time.","uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.7.fillExpirationPeriod","typeLabel":"integer"}},"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill.oneOf.7","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.0.bridgeFill","typeLabel":"object"}},"uniqueKey":"routes.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","description":"A single ranked route candidate, tagged with its purpose","required":["intentId","purpose","expiresAt","estimatedFillTime","settlementLayer","plan","cost","deploymentCosts","requirements","signingRequests"],"properties":{"intentId":{"type":"string","pattern":"^\\d+$","description":"Server-stored intent identifier. Pass back to `POST /intents` to submit.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.intentId","typeLabel":"string"},"purpose":{"type":"string","enum":["deployment"],"description":"What this route is for: `execution` moves funds or runs calls, `deployment` only initializes an account.","example":"deployment","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.purpose","typeLabel":"enum\u003cstring>"},"expiresAt":{"type":"integer","minimum":0,"description":"Quote expiry timestamp (Unix seconds). After this point, assume the quote is dead and re-quote.","example":1733493192,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.expiresAt","typeLabel":"integer"},"estimatedFillTime":{"type":"object","properties":{"seconds":{"type":"number","description":"Typical end-to-end fill time for this route in seconds. Directional, not guaranteed.","example":3,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.estimatedFillTime.seconds","typeLabel":"number"}},"required":["seconds"],"description":"Estimated fill time for the route","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.estimatedFillTime","typeLabel":"object"},"settlementLayer":{"type":"string","enum":["INTENT_EXECUTOR","SAME_CHAIN","ACROSS","ECO","RELAY","OFT","NEAR","RHINO","CCTP","LZ"],"description":"Settlement layer selected for this route","example":"RELAY","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.settlementLayer","typeLabel":"enum\u003cstring>"},"plan":{"type":"object","properties":{"source":{"type":"array","items":{"type":"object","properties":{"vm":{"type":"string","enum":["evm","svm","tvm","stellar","hypercore"],"description":"Public native execution environment of the chain. A HyperCore delivery venue is `hypercore`, never the HyperEVM chain it settles on.","example":"evm","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id this account is resolved on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].chainId","typeLabel":"string"},"account":{"oneOf":[{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address","type"],"properties":{"address":{"type":"string","description":"Account address","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.0.address","typeLabel":"string"},"type":{"type":"string","enum":["eoa","erc7579"],"description":"Whether the account is an EOA or an ERC-7579 smart account","example":"erc7579","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.0.type","typeLabel":"enum\u003cstring>"},"deployed":{"type":"boolean","description":"Whether the account is deployed on this chain. Absent when planning read no account state for the chain — never defaulted, which would claim an undeployed account is deployed.","example":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.0.deployed","typeLabel":"boolean"},"implementation":{"type":"object","properties":{"name":{"type":"string","enum":["Safe","Kernel","Nexus"],"description":"ERC-7579 account implementation","example":"Nexus","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.0.implementation.name","typeLabel":"enum\u003cstring>"},"version":{"type":"string","description":"Raw trailing version token returned by ERC-7579 `accountId()`, when valid; preserved without normalization","example":"v1.0.0","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.0.implementation.version","typeLabel":"string"}},"required":["name"],"description":"ERC-7579 implementation planning read on this chain. Absent for an EOA, and for a smart account whose implementation was not resolved.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.0.implementation","typeLabel":"object"},"delegation":{"type":"object","properties":{"contract":{"type":"string","description":"Delegate contract this intent installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.0.delegation.contract","typeLabel":"string"}},"required":["contract"],"description":"The EIP-7702 delegate this intent INSTALLS on this chain. Present only where the delegate is not yet in place — a delegation already in force is not reported here.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.0.delegation","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["wallet","swigAccount"],"properties":{"wallet":{"type":"string","description":"Asset-holding Swig wallet the intent spends from","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","description":"Swig state account holding the wallet authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.1.swigAccount","typeLabel":"string"},"authority":{"oneOf":[{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Authority the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.0.address","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.1.publicKey","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.1.authority.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.1.authority","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.1","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address"],"properties":{"address":{"type":"string","minLength":1,"description":"Address funds are delivered to, in the destination chain's own format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.2.address","typeLabel":"string"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].account","typeLabel":"object"},"execution":{"oneOf":[{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","calls"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.0.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.0.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.0.executedBy","typeLabel":"object"},"calls":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Target contract address for execution","example":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.0.calls.items.[INDEX].to","typeLabel":"string"},"value":{"type":"string","format":"uint256","description":"Amount of ETH (in wei) sent in the execution","example":"0","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.0.calls.items.[INDEX].value","typeLabel":"string\u003cuint256>"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Encoded function call data","example":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.0.calls.items.[INDEX].data","typeLabel":"string"}},"required":["to","value","data"],"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.0.calls.items.[INDEX]","typeLabel":"object"},"description":"The caller's own calls, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.0.calls","typeLabel":"object[]"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.0","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","instructions","addressLookupTables"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.executedBy","typeLabel":"object"},"instructions":{"type":"array","items":{"type":"object","properties":{"programId":{"type":"string","description":"Program to invoke, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].programId","typeLabel":"string"},"accounts":{"type":"array","items":{"type":"object","properties":{"pubkey":{"type":"string","description":"Account address, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].pubkey","typeLabel":"string"},"isSigner":{"type":"boolean","description":"Whether the instruction requires this account to sign.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isSigner","typeLabel":"boolean"},"isWritable":{"type":"boolean","description":"Whether the instruction writes to this account.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isWritable","typeLabel":"boolean"}},"required":["pubkey","isSigner","isWritable"],"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX]","typeLabel":"object"},"maxItems":64,"description":"Accounts the instruction reads or writes, in the order the program expects.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].accounts","typeLabel":"object[]"},"data":{"type":"string","description":"Instruction data, base64.","example":"CQ==","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX].data","typeLabel":"string"}},"required":["programId","accounts","data"],"description":"A Solana instruction in the JSON shape `@solana/web3.js` and Jupiter `/swap-instructions` produce, so protocol output passes through unchanged.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.instructions.items.[INDEX]","typeLabel":"object"},"description":"The caller's own instructions, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.instructions","typeLabel":"object[]"},"addressLookupTables":{"type":"array","items":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.addressLookupTables.items.[INDEX]","typeLabel":"string"},"description":"Address lookup tables the instructions resolve against","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1.addressLookupTables","typeLabel":"string[]"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.1","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","authority"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.executedBy","typeLabel":"object"},"authority":{"type":"object","properties":{"action":{"type":"string","enum":["add","remove"],"description":"Whether the authority is added or removed","example":"add","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.action","typeLabel":"enum\u003cstring>"},"key":{"oneOf":[{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.0.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.0","typeLabel":"object"},{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed secp256k1 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03. Not an EVM address.","example":"0x0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.key.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.key","typeLabel":"object"},"roleId":{"type":"integer","minimum":0,"description":"The Swig role id the added authority gets, or the id of the role removed","example":3,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.roleId","typeLabel":"integer"},"rent":{"type":"object","properties":{"amount":{"type":"string","format":"uint256","description":"Lamports of rent: locked in the Swig state account on an add, which the sponsor funds, or returned to the Swig wallet on a removal","example":"325120","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.rent.amount","typeLabel":"string\u003cuint256>"},"usd":{"type":"number","description":"The rent in USD","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.rent.usd","typeLabel":"number"}},"required":["amount","usd"],"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.rent","typeLabel":"object"},"permission":{"type":"string","enum":["all","allButManageAuthority","manageAuthority"],"description":"The added authority's permission, as requested and installed. Absent on a removal.","example":"allButManageAuthority","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority.permission","typeLabel":"enum\u003cstring>"}},"required":["action","key","roleId","rent"],"additionalProperties":false,"description":"A change to the Swig's own authorities","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2.authority","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.2","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","properties":{"actions":{"type":"array","items":{"type":"object","properties":{"nonce":{"type":"number","description":"The nonce the action commits to","example":1633493192000,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.actions.items.[INDEX].nonce","typeLabel":"number"},"agent":{"type":"string","minLength":1,"description":"The agent that authorises it","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.actions.items.[INDEX].agent","typeLabel":"string"},"action":{"type":"object","description":"The canonical Hyperliquid action, in the key order the agent address commits to","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.actions.items.[INDEX].action","typeLabel":"object"}},"required":["nonce","agent"],"description":"One HyperCore action and the agent it runs as","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.actions.items.[INDEX]","typeLabel":"object"},"description":"The canonical actions, IN THE ORDER they are sent, each with its nonce and the agent that authorises it. Absent when the route carries none.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.actions","typeLabel":"object[]"},"settlement":{"type":"object","properties":{"vm":{"type":"string","enum":["evm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.settlement.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the calls execute on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.settlement.chainId","typeLabel":"string"},"calls":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Target contract address for execution","example":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.settlement.calls.items.[INDEX].to","typeLabel":"string"},"value":{"type":"string","format":"uint256","description":"Amount of ETH (in wei) sent in the execution","example":"0","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.settlement.calls.items.[INDEX].value","typeLabel":"string\u003cuint256>"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Encoded function call data","example":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.settlement.calls.items.[INDEX].data","typeLabel":"string"}},"required":["to","value","data"],"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.settlement.calls.items.[INDEX]","typeLabel":"object"},"description":"The calls, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.settlement.calls","typeLabel":"object[]"},"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.settlement.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.settlement.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"Absent where the chain is no longer in force, so the executing contract cannot be named.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.settlement.executedBy","typeLabel":"object"}},"required":["vm","chainId","calls"],"description":"The caller's own HyperEVM calls, in execution order. Only calls the caller sent: the gas-refund allowance, the core deposit and the agent registrations the orchestrator composes are not disclosed here (the registrations are disclosed in the signing request's `scope.hyperCore`). Absent when the caller sent none, and on a record written before caller calls were attributed.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3.settlement","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution.oneOf.3","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX].execution","typeLabel":"object"}},"required":["vm","chainId","account"],"description":"One chain the route acts on","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source.items.[INDEX]","typeLabel":"object"},"description":"One block per chain the route spends on, in the order the route reaches them.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.source","typeLabel":"object[]"},"destination":{"type":"object","properties":{"vm":{"type":"string","enum":["evm","svm","tvm","stellar","hypercore"],"description":"Public native execution environment of the chain. A HyperCore delivery venue is `hypercore`, never the HyperEVM chain it settles on.","example":"evm","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id this account is resolved on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.chainId","typeLabel":"string"},"account":{"oneOf":[{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address","type"],"properties":{"address":{"type":"string","description":"Account address","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.0.address","typeLabel":"string"},"type":{"type":"string","enum":["eoa","erc7579"],"description":"Whether the account is an EOA or an ERC-7579 smart account","example":"erc7579","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.0.type","typeLabel":"enum\u003cstring>"},"deployed":{"type":"boolean","description":"Whether the account is deployed on this chain. Absent when planning read no account state for the chain — never defaulted, which would claim an undeployed account is deployed.","example":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.0.deployed","typeLabel":"boolean"},"implementation":{"type":"object","properties":{"name":{"type":"string","enum":["Safe","Kernel","Nexus"],"description":"ERC-7579 account implementation","example":"Nexus","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.0.implementation.name","typeLabel":"enum\u003cstring>"},"version":{"type":"string","description":"Raw trailing version token returned by ERC-7579 `accountId()`, when valid; preserved without normalization","example":"v1.0.0","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.0.implementation.version","typeLabel":"string"}},"required":["name"],"description":"ERC-7579 implementation planning read on this chain. Absent for an EOA, and for a smart account whose implementation was not resolved.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.0.implementation","typeLabel":"object"},"delegation":{"type":"object","properties":{"contract":{"type":"string","description":"Delegate contract this intent installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.0.delegation.contract","typeLabel":"string"}},"required":["contract"],"description":"The EIP-7702 delegate this intent INSTALLS on this chain. Present only where the delegate is not yet in place — a delegation already in force is not reported here.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.0.delegation","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["wallet","swigAccount"],"properties":{"wallet":{"type":"string","description":"Asset-holding Swig wallet the intent spends from","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","description":"Swig state account holding the wallet authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.1.swigAccount","typeLabel":"string"},"authority":{"oneOf":[{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.1.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Authority the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.1.authority.oneOf.0.address","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.1.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.1.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.1.authority.oneOf.1.publicKey","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.1.authority.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.1.authority","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.1","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address"],"properties":{"address":{"type":"string","minLength":1,"description":"Address funds are delivered to, in the destination chain's own format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.2.address","typeLabel":"string"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.account","typeLabel":"object"},"execution":{"oneOf":[{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","calls"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.0.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.0.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.0.executedBy","typeLabel":"object"},"calls":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Target contract address for execution","example":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.0.calls.items.[INDEX].to","typeLabel":"string"},"value":{"type":"string","format":"uint256","description":"Amount of ETH (in wei) sent in the execution","example":"0","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.0.calls.items.[INDEX].value","typeLabel":"string\u003cuint256>"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Encoded function call data","example":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.0.calls.items.[INDEX].data","typeLabel":"string"}},"required":["to","value","data"],"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.0.calls.items.[INDEX]","typeLabel":"object"},"description":"The caller's own calls, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.0.calls","typeLabel":"object[]"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.0","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","instructions","addressLookupTables"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.executedBy","typeLabel":"object"},"instructions":{"type":"array","items":{"type":"object","properties":{"programId":{"type":"string","description":"Program to invoke, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.instructions.items.[INDEX].programId","typeLabel":"string"},"accounts":{"type":"array","items":{"type":"object","properties":{"pubkey":{"type":"string","description":"Account address, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].pubkey","typeLabel":"string"},"isSigner":{"type":"boolean","description":"Whether the instruction requires this account to sign.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isSigner","typeLabel":"boolean"},"isWritable":{"type":"boolean","description":"Whether the instruction writes to this account.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isWritable","typeLabel":"boolean"}},"required":["pubkey","isSigner","isWritable"],"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX]","typeLabel":"object"},"maxItems":64,"description":"Accounts the instruction reads or writes, in the order the program expects.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.instructions.items.[INDEX].accounts","typeLabel":"object[]"},"data":{"type":"string","description":"Instruction data, base64.","example":"CQ==","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.instructions.items.[INDEX].data","typeLabel":"string"}},"required":["programId","accounts","data"],"description":"A Solana instruction in the JSON shape `@solana/web3.js` and Jupiter `/swap-instructions` produce, so protocol output passes through unchanged.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.instructions.items.[INDEX]","typeLabel":"object"},"description":"The caller's own instructions, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.instructions","typeLabel":"object[]"},"addressLookupTables":{"type":"array","items":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.addressLookupTables.items.[INDEX]","typeLabel":"string"},"description":"Address lookup tables the instructions resolve against","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1.addressLookupTables","typeLabel":"string[]"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.1","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","required":["executedBy","authority"],"properties":{"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"The executor of the disclosed calls","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.executedBy","typeLabel":"object"},"authority":{"type":"object","properties":{"action":{"type":"string","enum":["add","remove"],"description":"Whether the authority is added or removed","example":"add","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.action","typeLabel":"enum\u003cstring>"},"key":{"oneOf":[{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.key.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.key.oneOf.0.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.key.oneOf.0","typeLabel":"object"},{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.key.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed secp256k1 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03. Not an EVM address.","example":"0x0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.key.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.key.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.key","typeLabel":"object"},"roleId":{"type":"integer","minimum":0,"description":"The Swig role id the added authority gets, or the id of the role removed","example":3,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.roleId","typeLabel":"integer"},"rent":{"type":"object","properties":{"amount":{"type":"string","format":"uint256","description":"Lamports of rent: locked in the Swig state account on an add, which the sponsor funds, or returned to the Swig wallet on a removal","example":"325120","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.rent.amount","typeLabel":"string\u003cuint256>"},"usd":{"type":"number","description":"The rent in USD","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.rent.usd","typeLabel":"number"}},"required":["amount","usd"],"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.rent","typeLabel":"object"},"permission":{"type":"string","enum":["all","allButManageAuthority","manageAuthority"],"description":"The added authority's permission, as requested and installed. Absent on a removal.","example":"allButManageAuthority","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority.permission","typeLabel":"enum\u003cstring>"}},"required":["action","key","roleId","rent"],"additionalProperties":false,"description":"A change to the Swig's own authorities","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2.authority","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.2","typeLabel":"object"},{"type":"object","description":"Present only where the route runs the caller's own calls on this block — or, at a HyperCore venue, actions or caller settlement calls.","properties":{"actions":{"type":"array","items":{"type":"object","properties":{"nonce":{"type":"number","description":"The nonce the action commits to","example":1633493192000,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.actions.items.[INDEX].nonce","typeLabel":"number"},"agent":{"type":"string","minLength":1,"description":"The agent that authorises it","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.actions.items.[INDEX].agent","typeLabel":"string"},"action":{"type":"object","description":"The canonical Hyperliquid action, in the key order the agent address commits to","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.actions.items.[INDEX].action","typeLabel":"object"}},"required":["nonce","agent"],"description":"One HyperCore action and the agent it runs as","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.actions.items.[INDEX]","typeLabel":"object"},"description":"The canonical actions, IN THE ORDER they are sent, each with its nonce and the agent that authorises it. Absent when the route carries none.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.actions","typeLabel":"object[]"},"settlement":{"type":"object","properties":{"vm":{"type":"string","enum":["evm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.settlement.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the calls execute on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.settlement.chainId","typeLabel":"string"},"calls":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","description":"Target contract address for execution","example":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.settlement.calls.items.[INDEX].to","typeLabel":"string"},"value":{"type":"string","format":"uint256","description":"Amount of ETH (in wei) sent in the execution","example":"0","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.settlement.calls.items.[INDEX].value","typeLabel":"string\u003cuint256>"},"data":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Encoded function call data","example":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.settlement.calls.items.[INDEX].data","typeLabel":"string"}},"required":["to","value","data"],"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.settlement.calls.items.[INDEX]","typeLabel":"object"},"description":"The calls, in execution order","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.settlement.calls","typeLabel":"object[]"},"executedBy":{"type":"object","properties":{"kind":{"type":"string","enum":["account","solver"],"description":"Who runs the calls: the account itself, or a solver-operated contract running them on its behalf.","example":"account","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.settlement.executedBy.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","minLength":1,"description":"Address of the executing contract or account","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.settlement.executedBy.address","typeLabel":"string"}},"required":["kind","address"],"description":"Absent where the chain is no longer in force, so the executing contract cannot be named.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.settlement.executedBy","typeLabel":"object"}},"required":["vm","chainId","calls"],"description":"The caller's own HyperEVM calls, in execution order. Only calls the caller sent: the gas-refund allowance, the core deposit and the agent registrations the orchestrator composes are not disclosed here (the registrations are disclosed in the signing request's `scope.hyperCore`). Absent when the caller sent none, and on a record written before caller calls were attributed.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3.settlement","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution.oneOf.3","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination.execution","typeLabel":"object"}},"required":["vm","chainId","account"],"description":"The single block the route delivers to, on the chain the caller named.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.destination","typeLabel":"object"},"deployments":{"type":"array","items":{"type":"object","properties":{"vm":{"type":"string","enum":["evm","svm","tvm","stellar","hypercore"],"description":"Public native execution environment of the chain. A HyperCore delivery venue is `hypercore`, never the HyperEVM chain it settles on.","example":"evm","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id this account is resolved on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].chainId","typeLabel":"string"},"account":{"oneOf":[{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address","type"],"properties":{"address":{"type":"string","description":"Account address","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.0.address","typeLabel":"string"},"type":{"type":"string","enum":["eoa","erc7579"],"description":"Whether the account is an EOA or an ERC-7579 smart account","example":"erc7579","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.0.type","typeLabel":"enum\u003cstring>"},"deployed":{"type":"boolean","description":"Whether the account is deployed on this chain. Absent when planning read no account state for the chain — never defaulted, which would claim an undeployed account is deployed.","example":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.0.deployed","typeLabel":"boolean"},"implementation":{"type":"object","properties":{"name":{"type":"string","enum":["Safe","Kernel","Nexus"],"description":"ERC-7579 account implementation","example":"Nexus","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.0.implementation.name","typeLabel":"enum\u003cstring>"},"version":{"type":"string","description":"Raw trailing version token returned by ERC-7579 `accountId()`, when valid; preserved without normalization","example":"v1.0.0","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.0.implementation.version","typeLabel":"string"}},"required":["name"],"description":"ERC-7579 implementation planning read on this chain. Absent for an EOA, and for a smart account whose implementation was not resolved.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.0.implementation","typeLabel":"object"},"delegation":{"type":"object","properties":{"contract":{"type":"string","description":"Delegate contract this intent installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.0.delegation.contract","typeLabel":"string"}},"required":["contract"],"description":"The EIP-7702 delegate this intent INSTALLS on this chain. Present only where the delegate is not yet in place — a delegation already in force is not reported here.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.0.delegation","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["wallet","swigAccount"],"properties":{"wallet":{"type":"string","description":"Asset-holding Swig wallet the intent spends from","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","description":"Swig state account holding the wallet authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.1.swigAccount","typeLabel":"string"},"authority":{"oneOf":[{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Authority the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.0.address","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.1.publicKey","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.1.authority.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.1.authority","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.1","typeLabel":"object"},{"type":"object","description":"The account this block acts on, resolved for its VM: an EVM account, a Solana Swig, or a bare payee.","required":["address"],"properties":{"address":{"type":"string","minLength":1,"description":"Address funds are delivered to, in the destination chain's own format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.2.address","typeLabel":"string"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX].account","typeLabel":"object"}},"required":["vm","chainId","account"],"description":"An account initialization the route performs, disclosed separately even when it shares a transaction with a claim or a fill.","uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments.items.[INDEX]","typeLabel":"object"},"description":"Account initializations the route performs. Empty when it performs none.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan.deployments","typeLabel":"object[]"}},"required":["source","destination","deployments"],"description":"The account the route initializes, in `deployments`, and the chain it initializes it on.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.plan","typeLabel":"object"},"cost":{"type":"object","properties":{"input":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"Chain where this token leg settles (CAIP-2, any namespace)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].chainId","typeLabel":"string"},"tokenAddress":{"type":"string","minLength":1,"description":"Contract address of the debited token (EVM 0x or non-EVM base58)","example":"0xaf88d065e77c8cc2239327c5edb3a432268e5831","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].tokenAddress","typeLabel":"string"},"symbol":{"oneOf":[{"type":"string","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].symbol.oneOf.0","typeLabel":"string"},{"type":"null","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].symbol.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].symbol","typeLabel":"string | null"},"decimals":{"oneOf":[{"type":"integer","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].decimals.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].decimals.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].decimals","typeLabel":"integer | null"},"price":{"oneOf":[{"type":"object","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].price.oneOf.0.usd","typeLabel":"number"}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].price.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].price.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].price","typeLabel":"object | null"},"amount":{"type":"string","format":"uint256","description":"Token amount in the token's smallest unit","example":"1050000","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX].amount","typeLabel":"string\u003cuint256>"}},"required":["chainId","tokenAddress","symbol","decimals","price","amount"],"description":"A single (chain, token) leg with amount, price, and metadata","uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input.items.[INDEX]","typeLabel":"object"},"description":"Tokens debited from the user, coalesced by (chainId, tokenAddress)","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.input","typeLabel":"object[]"},"output":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"Chain where this token leg settles (CAIP-2, any namespace)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].chainId","typeLabel":"string"},"tokenAddress":{"type":"string","minLength":1,"description":"Contract address of the delivered token (EVM 0x or non-EVM base58)","example":"0xaf88d065e77c8cc2239327c5edb3a432268e5831","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].tokenAddress","typeLabel":"string"},"symbol":{"oneOf":[{"type":"string","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].symbol.oneOf.0","typeLabel":"string"},{"type":"null","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].symbol.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].symbol","typeLabel":"string | null"},"decimals":{"oneOf":[{"type":"integer","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].decimals.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].decimals.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].decimals","typeLabel":"integer | null"},"price":{"oneOf":[{"type":"object","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].price.oneOf.0.usd","typeLabel":"number"}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].price.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].price.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].price","typeLabel":"object | null"},"amount":{"type":"string","format":"uint256","description":"Token amount in the token's smallest unit","example":"1050000","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX].amount","typeLabel":"string\u003cuint256>"}},"required":["chainId","tokenAddress","symbol","decimals","price","amount"],"description":"A single (chain, token) leg with amount, price, and metadata","uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output.items.[INDEX]","typeLabel":"object"},"description":"Tokens delivered to the recipient, coalesced by (chainId, tokenAddress)","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.output","typeLabel":"object[]"},"fees":{"type":"object","properties":{"total":{"type":"object","properties":{"usd":{"type":"number","description":"USD-denominated value","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.total.usd","typeLabel":"number"}},"required":["usd"],"description":"Full route cost in USD, regardless of who pays. Equal to `sum(breakdown.*.usd)` modulo rounding.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.total","typeLabel":"object"},"breakdown":{"type":"object","properties":{"gas":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.gas.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.gas.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Aggregate gas cost (destination fill, swap execution, origin gas)","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.gas","typeLabel":"object"},"bridge":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.bridge.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.bridge.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Aggregate settlement-layer bridge cost","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.bridge","typeLabel":"object"},"swap":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.swap.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.swap.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Aggregate solver swap commission","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.swap","typeLabel":"object"},"app":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.app.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.app.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Aggregate integrator app fee","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.app","typeLabel":"object"},"protocol":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.protocol.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.protocol.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Rhinestone protocol fee (`options.protocolFees`). `sponsored: true` when the integrator sponsorship balance pays it instead of the user.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.protocol","typeLabel":"object"},"sponsorSurcharge":{"type":"object","properties":{"usd":{"type":"number","description":"Total cost of this category in USD, regardless of who pays.","example":0.029,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.sponsorSurcharge.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when a sponsor absorbs some or all of this category. The user-vs-sponsor split is not surfaced.","example":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.sponsorSurcharge.sponsored","typeLabel":"boolean"}},"required":["usd","sponsored"],"description":"Rhinestone's surcharge on the sponsored relayer coverage, charged to the sponsor. 0 when the intent is not sponsored. Pure surcharge — a sponsored protocol fee is shown on `protocol`, never here.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown.sponsorSurcharge","typeLabel":"object"}},"required":["gas","bridge","swap","app","protocol","sponsorSurcharge"],"description":"Per-category fee breakdown","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees.breakdown","typeLabel":"object"}},"required":["total","breakdown"],"description":"Aggregate route fees with per-category breakdown","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.fees","typeLabel":"object"},"executionPayment":{"oneOf":[{"type":"object","description":"Solana instruction execution only: the exact fixed wallet debit, or confirmation that the sponsor pays and the wallet has no execution debit. The wallet debit also appears in input.","required":["paidBy","walletDebit"],"properties":{"paidBy":{"type":"string","enum":["wallet"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.paidBy","typeLabel":"enum\u003cstring>"},"walletDebit":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"Chain where this token leg settles (CAIP-2, any namespace)","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.chainId","typeLabel":"string"},"tokenAddress":{"type":"string","minLength":1,"description":"Contract address of the debited token (EVM 0x or non-EVM base58)","example":"0xaf88d065e77c8cc2239327c5edb3a432268e5831","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.tokenAddress","typeLabel":"string"},"symbol":{"oneOf":[{"type":"string","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.symbol.oneOf.0","typeLabel":"string"},{"type":"null","description":"Token symbol, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":"USDC","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.symbol.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.symbol","typeLabel":"string | null"},"decimals":{"oneOf":[{"type":"integer","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.decimals.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Token decimals, from the internal token registry or, for a token it has no entry for, read on-chain while planning. `null` when neither resolved one.","example":6,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.decimals.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.decimals","typeLabel":"integer | null"},"price":{"oneOf":[{"type":"object","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.price.oneOf.0.usd","typeLabel":"number"}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.price.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"usd":{"type":"number","description":"Unit price in USD","example":1}},"required":["usd"],"description":"Unit price in USD. `null` when neither the price oracle nor this quote priced the token.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.price.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.price","typeLabel":"object | null"},"amount":{"type":"string","format":"uint256","description":"Token amount in the token's smallest unit","example":"1050000","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit.amount","typeLabel":"string\u003cuint256>"}},"required":["chainId","tokenAddress","symbol","decimals","price","amount"],"description":"A single (chain, token) leg with amount, price, and metadata","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0.walletDebit","typeLabel":"object"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.0","typeLabel":"object"},{"type":"object","description":"Solana instruction execution only: the exact fixed wallet debit, or confirmation that the sponsor pays and the wallet has no execution debit. The wallet debit also appears in input.","required":["paidBy"],"properties":{"paidBy":{"type":"string","enum":["sponsor"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.1.paidBy","typeLabel":"enum\u003cstring>"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.1.cost.executionPayment","typeLabel":"object"}},"required":["input","output","fees"],"description":"Route cost: inputs, outputs, and fee breakdown","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.cost","typeLabel":"object"},"deploymentCosts":{"type":"array","items":{"type":"object","properties":{"vm":{"type":"string","enum":["evm","svm","tvm","stellar","hypercore"],"description":"Public native execution environment of the chain. A HyperCore delivery venue is `hypercore`, never the HyperEVM chain it settles on.","example":"evm","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.deploymentCosts.items.[INDEX].vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the account is initialized on","example":"solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.deploymentCosts.items.[INDEX].chainId","typeLabel":"string"},"rent":{"type":"object","properties":{"amount":{"type":"string","format":"uint256","description":"Rent locked in the new accounts, in the chain's native base unit (lamports on Solana)","example":"1869440","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.deploymentCosts.items.[INDEX].rent.amount","typeLabel":"string\u003cuint256>"},"usd":{"type":"number","description":"The rent in USD","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.deploymentCosts.items.[INDEX].rent.usd","typeLabel":"number"},"sponsored":{"type":"boolean","description":"True when the sponsor pays it rather than the user","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.deploymentCosts.items.[INDEX].rent.sponsored","typeLabel":"boolean"}},"required":["amount","usd","sponsored"],"description":"The rent the initialization locks","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.deploymentCosts.items.[INDEX].rent","typeLabel":"object"}},"required":["vm","chainId","rent"],"description":"What one account initialization costs beyond `cost.fees`: rent is state, not a fee, and is never counted in `cost.fees.gas`.","uniqueKey":"routes.items.[INDEX].oneOf.1.deploymentCosts.items.[INDEX]","typeLabel":"object"},"description":"The rent each initialization locks, one entry each.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.deploymentCosts","typeLabel":"object[]"},"requirements":{"type":"array","items":{"oneOf":[{"type":"object","description":"A pre-flight operation the account must perform before this route can be claimed. `quoted` does not mean it is already fulfilled.","required":["kind","vm","chainId","account","tokenAddress","amount","spender"],"properties":{"kind":{"type":"string","enum":["erc20Approval"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.kind","typeLabel":"enum\u003cstring>"},"vm":{"type":"string","enum":["evm","svm","tvm","stellar","hypercore"],"description":"Public native execution environment of the chain. A HyperCore delivery venue is `hypercore`, never the HyperEVM chain it settles on.","example":"evm","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the requirement applies on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.chainId","typeLabel":"string"},"account":{"oneOf":[{"type":"object","description":"The account the requirement applies to","required":["address","type"],"properties":{"address":{"type":"string","description":"Account address","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.0.address","typeLabel":"string"},"type":{"type":"string","enum":["eoa","erc7579"],"description":"Whether the account is an EOA or an ERC-7579 smart account","example":"erc7579","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.0.type","typeLabel":"enum\u003cstring>"},"deployed":{"type":"boolean","description":"Whether the account is deployed on this chain. Absent when planning read no account state for the chain — never defaulted, which would claim an undeployed account is deployed.","example":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.0.deployed","typeLabel":"boolean"},"implementation":{"type":"object","properties":{"name":{"type":"string","enum":["Safe","Kernel","Nexus"],"description":"ERC-7579 account implementation","example":"Nexus","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.0.implementation.name","typeLabel":"enum\u003cstring>"},"version":{"type":"string","description":"Raw trailing version token returned by ERC-7579 `accountId()`, when valid; preserved without normalization","example":"v1.0.0","uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.0.implementation.version","typeLabel":"string"}},"required":["name"],"description":"ERC-7579 implementation planning read on this chain. Absent for an EOA, and for a smart account whose implementation was not resolved.","uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.0.implementation","typeLabel":"object"},"delegation":{"type":"object","properties":{"contract":{"type":"string","description":"Delegate contract this intent installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.0.delegation.contract","typeLabel":"string"}},"required":["contract"],"description":"The EIP-7702 delegate this intent INSTALLS on this chain. Present only where the delegate is not yet in place — a delegation already in force is not reported here.","uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.0.delegation","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account the requirement applies to","required":["wallet","swigAccount"],"properties":{"wallet":{"type":"string","description":"Asset-holding Swig wallet the intent spends from","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","description":"Swig state account holding the wallet authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.1.swigAccount","typeLabel":"string"},"authority":{"oneOf":[{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Authority the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.0.address","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.1.publicKey","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.1.authority","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.1","typeLabel":"object"},{"type":"object","description":"The account the requirement applies to","required":["address"],"properties":{"address":{"type":"string","minLength":1,"description":"Address funds are delivered to, in the destination chain's own format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.2.address","typeLabel":"string"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.account","typeLabel":"object"},"tokenAddress":{"type":"string","description":"Token the requirement applies to","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.tokenAddress","typeLabel":"string"},"amount":{"type":"string","format":"uint256","description":"Minimum amount, in the token's smallest unit","example":"1000000","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.amount","typeLabel":"string\u003cuint256>"},"spender":{"type":"string","description":"Always the canonical Permit2 contract on this chain. The account approves Permit2; the settlement contract pulls funds via Permit2 at claim time.","example":"0x000000000022d473030f116ddee9f6b43ac78ba3","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0.spender","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","description":"A pre-flight operation the account must perform before this route can be claimed. `quoted` does not mean it is already fulfilled.","required":["kind","vm","chainId","account","tokenAddress","amount"],"properties":{"kind":{"type":"string","enum":["wrapNative"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.kind","typeLabel":"enum\u003cstring>"},"vm":{"type":"string","enum":["evm","svm","tvm","stellar","hypercore"],"description":"Public native execution environment of the chain. A HyperCore delivery venue is `hypercore`, never the HyperEVM chain it settles on.","example":"evm","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.vm","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the requirement applies on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.chainId","typeLabel":"string"},"account":{"oneOf":[{"type":"object","description":"The account the requirement applies to","required":["address","type"],"properties":{"address":{"type":"string","description":"Account address","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.0.address","typeLabel":"string"},"type":{"type":"string","enum":["eoa","erc7579"],"description":"Whether the account is an EOA or an ERC-7579 smart account","example":"erc7579","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.0.type","typeLabel":"enum\u003cstring>"},"deployed":{"type":"boolean","description":"Whether the account is deployed on this chain. Absent when planning read no account state for the chain — never defaulted, which would claim an undeployed account is deployed.","example":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.0.deployed","typeLabel":"boolean"},"implementation":{"type":"object","properties":{"name":{"type":"string","enum":["Safe","Kernel","Nexus"],"description":"ERC-7579 account implementation","example":"Nexus","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.0.implementation.name","typeLabel":"enum\u003cstring>"},"version":{"type":"string","description":"Raw trailing version token returned by ERC-7579 `accountId()`, when valid; preserved without normalization","example":"v1.0.0","uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.0.implementation.version","typeLabel":"string"}},"required":["name"],"description":"ERC-7579 implementation planning read on this chain. Absent for an EOA, and for a smart account whose implementation was not resolved.","uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.0.implementation","typeLabel":"object"},"delegation":{"type":"object","properties":{"contract":{"type":"string","description":"Delegate contract this intent installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.0.delegation.contract","typeLabel":"string"}},"required":["contract"],"description":"The EIP-7702 delegate this intent INSTALLS on this chain. Present only where the delegate is not yet in place — a delegation already in force is not reported here.","uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.0.delegation","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account the requirement applies to","required":["wallet","swigAccount"],"properties":{"wallet":{"type":"string","description":"Asset-holding Swig wallet the intent spends from","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","description":"Swig state account holding the wallet authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.1.swigAccount","typeLabel":"string"},"authority":{"oneOf":[{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Authority the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.0.address","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"Authority the submitted signature was verified against when the intent was accepted, as recorded. Absent on an intent record written before it was recorded; never inferred from the account or from current chain state.","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.1.publicKey","typeLabel":"string"}},"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority.oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.1.authority","typeLabel":"object"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.1","typeLabel":"object"},{"type":"object","description":"The account the requirement applies to","required":["address"],"properties":{"address":{"type":"string","minLength":1,"description":"Address funds are delivered to, in the destination chain's own format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.2.address","typeLabel":"string"}},"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.account","typeLabel":"object"},"tokenAddress":{"type":"string","description":"Token the requirement applies to","example":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.tokenAddress","typeLabel":"string"},"amount":{"type":"string","format":"uint256","description":"Minimum amount, in the token's smallest unit","example":"1000000","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1.amount","typeLabel":"string\u003cuint256>"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX].oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements.items.[INDEX]","typeLabel":"object"},"maxItems":0,"description":"Always empty: an initialization needs no pre-flight.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.requirements","typeLabel":"object[]"},"signingRequests":{"type":"array","items":{"type":"object","properties":{"account":{"oneOf":[{"type":"object","description":"The account this signature acts for, named inline per VM. Carries no per-chain observation, since one request can span chains.","required":["vm","address"],"properties":{"vm":{"type":"string","enum":["evm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].account.oneOf.0.vm","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Account the signature authorizes","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].account.oneOf.0.address","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].account.oneOf.0","typeLabel":"object"},{"type":"object","description":"The account this signature acts for, named inline per VM. Carries no per-chain observation, since one request can span chains.","required":["vm","wallet","swigAccount"],"properties":{"vm":{"type":"string","enum":["svm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].account.oneOf.1.vm","typeLabel":"enum\u003cstring>"},"wallet":{"type":"string","minLength":1,"description":"Asset-holding Swig wallet the spend debits","example":"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].account.oneOf.1.wallet","typeLabel":"string"},"swigAccount":{"type":"string","minLength":1,"description":"Swig state account holding the authority configuration. Distinct from `wallet`, which is where the assets live.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].account.oneOf.1.swigAccount","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].account.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].account","typeLabel":"object"},"authority":{"oneOf":[{"type":"object","description":"What verifies the signature","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Address the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.0.address","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"What verifies the signature","required":["kind","vm","address"],"properties":{"kind":{"type":"string","enum":["account"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"vm":{"type":"string","enum":["evm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.1.vm","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Account that verifies the signature itself","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.1.address","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.1","typeLabel":"object"},{"type":"object","description":"What verifies the signature","required":["kind","roleId","authority"],"properties":{"kind":{"type":"string","enum":["swigRole"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"roleId":{"type":"integer","minimum":0,"description":"Swig role the spend was authorized under","example":1,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.2.roleId","typeLabel":"integer"},"authority":{"oneOf":[{"type":"object","description":"The authority configured on that role","required":["kind","address"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"address":{"type":"string","description":"Address the submitted signature must recover to","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.0.address","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.0","typeLabel":"object"},{"type":"object","description":"The authority configured on that role","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.2.authority.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.2.authority","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].authority","typeLabel":"object"},"scope":{"oneOf":[{"type":"object","description":"What the signature authorizes. Always agrees with the payload; never a restatement of the route.","required":["vm","action","accounts"],"properties":{"vm":{"type":"string","enum":["evm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.vm","typeLabel":"enum\u003cstring>"},"action":{"type":"string","enum":["claim","fill","targetExecution","delegation"],"description":"What the signature authorizes","example":"claim","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.action","typeLabel":"enum\u003cstring>"},"accounts":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the account is authorized on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.accounts.items.[INDEX].chainId","typeLabel":"string"},"address":{"type":"string","minLength":1,"description":"Account address, in its own chain's format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.accounts.items.[INDEX].address","typeLabel":"string"}},"required":["chainId","address"],"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.accounts.items.[INDEX]","typeLabel":"object"},"description":"The accounts and chains the action runs against","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.accounts","typeLabel":"object[]"},"hyperCore":{"type":"array","items":{"type":"object","properties":{"nonce":{"type":"number","description":"The nonce the action commits to","example":1633493192000,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore.items.[INDEX].nonce","typeLabel":"number"},"agent":{"type":"string","description":"The agent this registration installs. It is derived from the action bytes above, so it authorises that action and nothing else.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore.items.[INDEX].agent","typeLabel":"string"},"slot":{"type":"string","description":"The named API-wallet slot the agent goes in. Registering evicts whatever the account had in that slot; the account's unnamed wallet is never used.","example":"rh1","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore.items.[INDEX].slot","typeLabel":"string"},"action":{"type":"object","description":"The canonical Hyperliquid action, exactly as the agent commits to it. Key order is part of the commitment — the agent address is recovered from a signature over its msgpack encoding — so it is served in the order it was signed in, not re-sorted.","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore.items.[INDEX].action","typeLabel":"object"}},"required":["nonce","agent","slot"],"additionalProperties":false,"description":"One HyperCore agent registration","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore.items.[INDEX]","typeLabel":"object"},"minItems":1,"description":"Present only on a request that authorizes at least one HyperCore agent registration. Lists every registration the payload commits to, in registration (slot) order: one item for a per-leg payload, all of them for an aggregate `MultiChainOps` payload. Names what each registration commits to, which the payload itself carries only as CoreWriter calldata. Changing any action, their order, a nonce or an agent requires a fresh quote.","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0.hyperCore","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.0","typeLabel":"object"},{"type":"object","description":"What the signature authorizes. Always agrees with the payload; never a restatement of the route.","required":["vm","action","accounts","instructions","addressLookupTables","feePayer","slotWindow"],"properties":{"vm":{"type":"string","enum":["svm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.vm","typeLabel":"enum\u003cstring>"},"action":{"type":"string","enum":["spend"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.action","typeLabel":"enum\u003cstring>"},"accounts":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the account is authorized on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.accounts.items.[INDEX].chainId","typeLabel":"string"},"address":{"type":"string","minLength":1,"description":"Account address, in its own chain's format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.accounts.items.[INDEX].address","typeLabel":"string"}},"required":["chainId","address"],"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.accounts.items.[INDEX]","typeLabel":"object"},"description":"The wallet the spend debits, on its chain","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.accounts","typeLabel":"object[]"},"instructions":{"type":"array","items":{"type":"object","properties":{"programId":{"type":"string","description":"Program to invoke, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].programId","typeLabel":"string"},"accounts":{"type":"array","items":{"type":"object","properties":{"pubkey":{"type":"string","description":"Account address, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].pubkey","typeLabel":"string"},"isSigner":{"type":"boolean","description":"Whether the instruction requires this account to sign.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isSigner","typeLabel":"boolean"},"isWritable":{"type":"boolean","description":"Whether the instruction writes to this account.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX].isWritable","typeLabel":"boolean"}},"required":["pubkey","isSigner","isWritable"],"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].accounts.items.[INDEX]","typeLabel":"object"},"maxItems":64,"description":"Accounts the instruction reads or writes, in the order the program expects.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].accounts","typeLabel":"object[]"},"data":{"type":"string","description":"Instruction data, base64.","example":"CQ==","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX].data","typeLabel":"string"}},"required":["programId","accounts","data"],"description":"A Solana instruction in the JSON shape `@solana/web3.js` and Jupiter `/swap-instructions` produce, so protocol output passes through unchanged.","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.instructions.items.[INDEX]","typeLabel":"object"},"description":"The full instruction set this signature authorizes, in execution order, in the same shape a request carries instructions in.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.instructions","typeLabel":"object[]"},"addressLookupTables":{"type":"array","items":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.addressLookupTables.items.[INDEX]","typeLabel":"string"},"description":"Address lookup tables the instructions resolve accounts through. The tables themselves are not inlined.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.addressLookupTables","typeLabel":"string[]"},"feePayer":{"type":"object","properties":{"kind":{"type":"string","enum":["role"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.feePayer.kind","typeLabel":"enum\u003cstring>"},"role":{"type":"string","enum":["relayer"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.feePayer.role","typeLabel":"enum\u003cstring>"}},"required":["kind","role"],"additionalProperties":false,"description":"Who pays the transaction fee, as a role rather than a key: the payload names no payer, and the relayer picks its own.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.feePayer","typeLabel":"object"},"slotWindow":{"type":"object","properties":{"from":{"type":"string","description":"Slot the payload was pinned to","example":"370123456","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.slotWindow.from","typeLabel":"string"},"to":{"type":"string","description":"Last slot it can be landed in","example":"370123516","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.slotWindow.to","typeLabel":"string"}},"required":["from","to"],"additionalProperties":false,"description":"Slot range the payload is signable in","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1.slotWindow","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.1","typeLabel":"object"},{"type":"object","description":"What the signature authorizes. Always agrees with the payload; never a restatement of the route.","required":["vm","action","accounts","authority","instructions","feePayer","slotWindow"],"properties":{"vm":{"type":"string","enum":["svm"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.vm","typeLabel":"enum\u003cstring>"},"action":{"type":"string","enum":["manageAuthority"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.action","typeLabel":"enum\u003cstring>"},"accounts":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id the account is authorized on","example":"eip155:8453","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.accounts.items.[INDEX].chainId","typeLabel":"string"},"address":{"type":"string","minLength":1,"description":"Account address, in its own chain's format","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.accounts.items.[INDEX].address","typeLabel":"string"}},"required":["chainId","address"],"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.accounts.items.[INDEX]","typeLabel":"object"},"description":"The Swig state account whose authorities change, on its chain","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.accounts","typeLabel":"object[]"},"authority":{"type":"object","properties":{"action":{"type":"string","enum":["add","remove"],"description":"Whether the authority is added or removed","example":"add","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.action","typeLabel":"enum\u003cstring>"},"key":{"oneOf":[{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256r1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed P-256 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03","example":"0x036b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.0.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.0","typeLabel":"object"},{"type":"object","description":"The passkey or secp256k1 key added or removed","required":["kind","publicKey"],"properties":{"kind":{"type":"string","enum":["secp256k1"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"publicKey":{"type":"string","pattern":"^0x0[23][0-9a-fA-F]{64}$","description":"SEC1-compressed secp256k1 public key: 33 bytes as 0x-prefixed hex, leading byte 02 or 03. Not an EVM address.","example":"0x0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.1.publicKey","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.key.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.key","typeLabel":"object"},"roleId":{"type":"integer","minimum":0,"description":"The Swig role id the added authority gets, or the id of the role removed","example":3,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.roleId","typeLabel":"integer"},"rent":{"type":"object","properties":{"amount":{"type":"string","format":"uint256","description":"Lamports of rent: locked in the Swig state account on an add, which the sponsor funds, or returned to the Swig wallet on a removal","example":"325120","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.rent.amount","typeLabel":"string\u003cuint256>"},"usd":{"type":"number","description":"The rent in USD","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.rent.usd","typeLabel":"number"}},"required":["amount","usd"],"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.rent","typeLabel":"object"},"permission":{"type":"string","enum":["all","allButManageAuthority","manageAuthority"],"description":"The added authority's permission, as requested and installed. Absent on a removal.","example":"allButManageAuthority","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority.permission","typeLabel":"enum\u003cstring>"}},"required":["action","key","roleId","rent"],"additionalProperties":false,"description":"The change this signature authorizes, exactly as the plan discloses it","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.authority","typeLabel":"object"},"instructions":{"type":"array","items":{"type":"object","properties":{"programId":{"type":"string","description":"Program to invoke, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].programId","typeLabel":"string"},"accounts":{"type":"array","items":{"type":"object","properties":{"pubkey":{"type":"string","description":"Account address, base58.","example":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].accounts.items.[INDEX].pubkey","typeLabel":"string"},"isSigner":{"type":"boolean","description":"Whether the instruction requires this account to sign.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].accounts.items.[INDEX].isSigner","typeLabel":"boolean"},"isWritable":{"type":"boolean","description":"Whether the instruction writes to this account.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].accounts.items.[INDEX].isWritable","typeLabel":"boolean"}},"required":["pubkey","isSigner","isWritable"],"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].accounts.items.[INDEX]","typeLabel":"object"},"maxItems":64,"description":"Accounts the instruction reads or writes, in the order the program expects.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].accounts","typeLabel":"object[]"},"data":{"type":"string","description":"Instruction data, base64.","example":"CQ==","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX].data","typeLabel":"string"}},"required":["programId","accounts","data"],"description":"A Solana instruction in the JSON shape `@solana/web3.js` and Jupiter `/swap-instructions` produce, so protocol output passes through unchanged.","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.instructions.items.[INDEX]","typeLabel":"object"},"description":"The sealed instructions this signature authorizes, in execution order: a passkey signer's secp256r1 precompile, then the Swig `AddAuthorityV1` or `RemoveAuthorityV1`, whose payer is a one-off key the relayer funds.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.instructions","typeLabel":"object[]"},"feePayer":{"type":"object","properties":{"kind":{"type":"string","enum":["role"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.feePayer.kind","typeLabel":"enum\u003cstring>"},"role":{"type":"string","enum":["relayer"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.feePayer.role","typeLabel":"enum\u003cstring>"}},"required":["kind","role"],"additionalProperties":false,"description":"Who pays the transaction fee, as a role rather than a key: the payload names no payer, and the relayer picks its own.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.feePayer","typeLabel":"object"},"slotWindow":{"type":"object","properties":{"from":{"type":"string","description":"Slot the payload was pinned to","example":"370123456","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.slotWindow.from","typeLabel":"string"},"to":{"type":"string","description":"Last slot it can be landed in","example":"370123516","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.slotWindow.to","typeLabel":"string"}},"required":["from","to"],"additionalProperties":false,"description":"Slot range the payload is signable in","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2.slotWindow","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].scope","typeLabel":"object"},"chainIds":{"type":"array","items":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].chainIds.items.[INDEX]","typeLabel":"string"},"description":"The chains the payload is cryptographically BOUND to, CAIP-2, each listed once — a `MultiChainOps` payload with several legs on one chain still names it once. This is what was signed rather than what the route is about: a Permit2 payload binds to the chain it claims funds on, so a destination request repeats the chain of the origin payload it duplicates.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].chainIds","typeLabel":"string[]"},"purpose":{"type":"string","enum":["originAuthorization","destinationAuthorization","targetExecutionAuthorization","delegationAuthorization"],"description":"What the signature is for","example":"originAuthorization","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].purpose","typeLabel":"enum\u003cstring>"},"validity":{"type":"array","items":{"oneOf":[{"type":"object","description":"A native deadline the payload is bound by. Every constraint returned applies; an empty list means the payload carries none of its own.","required":["kind","expiresAt"],"properties":{"kind":{"type":"string","enum":["timestamp"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.0.kind","typeLabel":"enum\u003cstring>"},"expiresAt":{"type":"integer","minimum":0,"description":"Unix seconds after which the payload is dead","example":1733493192,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.0.expiresAt","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","description":"A native deadline the payload is bound by. Every constraint returned applies; an empty list means the payload carries none of its own.","required":["kind","chainId","expiresAtSlot"],"properties":{"kind":{"type":"string","enum":["svmSlot"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.1.kind","typeLabel":"enum\u003cstring>"},"chainId":{"type":"string","pattern":"^(eip155|solana|tron|hypercore|stellar):[-_a-zA-Z0-9]{1,32}$","description":"CAIP-2 chain id whose slots the deadline counts in","example":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.1.chainId","typeLabel":"string"},"expiresAtSlot":{"type":"string","description":"Slot after which the payload is dead","example":"370123516","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.1.expiresAtSlot","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].validity.items.[INDEX].oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].validity.items.[INDEX]","typeLabel":"object"},"description":"Native deadlines that apply to this payload. Empty when it carries none — quote retention is a separate thing and is not a promise that a stale payload is submittable.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].validity","typeLabel":"object[]"},"payload":{"oneOf":[{"type":"object","description":"The native payload to sign","required":["kind","typedData","signatureFormat"],"properties":{"kind":{"type":"string","enum":["eip712"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"typedData":{"type":"object","properties":{"domain":{"type":"object","properties":{"name":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain.name","typeLabel":"string"},"version":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain.version","typeLabel":"string"},"chainId":{"type":"number","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain.chainId","typeLabel":"number"},"verifyingContract":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain.verifyingContract","typeLabel":"string"},"salt":{"type":"string","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain.salt","typeLabel":"string"}},"description":"EIP-712 domain separator fields","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.domain","typeLabel":"object"},"types":{"type":"object","additionalProperties":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.types.additionalProperties.items.[INDEX].name","typeLabel":"string"},"type":{"type":"string","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.types.additionalProperties.items.[INDEX].type","typeLabel":"string"}},"required":["name","type"],"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.types.additionalProperties.items.[INDEX]","typeLabel":"object"},"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.types.additionalProperties","typeLabel":"object[]"},"description":"EIP-712 type definitions keyed by type name","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.types","typeLabel":"object"},"primaryType":{"type":"string","description":"Name of the top-level type to sign","example":"PermitBatchWitnessTransferFrom","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.primaryType","typeLabel":"string"},"message":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.message.additionalProperties","typeLabel":"any"},"description":"Message values keyed by field name. uint256 fields are encoded as decimal strings on the wire and re-coerced to bigint client-side before signing.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData.message","typeLabel":"object"}},"required":["domain","types","primaryType","message"],"description":"EIP-712 typed data definition ready for `signTypedData`","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.typedData","typeLabel":"object"},"signatureFormat":{"type":"string","enum":["secp256k1","account"],"description":"How the proof is encoded: raw 65-byte ECDSA for an EOA, or the account-native encoding for an ERC-7579 account, on which no length rule is imposed.","example":"secp256k1","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0.signatureFormat","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.0","typeLabel":"object"},{"type":"object","description":"The native payload to sign","required":["kind","message"],"properties":{"kind":{"type":"string","enum":["personalSign"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"message":{"type":"object","properties":{"encoding":{"type":"string","enum":["utf8"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.1.message.encoding","typeLabel":"enum\u003cstring>"},"value":{"type":"string","description":"Sign these characters as UTF-8 TEXT — viem `signMessage({ message })`, never `{ raw }`. Signing the decoded bytes yields a well-formed signature the chain rejects.","example":"a3f2c1d4e5b6a7980f1e2d3c4b5a69788796a5b4c3d2e1f0a1b2c3d4e5f60718","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.1.message.value","typeLabel":"string"}},"required":["encoding","value"],"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.1.message","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.1","typeLabel":"object"},{"type":"object","description":"The native payload to sign","required":["kind","authorization"],"properties":{"kind":{"type":"string","enum":["eip7702"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"authorization":{"type":"object","properties":{"chainId":{"type":"integer","minimum":0,"description":"Native chain value of the authorization tuple, not CAIP-2","example":8453,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.2.authorization.chainId","typeLabel":"integer"},"address":{"type":"string","description":"Delegate contract the authorization installs","example":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.2.authorization.address","typeLabel":"string"}},"required":["chainId","address"],"additionalProperties":false,"description":"The delegation to authorize. Carries no nonce: the orchestrator observes no EOA nonces, and one read at quote time is stale by signing time — the signer supplies it with the proof.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.2.authorization","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.2","typeLabel":"object"},{"type":"object","description":"The native payload to sign","required":["kind","challenge"],"properties":{"kind":{"type":"string","enum":["webauthn"],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"challenge":{"type":"string","pattern":"^0x[0-9a-fA-F]{64}$","description":"Challenge the authenticator signs: 32 bytes as 0x-prefixed hex. Pass the decoded bytes as the WebAuthn `challenge`, not the hex text.","example":"0xa3f2c1d4e5b6a7980f1e2d3c4b5a69788796a5b4c3d2e1f0a1b2c3d4e5f60718","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.3.challenge","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload.oneOf.3","typeLabel":"object"}],"isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX].payload","typeLabel":"object"}},"required":["account","authority","scope","chainIds","purpose","validity","payload"],"additionalProperties":false,"description":"One payload the caller must sign. Answer request `i` with proof `i`.","uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests.items.[INDEX]","typeLabel":"object"},"maxItems":0,"description":"Always empty: the initialization is sponsored and signed by nobody. Submit with `proofs: []`.","isRequired":true,"uniqueKey":"routes.items.[INDEX].oneOf.1.signingRequests","typeLabel":"object[]"}},"uniqueKey":"routes.items.[INDEX].oneOf.1","typeLabel":"object"}],"uniqueKey":"routes.items.[INDEX]","typeLabel":"object"},"description":"Route candidates ranked by the orchestrator's internal scoring (cheaper + faster wins). The first entry is the recommended route — most clients should submit it without inspecting the rest.","isRequired":true,"uniqueKey":"routes","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":"quoted","routes":[{"intentId":"\u003cstring>","purpose":"execution","expiresAt":1733493192,"estimatedFillTime":{"seconds":3},"settlementLayer":"RELAY","plan":{"source":[{"vm":"evm","chainId":"eip155:8453","account":{"address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","type":"erc7579","deployed":true,"implementation":{"name":"Nexus","version":"v1.0.0"},"delegation":{"contract":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"}},"execution":{"executedBy":{"kind":"account","address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"},"calls":[{"to":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","value":"0","data":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240"}]}}],"destination":{"vm":"evm","chainId":"eip155:8453","account":{"address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","type":"erc7579","deployed":true,"implementation":{"name":"Nexus","version":"v1.0.0"},"delegation":{"contract":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"}},"execution":{"executedBy":{"kind":"account","address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"},"calls":[{"to":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","value":"0","data":"0xa9059cbb000000000000000000000000579d5631f76126991c00fb8fe5467fa9d49e5f6a00000000000000000000000000000000000000000000000000000000000f4240"}]}},"deployments":[{"vm":"evm","chainId":"eip155:8453","account":{"address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","type":"erc7579","deployed":true,"implementation":{"name":"Nexus","version":"v1.0.0"},"delegation":{"contract":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"}}}]},"cost":{"input":[{"chainId":"eip155:8453","tokenAddress":"0xaf88d065e77c8cc2239327c5edb3a432268e5831","symbol":"USDC","decimals":6,"price":{"usd":1},"amount":"1050000"}],"output":[{"chainId":"eip155:8453","tokenAddress":"0xaf88d065e77c8cc2239327c5edb3a432268e5831","symbol":"USDC","decimals":6,"price":{"usd":1},"amount":"1050000"}],"fees":{"total":{"usd":0.029},"breakdown":{"gas":{"usd":0.029,"sponsored":false},"bridge":{"usd":0.029,"sponsored":false},"swap":{"usd":0.029,"sponsored":false},"app":{"usd":0.029,"sponsored":false},"protocol":{"usd":0.029,"sponsored":false},"sponsorSurcharge":{"usd":0.029,"sponsored":false}}},"executionPayment":{"paidBy":"wallet","walletDebit":{"chainId":"eip155:8453","tokenAddress":"0xaf88d065e77c8cc2239327c5edb3a432268e5831","symbol":"USDC","decimals":6,"price":{"usd":1},"amount":"1050000"}}},"requirements":[{"kind":"erc20Approval","vm":"evm","chainId":"eip155:8453","account":{"address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a","type":"erc7579","deployed":true,"implementation":{"name":"Nexus","version":"v1.0.0"},"delegation":{"contract":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"}},"tokenAddress":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","amount":"1000000","spender":"0x000000000022d473030f116ddee9f6b43ac78ba3"}],"signingRequests":[{"account":{"vm":"evm","address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"},"authority":{"kind":"secp256k1","address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"},"scope":{"vm":"evm","action":"claim","accounts":[{"chainId":"eip155:8453","address":"0x579d5631f76126991c00fb8fe5467fa9d49e5f6a"}],"hyperCore":[{"nonce":1633493192000,"agent":"\u003cstring>","slot":"rh1","action":{}}]},"chainIds":["\u003cstring>"],"purpose":"originAuthorization","validity":[{"kind":"timestamp","expiresAt":1733493192}],"payload":{"kind":"eip712","typedData":{"domain":{"name":"\u003cstring>","version":"\u003cstring>","chainId":123,"verifyingContract":"\u003cstring>","salt":"\u003cstring>"},"types":{},"primaryType":"PermitBatchWitnessTransferFrom","message":{}},"signatureFormat":"secp256k1"}}],"bridgeFill":{"destinationChainId":"eip155:8453","fillStatusTimeout":1,"type":"OFT","fillExpirationPeriod":1}}]}}},"exampleType":"generated"}},"exampleType":"generated"},"199bac97-5924-4ced-aac4-a136b8e22723":{"description":"Invalid request parameters","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["VALIDATION_ERROR"],"isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.0.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable issue description","isRequired":true,"uniqueKey":"oneOf.0.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.0.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured issue context (e.g. `{ path: \"destination.chainId\" }`)","uniqueKey":"oneOf.0.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.0.details.items.[INDEX]","typeLabel":"object"},"description":"Per-field validation issues","uniqueKey":"oneOf.0.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["SIMULATION_FAILED"],"isRequired":true,"uniqueKey":"oneOf.1.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.1.message","typeLabel":"string"},"details":{"type":"object","properties":{"category":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.category","typeLabel":"string"},"errorSelector":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorSelector","typeLabel":"string"},"errorName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorName","typeLabel":"string"},"retryable":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.1.details.retryable","typeLabel":"boolean"},"nonce":{"type":"string","uniqueKey":"oneOf.1.details.nonce","typeLabel":"string"},"errorArgs":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.1.details.errorArgs.additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.1.details.errorArgs","typeLabel":"object"},"retryHint":{"type":"string","enum":["RE_PREPARE","RETRY_LATER"],"uniqueKey":"oneOf.1.details.retryHint","typeLabel":"enum\u003cstring>"},"simulations":{"oneOf":[{}],"uniqueKey":"oneOf.1.details.simulations","typeLabel":"any"}},"required":["category","errorSelector","errorName","retryable"],"additionalProperties":true,"description":"Classified on-chain simulation failure details","uniqueKey":"oneOf.1.details","typeLabel":"object"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["INSUFFICIENT_LIQUIDITY"],"isRequired":true,"uniqueKey":"oneOf.2.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.2.message","typeLabel":"string"},"details":{"type":"object","properties":{"availableIntents":{"type":"array","items":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX].additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX]","typeLabel":"object"},"description":"Intents fillable with current liquidity","isRequired":true,"uniqueKey":"oneOf.2.details.availableIntents","typeLabel":"object[]"},"unfillable":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.unfillable.additionalProperties","typeLabel":"string"},"description":"Token amounts that cannot be filled","isRequired":true,"uniqueKey":"oneOf.2.details.unfillable","typeLabel":"object"}},"required":["availableIntents","unfillable"],"description":"Fillable subset and unfillable remainder","uniqueKey":"oneOf.2.details","typeLabel":"object"}},"uniqueKey":"oneOf.2","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["KEY_SCOPE_DENIED"],"isRequired":true,"uniqueKey":"oneOf.3.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.3.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","properties":{"scope":{"type":"string","enum":["allowMainnet","intents","deposits"],"description":"Which scope rejected the request","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.scope","typeLabel":"enum\u003cstring>"},"required":{"oneOf":[{"type":"boolean","description":"Minimum level the endpoint demands","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Minimum level the endpoint demands","enum":["read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required","typeLabel":"boolean | enum\u003cstring>"},"actual":{"oneOf":[{"type":"boolean","description":"Level resolved on the key","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Level resolved on the key","enum":["none","read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual","typeLabel":"boolean | enum\u003cstring>"}},"required":["scope","required","actual"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context","typeLabel":"object"}},"required":["message","context"],"uniqueKey":"oneOf.3.details.items.[INDEX]","typeLabel":"object"},"description":"Single-element list describing the failing scope","uniqueKey":"oneOf.3.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.3","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NOT_FOUND","UNAUTHORIZED","FORBIDDEN","SPONSORSHIP_BINDING_MISMATCH","SPONSORSHIP_BINDING_UNSUPPORTED","QUOTE_AUTHORIZATION_MISSING","QUOTE_OWNER_MISMATCH","QUOTE_AUTHORIZATION_EXPIRED","SPONSORSHIP_AUTHORIZATION_USED","CONFLICT","WITHDRAWAL_IN_PROGRESS","UNPROCESSABLE_CONTENT","TOO_MANY_REQUESTS","SETTLEMENT_QUOTE_ERROR","SETTLEMENT_EXECUTION_ERROR","EXTERNAL_SERVICE_TIMEOUT","RELAYER_MARKET_UNAVAILABLE","SERVICE_PAUSED","INTERNAL_ERROR"],"description":"Machine-readable error code","isRequired":true,"uniqueKey":"oneOf.4.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.4.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Error message","isRequired":true,"uniqueKey":"oneOf.4.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.4.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured context. A planning refusal names its reason in `context.code` (e.g. `NO_PLAN_AVAILABLE`).","uniqueKey":"oneOf.4.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.4.details.items.[INDEX]","typeLabel":"object"},"description":"The error and its structured context","uniqueKey":"oneOf.4.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.4","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"Invalid input","details":[{"message":"\u003cstring>","context":{}}]}}},"exampleType":"generated"}},"exampleType":"generated"},"c5c06e70-66e9-4257-9533-9a0973af168f":{"description":"The credential carries no platform token","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["VALIDATION_ERROR"],"isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.0.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable issue description","isRequired":true,"uniqueKey":"oneOf.0.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.0.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured issue context (e.g. `{ path: \"destination.chainId\" }`)","uniqueKey":"oneOf.0.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.0.details.items.[INDEX]","typeLabel":"object"},"description":"Per-field validation issues","uniqueKey":"oneOf.0.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["SIMULATION_FAILED"],"isRequired":true,"uniqueKey":"oneOf.1.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.1.message","typeLabel":"string"},"details":{"type":"object","properties":{"category":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.category","typeLabel":"string"},"errorSelector":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorSelector","typeLabel":"string"},"errorName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorName","typeLabel":"string"},"retryable":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.1.details.retryable","typeLabel":"boolean"},"nonce":{"type":"string","uniqueKey":"oneOf.1.details.nonce","typeLabel":"string"},"errorArgs":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.1.details.errorArgs.additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.1.details.errorArgs","typeLabel":"object"},"retryHint":{"type":"string","enum":["RE_PREPARE","RETRY_LATER"],"uniqueKey":"oneOf.1.details.retryHint","typeLabel":"enum\u003cstring>"},"simulations":{"oneOf":[{}],"uniqueKey":"oneOf.1.details.simulations","typeLabel":"any"}},"required":["category","errorSelector","errorName","retryable"],"additionalProperties":true,"description":"Classified on-chain simulation failure details","uniqueKey":"oneOf.1.details","typeLabel":"object"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["INSUFFICIENT_LIQUIDITY"],"isRequired":true,"uniqueKey":"oneOf.2.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.2.message","typeLabel":"string"},"details":{"type":"object","properties":{"availableIntents":{"type":"array","items":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX].additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX]","typeLabel":"object"},"description":"Intents fillable with current liquidity","isRequired":true,"uniqueKey":"oneOf.2.details.availableIntents","typeLabel":"object[]"},"unfillable":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.unfillable.additionalProperties","typeLabel":"string"},"description":"Token amounts that cannot be filled","isRequired":true,"uniqueKey":"oneOf.2.details.unfillable","typeLabel":"object"}},"required":["availableIntents","unfillable"],"description":"Fillable subset and unfillable remainder","uniqueKey":"oneOf.2.details","typeLabel":"object"}},"uniqueKey":"oneOf.2","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["KEY_SCOPE_DENIED"],"isRequired":true,"uniqueKey":"oneOf.3.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.3.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","properties":{"scope":{"type":"string","enum":["allowMainnet","intents","deposits"],"description":"Which scope rejected the request","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.scope","typeLabel":"enum\u003cstring>"},"required":{"oneOf":[{"type":"boolean","description":"Minimum level the endpoint demands","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Minimum level the endpoint demands","enum":["read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required","typeLabel":"boolean | enum\u003cstring>"},"actual":{"oneOf":[{"type":"boolean","description":"Level resolved on the key","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Level resolved on the key","enum":["none","read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual","typeLabel":"boolean | enum\u003cstring>"}},"required":["scope","required","actual"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context","typeLabel":"object"}},"required":["message","context"],"uniqueKey":"oneOf.3.details.items.[INDEX]","typeLabel":"object"},"description":"Single-element list describing the failing scope","uniqueKey":"oneOf.3.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.3","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NOT_FOUND","UNAUTHORIZED","FORBIDDEN","SPONSORSHIP_BINDING_MISMATCH","SPONSORSHIP_BINDING_UNSUPPORTED","QUOTE_AUTHORIZATION_MISSING","QUOTE_OWNER_MISMATCH","QUOTE_AUTHORIZATION_EXPIRED","SPONSORSHIP_AUTHORIZATION_USED","CONFLICT","WITHDRAWAL_IN_PROGRESS","UNPROCESSABLE_CONTENT","TOO_MANY_REQUESTS","SETTLEMENT_QUOTE_ERROR","SETTLEMENT_EXECUTION_ERROR","EXTERNAL_SERVICE_TIMEOUT","RELAYER_MARKET_UNAVAILABLE","SERVICE_PAUSED","INTERNAL_ERROR"],"description":"Machine-readable error code","isRequired":true,"uniqueKey":"oneOf.4.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.4.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Error message","isRequired":true,"uniqueKey":"oneOf.4.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.4.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured context. A planning refusal names its reason in `context.code` (e.g. `NO_PLAN_AVAILABLE`).","uniqueKey":"oneOf.4.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.4.details.items.[INDEX]","typeLabel":"object"},"description":"The error and its structured context","uniqueKey":"oneOf.4.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.4","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"Invalid input","details":[{"message":"\u003cstring>","context":{}}]}}},"exampleType":"generated"}},"exampleType":"generated"},"e074af44-ea06-4be1-871a-dbeccb2cbeea":{"description":"API key scope denied","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["VALIDATION_ERROR"],"isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.0.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable issue description","isRequired":true,"uniqueKey":"oneOf.0.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.0.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured issue context (e.g. `{ path: \"destination.chainId\" }`)","uniqueKey":"oneOf.0.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.0.details.items.[INDEX]","typeLabel":"object"},"description":"Per-field validation issues","uniqueKey":"oneOf.0.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["SIMULATION_FAILED"],"isRequired":true,"uniqueKey":"oneOf.1.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.1.message","typeLabel":"string"},"details":{"type":"object","properties":{"category":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.category","typeLabel":"string"},"errorSelector":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorSelector","typeLabel":"string"},"errorName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorName","typeLabel":"string"},"retryable":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.1.details.retryable","typeLabel":"boolean"},"nonce":{"type":"string","uniqueKey":"oneOf.1.details.nonce","typeLabel":"string"},"errorArgs":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.1.details.errorArgs.additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.1.details.errorArgs","typeLabel":"object"},"retryHint":{"type":"string","enum":["RE_PREPARE","RETRY_LATER"],"uniqueKey":"oneOf.1.details.retryHint","typeLabel":"enum\u003cstring>"},"simulations":{"oneOf":[{}],"uniqueKey":"oneOf.1.details.simulations","typeLabel":"any"}},"required":["category","errorSelector","errorName","retryable"],"additionalProperties":true,"description":"Classified on-chain simulation failure details","uniqueKey":"oneOf.1.details","typeLabel":"object"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["INSUFFICIENT_LIQUIDITY"],"isRequired":true,"uniqueKey":"oneOf.2.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.2.message","typeLabel":"string"},"details":{"type":"object","properties":{"availableIntents":{"type":"array","items":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX].additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX]","typeLabel":"object"},"description":"Intents fillable with current liquidity","isRequired":true,"uniqueKey":"oneOf.2.details.availableIntents","typeLabel":"object[]"},"unfillable":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.unfillable.additionalProperties","typeLabel":"string"},"description":"Token amounts that cannot be filled","isRequired":true,"uniqueKey":"oneOf.2.details.unfillable","typeLabel":"object"}},"required":["availableIntents","unfillable"],"description":"Fillable subset and unfillable remainder","uniqueKey":"oneOf.2.details","typeLabel":"object"}},"uniqueKey":"oneOf.2","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["KEY_SCOPE_DENIED"],"isRequired":true,"uniqueKey":"oneOf.3.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.3.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","properties":{"scope":{"type":"string","enum":["allowMainnet","intents","deposits"],"description":"Which scope rejected the request","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.scope","typeLabel":"enum\u003cstring>"},"required":{"oneOf":[{"type":"boolean","description":"Minimum level the endpoint demands","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Minimum level the endpoint demands","enum":["read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required","typeLabel":"boolean | enum\u003cstring>"},"actual":{"oneOf":[{"type":"boolean","description":"Level resolved on the key","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Level resolved on the key","enum":["none","read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual","typeLabel":"boolean | enum\u003cstring>"}},"required":["scope","required","actual"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context","typeLabel":"object"}},"required":["message","context"],"uniqueKey":"oneOf.3.details.items.[INDEX]","typeLabel":"object"},"description":"Single-element list describing the failing scope","uniqueKey":"oneOf.3.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.3","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NOT_FOUND","UNAUTHORIZED","FORBIDDEN","SPONSORSHIP_BINDING_MISMATCH","SPONSORSHIP_BINDING_UNSUPPORTED","QUOTE_AUTHORIZATION_MISSING","QUOTE_OWNER_MISMATCH","QUOTE_AUTHORIZATION_EXPIRED","SPONSORSHIP_AUTHORIZATION_USED","CONFLICT","WITHDRAWAL_IN_PROGRESS","UNPROCESSABLE_CONTENT","TOO_MANY_REQUESTS","SETTLEMENT_QUOTE_ERROR","SETTLEMENT_EXECUTION_ERROR","EXTERNAL_SERVICE_TIMEOUT","RELAYER_MARKET_UNAVAILABLE","SERVICE_PAUSED","INTERNAL_ERROR"],"description":"Machine-readable error code","isRequired":true,"uniqueKey":"oneOf.4.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.4.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Error message","isRequired":true,"uniqueKey":"oneOf.4.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.4.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured context. A planning refusal names its reason in `context.code` (e.g. `NO_PLAN_AVAILABLE`).","uniqueKey":"oneOf.4.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.4.details.items.[INDEX]","typeLabel":"object"},"description":"The error and its structured context","uniqueKey":"oneOf.4.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.4","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"Invalid input","details":[{"message":"\u003cstring>","context":{}}]}}},"exampleType":"generated"}},"exampleType":"generated"},"c1d873f7-3312-4eba-bdf5-19dec82bb0a2":{"description":"The sponsor of the requested sponsorship has no record","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["VALIDATION_ERROR"],"isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.0.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable issue description","isRequired":true,"uniqueKey":"oneOf.0.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.0.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured issue context (e.g. `{ path: \"destination.chainId\" }`)","uniqueKey":"oneOf.0.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.0.details.items.[INDEX]","typeLabel":"object"},"description":"Per-field validation issues","uniqueKey":"oneOf.0.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["SIMULATION_FAILED"],"isRequired":true,"uniqueKey":"oneOf.1.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.1.message","typeLabel":"string"},"details":{"type":"object","properties":{"category":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.category","typeLabel":"string"},"errorSelector":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorSelector","typeLabel":"string"},"errorName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorName","typeLabel":"string"},"retryable":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.1.details.retryable","typeLabel":"boolean"},"nonce":{"type":"string","uniqueKey":"oneOf.1.details.nonce","typeLabel":"string"},"errorArgs":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.1.details.errorArgs.additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.1.details.errorArgs","typeLabel":"object"},"retryHint":{"type":"string","enum":["RE_PREPARE","RETRY_LATER"],"uniqueKey":"oneOf.1.details.retryHint","typeLabel":"enum\u003cstring>"},"simulations":{"oneOf":[{}],"uniqueKey":"oneOf.1.details.simulations","typeLabel":"any"}},"required":["category","errorSelector","errorName","retryable"],"additionalProperties":true,"description":"Classified on-chain simulation failure details","uniqueKey":"oneOf.1.details","typeLabel":"object"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["INSUFFICIENT_LIQUIDITY"],"isRequired":true,"uniqueKey":"oneOf.2.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.2.message","typeLabel":"string"},"details":{"type":"object","properties":{"availableIntents":{"type":"array","items":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX].additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX]","typeLabel":"object"},"description":"Intents fillable with current liquidity","isRequired":true,"uniqueKey":"oneOf.2.details.availableIntents","typeLabel":"object[]"},"unfillable":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.unfillable.additionalProperties","typeLabel":"string"},"description":"Token amounts that cannot be filled","isRequired":true,"uniqueKey":"oneOf.2.details.unfillable","typeLabel":"object"}},"required":["availableIntents","unfillable"],"description":"Fillable subset and unfillable remainder","uniqueKey":"oneOf.2.details","typeLabel":"object"}},"uniqueKey":"oneOf.2","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["KEY_SCOPE_DENIED"],"isRequired":true,"uniqueKey":"oneOf.3.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.3.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","properties":{"scope":{"type":"string","enum":["allowMainnet","intents","deposits"],"description":"Which scope rejected the request","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.scope","typeLabel":"enum\u003cstring>"},"required":{"oneOf":[{"type":"boolean","description":"Minimum level the endpoint demands","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Minimum level the endpoint demands","enum":["read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required","typeLabel":"boolean | enum\u003cstring>"},"actual":{"oneOf":[{"type":"boolean","description":"Level resolved on the key","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Level resolved on the key","enum":["none","read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual","typeLabel":"boolean | enum\u003cstring>"}},"required":["scope","required","actual"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context","typeLabel":"object"}},"required":["message","context"],"uniqueKey":"oneOf.3.details.items.[INDEX]","typeLabel":"object"},"description":"Single-element list describing the failing scope","uniqueKey":"oneOf.3.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.3","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NOT_FOUND","UNAUTHORIZED","FORBIDDEN","SPONSORSHIP_BINDING_MISMATCH","SPONSORSHIP_BINDING_UNSUPPORTED","QUOTE_AUTHORIZATION_MISSING","QUOTE_OWNER_MISMATCH","QUOTE_AUTHORIZATION_EXPIRED","SPONSORSHIP_AUTHORIZATION_USED","CONFLICT","WITHDRAWAL_IN_PROGRESS","UNPROCESSABLE_CONTENT","TOO_MANY_REQUESTS","SETTLEMENT_QUOTE_ERROR","SETTLEMENT_EXECUTION_ERROR","EXTERNAL_SERVICE_TIMEOUT","RELAYER_MARKET_UNAVAILABLE","SERVICE_PAUSED","INTERNAL_ERROR"],"description":"Machine-readable error code","isRequired":true,"uniqueKey":"oneOf.4.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.4.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Error message","isRequired":true,"uniqueKey":"oneOf.4.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.4.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured context. A planning refusal names its reason in `context.code` (e.g. `NO_PLAN_AVAILABLE`).","uniqueKey":"oneOf.4.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.4.details.items.[INDEX]","typeLabel":"object"},"description":"The error and its structured context","uniqueKey":"oneOf.4.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.4","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"Invalid input","details":[{"message":"\u003cstring>","context":{}}]}}},"exampleType":"generated"}},"exampleType":"generated"},"abada396-f0d3-4f7c-81fc-9ae70d53277f":{"description":"No route can serve the request. `details[0].context.code` names the reason.","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["VALIDATION_ERROR"],"isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.0.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable issue description","isRequired":true,"uniqueKey":"oneOf.0.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.0.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured issue context (e.g. `{ path: \"destination.chainId\" }`)","uniqueKey":"oneOf.0.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.0.details.items.[INDEX]","typeLabel":"object"},"description":"Per-field validation issues","uniqueKey":"oneOf.0.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["SIMULATION_FAILED"],"isRequired":true,"uniqueKey":"oneOf.1.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.1.message","typeLabel":"string"},"details":{"type":"object","properties":{"category":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.category","typeLabel":"string"},"errorSelector":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorSelector","typeLabel":"string"},"errorName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorName","typeLabel":"string"},"retryable":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.1.details.retryable","typeLabel":"boolean"},"nonce":{"type":"string","uniqueKey":"oneOf.1.details.nonce","typeLabel":"string"},"errorArgs":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.1.details.errorArgs.additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.1.details.errorArgs","typeLabel":"object"},"retryHint":{"type":"string","enum":["RE_PREPARE","RETRY_LATER"],"uniqueKey":"oneOf.1.details.retryHint","typeLabel":"enum\u003cstring>"},"simulations":{"oneOf":[{}],"uniqueKey":"oneOf.1.details.simulations","typeLabel":"any"}},"required":["category","errorSelector","errorName","retryable"],"additionalProperties":true,"description":"Classified on-chain simulation failure details","uniqueKey":"oneOf.1.details","typeLabel":"object"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["INSUFFICIENT_LIQUIDITY"],"isRequired":true,"uniqueKey":"oneOf.2.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.2.message","typeLabel":"string"},"details":{"type":"object","properties":{"availableIntents":{"type":"array","items":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX].additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX]","typeLabel":"object"},"description":"Intents fillable with current liquidity","isRequired":true,"uniqueKey":"oneOf.2.details.availableIntents","typeLabel":"object[]"},"unfillable":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.unfillable.additionalProperties","typeLabel":"string"},"description":"Token amounts that cannot be filled","isRequired":true,"uniqueKey":"oneOf.2.details.unfillable","typeLabel":"object"}},"required":["availableIntents","unfillable"],"description":"Fillable subset and unfillable remainder","uniqueKey":"oneOf.2.details","typeLabel":"object"}},"uniqueKey":"oneOf.2","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["KEY_SCOPE_DENIED"],"isRequired":true,"uniqueKey":"oneOf.3.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.3.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","properties":{"scope":{"type":"string","enum":["allowMainnet","intents","deposits"],"description":"Which scope rejected the request","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.scope","typeLabel":"enum\u003cstring>"},"required":{"oneOf":[{"type":"boolean","description":"Minimum level the endpoint demands","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Minimum level the endpoint demands","enum":["read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required","typeLabel":"boolean | enum\u003cstring>"},"actual":{"oneOf":[{"type":"boolean","description":"Level resolved on the key","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Level resolved on the key","enum":["none","read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual","typeLabel":"boolean | enum\u003cstring>"}},"required":["scope","required","actual"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context","typeLabel":"object"}},"required":["message","context"],"uniqueKey":"oneOf.3.details.items.[INDEX]","typeLabel":"object"},"description":"Single-element list describing the failing scope","uniqueKey":"oneOf.3.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.3","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NOT_FOUND","UNAUTHORIZED","FORBIDDEN","SPONSORSHIP_BINDING_MISMATCH","SPONSORSHIP_BINDING_UNSUPPORTED","QUOTE_AUTHORIZATION_MISSING","QUOTE_OWNER_MISMATCH","QUOTE_AUTHORIZATION_EXPIRED","SPONSORSHIP_AUTHORIZATION_USED","CONFLICT","WITHDRAWAL_IN_PROGRESS","UNPROCESSABLE_CONTENT","TOO_MANY_REQUESTS","SETTLEMENT_QUOTE_ERROR","SETTLEMENT_EXECUTION_ERROR","EXTERNAL_SERVICE_TIMEOUT","RELAYER_MARKET_UNAVAILABLE","SERVICE_PAUSED","INTERNAL_ERROR"],"description":"Machine-readable error code","isRequired":true,"uniqueKey":"oneOf.4.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.4.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Error message","isRequired":true,"uniqueKey":"oneOf.4.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.4.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured context. A planning refusal names its reason in `context.code` (e.g. `NO_PLAN_AVAILABLE`).","uniqueKey":"oneOf.4.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.4.details.items.[INDEX]","typeLabel":"object"},"description":"The error and its structured context","uniqueKey":"oneOf.4.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.4","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"Invalid input","details":[{"message":"\u003cstring>","context":{}}]}}},"exampleType":"generated"}},"exampleType":"generated"},"e492e23b-6716-473b-92c2-db8f174b7344":{"description":"Server error","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["VALIDATION_ERROR"],"isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.0.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable issue description","isRequired":true,"uniqueKey":"oneOf.0.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.0.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured issue context (e.g. `{ path: \"destination.chainId\" }`)","uniqueKey":"oneOf.0.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.0.details.items.[INDEX]","typeLabel":"object"},"description":"Per-field validation issues","uniqueKey":"oneOf.0.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["SIMULATION_FAILED"],"isRequired":true,"uniqueKey":"oneOf.1.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.1.message","typeLabel":"string"},"details":{"type":"object","properties":{"category":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.category","typeLabel":"string"},"errorSelector":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorSelector","typeLabel":"string"},"errorName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorName","typeLabel":"string"},"retryable":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.1.details.retryable","typeLabel":"boolean"},"nonce":{"type":"string","uniqueKey":"oneOf.1.details.nonce","typeLabel":"string"},"errorArgs":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.1.details.errorArgs.additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.1.details.errorArgs","typeLabel":"object"},"retryHint":{"type":"string","enum":["RE_PREPARE","RETRY_LATER"],"uniqueKey":"oneOf.1.details.retryHint","typeLabel":"enum\u003cstring>"},"simulations":{"oneOf":[{}],"uniqueKey":"oneOf.1.details.simulations","typeLabel":"any"}},"required":["category","errorSelector","errorName","retryable"],"additionalProperties":true,"description":"Classified on-chain simulation failure details","uniqueKey":"oneOf.1.details","typeLabel":"object"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["INSUFFICIENT_LIQUIDITY"],"isRequired":true,"uniqueKey":"oneOf.2.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.2.message","typeLabel":"string"},"details":{"type":"object","properties":{"availableIntents":{"type":"array","items":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX].additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX]","typeLabel":"object"},"description":"Intents fillable with current liquidity","isRequired":true,"uniqueKey":"oneOf.2.details.availableIntents","typeLabel":"object[]"},"unfillable":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.unfillable.additionalProperties","typeLabel":"string"},"description":"Token amounts that cannot be filled","isRequired":true,"uniqueKey":"oneOf.2.details.unfillable","typeLabel":"object"}},"required":["availableIntents","unfillable"],"description":"Fillable subset and unfillable remainder","uniqueKey":"oneOf.2.details","typeLabel":"object"}},"uniqueKey":"oneOf.2","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["KEY_SCOPE_DENIED"],"isRequired":true,"uniqueKey":"oneOf.3.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.3.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","properties":{"scope":{"type":"string","enum":["allowMainnet","intents","deposits"],"description":"Which scope rejected the request","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.scope","typeLabel":"enum\u003cstring>"},"required":{"oneOf":[{"type":"boolean","description":"Minimum level the endpoint demands","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Minimum level the endpoint demands","enum":["read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required","typeLabel":"boolean | enum\u003cstring>"},"actual":{"oneOf":[{"type":"boolean","description":"Level resolved on the key","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Level resolved on the key","enum":["none","read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual","typeLabel":"boolean | enum\u003cstring>"}},"required":["scope","required","actual"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context","typeLabel":"object"}},"required":["message","context"],"uniqueKey":"oneOf.3.details.items.[INDEX]","typeLabel":"object"},"description":"Single-element list describing the failing scope","uniqueKey":"oneOf.3.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.3","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NOT_FOUND","UNAUTHORIZED","FORBIDDEN","SPONSORSHIP_BINDING_MISMATCH","SPONSORSHIP_BINDING_UNSUPPORTED","QUOTE_AUTHORIZATION_MISSING","QUOTE_OWNER_MISMATCH","QUOTE_AUTHORIZATION_EXPIRED","SPONSORSHIP_AUTHORIZATION_USED","CONFLICT","WITHDRAWAL_IN_PROGRESS","UNPROCESSABLE_CONTENT","TOO_MANY_REQUESTS","SETTLEMENT_QUOTE_ERROR","SETTLEMENT_EXECUTION_ERROR","EXTERNAL_SERVICE_TIMEOUT","RELAYER_MARKET_UNAVAILABLE","SERVICE_PAUSED","INTERNAL_ERROR"],"description":"Machine-readable error code","isRequired":true,"uniqueKey":"oneOf.4.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.4.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Error message","isRequired":true,"uniqueKey":"oneOf.4.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.4.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured context. A planning refusal names its reason in `context.code` (e.g. `NO_PLAN_AVAILABLE`).","uniqueKey":"oneOf.4.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.4.details.items.[INDEX]","typeLabel":"object"},"description":"The error and its structured context","uniqueKey":"oneOf.4.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.4","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"Invalid input","details":[{"message":"\u003cstring>","context":{}}]}}},"exampleType":"generated"}},"exampleType":"generated"},"73ab5642-10c6-4e1e-b2d2-605d981b1708":{"description":"Quoting is paused","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["VALIDATION_ERROR"],"isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.0.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable issue description","isRequired":true,"uniqueKey":"oneOf.0.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.0.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured issue context (e.g. `{ path: \"destination.chainId\" }`)","uniqueKey":"oneOf.0.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.0.details.items.[INDEX]","typeLabel":"object"},"description":"Per-field validation issues","uniqueKey":"oneOf.0.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["SIMULATION_FAILED"],"isRequired":true,"uniqueKey":"oneOf.1.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.1.message","typeLabel":"string"},"details":{"type":"object","properties":{"category":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.category","typeLabel":"string"},"errorSelector":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorSelector","typeLabel":"string"},"errorName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorName","typeLabel":"string"},"retryable":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.1.details.retryable","typeLabel":"boolean"},"nonce":{"type":"string","uniqueKey":"oneOf.1.details.nonce","typeLabel":"string"},"errorArgs":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.1.details.errorArgs.additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.1.details.errorArgs","typeLabel":"object"},"retryHint":{"type":"string","enum":["RE_PREPARE","RETRY_LATER"],"uniqueKey":"oneOf.1.details.retryHint","typeLabel":"enum\u003cstring>"},"simulations":{"oneOf":[{}],"uniqueKey":"oneOf.1.details.simulations","typeLabel":"any"}},"required":["category","errorSelector","errorName","retryable"],"additionalProperties":true,"description":"Classified on-chain simulation failure details","uniqueKey":"oneOf.1.details","typeLabel":"object"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["INSUFFICIENT_LIQUIDITY"],"isRequired":true,"uniqueKey":"oneOf.2.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.2.message","typeLabel":"string"},"details":{"type":"object","properties":{"availableIntents":{"type":"array","items":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX].additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX]","typeLabel":"object"},"description":"Intents fillable with current liquidity","isRequired":true,"uniqueKey":"oneOf.2.details.availableIntents","typeLabel":"object[]"},"unfillable":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.unfillable.additionalProperties","typeLabel":"string"},"description":"Token amounts that cannot be filled","isRequired":true,"uniqueKey":"oneOf.2.details.unfillable","typeLabel":"object"}},"required":["availableIntents","unfillable"],"description":"Fillable subset and unfillable remainder","uniqueKey":"oneOf.2.details","typeLabel":"object"}},"uniqueKey":"oneOf.2","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["KEY_SCOPE_DENIED"],"isRequired":true,"uniqueKey":"oneOf.3.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.3.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","properties":{"scope":{"type":"string","enum":["allowMainnet","intents","deposits"],"description":"Which scope rejected the request","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.scope","typeLabel":"enum\u003cstring>"},"required":{"oneOf":[{"type":"boolean","description":"Minimum level the endpoint demands","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Minimum level the endpoint demands","enum":["read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required","typeLabel":"boolean | enum\u003cstring>"},"actual":{"oneOf":[{"type":"boolean","description":"Level resolved on the key","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Level resolved on the key","enum":["none","read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual","typeLabel":"boolean | enum\u003cstring>"}},"required":["scope","required","actual"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context","typeLabel":"object"}},"required":["message","context"],"uniqueKey":"oneOf.3.details.items.[INDEX]","typeLabel":"object"},"description":"Single-element list describing the failing scope","uniqueKey":"oneOf.3.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.3","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NOT_FOUND","UNAUTHORIZED","FORBIDDEN","SPONSORSHIP_BINDING_MISMATCH","SPONSORSHIP_BINDING_UNSUPPORTED","QUOTE_AUTHORIZATION_MISSING","QUOTE_OWNER_MISMATCH","QUOTE_AUTHORIZATION_EXPIRED","SPONSORSHIP_AUTHORIZATION_USED","CONFLICT","WITHDRAWAL_IN_PROGRESS","UNPROCESSABLE_CONTENT","TOO_MANY_REQUESTS","SETTLEMENT_QUOTE_ERROR","SETTLEMENT_EXECUTION_ERROR","EXTERNAL_SERVICE_TIMEOUT","RELAYER_MARKET_UNAVAILABLE","SERVICE_PAUSED","INTERNAL_ERROR"],"description":"Machine-readable error code","isRequired":true,"uniqueKey":"oneOf.4.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.4.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Error message","isRequired":true,"uniqueKey":"oneOf.4.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.4.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured context. A planning refusal names its reason in `context.code` (e.g. `NO_PLAN_AVAILABLE`).","uniqueKey":"oneOf.4.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.4.details.items.[INDEX]","typeLabel":"object"},"description":"The error and its structured context","uniqueKey":"oneOf.4.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.4","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"Invalid input","details":[{"message":"\u003cstring>","context":{}}]}}},"exampleType":"generated"}},"exampleType":"generated"},"608cfea2-24f4-4de8-842d-f190820b3daa":{"description":"A routing provider timed out","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["VALIDATION_ERROR"],"isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.0.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable issue description","isRequired":true,"uniqueKey":"oneOf.0.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.0.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured issue context (e.g. `{ path: \"destination.chainId\" }`)","uniqueKey":"oneOf.0.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.0.details.items.[INDEX]","typeLabel":"object"},"description":"Per-field validation issues","uniqueKey":"oneOf.0.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["SIMULATION_FAILED"],"isRequired":true,"uniqueKey":"oneOf.1.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.1.message","typeLabel":"string"},"details":{"type":"object","properties":{"category":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.category","typeLabel":"string"},"errorSelector":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorSelector","typeLabel":"string"},"errorName":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.details.errorName","typeLabel":"string"},"retryable":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.1.details.retryable","typeLabel":"boolean"},"nonce":{"type":"string","uniqueKey":"oneOf.1.details.nonce","typeLabel":"string"},"errorArgs":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.1.details.errorArgs.additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.1.details.errorArgs","typeLabel":"object"},"retryHint":{"type":"string","enum":["RE_PREPARE","RETRY_LATER"],"uniqueKey":"oneOf.1.details.retryHint","typeLabel":"enum\u003cstring>"},"simulations":{"oneOf":[{}],"uniqueKey":"oneOf.1.details.simulations","typeLabel":"any"}},"required":["category","errorSelector","errorName","retryable"],"additionalProperties":true,"description":"Classified on-chain simulation failure details","uniqueKey":"oneOf.1.details","typeLabel":"object"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["INSUFFICIENT_LIQUIDITY"],"isRequired":true,"uniqueKey":"oneOf.2.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.2.message","typeLabel":"string"},"details":{"type":"object","properties":{"availableIntents":{"type":"array","items":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX].additionalProperties","typeLabel":"string"},"uniqueKey":"oneOf.2.details.availableIntents.items.[INDEX]","typeLabel":"object"},"description":"Intents fillable with current liquidity","isRequired":true,"uniqueKey":"oneOf.2.details.availableIntents","typeLabel":"object[]"},"unfillable":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.details.unfillable.additionalProperties","typeLabel":"string"},"description":"Token amounts that cannot be filled","isRequired":true,"uniqueKey":"oneOf.2.details.unfillable","typeLabel":"object"}},"required":["availableIntents","unfillable"],"description":"Fillable subset and unfillable remainder","uniqueKey":"oneOf.2.details","typeLabel":"object"}},"uniqueKey":"oneOf.2","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["KEY_SCOPE_DENIED"],"isRequired":true,"uniqueKey":"oneOf.3.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.3.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","properties":{"scope":{"type":"string","enum":["allowMainnet","intents","deposits"],"description":"Which scope rejected the request","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.scope","typeLabel":"enum\u003cstring>"},"required":{"oneOf":[{"type":"boolean","description":"Minimum level the endpoint demands","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Minimum level the endpoint demands","enum":["read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.required","typeLabel":"boolean | enum\u003cstring>"},"actual":{"oneOf":[{"type":"boolean","description":"Level resolved on the key","isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.0","typeLabel":"boolean"},{"type":"string","description":"Level resolved on the key","enum":["none","read","write"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context.actual","typeLabel":"boolean | enum\u003cstring>"}},"required":["scope","required","actual"],"isRequired":true,"uniqueKey":"oneOf.3.details.items.[INDEX].context","typeLabel":"object"}},"required":["message","context"],"uniqueKey":"oneOf.3.details.items.[INDEX]","typeLabel":"object"},"description":"Single-element list describing the failing scope","uniqueKey":"oneOf.3.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.3","typeLabel":"object"},{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NOT_FOUND","UNAUTHORIZED","FORBIDDEN","SPONSORSHIP_BINDING_MISMATCH","SPONSORSHIP_BINDING_UNSUPPORTED","QUOTE_AUTHORIZATION_MISSING","QUOTE_OWNER_MISMATCH","QUOTE_AUTHORIZATION_EXPIRED","SPONSORSHIP_AUTHORIZATION_USED","CONFLICT","WITHDRAWAL_IN_PROGRESS","UNPROCESSABLE_CONTENT","TOO_MANY_REQUESTS","SETTLEMENT_QUOTE_ERROR","SETTLEMENT_EXECUTION_ERROR","EXTERNAL_SERVICE_TIMEOUT","RELAYER_MARKET_UNAVAILABLE","SERVICE_PAUSED","INTERNAL_ERROR"],"description":"Machine-readable error code","isRequired":true,"uniqueKey":"oneOf.4.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","example":"Invalid input","isRequired":true,"uniqueKey":"oneOf.4.message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Error message","isRequired":true,"uniqueKey":"oneOf.4.details.items.[INDEX].message","typeLabel":"string"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.4.details.items.[INDEX].context.additionalProperties","typeLabel":"any"},"description":"Structured context. A planning refusal names its reason in `context.code` (e.g. `NO_PLAN_AVAILABLE`).","uniqueKey":"oneOf.4.details.items.[INDEX].context","typeLabel":"object"}},"required":["message"],"uniqueKey":"oneOf.4.details.items.[INDEX]","typeLabel":"object"},"description":"The error and its structured context","uniqueKey":"oneOf.4.details","typeLabel":"object[]"}},"uniqueKey":"oneOf.4","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"Invalid input","details":[{"message":"\u003cstring>","context":{}}]}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"a017a207-d9f5-4627-a5ad-8b6e87156d07":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key","description":"Project API key.","scopes":[],"schemeName":"apiKeyAuth"}},"266eba01-901f-4159-a0fb-31579809793e":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Integrator-issued access token (JWT authentication mode).","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"4fe19911-84c7-4e3e-a133-37ef11315796":{"url":"https://v1.orchestrator.rhinestone.dev"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","description":"Project API key.","scopes":[],"schemeName":"apiKeyAuth"},"schema":{"title":"x-api-key","type":"string","description":"Project API key.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"apiKeyAuth","name":"x-api-key"}],"title":"apiKeyAuth"},{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Integrator-issued access token (JWT authentication mode).","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Integrator-issued access token (JWT authentication mode).","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json"},"subdomain":"rhinestone","siteName":"Rhinestone","title":"Create Quote - Rhinestone","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-15T12:12:03.955Z","originalFileLocation":"api-reference/orchestrator/quotes/create-quote.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"dark\";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=\"Computes a quote for an intent: token transfers, target executions, and cost breakdown. Returns a pre-ranked routes[] with per-route intentId to pass to POST /intents for execution.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Rhinestone\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/rhinestone/3aadr-awyf35tysK/_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/rhinestone/3aadr-awyf35tysK/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/rhinestone/3aadr-awyf35tysK/_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/rhinestone/3aadr-awyf35tysK/_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/rhinestone/3aadr-awyf35tysK/_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/rhinestone/3aadr-awyf35tysK/_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/rhinestone/3aadr-awyf35tysK/_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/rhinestone/3aadr-awyf35tysK/_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/rhinestone/3aadr-awyf35tysK/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create Quote - Rhinestone\">\u003cmeta data-mint-head property=\"og:description\" content=\"Computes a quote for an intent: token transfers, target executions, and cost breakdown. Returns a pre-ranked routes[] with per-route intentId to pass to POST /intents for execution.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Rhinestone\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.rhinestone.dev/api-reference/orchestrator/quotes/create-quote\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://rhinestone.mintlify.site/_mintlify/api/og/v2?division=Quotes\u0026amp;title=Create+Quote\u0026amp;description=Computes+a+quote+for+an+intent%3A+token+transfers%2C+target+executions%2C+and+cost+breakdown.+Returns+a+pre-ranked+%60routes%5B%5D%60+with+per-route+%60intentId%60+to+pass+to+%60PO\u0026amp;theme=480304d2cd15a3be6f477401\u0026amp;signature=7456d7312461d41b18d3ac21df092c205bfc2637e1d0e7b4b4c06ced1320e721\">\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=\"Create Quote - Rhinestone\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Computes a quote for an intent: token transfers, target executions, and cost breakdown. Returns a pre-ranked routes[] with per-route intentId to pass to POST /intents for execution.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://rhinestone.mintlify.site/_mintlify/api/og/v2?division=Quotes\u0026amp;title=Create+Quote\u0026amp;description=Computes+a+quote+for+an+intent%3A+token+transfers%2C+target+executions%2C+and+cost+breakdown.+Returns+a+pre-ranked+%60routes%5B%5D%60+with+per-route+%60intentId%60+to+pass+to+%60PO\u0026amp;theme=480304d2cd15a3be6f477401\u0026amp;signature=7456d7312461d41b18d3ac21df092c205bfc2637e1d0e7b4b4c06ced1320e721\">\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/rhinestone/3aadr-awyf35tysK/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Rhinestone\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#4f41ef\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.rhinestone.dev/api-reference/orchestrator/quotes/create-quote\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/orchestrator/quotes/create-quote.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.rhinestone.dev/#organization\",\"name\":\"Rhinestone\",\"url\":\"https://docs.rhinestone.dev\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/rhinestone/IVpDy9zUkncYAe5u/logo/light.svg?fit=max\u0026auto=format\u0026n=IVpDy9zUkncYAe5u\u0026q=85\u0026s=6868a5854576ff60d371d5fdc0ae55c9\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.rhinestone.dev#website\",\"name\":\"Rhinestone\",\"url\":\"https://docs.rhinestone.dev\",\"publisher\":{\"@id\":\"https://docs.rhinestone.dev/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.rhinestone.dev/api-reference/orchestrator/quotes/create-quote#webpage\",\"url\":\"https://docs.rhinestone.dev/api-reference/orchestrator/quotes/create-quote\",\"name\":\"Create Quote\",\"description\":\"Computes a quote for an intent: token transfers, target executions, and cost breakdown. Returns a pre-ranked routes[] with per-route intentId to pass to POST /intents for execution.\",\"dateModified\":\"2026-10-15T12:12:03.955Z\",\"isPartOf\":{\"@id\":\"https://docs.rhinestone.dev#website\"},\"breadcrumb\":{\"@id\":\"https://docs.rhinestone.dev/api-reference/orchestrator/quotes/create-quote#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.rhinestone.dev/api-reference/orchestrator/quotes/create-quote#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Intents\",\"item\":\"https://docs.rhinestone.dev/api-reference/orchestrator/utilities/supported-chains-and-tokens\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create Quote\",\"item\":\"https://docs.rhinestone.dev/api-reference/orchestrator/quotes/create-quote\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.rhinestone.dev/api-reference/orchestrator/quotes/create-quote#apireference\",\"headline\":\"Create Quote\",\"name\":\"Create Quote\",\"description\":\"Computes a quote for an intent: token transfers, target executions, and cost breakdown. Returns a pre-ranked routes[] with per-route intentId to pass to POST /intents for execution.\",\"url\":\"https://docs.rhinestone.dev/api-reference/orchestrator/quotes/create-quote\",\"mainEntityOfPage\":{\"@id\":\"https://docs.rhinestone.dev/api-reference/orchestrator/quotes/create-quote#webpage\"},\"dateModified\":\"2026-10-15T12:12:03.955Z\",\"publisher\":{\"@id\":\"https://docs.rhinestone.dev/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.rhinestone.dev#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Rhinestone\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Rhinestone","nav":{"global":{"anchors":[{"anchor":"Create API Key","icon":"key","href":"https://tally.so/r/wg22x4"}]},"tabs":[{"tab":"Home","pages":[{"title":"Home","href":"/home/introduction"}]},{"tab":"Wallets","menu":[{"item":"Overview","pages":[{"title":"Overview","href":"/wallets/overview"}]},{"item":"Embedded wallets","pages":[{"title":"Embedded wallets","href":"/wallets/embedded-wallets/overview"}]},{"item":"Session keys","pages":[{"title":"Session keys","href":"/wallets/session-keys/overview"}]},{"item":"Recovery","pages":[{"title":"Recovery","href":"/wallets/recovery/overview"}]},{"item":"Custom signer","pages":[{"title":"Custom signer","href":"/wallets/custom-signer/overview"}]}],"pages":[{"title":"Wallets","href":"/wallets/overview"}]},{"tab":"Transactions","menu":[{"item":"Overview","pages":[{"title":"Overview","href":"/transactions/overview"}]},{"item":"Relaying","pages":[{"title":"Relaying","href":"/transactions/relaying/overview"}]},{"item":"Multichain","pages":[{"title":"Multichain","href":"/transactions/multichain/overview"}]},{"item":"Trading","pages":[{"title":"Trading","href":"/transactions/trading/overview"}]},{"item":"Sponsorship \u0026 monetization","pages":[{"title":"Sponsorship \u0026 monetization","href":"/transactions/sponsorship/overview"}]}],"pages":[{"title":"Transactions","href":"/transactions/overview"}]},{"tab":"Deposits","menu":[{"item":"Overview","pages":[{"title":"Overview","href":"/deposits/overview/overview"}]},{"item":"Onramps","pages":[{"title":"Onramps","href":"/deposits/onramps/overview"}]},{"item":"Crypto","pages":[{"title":"Crypto","href":"/deposits/crypto/overview"}]},{"item":"Exchanges","pages":[{"title":"Exchanges","href":"/deposits/exchanges/overview"}]},{"item":"Headless","pages":[{"title":"Headless","href":"/deposits/headless/overview"}]}],"pages":[{"title":"Deposits","href":"/deposits/overview/overview"}]},{"tab":"Fiat integrations","pages":[{"title":"Fiat integrations","href":"/fiat/overview"}]},{"tab":"API Reference","groups":[{"group":"Get started","public":true,"pages":[{"title":"Introduction","href":"/api-reference/introduction"},{"title":"Versioning","href":"/api-reference/api-versioning"}]},{"group":"Intents","public":true,"pages":[{"group":"Utilities","pages":[{"title":"Supported chains and tokens","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json get /chains","href":"/api-reference/orchestrator/utilities/supported-chains-and-tokens"},{"title":"Route liquidity limit","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json get /liquidity","href":"/api-reference/orchestrator/utilities/route-liquidity-limit"},{"title":"Get Account Portfolio","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json get /accounts/{accountAddress}/portfolio","href":"/api-reference/orchestrator/utilities/get-account-portfolio"}]},{"group":"Intents","pages":[{"title":"Get Intent","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json get /intents/{id}","href":"/api-reference/orchestrator/intents/get-intent"},{"title":"List Intents","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json get /intents","href":"/api-reference/orchestrator/intents/list-intents"},{"title":"Create Intent","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json post /intents","href":"/api-reference/orchestrator/intents/create-intent"},{"title":"Split Intent by Liquidity","description":"Splits token amounts into multiple intents based on available relayer liquidity. Each returned intent can be filled by a single relayer.","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json post /intents/splits","href":"/api-reference/orchestrator/intents/split-intent-by-liquidity"}]},{"group":"Quotes","pages":[{"title":"Create Quote","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json post /quotes","href":"/api-reference/orchestrator/quotes/create-quote"},{"title":"Create Indicative Quote","description":"Computes an indicative (non-binding) quote: ranked route estimates with per-route cost breakdown and fill time. Unlike `POST /quotes`, it returns no `intentId`, `signingRequests`, or `expiresAt` — it cannot be submitted to `POST /intents`. Use it for pre-quote UX (price previews, route discovery) without persisting an intent.","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json post /quotes/estimate","href":"/api-reference/orchestrator/quotes/create-indicative-quote"}]},{"group":"App Fees","pages":[{"title":"Get App-Fee Balances","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json get /app-fees/balances","href":"/api-reference/orchestrator/app-fees/get-app-fee-balances"},{"title":"Get App-Fee Withdrawal Targets","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json get /app-fees/withdrawal-targets","href":"/api-reference/orchestrator/app-fees/get-app-fee-withdrawal-targets"},{"title":"List App-Fee Withdrawals","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json get /app-fees/withdrawals","href":"/api-reference/orchestrator/app-fees/list-app-fee-withdrawals"},{"title":"Create App-Fee Withdrawal","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json post /app-fees/withdrawals","href":"/api-reference/orchestrator/app-fees/create-app-fee-withdrawal"},{"title":"Get App-Fee Withdrawal","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/orchestrator/caucasus.json get /app-fees/withdrawals/{nonce}","href":"/api-reference/orchestrator/app-fees/get-app-fee-withdrawal"}]}]},{"group":"Deposits","public":true,"pages":[{"group":"Analytics","pages":[{"title":"Record analytics events","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /analytics/events","href":"/api-reference/deposit-service/analytics/record-analytics-events"},{"title":"Create an analytics token","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /analytics/ingest-token","href":"/api-reference/deposit-service/analytics/create-an-analytics-token"}]},{"group":"Utilities","pages":[{"title":"Get asset metadata","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /assets","href":"/api-reference/deposit-service/utilities/get-asset-metadata"},{"title":"List supported chains and tokens","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /chains","href":"/api-reference/deposit-service/utilities/list-supported-chains-and-tokens"},{"title":"List deposits","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /deposits","href":"/api-reference/deposit-service/utilities/list-deposits"},{"title":"Get a deposit","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /deposits/{id}","href":"/api-reference/deposit-service/utilities/get-a-deposit"},{"title":"List deposit quotes","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /deposits/{id}/quotes","href":"/api-reference/deposit-service/utilities/list-deposit-quotes"},{"title":"Get deposit statistics","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /deposits/stats","href":"/api-reference/deposit-service/utilities/get-deposit-statistics"},{"title":"Get a wallet portfolio","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /portfolio/{address}","href":"/api-reference/deposit-service/utilities/get-a-wallet-portfolio"},{"title":"List withdrawable positions","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /positions/{address}","href":"/api-reference/deposit-service/utilities/list-withdrawable-positions"},{"title":"Prepare an Aave withdrawal","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /positions/{address}/unwind","href":"/api-reference/deposit-service/utilities/prepare-an-aave-withdrawal"},{"title":"Get a Solana wallet portfolio","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /portfolio/solana/{address}","href":"/api-reference/deposit-service/utilities/get-a-solana-wallet-portfolio"},{"title":"Check route liquidity","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /liquidity","href":"/api-reference/deposit-service/utilities/check-route-liquidity"},{"title":"Get token prices","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /prices","href":"/api-reference/deposit-service/utilities/get-token-prices"},{"title":"List suggested deposit tokens","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /qr/tokens","href":"/api-reference/deposit-service/utilities/list-suggested-deposit-tokens"}]},{"group":"Accounts","pages":[{"title":"Check account registration","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /check/{address}","href":"/api-reference/deposit-service/accounts/check-account-registration"},{"title":"Register an account","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /register","href":"/api-reference/deposit-service/accounts/register-an-account"},{"title":"Provision deposit addresses","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /account/{address}/deposit-addresses","href":"/api-reference/deposit-service/accounts/provision-deposit-addresses"},{"title":"Add session details to account","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /account/{address}/session","href":"/api-reference/deposit-service/accounts/add-session-details-to-account"},{"title":"Provision a Solana token account","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /account/{address}/token-accounts","href":"/api-reference/deposit-service/accounts/provision-a-solana-token-account"},{"title":"Register a managed account","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /register-managed","href":"/api-reference/deposit-service/accounts/register-a-managed-account"},{"title":"Prepare account registration","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /setup-account","href":"/api-reference/deposit-service/accounts/prepare-account-registration"}]},{"group":"Clients","pages":[{"title":"Get client settings","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /setup","href":"/api-reference/deposit-service/clients/get-client-settings"},{"title":"Update client settings","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /setup","href":"/api-reference/deposit-service/clients/update-client-settings"}]},{"group":"Processing","pages":[{"title":"Retry a deposit","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /deposits/{id}/retry","href":"/api-reference/deposit-service/processing/retry-a-deposit"},{"title":"Refund a deposit","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /deposits/{id}/refund","href":"/api-reference/deposit-service/processing/refund-a-deposit"},{"title":"Recover a deposit","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /deposits/recover","href":"/api-reference/deposit-service/processing/recover-a-deposit"},{"title":"Get a deposit quote","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /quotes/preview","href":"/api-reference/deposit-service/processing/get-a-deposit-quote"},{"title":"Prepare a gasless deposit","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /deposits/permit/prepare","href":"/api-reference/deposit-service/processing/prepare-a-gasless-deposit"},{"title":"Submit a gasless deposit","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /deposits/permit","href":"/api-reference/deposit-service/processing/submit-a-gasless-deposit"},{"title":"Relay a Safe withdrawal","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /safe/withdraw","href":"/api-reference/deposit-service/processing/relay-a-safe-withdrawal"},{"title":"Relay a Polymarket withdrawal","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /polymarket/withdraw","href":"/api-reference/deposit-service/processing/relay-a-polymarket-withdrawal"}]},{"group":"Webhooks","pages":[{"title":"List webhook events","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /webhooks/events","href":"/api-reference/deposit-service/webhooks/list-webhook-events"},{"title":"Resend a webhook","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /webhooks/events/{id}/resend","href":"/api-reference/deposit-service/webhooks/resend-a-webhook"},{"title":"Send a test webhook","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /webhooks/test","href":"/api-reference/deposit-service/webhooks/send-a-test-webhook"}]},{"group":"Compliance","pages":[{"title":"Create or resume a compliance customer and mint a scoped session","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /compliance/sessions","href":"/api-reference/deposit-service/compliance/create-or-resume-a-compliance-customer-and-mint-a-scoped-session"},{"title":"Read the canonical verification state for the session customer","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /compliance/status","href":"/api-reference/deposit-service/compliance/read-the-canonical-verification-state-for-the-session-customer"},{"title":"Create or resume hosted verification for the session customer","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /compliance/verification","href":"/api-reference/deposit-service/compliance/create-or-resume-hosted-verification-for-the-session-customer"}]},{"group":"Onramp","pages":[{"title":"List onramp providers","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /onramp/providers","href":"/api-reference/deposit-service/onramp/list-onramp-providers"},{"title":"Get an onramp order","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /onramp/orders/{id}","href":"/api-reference/deposit-service/onramp/get-an-onramp-order"},{"title":"List onramp orders","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /onramp/orders","href":"/api-reference/deposit-service/onramp/list-onramp-orders"},{"title":"Start an onramp order","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /onramp/orders","href":"/api-reference/deposit-service/onramp/start-an-onramp-order"},{"title":"List onramp options","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /onramp/options","href":"/api-reference/deposit-service/onramp/list-onramp-options"},{"title":"List funding accounts","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /onramp/accounts","href":"/api-reference/deposit-service/onramp/list-funding-accounts"},{"title":"Set up a funding account","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /onramp/accounts","href":"/api-reference/deposit-service/onramp/set-up-a-funding-account"},{"title":"Get a funding account","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /onramp/accounts/{id}","href":"/api-reference/deposit-service/onramp/get-a-funding-account"},{"title":"Get bank details for a funding account","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /onramp/accounts/{id}/details","href":"/api-reference/deposit-service/onramp/get-bank-details-for-a-funding-account"}]},{"group":"Offramp","pages":[{"title":"List payout methods","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /offramp/options","href":"/api-reference/deposit-service/offramp/list-payout-methods"},{"title":"List offramp orders","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /offramp/orders","href":"/api-reference/deposit-service/offramp/list-offramp-orders"},{"title":"Start a withdrawal to a bank account","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /offramp/orders","href":"/api-reference/deposit-service/offramp/start-a-withdrawal-to-a-bank-account"},{"title":"Get an offramp order","deprecated":null,"version":null,"openapi":"https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /offramp/orders/{id}","href":"/api-reference/deposit-service/offramp/get-an-offramp-order"}]}]}]}]},"basePath":"","title":"Create Quote - Rhinestone","buildId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","deploymentId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-5FCzAcfS.js","utils-SLtAG4EZ.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-2DZi8ZMu.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-D7J3nkzE.js","snippetPresets-D0Alv0AH.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BI4qNJ2c.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BD3uyr8j.js","shallow-D8iEBr5z.js","getApiPlaygroundDisplay-CgNP4lzR.js","CodeSnippet-CX-QHuMs.js","CodeSnippets-VlXE-ZUf.js","Page-D9ithiIZ.js","getPastedJson-DYNQkZ1M.js","icon-CzacdwOi.js","MethodPill-2JVqoYKi.js","DuplicateIcon-_xVXs-U8.js","createIcon-BRHrweLo.js","DynamicMarkdown-mQG_iQiE.js","SectionHeading-DMpJzv8f.js","axios-vUo_bRtp.js","Markdown-5FGIym-8.js","clsx-D-TRO5q5.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CdrJecqK.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-CHlcWBLM.js"]}