{ "success": false, "data": null, "error": { "code": "CUSTODY_SETUP_REQUIRED", "message": "This on-chain order book needs 2 custody transactions signed before it can be created. Sign the returned transactions with the indicated wallet and submit the request again with their transaction hashes in custodySetupTxs.", "setup": { "action": "SIGN_TRANSACTIONS", "custodyContract": "0x98c33b10823172e62a31d6048773df1054c4f821", "confirmWith": { "field": "custodySetupTxs", "keyedBy": "key" }, "steps": [ { "key": "baseToken", "to": "0x98c33b10823172e62a31d6048773df1054c4f821", "data": "0x...", "functionName": "addSupportedToken", "description": "Register 0xabc7... as a supported custody token", "requiredSigner": "0x5ad87a0621175206b72d10e4b8577b192e7f40ab", "requiredRole": null }, { "key": "tokenAuthorization", "to": "0xabc7f1093d5e26b804a1c3f78de025916b47c0d3", "data": "0x...", "functionName": "addAuthorizedContract", "description": "Authorize the custody contract on the stock token", "requiredSigner": null, "requiredRole": "ISSUER_ROLE" } ] } }}
{ "success": false, "data": null, "error": { "code": "ORDER_BOOK_EXISTS", "message": "Order book already exists for this pair" }}
Creates an order book for one base token quoted in one settlement token (stablecoin). The book is created off-chain by default, which is the mode orders execute in. See Settlement modes.One instance may hold a single open book per pair. If an ACTIVE or PAUSED book already quotes this pair, the request returns ORDER_BOOK_EXISTS; a CLOSED book does not block a new one.
OFF_CHAIN or ON_CHAIN. ON_CHAIN requires custodyContract and a custody contract that already admits both tokens. OFF_CHAIN must not carry a custodyContract, and forces allowImport to false.
STOCK_TOKEN or LIGHT_TOKEN. Set STOCK_TOKEN for a Trusset stock token. The stock reads on this surface are filtered to STOCK_TOKEN, so a book left at the default will not appear in List Order Books.
Declared ISIN, exactly 12 alphanumeric characters. Only checked on an on-chain STOCK_TOKEN book, where it must equal the ISIN the token reports on chain, otherwise ISIN_MISMATCH. The stored value always comes from the chain, never from this field.
Fee applied in place of makerFeeBps when the resting side is a market maker account, −1000 to 1000. A negative value pays the market maker for providing liquidity.
An on-chain book only exists once StockCustody admits both tokens and the stock token allow-lists the custody contract. Those calls are role-gated on chain, so this endpoint never signs them. It reads what is outstanding and refuses with 409 CUSTODY_SETUP_REQUIRED, writing no database row and returning the unsigned transactions in error.setup.steps.requiredSigner is read from the contract’s own admin(), so you always know which account must send each step; requiredRole names the role instead where no single address answers. Sign what you can, then repeat the same POST with those hashes in custodySetupTxs. Each hash is receipt-verified before the prerequisite is re-read from the chain, and the fresh read is the authority, so a step signed by a different wallet in another session still counts and re-posting is always safe.
{ "success": false, "data": null, "error": { "code": "CUSTODY_SETUP_REQUIRED", "message": "This on-chain order book needs 2 custody transactions signed before it can be created. Sign the returned transactions with the indicated wallet and submit the request again with their transaction hashes in custodySetupTxs.", "setup": { "action": "SIGN_TRANSACTIONS", "custodyContract": "0x98c33b10823172e62a31d6048773df1054c4f821", "confirmWith": { "field": "custodySetupTxs", "keyedBy": "key" }, "steps": [ { "key": "baseToken", "to": "0x98c33b10823172e62a31d6048773df1054c4f821", "data": "0x...", "functionName": "addSupportedToken", "description": "Register 0xabc7... as a supported custody token", "requiredSigner": "0x5ad87a0621175206b72d10e4b8577b192e7f40ab", "requiredRole": null }, { "key": "tokenAuthorization", "to": "0xabc7f1093d5e26b804a1c3f78de025916b47c0d3", "data": "0x...", "functionName": "addAuthorizedContract", "description": "Authorize the custody contract on the stock token", "requiredSigner": null, "requiredRole": "ISSUER_ROLE" } ] } }}
{ "success": false, "data": null, "error": { "code": "ORDER_BOOK_EXISTS", "message": "Order book already exists for this pair" }}
{ "success": false, "data": null, "error": { "code": "CUSTODY_SETUP_REQUIRED", "message": "This on-chain order book needs 2 custody transactions signed before it can be created. Sign the returned transactions with the indicated wallet and submit the request again with their transaction hashes in custodySetupTxs.", "setup": { "action": "SIGN_TRANSACTIONS", "custodyContract": "0x98c33b10823172e62a31d6048773df1054c4f821", "confirmWith": { "field": "custodySetupTxs", "keyedBy": "key" }, "steps": [ { "key": "baseToken", "to": "0x98c33b10823172e62a31d6048773df1054c4f821", "data": "0x...", "functionName": "addSupportedToken", "description": "Register 0xabc7... as a supported custody token", "requiredSigner": "0x5ad87a0621175206b72d10e4b8577b192e7f40ab", "requiredRole": null }, { "key": "tokenAuthorization", "to": "0xabc7f1093d5e26b804a1c3f78de025916b47c0d3", "data": "0x...", "functionName": "addAuthorizedContract", "description": "Authorize the custody contract on the stock token", "requiredSigner": null, "requiredRole": "ISSUER_ROLE" } ] } }}
{ "success": false, "data": null, "error": { "code": "ORDER_BOOK_EXISTS", "message": "Order book already exists for this pair" }}
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"Trusset Protocol","description":"End-to-end infrastructure for tokenizing any asset","colors":{"primary":"#B1F163","light":"#B1F163","dark":"#B1F163"},"logo":{"light":"https://mintcdn.com/testtttt-3cb7d5bb/38jNDl9NUnuI6yfl/logo/patchGreen.png?fit=max\u0026auto=format\u0026n=38jNDl9NUnuI6yfl\u0026q=85\u0026s=d62bfe76228e7c7e125f25f84f935c73","dark":"https://mintcdn.com/testtttt-3cb7d5bb/38jNDl9NUnuI6yfl/logo/patchGreen.png?fit=max\u0026auto=format\u0026n=38jNDl9NUnuI6yfl\u0026q=85\u0026s=d62bfe76228e7c7e125f25f84f935c73"},"favicon":"https://mintcdn.com/testtttt-3cb7d5bb/38jNDl9NUnuI6yfl/favicon.png?fit=max\u0026auto=format\u0026n=38jNDl9NUnuI6yfl\u0026q=85\u0026s=3ece2c317cdd2ffd62b7199d0b990623","api":{"mdx":{"auth":{"method":"key","name":"x-api-key"},"server":"https://api.trusset.org"}},"navbar":{"links":[{"href":"https://github.com/Trusset","label":"GitHub"}],"primary":{"type":"button","label":"Get started","href":"https://issuers.trusset.org"}},"footer":{"socials":{"website":"https://trusset.org","linkedin":"https://www.linkedin.com/company/trusset"}},"seo":{"metatags":{"description":"Trusset Protocol provides end-to-end infrastructure for tokenizing any asset. Build on our blockchain platform for asset tokenization, DeFi trading, and collateralized lending.","keywords":"asset tokenization, blockchain infrastructure, DeFi platform, tokenized assets, smart contracts, collateralized loans, asset financing, multi-chain bridge, real-world assets, RWA tokenization","author":"Trusset Protocol","robots":"index, follow","googlebot":"index, follow","language":"en","category":"Blockchain Technology","distribution":"global","coverage":"Worldwide","target":"developers, institutions, asset managers","theme-color":"#B1F163","og:title":"Trusset Protocol - Infrastructure for Asset Tokenization","og:type":"website","og:url":"https://docs.trusset.org","og:image":"https://docs.trusset.org/assets/logo.png","og:description":"End-to-end infrastructure for tokenizing any asset. Build DeFi applications, manage tokenized assets, and access collateralized lending on our blockchain platform.","og:site_name":"Trusset Protocol Documentation","og:locale":"en_US","article:section":"Blockchain Technology","article:tag":"blockchain, tokenization, DeFi, smart contracts, asset management, collateral, lending, trading","application-name":"Trusset Protocol Docs","HandheldFriendly":"True","MobileOptimized":"320","viewport":"width=device-width, initial-scale=1.0","charset":"UTF-8"},"indexing":"all"},"fonts":{"body":{"family":"Questrial","weight":400}},"errors":{"404":{"redirect":true,"title":"I can't be found","description":"What ever **happened** to this _page_?"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Issuer App","icon":"globe","href":"https://issuers.trusset.org"},{"anchor":"Custodian App","icon":"building","href":"https://custodians.trusset.org"},{"anchor":"MiCA Register","icon":"list","href":"https://trusset.org/mica-register"},{"anchor":"Demo Call","icon":"phone","href":"https://cal.com/paul-ilami-trusset"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"testtttt-3cb7d5bb","hasAudioNarration":false,"actualSubdomain":"testtttt-3cb7d5bb","customDomains":["docs.trusset.org"],"gitSource":{"type":"github","owner":"trusset","repo":"trusset-documentation","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ad7942313cbd31e30201292","collectionId":"c474acc6-b7df-40dd-8413-8c0c8963ec23","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ad7942313cbd31e30201292"},"feedback":{"thumbs":false},"entitlements":{},"buildId":"6ad7942313cbd31e30201292","clientVersion":"0.0.3964","searchFilterCounts":[{"language":"default","tag":"API Reference","count":390},{"language":"default","tag":"Lending","count":152},{"language":"default","tag":"Trading","count":100},{"language":"default","tag":"Customers","count":64},{"language":"default","tag":"Stock Trading","count":43},{"language":"default","tag":"External Securities Trading","count":33},{"language":"default","tag":"Order Books","count":27},{"language":"default","tag":"Seller Financing","count":26},{"language":"default","tag":"Commodity Trading","count":24},{"language":"default","tag":"Orders","count":20}]},"assistantConfig":{},"hasChatPermissions":false,"hasWebMcpPermissions":false,"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":"editor-v7-file-tree","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":"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":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"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":"byok-sep-25","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":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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}],"isAtlas":false,"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"/* vietnamese */\n@font-face {\n font-family: 'Questrial';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/questrial/v19/QdVUSTchPBm7nuUeVf70sSFlq20.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Questrial';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/questrial/v19/QdVUSTchPBm7nuUeVf70sCFlq20.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Questrial';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/questrial/v19/QdVUSTchPBm7nuUeVf70viFl.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n#page-title,.mdx-content h1,.mdx-content h2,.mdx-content h3,.mdx-content h4,.mdx-content h5,.mdx-content h6,h1,h2,h3,h4,h5,h6{font-family:'Questrial',sans-serif!important}"}],"page":{"pagePath":"endpoints/stock-trading/create-order-book","slug":"/endpoints/stock-trading/create-order-book","pageMetadata":{"title":"Create Order Book","api":"POST /orderbooks/stocks/api/order-books","description":"Open a trading venue for a stock token against a quote token","href":"/endpoints/stock-trading/create-order-book"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Open a trading venue for a stock token against a quote token\"\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,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Expandable,Heading,ParamField,ResponseField,Table}=_components;if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Creates an order book for one base token quoted in one settlement token (stablecoin). The book is created off-chain by default, which is the mode orders execute in. See `,_jsx(_components.a,{href:`/endpoints/stock-trading/introduction#settlement-modes`,children:`Settlement modes`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`One instance may hold a single open book per pair. If an `,_jsx(_components.code,{children:`ACTIVE`}),` or `,_jsx(_components.code,{children:`PAUSED`}),` book already quotes this pair, the request returns `,_jsx(_components.code,{children:`ORDER_BOOK_EXISTS`}),`; a `,_jsx(_components.code,{children:`CLOSED`}),` book does not block a new one.`]}),`\n`,_jsx(Heading,{level:`2`,id:`body-parameters`,children:`Body Parameters`}),`\n`,_jsx(ParamField,{body:`tokenAddress`,type:`string`,required:true,id:`param-token-address`,children:_jsx(_components.p,{children:`Base token contract. Lower-cased before storage.`})}),`\n`,_jsx(ParamField,{body:`quoteTokenAddress`,type:`string`,required:true,id:`param-quote-token-address`,children:_jsxs(_components.p,{children:[`Settlement token contract. A well-known USDC address is normalised to your network’s USDC. Must differ from `,_jsx(_components.code,{children:`tokenAddress`}),`, otherwise `,_jsx(_components.code,{children:`INVALID_PAIR`}),`.`]})}),`\n`,_jsx(ParamField,{body:`name`,type:`string`,required:true,id:`param-name`,children:_jsx(_components.p,{children:`Display name, 1 to 64 characters.`})}),`\n`,_jsx(ParamField,{body:`symbol`,type:`string`,required:true,id:`param-symbol`,children:_jsx(_components.p,{children:`Display symbol, 1 to 16 characters.`})}),`\n`,_jsx(ParamField,{body:`settlementMode`,type:`string`,default:`OFF_CHAIN`,id:`param-settlement-mode`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`OFF_CHAIN`}),` or `,_jsx(_components.code,{children:`ON_CHAIN`}),`. `,_jsx(_components.code,{children:`ON_CHAIN`}),` requires `,_jsx(_components.code,{children:`custodyContract`}),` and a custody contract that already admits both tokens. `,_jsx(_components.code,{children:`OFF_CHAIN`}),` must not carry a `,_jsx(_components.code,{children:`custodyContract`}),`, and forces `,_jsx(_components.code,{children:`allowImport`}),` to false.`]})}),`\n`,_jsx(ParamField,{body:`tokenType`,type:`string`,default:`LIGHT_TOKEN`,id:`param-token-type`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`STOCK_TOKEN`}),` or `,_jsx(_components.code,{children:`LIGHT_TOKEN`}),`. Set `,_jsx(_components.code,{children:`STOCK_TOKEN`}),` for a Trusset stock token. The stock reads on this surface are filtered to `,_jsx(_components.code,{children:`STOCK_TOKEN`}),`, so a book left at the default will not appear in `,_jsx(_components.a,{href:`/endpoints/stock-trading/list-order-books`,children:`List Order Books`}),`.`]})}),`\n`,_jsx(ParamField,{body:`custodyContract`,type:`string`,id:`param-custody-contract`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`StockCustody`}),` address for an on-chain book. Required when `,_jsx(_components.code,{children:`settlementMode`}),` is `,_jsx(_components.code,{children:`ON_CHAIN`}),`, refused otherwise.`]})}),`\n`,_jsx(ParamField,{body:`stockTokenId`,type:`string`,id:`param-stock-token-id`,children:_jsx(_components.p,{children:`Your Trusset stock token record ID, linking the book to an issuance. Up to 100 characters.`})}),`\n`,_jsx(ParamField,{body:`underlyingIdentifier`,type:`string`,id:`param-underlying-identifier`,children:_jsxs(_components.p,{children:[`Declared ISIN, exactly 12 alphanumeric characters. Only checked on an on-chain `,_jsx(_components.code,{children:`STOCK_TOKEN`}),` book, where it must equal the ISIN the token reports on chain, otherwise `,_jsx(_components.code,{children:`ISIN_MISMATCH`}),`. The stored value always comes from the chain, never from this field.`]})}),`\n`,_jsx(ParamField,{body:`minOrderSize`,type:`string`,default:`0`,id:`param-min-order-size`,children:_jsx(_components.p,{children:`Smallest accepted quantity, in order book units.`})}),`\n`,_jsx(ParamField,{body:`maxOrderSize`,type:`string`,id:`param-max-order-size`,children:_jsx(_components.p,{children:`Largest accepted quantity, in order book units. Omit for no ceiling.`})}),`\n`,_jsx(ParamField,{body:`tickSize`,type:`string`,default:`1`,id:`param-tick-size`,children:_jsx(_components.p,{children:`Price increment, in order book units.`})}),`\n`,_jsx(ParamField,{body:`makerFeeBps`,type:`integer`,default:`0`,id:`param-maker-fee-bps`,children:_jsx(_components.p,{children:`Maker fee in basis points, 0 to 1000.`})}),`\n`,_jsx(ParamField,{body:`takerFeeBps`,type:`integer`,default:`0`,id:`param-taker-fee-bps`,children:_jsx(_components.p,{children:`Taker fee in basis points, 0 to 1000.`})}),`\n`,_jsx(ParamField,{body:`mmMakerRebateBps`,type:`integer`,id:`param-mm-maker-rebate-bps`,children:_jsxs(_components.p,{children:[`Fee applied in place of `,_jsx(_components.code,{children:`makerFeeBps`}),` when the resting side is a market maker account, −1000 to 1000. A negative value pays the market maker for providing liquidity.`]})}),`\n`,_jsx(ParamField,{body:`allowImport`,type:`boolean`,default:`false`,id:`param-allow-import`,children:_jsx(_components.p,{children:`Publish the book so other instances on the same network can import it. On-chain books only.`})}),`\n`,_jsx(ParamField,{body:`tradingMode`,type:`string`,default:`CONTINUOUS`,id:`param-trading-mode`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`CONTINUOUS`}),`, `,_jsx(_components.code,{children:`PERIODIC_AUCTION`}),` or `,_jsx(_components.code,{children:`HYBRID`}),`. See `,_jsx(_components.a,{href:`/endpoints/stock-trading/introduction#trading-modes`,children:`Trading modes`}),`.`]})}),`\n`,_jsx(ParamField,{body:`auctionIntervalSeconds`,type:`integer`,id:`param-auction-interval-seconds`,children:_jsx(_components.p,{children:`Auction batch length, 30 to 3600 seconds.`})}),`\n`,_jsx(ParamField,{body:`hybridSwitchSpreadBps`,type:`integer`,id:`param-hybrid-switch-spread-bps`,children:_jsxs(_components.p,{children:[`Spread in basis points that flips a `,_jsx(_components.code,{children:`HYBRID`}),` book into auctions. 1 to 10000, and required above zero when `,_jsx(_components.code,{children:`tradingMode`}),` is `,_jsx(_components.code,{children:`HYBRID`}),`.`]})}),`\n`,_jsx(ParamField,{body:`auctionRollUnmatched`,type:`boolean`,default:`true`,id:`param-auction-roll-unmatched`,children:_jsx(_components.p,{children:`Whether orders left unfilled by an auction roll into the next batch instead of being cancelled.`})}),`\n`,_jsx(ParamField,{body:`priceRefEnabled`,type:`boolean`,default:`false`,id:`param-price-ref-enabled`,children:_jsx(_components.p,{children:`Enforce a reference price band on incoming orders.`})}),`\n`,_jsx(ParamField,{body:`priceRefMode`,type:`string`,default:`MANUAL`,id:`param-price-ref-mode`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`MANUAL`}),`, `,_jsx(_components.code,{children:`STOCK_FEED`}),` or `,_jsx(_components.code,{children:`EXTERNAL_FEED`}),`.`]})}),`\n`,_jsx(ParamField,{body:`priceRefFeedUrl`,type:`string`,id:`param-price-ref-feed-url`,children:_jsxs(_components.p,{children:[`HTTPS endpoint for `,_jsx(_components.code,{children:`EXTERNAL_FEED`}),`, up to 2048 characters. Must resolve to a public host.`]})}),`\n`,_jsx(ParamField,{body:`priceRefFeedHeaders`,type:`string`,id:`param-price-ref-feed-headers`,children:_jsxs(_components.p,{children:[`JSON object of request headers for the feed, as a string, up to 4096 characters. `,_jsx(_components.code,{children:`Host`}),`, `,_jsx(_components.code,{children:`Cookie`}),` and `,_jsx(_components.code,{children:`Authorization`}),` are dropped.`]})}),`\n`,_jsx(ParamField,{body:`priceRefFeedPath`,type:`string`,id:`param-price-ref-feed-path`,children:_jsxs(_components.p,{children:[`Dot-separated JSON path to the price in an `,_jsx(_components.code,{children:`EXTERNAL_FEED`}),` response, or the ticker symbol in `,_jsx(_components.code,{children:`STOCK_FEED`}),` mode. Up to 256 characters.`]})}),`\n`,_jsx(ParamField,{body:`priceRefEnforcement`,type:`string`,default:`EVERY_TRADE`,id:`param-price-ref-enforcement`,children:_jsxs(_components.p,{children:[`How often the reference is refreshed. One of `,_jsx(_components.code,{children:`EVERY_TRADE`}),`, `,_jsx(_components.code,{children:`1MIN`}),`, `,_jsx(_components.code,{children:`5MIN`}),`, `,_jsx(_components.code,{children:`10MIN`}),`, `,_jsx(_components.code,{children:`30MIN`}),`, `,_jsx(_components.code,{children:`1HOUR`}),`, `,_jsx(_components.code,{children:`6HOUR`}),`, `,_jsx(_components.code,{children:`12HOUR`}),`, `,_jsx(_components.code,{children:`1DAY`}),`.`]})}),`\n`,_jsx(ParamField,{body:`priceRefSpreadBps`,type:`integer`,id:`param-price-ref-spread-bps`,children:_jsx(_components.p,{children:`Half-width of the accepted band in basis points, 1 to 10000. Without it no band is enforced.`})}),`\n`,_jsx(ParamField,{body:`priceRefHaltOnStale`,type:`boolean`,default:`false`,id:`param-price-ref-halt-on-stale`,children:_jsx(_components.p,{children:`Refuse orders when the reference is stale, instead of serving the last known price.`})}),`\n`,_jsx(ParamField,{body:`priceRefStaleTolerance`,type:`integer`,id:`param-price-ref-stale-tolerance`,children:_jsxs(_components.p,{children:[`Seconds before a reference counts as stale, 60 to 604800. Defaults to three enforcement intervals, or 300 when enforcement is `,_jsx(_components.code,{children:`EVERY_TRADE`}),`.`]})}),`\n`,_jsx(ParamField,{body:`priceRefCircuitBreakerBps`,type:`integer`,id:`param-price-ref-circuit-breaker-bps`,children:_jsx(_components.p,{children:`Reference move in basis points that pauses the book, 10 to 10000.`})}),`\n`,_jsxs(ParamField,{body:`custodySetupTxs`,type:`object`,id:`param-custody-setup-txs`,children:[_jsxs(_components.p,{children:[`Hashes of the custody transactions you signed after a `,_jsx(_components.code,{children:`CUSTODY_SETUP_REQUIRED`}),` refusal, keyed by the step key. Unknown keys are rejected.`]}),_jsxs(Expandable,{children:[_jsxs(ParamField,{body:`baseToken`,type:`string`,id:`param-base-token`,children:[`Hash of `,_jsx(_components.code,{children:`addSupportedToken`}),` for the base token.`]}),_jsxs(ParamField,{body:`quoteToken`,type:`string`,id:`param-quote-token`,children:[`Hash of `,_jsx(_components.code,{children:`addSupportedToken`}),` for the quote token.`]}),_jsxs(ParamField,{body:`tokenAuthorization`,type:`string`,id:`param-token-authorization`,children:[`Hash of `,_jsx(_components.code,{children:`addAuthorizedContract`}),` on the stock token.`]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`custody-setup`,children:`Custody setup`}),`\n`,_jsxs(_components.p,{children:[`An on-chain book only exists once `,_jsx(_components.code,{children:`StockCustody`}),` admits both tokens and the stock token allow-lists the custody contract. Those calls are role-gated on chain, so this endpoint never signs them. It reads what is outstanding and refuses with `,_jsx(_components.code,{children:`409 CUSTODY_SETUP_REQUIRED`}),`, writing no database row and returning the unsigned transactions in `,_jsx(_components.code,{children:`error.setup.steps`}),`.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`requiredSigner`}),` is read from the contract’s own `,_jsx(_components.code,{children:`admin()`}),`, so you always know which account must send each step; `,_jsx(_components.code,{children:`requiredRole`}),` names the role instead where no single address answers. Sign what you can, then repeat the same `,_jsx(_components.code,{children:`POST`}),` with those hashes in `,_jsx(_components.code,{children:`custodySetupTxs`}),`. Each hash is receipt-verified before the prerequisite is re-read from the chain, and the fresh read is the authority, so a step signed by a different wallet in another session still counts and re-posting is always safe.`]}),`\n`,_jsx(Heading,{level:`2`,id:`response-fields`,children:`Response Fields`}),`\n`,_jsxs(_components.p,{children:[`Returns `,_jsx(_components.code,{children:`201`}),` with the created book.`]}),`\n`,_jsx(ResponseField,{name:`data`,type:`object`,id:`param-data`,children:_jsxs(Expandable,{children:[_jsxs(ResponseField,{name:`id`,type:`string`,id:`param-id`,children:[`Order book ID. Use this as `,_jsx(_components.code,{children:`orderBookId`}),` everywhere else.`]}),_jsx(ResponseField,{name:`instanceId`,type:`string`,id:`param-instance-id`,children:`Owning instance.`}),_jsx(ResponseField,{name:`tokenAddress`,type:`string`,id:`param-token-address-1`,children:`Base token, lower-cased.`}),_jsx(ResponseField,{name:`quoteTokenAddress`,type:`string`,id:`param-quote-token-address-1`,children:`Quote token, lower-cased and normalised.`}),_jsx(ResponseField,{name:`name`,type:`string`,id:`param-name-1`,children:`Display name.`}),_jsx(ResponseField,{name:`symbol`,type:`string`,id:`param-symbol-1`,children:`Display symbol.`}),_jsxs(ResponseField,{name:`status`,type:`string`,id:`param-status`,children:[_jsx(_components.code,{children:`ACTIVE`}),` on creation.`]}),_jsxs(ResponseField,{name:`tokenType`,type:`string`,id:`param-token-type-1`,children:[_jsx(_components.code,{children:`STOCK_TOKEN`}),` or `,_jsx(_components.code,{children:`LIGHT_TOKEN`}),`.`]}),_jsxs(ResponseField,{name:`settlementMode`,type:`string`,id:`param-settlement-mode-1`,children:[_jsx(_components.code,{children:`OFF_CHAIN`}),` or `,_jsx(_components.code,{children:`ON_CHAIN`}),`.`]}),_jsxs(ResponseField,{name:`custodyContract`,type:`string`,id:`param-custody-contract-1`,children:[`Custody contract, or `,_jsx(_components.code,{children:`null`}),` off-chain.`]}),_jsxs(ResponseField,{name:`underlyingIdentifier`,type:`string`,id:`param-underlying-identifier-1`,children:[`ISIN read from the token on an on-chain stock book, otherwise `,_jsx(_components.code,{children:`null`}),`.`]}),_jsxs(ResponseField,{name:`stockTokenId`,type:`string`,id:`param-stock-token-id-1`,children:[`Linked stock token record, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsx(ResponseField,{name:`minOrderSize`,type:`string`,id:`param-min-order-size-1`,children:`Minimum quantity.`}),_jsxs(ResponseField,{name:`maxOrderSize`,type:`string`,id:`param-max-order-size-1`,children:[`Maximum quantity, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsx(ResponseField,{name:`tickSize`,type:`string`,id:`param-tick-size-1`,children:`Price increment.`}),_jsx(ResponseField,{name:`makerFeeBps`,type:`integer`,id:`param-maker-fee-bps-1`,children:`Maker fee in basis points.`}),_jsx(ResponseField,{name:`takerFeeBps`,type:`integer`,id:`param-taker-fee-bps-1`,children:`Taker fee in basis points.`}),_jsxs(ResponseField,{name:`mmMakerRebateBps`,type:`integer`,id:`param-mm-maker-rebate-bps-1`,children:[`Market maker fee override, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsx(ResponseField,{name:`allowImport`,type:`boolean`,id:`param-allow-import-1`,children:`Whether other instances may import the book.`}),_jsxs(ResponseField,{name:`allowSharedLiquidity`,type:`boolean`,id:`param-allow-shared-liquidity`,children:[`Always `,_jsx(_components.code,{children:`false`}),` when created through this surface.`]}),_jsxs(ResponseField,{name:`tradingMode`,type:`string`,id:`param-trading-mode-1`,children:[_jsx(_components.code,{children:`CONTINUOUS`}),`, `,_jsx(_components.code,{children:`PERIODIC_AUCTION`}),` or `,_jsx(_components.code,{children:`HYBRID`}),`.`]}),_jsxs(ResponseField,{name:`auctionIntervalSeconds`,type:`integer`,id:`param-auction-interval-seconds-1`,children:[`Auction batch length, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsxs(ResponseField,{name:`currentAuctionId`,type:`string`,id:`param-current-auction-id`,children:[`Live auction, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsxs(ResponseField,{name:`hybridSwitchSpreadBps`,type:`integer`,id:`param-hybrid-switch-spread-bps-1`,children:[`Hybrid failover threshold, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsx(ResponseField,{name:`auctionRollUnmatched`,type:`boolean`,id:`param-auction-roll-unmatched-1`,children:`Whether unmatched auction orders roll forward.`}),_jsxs(ResponseField,{name:`baseDecimals`,type:`integer`,id:`param-base-decimals`,children:[`Base token decimals, recorded for external securities books only. `,_jsx(_components.code,{children:`null`}),` here.`]}),_jsxs(ResponseField,{name:`quoteDecimals`,type:`integer`,id:`param-quote-decimals`,children:[`Quote token decimals, recorded for external securities books only. `,_jsx(_components.code,{children:`null`}),` here.`]}),_jsxs(ResponseField,{name:`cfid`,type:`string`,id:`param-cfid`,children:[`Commodity fungibility class. `,_jsx(_components.code,{children:`null`}),` on stock books.`]}),_jsx(ResponseField,{name:`priceRefEnabled`,type:`boolean`,id:`param-price-ref-enabled-1`,children:`Whether the band is enforced.`}),_jsx(ResponseField,{name:`priceRefMode`,type:`string`,id:`param-price-ref-mode-1`,children:`Reference source.`}),_jsx(ResponseField,{name:`priceRefEnforcement`,type:`string`,id:`param-price-ref-enforcement-1`,children:`Refresh interval.`}),_jsxs(ResponseField,{name:`priceRefSpreadBps`,type:`integer`,id:`param-price-ref-spread-bps-1`,children:[`Band half-width, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsxs(ResponseField,{name:`priceRefLastPrice`,type:`string`,id:`param-price-ref-last-price`,children:[`Last recorded reference, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsxs(ResponseField,{name:`priceRefLastUpdated`,type:`string`,id:`param-price-ref-last-updated`,children:[`ISO 8601 timestamp, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsx(ResponseField,{name:`createdAt`,type:`string`,id:`param-created-at`,children:`ISO 8601 timestamp.`})]})}),`\n`,`\n`,`\n`,_jsx(Heading,{level:`2`,id:`error-codes`,children:`Error Codes`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Code`}),_jsx(_components.th,{children:`HTTP`}),_jsx(_components.th,{children:`Cause`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`VALIDATION_ERROR`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsxs(_components.td,{children:[`A field failed schema validation. `,_jsx(_components.code,{children:`error.details`}),` names each one`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`INVALID_PAIR`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:`Base and quote token are the same`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`INVALID_CONFIG`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsxs(_components.td,{children:[`An off-chain book was given a custody contract, a price reference field is invalid, or `,_jsx(_components.code,{children:`HYBRID`}),` was requested without `,_jsx(_components.code,{children:`hybridSwitchSpreadBps`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`NO_CUSTODY_CONTRACT`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`settlementMode`}),` is `,_jsx(_components.code,{children:`ON_CHAIN`}),` and `,_jsx(_components.code,{children:`custodyContract`}),` was omitted`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`INVALID_CUSTODY_CONTRACT`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:`The address does not resolve to a Trusset custody contract on this network`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`TOKEN_NO_ISIN`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:`The stock token exposes no valid on-chain ISIN`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`ISIN_MISMATCH`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsxs(_components.td,{children:[`The declared `,_jsx(_components.code,{children:`underlyingIdentifier`}),` does not match the on-chain ISIN`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`ORDER_BOOK_EXISTS`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`409`})}),_jsxs(_components.td,{children:[`An `,_jsx(_components.code,{children:`ACTIVE`}),` or `,_jsx(_components.code,{children:`PAUSED`}),` book already quotes this pair`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`CUSTODY_SETUP_REQUIRED`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`409`})}),_jsxs(_components.td,{children:[`On-chain prerequisites are outstanding. `,_jsx(_components.code,{children:`error.setup.steps`}),` carries the unsigned transactions`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`SERVICE_NOT_ENABLED`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`403`})}),_jsx(_components.td,{children:`The Trading service is not enabled on this instance`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`BASE_TOKEN_NOT_SUPPORTED`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`503`})}),_jsx(_components.td,{children:`The custody contract does not admit the base token and no setup step could be built`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`QUOTE_TOKEN_NOT_SUPPORTED`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`503`})}),_jsx(_components.td,{children:`The custody contract does not admit the quote token and no setup step could be built`})]})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create Order Book","api":"POST /orderbooks/stocks/api/order-books","description":"Open a trading venue for a stock token against a quote token","href":"/endpoints/stock-trading/create-order-book"}}},"mdxSourceWithNoJs":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Expandable,Heading,ParamField,RequestExample,ResponseExample,ResponseField,Table}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!RequestExample)_missingMdxReference(`RequestExample`,true);if(!ResponseExample)_missingMdxReference(`ResponseExample`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Creates an order book for one base token quoted in one settlement token (stablecoin). The book is created off-chain by default, which is the mode orders execute in. See `,_jsx(_components.a,{href:`/endpoints/stock-trading/introduction#settlement-modes`,children:`Settlement modes`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`One instance may hold a single open book per pair. If an `,_jsx(_components.code,{children:`ACTIVE`}),` or `,_jsx(_components.code,{children:`PAUSED`}),` book already quotes this pair, the request returns `,_jsx(_components.code,{children:`ORDER_BOOK_EXISTS`}),`; a `,_jsx(_components.code,{children:`CLOSED`}),` book does not block a new one.`]}),`\n`,_jsx(Heading,{level:`2`,id:`body-parameters`,children:`Body Parameters`}),`\n`,_jsx(ParamField,{body:`tokenAddress`,type:`string`,required:true,id:`param-token-address`,children:_jsx(_components.p,{children:`Base token contract. Lower-cased before storage.`})}),`\n`,_jsx(ParamField,{body:`quoteTokenAddress`,type:`string`,required:true,id:`param-quote-token-address`,children:_jsxs(_components.p,{children:[`Settlement token contract. A well-known USDC address is normalised to your network’s USDC. Must differ from `,_jsx(_components.code,{children:`tokenAddress`}),`, otherwise `,_jsx(_components.code,{children:`INVALID_PAIR`}),`.`]})}),`\n`,_jsx(ParamField,{body:`name`,type:`string`,required:true,id:`param-name`,children:_jsx(_components.p,{children:`Display name, 1 to 64 characters.`})}),`\n`,_jsx(ParamField,{body:`symbol`,type:`string`,required:true,id:`param-symbol`,children:_jsx(_components.p,{children:`Display symbol, 1 to 16 characters.`})}),`\n`,_jsx(ParamField,{body:`settlementMode`,type:`string`,default:`OFF_CHAIN`,id:`param-settlement-mode`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`OFF_CHAIN`}),` or `,_jsx(_components.code,{children:`ON_CHAIN`}),`. `,_jsx(_components.code,{children:`ON_CHAIN`}),` requires `,_jsx(_components.code,{children:`custodyContract`}),` and a custody contract that already admits both tokens. `,_jsx(_components.code,{children:`OFF_CHAIN`}),` must not carry a `,_jsx(_components.code,{children:`custodyContract`}),`, and forces `,_jsx(_components.code,{children:`allowImport`}),` to false.`]})}),`\n`,_jsx(ParamField,{body:`tokenType`,type:`string`,default:`LIGHT_TOKEN`,id:`param-token-type`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`STOCK_TOKEN`}),` or `,_jsx(_components.code,{children:`LIGHT_TOKEN`}),`. Set `,_jsx(_components.code,{children:`STOCK_TOKEN`}),` for a Trusset stock token. The stock reads on this surface are filtered to `,_jsx(_components.code,{children:`STOCK_TOKEN`}),`, so a book left at the default will not appear in `,_jsx(_components.a,{href:`/endpoints/stock-trading/list-order-books`,children:`List Order Books`}),`.`]})}),`\n`,_jsx(ParamField,{body:`custodyContract`,type:`string`,id:`param-custody-contract`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`StockCustody`}),` address for an on-chain book. Required when `,_jsx(_components.code,{children:`settlementMode`}),` is `,_jsx(_components.code,{children:`ON_CHAIN`}),`, refused otherwise.`]})}),`\n`,_jsx(ParamField,{body:`stockTokenId`,type:`string`,id:`param-stock-token-id`,children:_jsx(_components.p,{children:`Your Trusset stock token record ID, linking the book to an issuance. Up to 100 characters.`})}),`\n`,_jsx(ParamField,{body:`underlyingIdentifier`,type:`string`,id:`param-underlying-identifier`,children:_jsxs(_components.p,{children:[`Declared ISIN, exactly 12 alphanumeric characters. Only checked on an on-chain `,_jsx(_components.code,{children:`STOCK_TOKEN`}),` book, where it must equal the ISIN the token reports on chain, otherwise `,_jsx(_components.code,{children:`ISIN_MISMATCH`}),`. The stored value always comes from the chain, never from this field.`]})}),`\n`,_jsx(ParamField,{body:`minOrderSize`,type:`string`,default:`0`,id:`param-min-order-size`,children:_jsx(_components.p,{children:`Smallest accepted quantity, in order book units.`})}),`\n`,_jsx(ParamField,{body:`maxOrderSize`,type:`string`,id:`param-max-order-size`,children:_jsx(_components.p,{children:`Largest accepted quantity, in order book units. Omit for no ceiling.`})}),`\n`,_jsx(ParamField,{body:`tickSize`,type:`string`,default:`1`,id:`param-tick-size`,children:_jsx(_components.p,{children:`Price increment, in order book units.`})}),`\n`,_jsx(ParamField,{body:`makerFeeBps`,type:`integer`,default:`0`,id:`param-maker-fee-bps`,children:_jsx(_components.p,{children:`Maker fee in basis points, 0 to 1000.`})}),`\n`,_jsx(ParamField,{body:`takerFeeBps`,type:`integer`,default:`0`,id:`param-taker-fee-bps`,children:_jsx(_components.p,{children:`Taker fee in basis points, 0 to 1000.`})}),`\n`,_jsx(ParamField,{body:`mmMakerRebateBps`,type:`integer`,id:`param-mm-maker-rebate-bps`,children:_jsxs(_components.p,{children:[`Fee applied in place of `,_jsx(_components.code,{children:`makerFeeBps`}),` when the resting side is a market maker account, −1000 to 1000. A negative value pays the market maker for providing liquidity.`]})}),`\n`,_jsx(ParamField,{body:`allowImport`,type:`boolean`,default:`false`,id:`param-allow-import`,children:_jsx(_components.p,{children:`Publish the book so other instances on the same network can import it. On-chain books only.`})}),`\n`,_jsx(ParamField,{body:`tradingMode`,type:`string`,default:`CONTINUOUS`,id:`param-trading-mode`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`CONTINUOUS`}),`, `,_jsx(_components.code,{children:`PERIODIC_AUCTION`}),` or `,_jsx(_components.code,{children:`HYBRID`}),`. See `,_jsx(_components.a,{href:`/endpoints/stock-trading/introduction#trading-modes`,children:`Trading modes`}),`.`]})}),`\n`,_jsx(ParamField,{body:`auctionIntervalSeconds`,type:`integer`,id:`param-auction-interval-seconds`,children:_jsx(_components.p,{children:`Auction batch length, 30 to 3600 seconds.`})}),`\n`,_jsx(ParamField,{body:`hybridSwitchSpreadBps`,type:`integer`,id:`param-hybrid-switch-spread-bps`,children:_jsxs(_components.p,{children:[`Spread in basis points that flips a `,_jsx(_components.code,{children:`HYBRID`}),` book into auctions. 1 to 10000, and required above zero when `,_jsx(_components.code,{children:`tradingMode`}),` is `,_jsx(_components.code,{children:`HYBRID`}),`.`]})}),`\n`,_jsx(ParamField,{body:`auctionRollUnmatched`,type:`boolean`,default:`true`,id:`param-auction-roll-unmatched`,children:_jsx(_components.p,{children:`Whether orders left unfilled by an auction roll into the next batch instead of being cancelled.`})}),`\n`,_jsx(ParamField,{body:`priceRefEnabled`,type:`boolean`,default:`false`,id:`param-price-ref-enabled`,children:_jsx(_components.p,{children:`Enforce a reference price band on incoming orders.`})}),`\n`,_jsx(ParamField,{body:`priceRefMode`,type:`string`,default:`MANUAL`,id:`param-price-ref-mode`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`MANUAL`}),`, `,_jsx(_components.code,{children:`STOCK_FEED`}),` or `,_jsx(_components.code,{children:`EXTERNAL_FEED`}),`.`]})}),`\n`,_jsx(ParamField,{body:`priceRefFeedUrl`,type:`string`,id:`param-price-ref-feed-url`,children:_jsxs(_components.p,{children:[`HTTPS endpoint for `,_jsx(_components.code,{children:`EXTERNAL_FEED`}),`, up to 2048 characters. Must resolve to a public host.`]})}),`\n`,_jsx(ParamField,{body:`priceRefFeedHeaders`,type:`string`,id:`param-price-ref-feed-headers`,children:_jsxs(_components.p,{children:[`JSON object of request headers for the feed, as a string, up to 4096 characters. `,_jsx(_components.code,{children:`Host`}),`, `,_jsx(_components.code,{children:`Cookie`}),` and `,_jsx(_components.code,{children:`Authorization`}),` are dropped.`]})}),`\n`,_jsx(ParamField,{body:`priceRefFeedPath`,type:`string`,id:`param-price-ref-feed-path`,children:_jsxs(_components.p,{children:[`Dot-separated JSON path to the price in an `,_jsx(_components.code,{children:`EXTERNAL_FEED`}),` response, or the ticker symbol in `,_jsx(_components.code,{children:`STOCK_FEED`}),` mode. Up to 256 characters.`]})}),`\n`,_jsx(ParamField,{body:`priceRefEnforcement`,type:`string`,default:`EVERY_TRADE`,id:`param-price-ref-enforcement`,children:_jsxs(_components.p,{children:[`How often the reference is refreshed. One of `,_jsx(_components.code,{children:`EVERY_TRADE`}),`, `,_jsx(_components.code,{children:`1MIN`}),`, `,_jsx(_components.code,{children:`5MIN`}),`, `,_jsx(_components.code,{children:`10MIN`}),`, `,_jsx(_components.code,{children:`30MIN`}),`, `,_jsx(_components.code,{children:`1HOUR`}),`, `,_jsx(_components.code,{children:`6HOUR`}),`, `,_jsx(_components.code,{children:`12HOUR`}),`, `,_jsx(_components.code,{children:`1DAY`}),`.`]})}),`\n`,_jsx(ParamField,{body:`priceRefSpreadBps`,type:`integer`,id:`param-price-ref-spread-bps`,children:_jsx(_components.p,{children:`Half-width of the accepted band in basis points, 1 to 10000. Without it no band is enforced.`})}),`\n`,_jsx(ParamField,{body:`priceRefHaltOnStale`,type:`boolean`,default:`false`,id:`param-price-ref-halt-on-stale`,children:_jsx(_components.p,{children:`Refuse orders when the reference is stale, instead of serving the last known price.`})}),`\n`,_jsx(ParamField,{body:`priceRefStaleTolerance`,type:`integer`,id:`param-price-ref-stale-tolerance`,children:_jsxs(_components.p,{children:[`Seconds before a reference counts as stale, 60 to 604800. Defaults to three enforcement intervals, or 300 when enforcement is `,_jsx(_components.code,{children:`EVERY_TRADE`}),`.`]})}),`\n`,_jsx(ParamField,{body:`priceRefCircuitBreakerBps`,type:`integer`,id:`param-price-ref-circuit-breaker-bps`,children:_jsx(_components.p,{children:`Reference move in basis points that pauses the book, 10 to 10000.`})}),`\n`,_jsxs(ParamField,{body:`custodySetupTxs`,type:`object`,id:`param-custody-setup-txs`,children:[_jsxs(_components.p,{children:[`Hashes of the custody transactions you signed after a `,_jsx(_components.code,{children:`CUSTODY_SETUP_REQUIRED`}),` refusal, keyed by the step key. Unknown keys are rejected.`]}),_jsxs(Expandable,{children:[_jsxs(ParamField,{body:`baseToken`,type:`string`,id:`param-base-token`,children:[`Hash of `,_jsx(_components.code,{children:`addSupportedToken`}),` for the base token.`]}),_jsxs(ParamField,{body:`quoteToken`,type:`string`,id:`param-quote-token`,children:[`Hash of `,_jsx(_components.code,{children:`addSupportedToken`}),` for the quote token.`]}),_jsxs(ParamField,{body:`tokenAuthorization`,type:`string`,id:`param-token-authorization`,children:[`Hash of `,_jsx(_components.code,{children:`addAuthorizedContract`}),` on the stock token.`]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`custody-setup`,children:`Custody setup`}),`\n`,_jsxs(_components.p,{children:[`An on-chain book only exists once `,_jsx(_components.code,{children:`StockCustody`}),` admits both tokens and the stock token allow-lists the custody contract. Those calls are role-gated on chain, so this endpoint never signs them. It reads what is outstanding and refuses with `,_jsx(_components.code,{children:`409 CUSTODY_SETUP_REQUIRED`}),`, writing no database row and returning the unsigned transactions in `,_jsx(_components.code,{children:`error.setup.steps`}),`.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`requiredSigner`}),` is read from the contract’s own `,_jsx(_components.code,{children:`admin()`}),`, so you always know which account must send each step; `,_jsx(_components.code,{children:`requiredRole`}),` names the role instead where no single address answers. Sign what you can, then repeat the same `,_jsx(_components.code,{children:`POST`}),` with those hashes in `,_jsx(_components.code,{children:`custodySetupTxs`}),`. Each hash is receipt-verified before the prerequisite is re-read from the chain, and the fresh read is the authority, so a step signed by a different wallet in another session still counts and re-posting is always safe.`]}),`\n`,_jsx(Heading,{level:`2`,id:`response-fields`,children:`Response Fields`}),`\n`,_jsxs(_components.p,{children:[`Returns `,_jsx(_components.code,{children:`201`}),` with the created book.`]}),`\n`,_jsx(ResponseField,{name:`data`,type:`object`,id:`param-data`,children:_jsxs(Expandable,{children:[_jsxs(ResponseField,{name:`id`,type:`string`,id:`param-id`,children:[`Order book ID. Use this as `,_jsx(_components.code,{children:`orderBookId`}),` everywhere else.`]}),_jsx(ResponseField,{name:`instanceId`,type:`string`,id:`param-instance-id`,children:`Owning instance.`}),_jsx(ResponseField,{name:`tokenAddress`,type:`string`,id:`param-token-address-1`,children:`Base token, lower-cased.`}),_jsx(ResponseField,{name:`quoteTokenAddress`,type:`string`,id:`param-quote-token-address-1`,children:`Quote token, lower-cased and normalised.`}),_jsx(ResponseField,{name:`name`,type:`string`,id:`param-name-1`,children:`Display name.`}),_jsx(ResponseField,{name:`symbol`,type:`string`,id:`param-symbol-1`,children:`Display symbol.`}),_jsxs(ResponseField,{name:`status`,type:`string`,id:`param-status`,children:[_jsx(_components.code,{children:`ACTIVE`}),` on creation.`]}),_jsxs(ResponseField,{name:`tokenType`,type:`string`,id:`param-token-type-1`,children:[_jsx(_components.code,{children:`STOCK_TOKEN`}),` or `,_jsx(_components.code,{children:`LIGHT_TOKEN`}),`.`]}),_jsxs(ResponseField,{name:`settlementMode`,type:`string`,id:`param-settlement-mode-1`,children:[_jsx(_components.code,{children:`OFF_CHAIN`}),` or `,_jsx(_components.code,{children:`ON_CHAIN`}),`.`]}),_jsxs(ResponseField,{name:`custodyContract`,type:`string`,id:`param-custody-contract-1`,children:[`Custody contract, or `,_jsx(_components.code,{children:`null`}),` off-chain.`]}),_jsxs(ResponseField,{name:`underlyingIdentifier`,type:`string`,id:`param-underlying-identifier-1`,children:[`ISIN read from the token on an on-chain stock book, otherwise `,_jsx(_components.code,{children:`null`}),`.`]}),_jsxs(ResponseField,{name:`stockTokenId`,type:`string`,id:`param-stock-token-id-1`,children:[`Linked stock token record, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsx(ResponseField,{name:`minOrderSize`,type:`string`,id:`param-min-order-size-1`,children:`Minimum quantity.`}),_jsxs(ResponseField,{name:`maxOrderSize`,type:`string`,id:`param-max-order-size-1`,children:[`Maximum quantity, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsx(ResponseField,{name:`tickSize`,type:`string`,id:`param-tick-size-1`,children:`Price increment.`}),_jsx(ResponseField,{name:`makerFeeBps`,type:`integer`,id:`param-maker-fee-bps-1`,children:`Maker fee in basis points.`}),_jsx(ResponseField,{name:`takerFeeBps`,type:`integer`,id:`param-taker-fee-bps-1`,children:`Taker fee in basis points.`}),_jsxs(ResponseField,{name:`mmMakerRebateBps`,type:`integer`,id:`param-mm-maker-rebate-bps-1`,children:[`Market maker fee override, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsx(ResponseField,{name:`allowImport`,type:`boolean`,id:`param-allow-import-1`,children:`Whether other instances may import the book.`}),_jsxs(ResponseField,{name:`allowSharedLiquidity`,type:`boolean`,id:`param-allow-shared-liquidity`,children:[`Always `,_jsx(_components.code,{children:`false`}),` when created through this surface.`]}),_jsxs(ResponseField,{name:`tradingMode`,type:`string`,id:`param-trading-mode-1`,children:[_jsx(_components.code,{children:`CONTINUOUS`}),`, `,_jsx(_components.code,{children:`PERIODIC_AUCTION`}),` or `,_jsx(_components.code,{children:`HYBRID`}),`.`]}),_jsxs(ResponseField,{name:`auctionIntervalSeconds`,type:`integer`,id:`param-auction-interval-seconds-1`,children:[`Auction batch length, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsxs(ResponseField,{name:`currentAuctionId`,type:`string`,id:`param-current-auction-id`,children:[`Live auction, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsxs(ResponseField,{name:`hybridSwitchSpreadBps`,type:`integer`,id:`param-hybrid-switch-spread-bps-1`,children:[`Hybrid failover threshold, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsx(ResponseField,{name:`auctionRollUnmatched`,type:`boolean`,id:`param-auction-roll-unmatched-1`,children:`Whether unmatched auction orders roll forward.`}),_jsxs(ResponseField,{name:`baseDecimals`,type:`integer`,id:`param-base-decimals`,children:[`Base token decimals, recorded for external securities books only. `,_jsx(_components.code,{children:`null`}),` here.`]}),_jsxs(ResponseField,{name:`quoteDecimals`,type:`integer`,id:`param-quote-decimals`,children:[`Quote token decimals, recorded for external securities books only. `,_jsx(_components.code,{children:`null`}),` here.`]}),_jsxs(ResponseField,{name:`cfid`,type:`string`,id:`param-cfid`,children:[`Commodity fungibility class. `,_jsx(_components.code,{children:`null`}),` on stock books.`]}),_jsx(ResponseField,{name:`priceRefEnabled`,type:`boolean`,id:`param-price-ref-enabled-1`,children:`Whether the band is enforced.`}),_jsx(ResponseField,{name:`priceRefMode`,type:`string`,id:`param-price-ref-mode-1`,children:`Reference source.`}),_jsx(ResponseField,{name:`priceRefEnforcement`,type:`string`,id:`param-price-ref-enforcement-1`,children:`Refresh interval.`}),_jsxs(ResponseField,{name:`priceRefSpreadBps`,type:`integer`,id:`param-price-ref-spread-bps-1`,children:[`Band half-width, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsxs(ResponseField,{name:`priceRefLastPrice`,type:`string`,id:`param-price-ref-last-price`,children:[`Last recorded reference, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsxs(ResponseField,{name:`priceRefLastUpdated`,type:`string`,id:`param-price-ref-last-updated`,children:[`ISO 8601 timestamp, or `,_jsx(_components.code,{children:`null`}),`.`]}),_jsx(ResponseField,{name:`createdAt`,type:`string`,id:`param-created-at`,children:`ISO 8601 timestamp.`})]})}),`\n`,_jsxs(RequestExample,{children:[_jsx(CodeBlock,{filename:`cURL`,numberOfLines:`14`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`14`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://api.trusset.org/orderbooks/stocks/api/order-books\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"X-API-Key: trusset_your_key_here\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"tokenAddress\": \"0xabc7f1093d5e26b804a1c3f78de025916b47c0d3\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"quoteTokenAddress\": \"0x98ad0ca091552e23c564b41c74282e5343d03e8a\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"name\": \"Nyala Fund I\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"symbol\": \"NYF1\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"tokenType\": \"STOCK_TOKEN\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"tickSize\": \"10000\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"minOrderSize\": \"1000000\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"makerFeeBps\": 5,`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"takerFeeBps\": 15`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`TypeScript`,numberOfLines:`32`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`32`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` res`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` fetch`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'https://api.trusset.org/orderbooks/stocks/api/order-books'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` method:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'POST'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` headers:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'X-API-Key'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'trusset_your_key_here'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Content-Type'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'application/json'`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` body:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` JSON`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`stringify`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` tokenAddress:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '0xabc7f1093d5e26b804a1c3f78de025916b47c0d3'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` quoteTokenAddress:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '0x98ad0ca091552e23c564b41c74282e5343d03e8a'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` name:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Nyala Fund I'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` symbol:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'NYF1'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` tokenType:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'STOCK_TOKEN'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` tickSize:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '10000'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` minOrderSize:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '1000000'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` makerFeeBps:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 5`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` takerFeeBps:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 15`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` })`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` body`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` res`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`json`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`if`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`!`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`body`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`success`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` \u0026\u0026`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` body`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`error`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`code`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` ===`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'CUSTODY_SETUP_REQUIRED'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` signed`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`:`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` Record`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`\u003c`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4EC9B0`},children:`string`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4EC9B0`},children:`string`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`> `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {};`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` for`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` step`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` of`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` body`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`error`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`setup`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`steps`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` tx`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` wallet`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`sendTransaction`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({ `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`to:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` step`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`to`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`data:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` step`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`data`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` });`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` tx`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`wait`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` signed`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`step`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`key`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`] `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` tx`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`hash`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // repeat the same POST with custodySetupTxs: signed`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]}),`\n`,_jsxs(ResponseExample,{children:[_jsx(CodeBlock,{filename:`Response`,numberOfLines:`46`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`46`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"success\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"clx_ob_stock_001\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"instanceId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"inst_abc123\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"tokenAddress\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0xabc7f1093d5e26b804a1c3f78de025916b47c0d3\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"quoteTokenAddress\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0x98ad0ca091552e23c564b41c74282e5343d03e8a\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Nyala Fund I\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"symbol\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"NYF1\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"ACTIVE\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"tokenType\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"STOCK_TOKEN\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"settlementMode\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"OFF_CHAIN\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"custodyContract\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"underlyingIdentifier\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"stockTokenId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"minOrderSize\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"1000000\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"maxOrderSize\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"tickSize\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"10000\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"makerFeeBps\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`5`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"takerFeeBps\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`15`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"mmMakerRebateBps\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"allowImport\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"allowSharedLiquidity\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"tradingMode\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"CONTINUOUS\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"auctionIntervalSeconds\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"currentAuctionId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"hybridSwitchSpreadBps\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"auctionRollUnmatched\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"baseDecimals\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"quoteDecimals\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"cfid\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"priceRefEnabled\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"priceRefMode\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"MANUAL\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"priceRefEnforcement\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"EVERY_TRADE\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"priceRefSpreadBps\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"priceRefLastPrice\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"priceRefLastUpdated\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"createdAt\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2025-06-15T12:00:00.000Z\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"metadata\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"requestId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"550e8400-e29b-41d4-a716-446655440000\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"timestamp\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2025-06-15T12:00:00.000Z\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"instanceId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"inst_abc123\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`Error - Custody Setup Required`,numberOfLines:`33`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`33`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"success\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"CUSTODY_SETUP_REQUIRED\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"This on-chain order book needs 2 custody transactions signed before it can be created. Sign the returned transactions with the indicated wallet and submit the request again with their transaction hashes in custodySetupTxs.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"setup\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"action\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"SIGN_TRANSACTIONS\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"custodyContract\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0x98c33b10823172e62a31d6048773df1054c4f821\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"confirmWith\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"field\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"custodySetupTxs\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"keyedBy\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"steps\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"baseToken\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"to\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0x98c33b10823172e62a31d6048773df1054c4f821\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0x...\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"functionName\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"addSupportedToken\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"description\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Register 0xabc7... as a supported custody token\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"requiredSigner\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0x5ad87a0621175206b72d10e4b8577b192e7f40ab\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"requiredRole\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"tokenAuthorization\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"to\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0xabc7f1093d5e26b804a1c3f78de025916b47c0d3\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0x...\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"functionName\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"addAuthorizedContract\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"description\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Authorize the custody contract on the stock token\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"requiredSigner\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"requiredRole\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"ISSUER_ROLE\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`Error - Pair Already Open`,numberOfLines:`8`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"success\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"ORDER_BOOK_EXISTS\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Order book already exists for this pair\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]}),`\n`,_jsx(Heading,{level:`2`,id:`error-codes`,children:`Error Codes`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Code`}),_jsx(_components.th,{children:`HTTP`}),_jsx(_components.th,{children:`Cause`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`VALIDATION_ERROR`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsxs(_components.td,{children:[`A field failed schema validation. `,_jsx(_components.code,{children:`error.details`}),` names each one`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`INVALID_PAIR`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:`Base and quote token are the same`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`INVALID_CONFIG`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsxs(_components.td,{children:[`An off-chain book was given a custody contract, a price reference field is invalid, or `,_jsx(_components.code,{children:`HYBRID`}),` was requested without `,_jsx(_components.code,{children:`hybridSwitchSpreadBps`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`NO_CUSTODY_CONTRACT`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`settlementMode`}),` is `,_jsx(_components.code,{children:`ON_CHAIN`}),` and `,_jsx(_components.code,{children:`custodyContract`}),` was omitted`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`INVALID_CUSTODY_CONTRACT`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:`The address does not resolve to a Trusset custody contract on this network`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`TOKEN_NO_ISIN`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:`The stock token exposes no valid on-chain ISIN`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`ISIN_MISMATCH`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsxs(_components.td,{children:[`The declared `,_jsx(_components.code,{children:`underlyingIdentifier`}),` does not match the on-chain ISIN`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`ORDER_BOOK_EXISTS`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`409`})}),_jsxs(_components.td,{children:[`An `,_jsx(_components.code,{children:`ACTIVE`}),` or `,_jsx(_components.code,{children:`PAUSED`}),` book already quotes this pair`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`CUSTODY_SETUP_REQUIRED`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`409`})}),_jsxs(_components.td,{children:[`On-chain prerequisites are outstanding. `,_jsx(_components.code,{children:`error.setup.steps`}),` carries the unsigned transactions`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`SERVICE_NOT_ENABLED`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`403`})}),_jsx(_components.td,{children:`The Trading service is not enabled on this instance`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`BASE_TOKEN_NOT_SUPPORTED`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`503`})}),_jsx(_components.td,{children:`The custody contract does not admit the base token and no setup step could be built`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`QUOTE_TOKEN_NOT_SUPPORTED`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`503`})}),_jsx(_components.td,{children:`The custody contract does not admit the quote token and no setup step could be built`})]})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create Order Book","api":"POST /orderbooks/stocks/api/order-books","description":"Open a trading venue for a stock token against a quote token","href":"/endpoints/stock-trading/create-order-book"}}}},"mdxExtracts":{"tableOfContents":[{"title":"Body Parameters","slug":"body-parameters","depth":2,"children":[]},{"title":"Custody setup","slug":"custody-setup","depth":2,"children":[]},{"title":"Response Fields","slug":"response-fields","depth":2,"children":[]},{"title":"Error Codes","slug":"error-codes","depth":2,"children":[]}],"codeExamples":{"request":{"type":"RequestExample","children":[{"filename":"cURL","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"shellscript\">\u003ccode language=\"shellscript\" numberOfLines=\"14\">\u003cspan class=\"line\">\u003cspan style=\"color:#953800;--shiki-dark:#DCDCAA\">curl\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> -X\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> POST\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"https://api.trusset.org/orderbooks/stocks/api/order-books\"\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D7BA7D\"> \\\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> -H\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"X-API-Key: trusset_your_key_here\"\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D7BA7D\"> \\\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> -H\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"Content-Type: application/json\"\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D7BA7D\"> \\\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> -d\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> '{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"tokenAddress\": \"0xabc7f1093d5e26b804a1c3f78de025916b47c0d3\",\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"quoteTokenAddress\": \"0x98ad0ca091552e23c564b41c74282e5343d03e8a\",\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"name\": \"Nyala Fund I\",\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"symbol\": \"NYF1\",\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"tokenType\": \"STOCK_TOKEN\",\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"tickSize\": \"10000\",\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"minOrderSize\": \"1000000\",\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"makerFeeBps\": 5,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"takerFeeBps\": 15\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> }'\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"TypeScript","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"typescript\">\u003ccode language=\"typescript\" numberOfLines=\"32\">\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">const\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4FC1FF\"> res\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\"> =\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\"> await\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\"> fetch\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">(\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'https://api.trusset.org/orderbooks/stocks/api/order-books'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> method:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'POST'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> headers:\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'X-API-Key'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'trusset_your_key_here'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'Content-Type'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'application/json'\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> body:\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4FC1FF\"> JSON\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">stringify\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">({\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> tokenAddress:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> '0xabc7f1093d5e26b804a1c3f78de025916b47c0d3'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> quoteTokenAddress:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> '0x98ad0ca091552e23c564b41c74282e5343d03e8a'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> name:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'Nyala Fund I'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> symbol:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'NYF1'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> tokenType:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'STOCK_TOKEN'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> tickSize:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> '10000'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> minOrderSize:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> '1000000'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> makerFeeBps:\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\"> 5\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> takerFeeBps:\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\"> 15\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> })\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">);\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">const\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4FC1FF\"> body\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\"> =\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\"> await\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> res\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">json\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">();\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\">if\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> (\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">!\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">body\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">success\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\"> \u0026#x26;\u0026#x26;\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> body\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">error\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">code\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\"> ===\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'CUSTODY_SETUP_REQUIRED'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">) {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\"> const\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4FC1FF\"> signed\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">:\u003c/span>\u003cspan style=\"color:#953800;--shiki-dark:#4EC9B0\"> Record\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">\u0026#x3C;\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4EC9B0\">string\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4EC9B0\">string\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">> \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {};\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\"> for\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> (\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">const\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4FC1FF\"> step\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\"> of\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> body\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">error\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">setup\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">steps\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">) {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\"> const\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4FC1FF\"> tx\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\"> =\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\"> await\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> wallet\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">sendTransaction\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">({ \u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">to:\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> step\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">to\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">data:\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> step\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">data\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> });\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\"> await\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> tx\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">wait\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">();\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> signed\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">[\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">step\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">key\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">] \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> tx\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">hash\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">;\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#6E7781;--shiki-dark:#6A9955\"> // repeat the same POST with custodySetupTxs: signed\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"}],"attributes":[]},"response":{"type":"ResponseExample","children":[{"filename":"Response","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"46\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"success\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">true\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"clx_ob_stock_001\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"instanceId\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"inst_abc123\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"tokenAddress\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"0xabc7f1093d5e26b804a1c3f78de025916b47c0d3\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"quoteTokenAddress\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"0x98ad0ca091552e23c564b41c74282e5343d03e8a\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"name\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Nyala Fund I\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"symbol\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"NYF1\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"status\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"ACTIVE\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"tokenType\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"STOCK_TOKEN\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"settlementMode\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"OFF_CHAIN\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"custodyContract\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"underlyingIdentifier\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"stockTokenId\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"minOrderSize\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"1000000\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"maxOrderSize\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"tickSize\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"10000\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"makerFeeBps\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">5\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"takerFeeBps\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">15\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"mmMakerRebateBps\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"allowImport\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"allowSharedLiquidity\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"tradingMode\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"CONTINUOUS\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"auctionIntervalSeconds\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"currentAuctionId\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"hybridSwitchSpreadBps\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"auctionRollUnmatched\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">true\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"baseDecimals\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"quoteDecimals\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"cfid\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"priceRefEnabled\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"priceRefMode\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"MANUAL\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"priceRefEnforcement\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"EVERY_TRADE\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"priceRefSpreadBps\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"priceRefLastPrice\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"priceRefLastUpdated\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"createdAt\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2025-06-15T12:00:00.000Z\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"error\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"metadata\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"requestId\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"550e8400-e29b-41d4-a716-446655440000\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"timestamp\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2025-06-15T12:00:00.000Z\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"instanceId\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"inst_abc123\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"Error - Custody Setup Required","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"33\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"success\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"error\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"code\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"CUSTODY_SETUP_REQUIRED\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"message\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"This on-chain order book needs 2 custody transactions signed before it can be created. Sign the returned transactions with the indicated wallet and submit the request again with their transaction hashes in custodySetupTxs.\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"setup\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"action\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"SIGN_TRANSACTIONS\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"custodyContract\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"0x98c33b10823172e62a31d6048773df1054c4f821\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"confirmWith\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: { \u003c/span>\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\">\"field\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"custodySetupTxs\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\">\"keyedBy\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"key\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"steps\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: [\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"key\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"baseToken\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"to\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"0x98c33b10823172e62a31d6048773df1054c4f821\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"0x...\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"functionName\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"addSupportedToken\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"description\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Register 0xabc7... as a supported custody token\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"requiredSigner\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"0x5ad87a0621175206b72d10e4b8577b192e7f40ab\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"requiredRole\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"key\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"tokenAuthorization\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"to\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"0xabc7f1093d5e26b804a1c3f78de025916b47c0d3\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"0x...\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"functionName\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"addAuthorizedContract\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"description\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Authorize the custody contract on the stock token\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"requiredSigner\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"requiredRole\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"ISSUER_ROLE\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> ]\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"Error - Pair Already Open","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"8\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"success\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"error\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"code\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"ORDER_BOOK_EXISTS\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"message\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Order book already exists for this pair\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"}],"attributes":[]}},"endpoint":{"title":"Create Order Book","path":"/orderbooks/stocks/api/order-books","servers":[{"url":"https://api.trusset.org"}],"method":"post","request":{"security":[{"title":"API Key Auth","parameters":{"header":{"x-api-key":{"type":"apiKey"}},"query":{},"cookie":{}}}],"parameters":{"query":{},"header":{},"cookie":{},"path":{}},"body":{"application/json":{"schemaArray":[{"type":"object","properties":{"tokenAddress":[{"type":"string","description":"Base token contract. Lower-cased before storage.","required":true}],"quoteTokenAddress":[{"type":"string","description":"Settlement token contract. A well-known USDC address is normalised to your network’s USDC. Must differ from `tokenAddress` , otherwise `INVALID_PAIR` .","required":true}],"name":[{"type":"string","description":"Display name, 1 to 64 characters.","required":true}],"symbol":[{"type":"string","description":"Display symbol, 1 to 16 characters.","required":true}],"settlementMode":[{"type":"string","description":"`OFF_CHAIN` or `ON_CHAIN` . `ON_CHAIN` requires `custodyContract` and a custody contract that already admits both tokens. `OFF_CHAIN` must not carry a `custodyContract` , and forces `allowImport` to false."}],"tokenType":[{"type":"string","description":"`STOCK_TOKEN` or `LIGHT_TOKEN` . Set `STOCK_TOKEN` for a Trusset stock token. The stock reads on this surface are filtered to `STOCK_TOKEN` , so a book left at the default will not appear in List Order Books ."}],"custodyContract":[{"type":"string","description":"`StockCustody` address for an on-chain book. Required when `settlementMode` is `ON_CHAIN` , refused otherwise."}],"stockTokenId":[{"type":"string","description":"Your Trusset stock token record ID, linking the book to an issuance. Up to 100 characters."}],"underlyingIdentifier":[{"type":"string","description":"Declared ISIN, exactly 12 alphanumeric characters. Only checked on an on-chain `STOCK_TOKEN` book, where it must equal the ISIN the token reports on chain, otherwise `ISIN_MISMATCH` . The stored value always comes from the chain, never from this field."}],"minOrderSize":[{"type":"string","description":"Smallest accepted quantity, in order book units."}],"maxOrderSize":[{"type":"string","description":"Largest accepted quantity, in order book units. Omit for no ceiling."}],"tickSize":[{"type":"string","description":"Price increment, in order book units."}],"makerFeeBps":[{"type":"integer","description":"Maker fee in basis points, 0 to 1000."}],"takerFeeBps":[{"type":"integer","description":"Taker fee in basis points, 0 to 1000."}],"mmMakerRebateBps":[{"type":"integer","description":"Fee applied in place of `makerFeeBps` when the resting side is a market maker account, −1000 to 1000. A negative value pays the market maker for providing liquidity."}],"allowImport":[{"type":"boolean","description":"Publish the book so other instances on the same network can import it. On-chain books only."}],"tradingMode":[{"type":"string","description":"`CONTINUOUS` , `PERIODIC_AUCTION` or `HYBRID` . See Trading modes ."}],"auctionIntervalSeconds":[{"type":"integer","description":"Auction batch length, 30 to 3600 seconds."}],"hybridSwitchSpreadBps":[{"type":"integer","description":"Spread in basis points that flips a `HYBRID` book into auctions. 1 to 10000, and required above zero when `tradingMode` is `HYBRID` ."}],"auctionRollUnmatched":[{"type":"boolean","description":"Whether orders left unfilled by an auction roll into the next batch instead of being cancelled."}],"priceRefEnabled":[{"type":"boolean","description":"Enforce a reference price band on incoming orders."}],"priceRefMode":[{"type":"string","description":"`MANUAL` , `STOCK_FEED` or `EXTERNAL_FEED` ."}],"priceRefFeedUrl":[{"type":"string","description":"HTTPS endpoint for `EXTERNAL_FEED` , up to 2048 characters. Must resolve to a public host."}],"priceRefFeedHeaders":[{"type":"string","description":"JSON object of request headers for the feed, as a string, up to 4096 characters. `Host` , `Cookie` and `Authorization` are dropped."}],"priceRefFeedPath":[{"type":"string","description":"Dot-separated JSON path to the price in an `EXTERNAL_FEED` response, or the ticker symbol in `STOCK_FEED` mode. Up to 256 characters."}],"priceRefEnforcement":[{"type":"string","description":"How often the reference is refreshed. One of `EVERY_TRADE` , `1MIN` , `5MIN` , `10MIN` , `30MIN` , `1HOUR` , `6HOUR` , `12HOUR` , `1DAY` ."}],"priceRefSpreadBps":[{"type":"integer","description":"Half-width of the accepted band in basis points, 1 to 10000. Without it no band is enforced."}],"priceRefHaltOnStale":[{"type":"boolean","description":"Refuse orders when the reference is stale, instead of serving the last known price."}],"priceRefStaleTolerance":[{"type":"integer","description":"Seconds before a reference counts as stale, 60 to 604800. Defaults to three enforcement intervals, or 300 when enforcement is `EVERY_TRADE` ."}],"priceRefCircuitBreakerBps":[{"type":"integer","description":"Reference move in basis points that pauses the book, 10 to 10000."}],"custodySetupTxs":[{"type":"object","properties":{"baseToken":[{"type":"string","description":"Hash of `addSupportedToken` for the base token."}],"quoteToken":[{"type":"string","description":"Hash of `addSupportedToken` for the quote token."}],"tokenAuthorization":[{"type":"string","description":"Hash of `addAuthorizedContract` on the stock token."}]},"description":"Hashes of the custody transactions you signed after a `CUSTODY_SETUP_REQUIRED` refusal, keyed by the step key. Unknown keys are rejected."}]}}],"examples":{"example":{"value":{"tokenAddress":"\u003cstring>","quoteTokenAddress":"\u003cstring>","name":"\u003cstring>","symbol":"\u003cstring>","settlementMode":"\u003cstring>","tokenType":"\u003cstring>","custodyContract":"\u003cstring>","stockTokenId":"\u003cstring>","underlyingIdentifier":"\u003cstring>","minOrderSize":"\u003cstring>","maxOrderSize":"\u003cstring>","tickSize":"\u003cstring>","makerFeeBps":123,"takerFeeBps":123,"mmMakerRebateBps":123,"allowImport":true,"tradingMode":"\u003cstring>","auctionIntervalSeconds":123,"hybridSwitchSpreadBps":123,"auctionRollUnmatched":true,"priceRefEnabled":true,"priceRefMode":"\u003cstring>","priceRefFeedUrl":"\u003cstring>","priceRefFeedHeaders":"\u003cstring>","priceRefFeedPath":"\u003cstring>","priceRefEnforcement":"\u003cstring>","priceRefSpreadBps":123,"priceRefHaltOnStale":true,"priceRefStaleTolerance":123,"priceRefCircuitBreakerBps":123,"custodySetupTxs":{"baseToken":"\u003cstring>","quoteToken":"\u003cstring>","tokenAuthorization":"\u003cstring>"}}}}}}},"response":{"200":{"application/json":{"schemaArray":[{"type":"object","properties":{"data":[{"type":"object","properties":{"id":[{"type":"string","description":"Order book ID. Use this as `orderBookId` everywhere else."}],"instanceId":[{"type":"string","description":"Owning instance."}],"tokenAddress":[{"type":"string","description":"Base token, lower-cased."}],"quoteTokenAddress":[{"type":"string","description":"Quote token, lower-cased and normalised."}],"name":[{"type":"string","description":"Display name."}],"symbol":[{"type":"string","description":"Display symbol."}],"status":[{"type":"string","description":"`ACTIVE` on creation."}],"tokenType":[{"type":"string","description":"`STOCK_TOKEN` or `LIGHT_TOKEN` ."}],"settlementMode":[{"type":"string","description":"`OFF_CHAIN` or `ON_CHAIN` ."}],"custodyContract":[{"type":"string","description":"Custody contract, or `null` off-chain."}],"underlyingIdentifier":[{"type":"string","description":"ISIN read from the token on an on-chain stock book, otherwise `null` ."}],"stockTokenId":[{"type":"string","description":"Linked stock token record, or `null` ."}],"minOrderSize":[{"type":"string","description":"Minimum quantity."}],"maxOrderSize":[{"type":"string","description":"Maximum quantity, or `null` ."}],"tickSize":[{"type":"string","description":"Price increment."}],"makerFeeBps":[{"type":"integer","description":"Maker fee in basis points."}],"takerFeeBps":[{"type":"integer","description":"Taker fee in basis points."}],"mmMakerRebateBps":[{"type":"integer","description":"Market maker fee override, or `null` ."}],"allowImport":[{"type":"boolean","description":"Whether other instances may import the book."}],"allowSharedLiquidity":[{"type":"boolean","description":"Always `false` when created through this surface."}],"tradingMode":[{"type":"string","description":"`CONTINUOUS` , `PERIODIC_AUCTION` or `HYBRID` ."}],"auctionIntervalSeconds":[{"type":"integer","description":"Auction batch length, or `null` ."}],"currentAuctionId":[{"type":"string","description":"Live auction, or `null` ."}],"hybridSwitchSpreadBps":[{"type":"integer","description":"Hybrid failover threshold, or `null` ."}],"auctionRollUnmatched":[{"type":"boolean","description":"Whether unmatched auction orders roll forward."}],"baseDecimals":[{"type":"integer","description":"Base token decimals, recorded for external securities books only. `null` here."}],"quoteDecimals":[{"type":"integer","description":"Quote token decimals, recorded for external securities books only. `null` here."}],"cfid":[{"type":"string","description":"Commodity fungibility class. `null` on stock books."}],"priceRefEnabled":[{"type":"boolean","description":"Whether the band is enforced."}],"priceRefMode":[{"type":"string","description":"Reference source."}],"priceRefEnforcement":[{"type":"string","description":"Refresh interval."}],"priceRefSpreadBps":[{"type":"integer","description":"Band half-width, or `null` ."}],"priceRefLastPrice":[{"type":"string","description":"Last recorded reference, or `null` ."}],"priceRefLastUpdated":[{"type":"string","description":"ISO 8601 timestamp, or `null` ."}],"createdAt":[{"type":"string","description":"ISO 8601 timestamp."}]}}]}}],"examples":{"example":{"value":{"data":{"id":"\u003cstring>","instanceId":"\u003cstring>","tokenAddress":"\u003cstring>","quoteTokenAddress":"\u003cstring>","name":"\u003cstring>","symbol":"\u003cstring>","status":"\u003cstring>","tokenType":"\u003cstring>","settlementMode":"\u003cstring>","custodyContract":"\u003cstring>","underlyingIdentifier":"\u003cstring>","stockTokenId":"\u003cstring>","minOrderSize":"\u003cstring>","maxOrderSize":"\u003cstring>","tickSize":"\u003cstring>","makerFeeBps":123,"takerFeeBps":123,"mmMakerRebateBps":123,"allowImport":true,"allowSharedLiquidity":true,"tradingMode":"\u003cstring>","auctionIntervalSeconds":123,"currentAuctionId":"\u003cstring>","hybridSwitchSpreadBps":123,"auctionRollUnmatched":true,"baseDecimals":123,"quoteDecimals":123,"cfid":"\u003cstring>","priceRefEnabled":true,"priceRefMode":"\u003cstring>","priceRefEnforcement":"\u003cstring>","priceRefSpreadBps":123,"priceRefLastPrice":"\u003cstring>","priceRefLastUpdated":"\u003cstring>","createdAt":"\u003cstring>"}}}}}}},"deprecated":false}},"jsLinks":[],"subdomain":"testtttt-3cb7d5bb","siteName":"Trusset Protocol","title":"Trusset Protocol - Infrastructure for Asset Tokenization","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-08-19T17:28:44.574Z","originalFileLocation":"endpoints/stock-trading/create-order-book.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}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=\"Open a trading venue for a stock token against a quote token\">\u003cmeta data-mint-head name=\"keywords\" content=\"asset tokenization, blockchain infrastructure, DeFi platform, tokenized assets, smart contracts, collateralized loans, asset financing, multi-chain bridge, real-world assets, RWA tokenization\">\u003cmeta data-mint-head name=\"application-name\" content=\"Trusset Protocol\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003cmeta data-mint-head name=\"robots\" content=\"index, follow\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/testtttt-3cb7d5bb/9u1BXJ52XE_SSqI7/_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/testtttt-3cb7d5bb/9u1BXJ52XE_SSqI7/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/testtttt-3cb7d5bb/9u1BXJ52XE_SSqI7/_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/testtttt-3cb7d5bb/9u1BXJ52XE_SSqI7/_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/testtttt-3cb7d5bb/9u1BXJ52XE_SSqI7/_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/testtttt-3cb7d5bb/9u1BXJ52XE_SSqI7/_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/testtttt-3cb7d5bb/9u1BXJ52XE_SSqI7/_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/testtttt-3cb7d5bb/9u1BXJ52XE_SSqI7/_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/testtttt-3cb7d5bb/9u1BXJ52XE_SSqI7/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Trusset Protocol - Infrastructure for Asset Tokenization\">\u003cmeta data-mint-head property=\"og:description\" content=\"End-to-end infrastructure for tokenizing any asset. Build DeFi applications, manage tokenized assets, and access collateralized lending on our blockchain platform.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Trusset Protocol Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.trusset.org/endpoints/stock-trading/create-order-book\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://docs.trusset.org/assets/logo.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Trusset Protocol - Infrastructure for Asset Tokenization\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"End-to-end infrastructure for tokenizing any asset. Build DeFi applications, manage tokenized assets, and access collateralized lending on our blockchain platform.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://docs.trusset.org/assets/logo.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/testtttt-3cb7d5bb/9u1BXJ52XE_SSqI7/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Trusset Protocol\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#B1F163\">\u003cmeta data-mint-head name=\"og:locale\" content=\"en_US\">\u003cmeta data-mint-head name=\"author\" content=\"Trusset Protocol\">\u003cmeta data-mint-head name=\"googlebot\" content=\"index, follow\">\u003cmeta data-mint-head name=\"language\" content=\"en\">\u003cmeta data-mint-head name=\"category\" content=\"Blockchain Technology\">\u003cmeta data-mint-head name=\"distribution\" content=\"global\">\u003cmeta data-mint-head name=\"coverage\" content=\"Worldwide\">\u003cmeta data-mint-head name=\"target\" content=\"developers, institutions, asset managers\">\u003cmeta data-mint-head name=\"theme-color\" content=\"#B1F163\">\u003cmeta data-mint-head name=\"article:section\" content=\"Blockchain Technology\">\u003cmeta data-mint-head name=\"article:tag\" content=\"blockchain, tokenization, DeFi, smart contracts, asset management, collateral, lending, trading\">\u003cmeta data-mint-head name=\"application-name\" content=\"Trusset Protocol Docs\">\u003cmeta data-mint-head name=\"HandheldFriendly\" content=\"True\">\u003cmeta data-mint-head name=\"MobileOptimized\" content=\"320\">\u003cmeta data-mint-head name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\u003cmeta data-mint-head name=\"charset\" content=\"UTF-8\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.trusset.org/endpoints/stock-trading/create-order-book\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/endpoints/stock-trading/create-order-book.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.trusset.org/#organization\",\"name\":\"Trusset Protocol\",\"url\":\"https://docs.trusset.org\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/testtttt-3cb7d5bb/38jNDl9NUnuI6yfl/logo/patchGreen.png?fit=max\u0026auto=format\u0026n=38jNDl9NUnuI6yfl\u0026q=85\u0026s=d62bfe76228e7c7e125f25f84f935c73\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.trusset.org#website\",\"name\":\"Trusset Protocol\",\"url\":\"https://docs.trusset.org\",\"publisher\":{\"@id\":\"https://docs.trusset.org/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.trusset.org/endpoints/stock-trading/create-order-book#webpage\",\"url\":\"https://docs.trusset.org/endpoints/stock-trading/create-order-book\",\"name\":\"Create Order Book\",\"description\":\"Open a trading venue for a stock token against a quote token\",\"dateModified\":\"2026-08-19T17:28:44.574Z\",\"isPartOf\":{\"@id\":\"https://docs.trusset.org#website\"},\"breadcrumb\":{\"@id\":\"https://docs.trusset.org/endpoints/stock-trading/create-order-book#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.trusset.org/endpoints/stock-trading/create-order-book#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Trading\",\"item\":\"https://docs.trusset.org/endpoints/stock-trading/introduction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Stock Trading\",\"item\":\"https://docs.trusset.org/endpoints/stock-trading/introduction\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Create Order Book\",\"item\":\"https://docs.trusset.org/endpoints/stock-trading/create-order-book\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.trusset.org/endpoints/stock-trading/create-order-book#apireference\",\"headline\":\"Create Order Book\",\"name\":\"Create Order Book\",\"description\":\"Open a trading venue for a stock token against a quote token\",\"url\":\"https://docs.trusset.org/endpoints/stock-trading/create-order-book\",\"mainEntityOfPage\":{\"@id\":\"https://docs.trusset.org/endpoints/stock-trading/create-order-book#webpage\"},\"image\":\"https://docs.trusset.org/assets/logo.png\",\"dateModified\":\"2026-08-19T17:28:44.574Z\",\"publisher\":{\"@id\":\"https://docs.trusset.org/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.trusset.org#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Trusset Protocol\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Trusset Protocol","nav":{"global":{"anchors":[{"anchor":"Issuer App","icon":"globe","href":"https://issuers.trusset.org"},{"anchor":"Custodian App","icon":"building","href":"https://custodians.trusset.org"},{"anchor":"MiCA Register","icon":"list","href":"https://trusset.org/mica-register"},{"anchor":"Demo Call","icon":"phone","href":"https://cal.com/paul-ilami-trusset"}]},"tabs":[{"tab":"Protocol","pages":[{"title":"Protocol","href":"/protocol/intro"}]},{"tab":"Licenses","pages":[{"title":"Licenses","href":"/licenses/introduction"}]},{"tab":"SDK","pages":[{"title":"SDK","href":"/sdk/introduction"}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"API Introduction","icon":"code","href":"/endpoints/introduction"},{"title":"Authentication","icon":"key","href":"/endpoints/authentication"},{"title":"Rate Limits","icon":"gauge","href":"/endpoints/rate-limits"}]},{"group":"MiCA Register","pages":[{"title":"MiCA Register","icon":"building","href":"/endpoints/mica-register/introduction"},{"group":"Queries","pages":[{"title":"List Issuers","api":"GET /api/mica/v1/issuers","href":"/endpoints/mica-register/list-issuers"},{"title":"Get Issuer","api":"GET /api/mica/v1/issuers/{id}","href":"/endpoints/mica-register/get-issuer"},{"title":"Search Issuers","api":"GET /api/mica/v1/search","href":"/endpoints/mica-register/search"},{"title":"Registry Statistics","api":"GET /api/mica/v1/statistics","href":"/endpoints/mica-register/statistics"},{"title":"License Types","api":"GET /api/mica/v1/license-types","href":"/endpoints/mica-register/license-types"},{"title":"Countries","api":"GET /api/mica/v1/countries","href":"/endpoints/mica-register/countries"},{"title":"Health Check","api":"GET /api/mica/v1/health","href":"/endpoints/mica-register/health"}]}]},{"group":"Customers","pages":[{"title":"Customers","icon":"users","href":"/endpoints/customers/introduction"},{"group":"Management","pages":[{"title":"List Customers","api":"GET /customers/api/manage","href":"/endpoints/customers/list"},{"title":"Create Customer","api":"POST /customers/api/manage","href":"/endpoints/customers/create"},{"title":"Get Customer","api":"GET /customers/api/manage/{identifier}","href":"/endpoints/customers/get"},{"title":"Get Lending Positions","api":"GET /customers/api/manage/{customerId}/lending-positions","href":"/endpoints/customers/get-lending-positions"},{"title":"Update Customer","api":"PUT /customers/api/manage/{customerId}","href":"/endpoints/customers/update"},{"title":"Archive Customer","api":"DELETE /customers/api/manage/{customerId}","href":"/endpoints/customers/archive"},{"title":"Batch Get Countries","api":"POST /customers/api/manage/countries/batch","href":"/endpoints/customers/batch-countries"}]},{"group":"Wallets","pages":[{"title":"Link Wallet","api":"POST /customers/api/manage/link-wallet","href":"/endpoints/customers/link-wallet"},{"title":"List Wallets","api":"GET /customers/api/manage/{customerId}/wallets","href":"/endpoints/customers/list-wallets"},{"title":"Add Wallet","api":"POST /customers/api/manage/{customerId}/wallets","href":"/endpoints/customers/add-wallet"},{"title":"Promote Wallet","api":"POST /customers/api/manage/{customerId}/wallets/{address}/promote","href":"/endpoints/customers/promote-wallet"},{"title":"Remove Wallet","api":"DELETE /customers/api/manage/{customerId}/wallets/{address}","href":"/endpoints/customers/remove-wallet"}]},{"group":"Identity Verification","pages":[{"title":"Verify Identity","api":"POST /customers/api/identity/verify","href":"/endpoints/customers/verify-identity"},{"title":"Batch Verify Identities","api":"POST /customers/api/identity/batch-verify","href":"/endpoints/customers/batch-verify"},{"title":"Revoke Identity","api":"POST /customers/api/identity/revoke","href":"/endpoints/customers/revoke-identity"},{"title":"Identity Status","api":"GET /customers/api/identity/status/{walletAddress}","href":"/endpoints/customers/identity-status"},{"title":"Check Transfer Compliance","api":"POST /customers/api/identity/can-transfer","href":"/endpoints/customers/can-transfer"},{"title":"List Verification Profiles","api":"GET /customers/api/verification-profiles","href":"/endpoints/customers/list-verification-profiles"},{"title":"Deploy ONCHAINID","api":"POST /customers/api/identity/onchainid","href":"/endpoints/customers/deploy-onchainid"},{"title":"Confirm ONCHAINID","api":"POST /customers/api/identity/onchainid/confirm","href":"/endpoints/customers/confirm-onchainid"}]},{"group":"Pending Approvals","pages":[{"title":"List Pending Verifications","api":"GET /customers/api/identity/pending","href":"/endpoints/customers/list-pending-verifications"},{"title":"Build Pending Registration","api":"POST /customers/api/identity/pending/calldata","href":"/endpoints/customers/build-pending-registration"},{"title":"Confirm Pending Registration","api":"POST /customers/api/identity/pending/confirm","href":"/endpoints/customers/confirm-pending-registration"},{"title":"Dismiss Pending Verification","api":"POST /customers/api/identity/pending/{id}/dismiss","href":"/endpoints/customers/dismiss-pending-verification"}]},{"group":"Eligibility Registers","pages":[{"title":"List Eligibility Profiles","api":"GET /customers/api/eligibility/profiles","href":"/endpoints/customers/list-eligibility-profiles"},{"title":"List Admissions","api":"GET /customers/api/eligibility/admissions","href":"/endpoints/customers/list-admissions"},{"title":"Get Wallet Eligibility","api":"GET /customers/api/eligibility/wallet/{walletAddress}","href":"/endpoints/customers/get-wallet-eligibility"},{"title":"Request Admission","api":"POST /customers/api/eligibility/admissions","href":"/endpoints/customers/request-admission"},{"title":"Build Admission","api":"POST /customers/api/eligibility/admissions/calldata","href":"/endpoints/customers/build-admission"},{"title":"Confirm Admission","api":"POST /customers/api/eligibility/admissions/confirm","href":"/endpoints/customers/confirm-admission"},{"title":"Request Removal","api":"POST /customers/api/eligibility/removals","href":"/endpoints/customers/request-removal"},{"title":"Build Removal","api":"POST /customers/api/eligibility/removals/calldata","href":"/endpoints/customers/build-removal"},{"title":"Confirm Removal","api":"POST /customers/api/eligibility/removals/confirm","href":"/endpoints/customers/confirm-removal"}]},{"group":"KYC Proofs","pages":[{"title":"Set Operator Key","api":"PUT /customers/api/identity/operator-key","href":"/endpoints/customers/set-operator-key"},{"title":"Get Operator Key","api":"GET /customers/api/identity/operator-key","href":"/endpoints/customers/get-operator-key"},{"title":"Inspect Manifest","api":"POST /customers/api/identity/manifest/inspect","href":"/endpoints/customers/inspect-manifest"},{"title":"Add Claims from Proof","api":"POST /customers/api/identity/claims/from-proof","href":"/endpoints/customers/add-claims-from-proof"},{"title":"Attest Proofs","api":"POST /customers/api/identity/proofs","href":"/endpoints/customers/attest-proofs"},{"title":"List Proofs","api":"GET /customers/api/identity/proofs/{walletAddress}","href":"/endpoints/customers/list-proofs"},{"title":"Revoke Proof","api":"POST /customers/api/identity/proofs/revoke","href":"/endpoints/customers/revoke-proof"},{"title":"List Claims","api":"GET /customers/api/identity/claims/{walletAddress}","href":"/endpoints/customers/list-claims"},{"title":"Add Claim","api":"POST /customers/api/identity/add-claim","href":"/endpoints/customers/add-claim"},{"title":"Revoke Claim","api":"POST /customers/api/identity/revoke-claim","href":"/endpoints/customers/revoke-claim"}]},{"group":"ID Links","pages":[{"title":"Create ID Link","api":"POST /customers/api/id-links","href":"/endpoints/customers/create-id-link"},{"title":"List ID Links","api":"GET /customers/api/id-links","href":"/endpoints/customers/list-id-links"},{"title":"Get ID Link","api":"GET /customers/api/id-links/{linkId}","href":"/endpoints/customers/get-id-link"},{"title":"Issue Sumsub Token","api":"POST /customers/api/id-links/{linkId}/sumsub-token","href":"/endpoints/customers/issue-sumsub-token"},{"title":"Bind Link Wallet","api":"POST /customers/api/id-links/{linkId}/wallet","href":"/endpoints/customers/bind-link-wallet"},{"title":"Recheck Link Review","api":"POST /customers/api/id-links/{linkId}/recheck","href":"/endpoints/customers/recheck-link-review"},{"title":"Revoke ID Link","api":"PUT /customers/api/id-links/{linkId}/revoke","href":"/endpoints/customers/revoke-id-link"},{"title":"Resend ID Link","api":"POST /customers/api/id-links/{linkId}/resend","href":"/endpoints/customers/resend-id-link"}]},{"group":"Disclosure Requests","pages":[{"title":"List Disclosure Requests","api":"GET /customers/api/disclosure-requests","href":"/endpoints/customers/list-disclosure-requests"},{"title":"Create Disclosure Request","api":"POST /customers/api/disclosure-requests","href":"/endpoints/customers/create-disclosure-request"},{"title":"Get Disclosure Request","api":"GET /customers/api/disclosure-requests/{id}","href":"/endpoints/customers/get-disclosure-request"},{"title":"Cancel Disclosure Request","api":"POST /customers/api/disclosure-requests/{id}/cancel","href":"/endpoints/customers/cancel-disclosure-request"}]}]},{"group":"Tokenization","pages":[{"title":"Tokenization","icon":"cubes","href":"/endpoints/tokenization/introduction"},{"group":"Importing","pages":[{"title":"Detect Token","api":"POST /external-tokens/api/detect","href":"/endpoints/tokenization/detect-token"},{"title":"Import Token","api":"POST /external-tokens/api/import","href":"/endpoints/tokenization/import-token"},{"title":"List Imports","api":"GET /external-tokens/api/list","href":"/endpoints/tokenization/list-imports"},{"title":"Get Import","api":"GET /external-tokens/api/{tokenAddress}","href":"/endpoints/tokenization/get-import"},{"title":"Refresh On-Chain State","api":"GET /external-tokens/api/{tokenAddress}/onchain","href":"/endpoints/tokenization/refresh-onchain"},{"title":"Update Profile","api":"PUT /external-tokens/api/{tokenAddress}/profile","href":"/endpoints/tokenization/update-profile"},{"title":"Update Image","api":"PUT /external-tokens/api/{tokenAddress}/image","href":"/endpoints/tokenization/update-image"},{"title":"Upload File","api":"POST /external-tokens/api/upload","href":"/endpoints/tokenization/upload-file"},{"title":"Remove Import","api":"DELETE /external-tokens/api/{tokenAddress}","href":"/endpoints/tokenization/remove-import"}]},{"group":"Instrument Record","pages":[{"title":"Issuer-Signed Instrument Record","href":"/endpoints/tokenization/issuer-signed-record"},{"title":"Get Instrument Schema","api":"GET /instruments/api/schema","href":"/endpoints/tokenization/get-instrument-schema"},{"title":"Get Instrument","api":"GET /instruments/api/{tokenAddress}","href":"/endpoints/tokenization/get-instrument"},{"title":"Request Instrument Approval","api":"POST /instruments/api/{tokenAddress}/approval-request","href":"/endpoints/tokenization/request-instrument-approval"},{"title":"Save Instrument","api":"PUT /instruments/api/{tokenAddress}","href":"/endpoints/tokenization/save-instrument"},{"title":"Release Instrument","api":"DELETE /instruments/api/{tokenAddress}","href":"/endpoints/tokenization/release-instrument"}]}]},{"group":"Trading","pages":[{"group":"Stock Trading","pages":[{"title":"Stock Trading","description":"Central limit order book venue for tokenized stocks","icon":"chart-line","href":"/endpoints/stock-trading/introduction"},{"group":"Order Books","pages":[{"title":"Create Order Book","api":"POST /orderbooks/stocks/api/order-books","href":"/endpoints/stock-trading/create-order-book"},{"title":"Get Order Book","api":"GET /orderbooks/stocks/api/order-books/{orderBookId}","description":"Retrieve the full configuration of one stock order book","href":"/endpoints/stock-trading/get-order-book"},{"title":"List Order Books","api":"GET /orderbooks/stocks/api/order-books","href":"/endpoints/stock-trading/list-order-books"},{"title":"Update Order Book","api":"PATCH /orderbooks/stocks/api/order-books/{orderBookId}","href":"/endpoints/stock-trading/update-order-book"},{"title":"Get Trade Readiness","api":"GET /orderbooks/stocks/api/order-books/{orderBookId}/readiness","href":"/endpoints/stock-trading/get-trade-readiness"},{"title":"Get Shared Peers","api":"GET /orderbooks/stocks/api/order-books/{orderBookId}/shared-peers","href":"/endpoints/stock-trading/get-shared-peers"},{"title":"List Importable Order Books","api":"GET /orderbooks/stocks/api/order-books/importable","href":"/endpoints/stock-trading/list-importable"},{"title":"Import Order Book","api":"POST /orderbooks/stocks/api/imports","href":"/endpoints/stock-trading/import-order-book"},{"title":"Remove Import","api":"DELETE /orderbooks/stocks/api/imports/{importId}","href":"/endpoints/stock-trading/remove-import"}]},{"group":"Orders","pages":[{"title":"Submit Order","api":"POST /orderbooks/stocks/api/orders","href":"/endpoints/stock-trading/submit-order"},{"title":"Submit Priority Order","api":"POST /orderbooks/stocks/api/orders/priority","href":"/endpoints/stock-trading/submit-priority-order"},{"title":"Cancel Order","api":"DELETE /orderbooks/stocks/api/orders/{orderId}","href":"/endpoints/stock-trading/cancel-order"},{"title":"Get Order","api":"GET /orderbooks/stocks/api/orders/{orderId}","href":"/endpoints/stock-trading/get-order"},{"title":"Get User Orders","api":"GET /orderbooks/stocks/api/users/{userAddress}/orders","href":"/endpoints/stock-trading/get-user-orders"},{"title":"Get User Trades","api":"GET /orderbooks/stocks/api/users/{userAddress}/trades","href":"/endpoints/stock-trading/get-user-trades"}]},{"group":"Market Data","pages":[{"title":"Get Order Book Snapshot","api":"GET /orderbooks/stocks/api/order-books/{orderBookId}/snapshot","href":"/endpoints/stock-trading/get-order-book-snapshot"},{"title":"Get Order Book Trades","api":"GET /orderbooks/stocks/api/order-books/{orderBookId}/trades","href":"/endpoints/stock-trading/get-order-book-trades"},{"title":"Get Order Book Stats","api":"GET /orderbooks/stocks/api/order-books/{orderBookId}/stats","href":"/endpoints/stock-trading/get-order-book-stats"},{"title":"Get Daily Stats","api":"GET /orderbooks/stocks/api/order-books/by-token/{tokenAddress}/daily-stats","href":"/endpoints/stock-trading/get-daily-stats"},{"title":"Get Settlement","api":"GET /orderbooks/stocks/api/settlements/{settlementId}","href":"/endpoints/stock-trading/get-settlement"},{"title":"Get Custody Balance","api":"GET /orderbooks/stocks/api/custody/{custodyContract}/balance/{userAddress}/{tokenAddress}","href":"/endpoints/stock-trading/get-custody-balance"}]},{"group":"Price Reference","pages":[{"title":"Set Price Reference","api":"POST /orderbooks/stocks/api/order-books/{orderBookId}/price-reference","href":"/endpoints/stock-trading/set-price-reference"},{"title":"Get Price Reference","api":"GET /orderbooks/stocks/api/order-books/{orderBookId}/price-reference","href":"/endpoints/stock-trading/get-price-reference"},{"title":"Get Price Reference History","api":"GET /orderbooks/stocks/api/order-books/{orderBookId}/price-reference/history","href":"/endpoints/stock-trading/get-price-reference-history"}]},{"group":"Auctions","pages":[{"title":"Get Current Auction","api":"GET /orderbooks/stocks/api/order-books/{orderBookId}/auctions/current","href":"/endpoints/stock-trading/get-current-auction"},{"title":"Get Auction","api":"GET /orderbooks/stocks/api/order-books/{orderBookId}/auctions/{auctionId}","href":"/endpoints/stock-trading/get-auction"}]},{"group":"Request for Quote (RFQ)","pages":[{"title":"Create RFQ","api":"POST /orderbooks/stocks/api/rfq","href":"/endpoints/stock-trading/create-rfq"},{"title":"Get RFQ","api":"GET /orderbooks/stocks/api/rfq/{id}","href":"/endpoints/stock-trading/get-rfq"},{"title":"List RFQ Quotes","api":"GET /orderbooks/stocks/api/rfq/{id}/quotes","href":"/endpoints/stock-trading/list-rfq-quotes"},{"title":"Accept Quote","api":"POST /orderbooks/stocks/api/rfq/{id}/accept","href":"/endpoints/stock-trading/accept-rfq-quote"},{"title":"Cancel RFQ","api":"POST /orderbooks/stocks/api/rfq/{id}/cancel","href":"/endpoints/stock-trading/cancel-rfq"}]},{"group":"Off-Chain Settlement","pages":[{"title":"Create Off-Chain Order Book","api":"POST /orderbooks/stocks/api/offchain/order-books","href":"/endpoints/stock-trading/offchain-create-order-book"},{"title":"List Off-Chain Order Books","api":"GET /orderbooks/stocks/api/offchain/order-books","href":"/endpoints/stock-trading/offchain-list-order-books"},{"title":"Get Off-Chain Order Book","api":"GET /orderbooks/stocks/api/offchain/order-books/{orderBookId}","href":"/endpoints/stock-trading/offchain-get-order-book"},{"title":"Submit Off-Chain Order","api":"POST /orderbooks/stocks/api/offchain/orders","href":"/endpoints/stock-trading/offchain-submit-order"},{"title":"Cancel Off-Chain Order","api":"DELETE /orderbooks/stocks/api/offchain/orders/{orderId}","href":"/endpoints/stock-trading/offchain-cancel-order"},{"title":"Get Customer Orders","api":"GET /orderbooks/stocks/api/offchain/customers/{customerRef}/orders","href":"/endpoints/stock-trading/offchain-get-customer-orders"},{"title":"Get Customer Trades","api":"GET /orderbooks/stocks/api/offchain/customers/{customerRef}/trades","href":"/endpoints/stock-trading/offchain-get-customer-trades"},{"title":"Get Off-Chain Snapshot","api":"GET /orderbooks/stocks/api/offchain/order-books/{orderBookId}/snapshot","href":"/endpoints/stock-trading/offchain-get-snapshot"},{"title":"Get Off-Chain Trades","api":"GET /orderbooks/stocks/api/offchain/order-books/{orderBookId}/trades","href":"/endpoints/stock-trading/offchain-get-trades"},{"title":"Set Off-Chain Price Reference","api":"POST /orderbooks/stocks/api/offchain/order-books/{orderBookId}/price-reference","href":"/endpoints/stock-trading/offchain-set-price-reference"},{"title":"Get Off-Chain Price Reference","api":"GET /orderbooks/stocks/api/offchain/order-books/{orderBookId}/price-reference","href":"/endpoints/stock-trading/offchain-get-price-reference"}]}]},{"group":"External Securities Trading","pages":[{"title":"External Securities Trading","icon":"building-columns","href":"/endpoints/external-securities-trading/introduction"},{"group":"Venue","pages":[{"title":"Get Custody Contract","api":"GET /orderbooks/external-securities/api/custody-contract","href":"/endpoints/external-securities-trading/get-custody-contract"},{"title":"List Security Tokens","api":"GET /orderbooks/external-securities/api/security-tokens","href":"/endpoints/external-securities-trading/list-security-tokens"}]},{"group":"Order Books","pages":[{"title":"Create Order Book","api":"POST /orderbooks/external-securities/api/order-books","href":"/endpoints/external-securities-trading/create-order-book"},{"title":"Get Order Book","api":"GET /orderbooks/external-securities/api/order-books/{orderBookId}","href":"/endpoints/external-securities-trading/get-order-book"},{"title":"List Order Books","api":"GET /orderbooks/external-securities/api/order-books","href":"/endpoints/external-securities-trading/list-order-books"},{"title":"Update Order Book","api":"PATCH /orderbooks/external-securities/api/order-books/{orderBookId}","href":"/endpoints/external-securities-trading/update-order-book"},{"title":"Get Trade Readiness","api":"GET /orderbooks/external-securities/api/order-books/{orderBookId}/readiness","href":"/endpoints/external-securities-trading/get-trade-readiness"},{"title":"Get Security Status","api":"GET /orderbooks/external-securities/api/order-books/{orderBookId}/security","href":"/endpoints/external-securities-trading/get-security-status"},{"title":"Get Shared Peers","api":"GET /orderbooks/external-securities/api/order-books/{orderBookId}/shared-peers","href":"/endpoints/external-securities-trading/get-shared-peers"},{"title":"List Importable Order Books","api":"GET /orderbooks/external-securities/api/order-books/importable","href":"/endpoints/external-securities-trading/list-importable"},{"title":"Import Order Book","api":"POST /orderbooks/external-securities/api/imports","href":"/endpoints/external-securities-trading/import-order-book"},{"title":"Remove Import","api":"DELETE /orderbooks/external-securities/api/imports/{importId}","href":"/endpoints/external-securities-trading/remove-import"}]},{"group":"Orders","pages":[{"title":"Prepare Order","api":"POST /orderbooks/external-securities/api/orders/prepare","href":"/endpoints/external-securities-trading/prepare-order"},{"title":"Submit Order","api":"POST /orderbooks/external-securities/api/orders","href":"/endpoints/external-securities-trading/submit-order"},{"title":"Cancel Order","api":"DELETE /orderbooks/external-securities/api/orders/{orderId}","href":"/endpoints/external-securities-trading/cancel-order"},{"title":"Cancel Orders On Chain","api":"POST /orderbooks/external-securities/api/orders/cancel-on-chain","href":"/endpoints/external-securities-trading/cancel-on-chain"},{"title":"Approve Settlement Asset","api":"POST /orderbooks/external-securities/api/order-books/{orderBookId}/quote-approval","href":"/endpoints/external-securities-trading/approve-quote-asset"},{"title":"Get Order","api":"GET /orderbooks/external-securities/api/orders/{orderId}","href":"/endpoints/external-securities-trading/get-order"},{"title":"Get User Orders","api":"GET /orderbooks/external-securities/api/users/{userAddress}/orders","href":"/endpoints/external-securities-trading/get-user-orders"},{"title":"Get User Trades","api":"GET /orderbooks/external-securities/api/users/{userAddress}/trades","href":"/endpoints/external-securities-trading/get-user-trades"}]},{"group":"Settlement","pages":[{"title":"List Pending Settlements","api":"GET /orderbooks/external-securities/api/settlements/pending","href":"/endpoints/external-securities-trading/list-pending-settlements"},{"title":"Get Settlement","api":"GET /orderbooks/external-securities/api/settlements/{settlementId}","href":"/endpoints/external-securities-trading/get-settlement"},{"title":"Get Settlement Calldata","api":"GET /orderbooks/external-securities/api/settlements/{settlementId}/calldata","href":"/endpoints/external-securities-trading/get-settlement-calldata"},{"title":"Confirm Settlement","api":"POST /orderbooks/external-securities/api/settlements/{settlementId}/confirm","href":"/endpoints/external-securities-trading/confirm-settlement"}]},{"group":"Market Data","pages":[{"title":"Get Order Book Snapshot","api":"GET /orderbooks/external-securities/api/order-books/{orderBookId}/snapshot","href":"/endpoints/external-securities-trading/get-order-book-snapshot"},{"title":"Get Order Book Trades","api":"GET /orderbooks/external-securities/api/order-books/{orderBookId}/trades","href":"/endpoints/external-securities-trading/get-order-book-trades"},{"title":"Get Order Book Stats","api":"GET /orderbooks/external-securities/api/order-books/{orderBookId}/stats","href":"/endpoints/external-securities-trading/get-order-book-stats"},{"title":"Get Daily Stats","api":"GET /orderbooks/external-securities/api/order-books/by-token/{tokenAddress}/daily-stats","href":"/endpoints/external-securities-trading/get-daily-stats"},{"title":"Get Custody Balance","api":"GET /orderbooks/external-securities/api/custody/{custodyContract}/balance/{userAddress}/{tokenAddress}","href":"/endpoints/external-securities-trading/get-custody-balance"}]},{"group":"Price Reference","pages":[{"title":"Set Price Reference","api":"POST /orderbooks/external-securities/api/order-books/{orderBookId}/price-reference","href":"/endpoints/external-securities-trading/set-price-reference"},{"title":"Get Price Reference","api":"GET /orderbooks/external-securities/api/order-books/{orderBookId}/price-reference","href":"/endpoints/external-securities-trading/get-price-reference"},{"title":"Get Price Reference History","api":"GET /orderbooks/external-securities/api/order-books/{orderBookId}/price-reference/history","href":"/endpoints/external-securities-trading/get-price-reference-history"}]}]},{"group":"Commodity Trading","pages":[{"title":"Commodity Trading","icon":"coins","href":"/endpoints/commodity-trading/introduction"},{"group":"Order Books","pages":[{"title":"Create Order Book","api":"POST /orderbooks/commodities/api/order-books","href":"/endpoints/commodity-trading/create-order-book"},{"title":"Get Order Book","api":"GET /orderbooks/commodities/api/order-books/{orderBookId}","href":"/endpoints/commodity-trading/get-order-book"},{"title":"List Order Books","api":"GET /orderbooks/commodities/api/order-books","href":"/endpoints/commodity-trading/list-order-books"},{"title":"Update Order Book","api":"PATCH /orderbooks/commodities/api/order-books/{orderBookId}","href":"/endpoints/commodity-trading/update-order-book"},{"title":"Get Trade Readiness","api":"GET /orderbooks/commodities/api/order-books/{orderBookId}/readiness","href":"/endpoints/commodity-trading/get-trade-readiness"},{"title":"List Importable Order Books","api":"GET /orderbooks/commodities/api/order-books/importable","href":"/endpoints/commodity-trading/list-importable"},{"title":"Import Order Book","api":"POST /orderbooks/commodities/api/imports","href":"/endpoints/commodity-trading/import-order-book"},{"title":"Remove Import","api":"DELETE /orderbooks/commodities/api/imports/{importId}","href":"/endpoints/commodity-trading/remove-import"}]},{"group":"Orders","pages":[{"title":"Submit Order","api":"POST /orderbooks/commodities/api/orders","href":"/endpoints/commodity-trading/submit-order"},{"title":"Submit Priority Order","api":"POST /orderbooks/commodities/api/orders/priority","href":"/endpoints/commodity-trading/submit-priority-order"},{"title":"Cancel Order","api":"DELETE /orderbooks/commodities/api/orders/{orderId}","href":"/endpoints/commodity-trading/cancel-order"},{"title":"Get Order","api":"GET /orderbooks/commodities/api/orders/{orderId}","href":"/endpoints/commodity-trading/get-order"},{"title":"Get User Orders","api":"GET /orderbooks/commodities/api/users/{userAddress}/orders","href":"/endpoints/commodity-trading/get-user-orders"},{"title":"Get User Trades","api":"GET /orderbooks/commodities/api/users/{userAddress}/trades","href":"/endpoints/commodity-trading/get-user-trades"}]},{"group":"Market Data","pages":[{"title":"Get Order Book Snapshot","api":"GET /orderbooks/commodities/api/order-books/{orderBookId}/snapshot","href":"/endpoints/commodity-trading/get-order-book-snapshot"},{"title":"Get Order Book Trades","api":"GET /orderbooks/commodities/api/order-books/{orderBookId}/trades","href":"/endpoints/commodity-trading/get-order-book-trades"},{"title":"Get Order Book Stats","api":"GET /orderbooks/commodities/api/order-books/{orderBookId}/stats","href":"/endpoints/commodity-trading/get-order-book-stats"},{"title":"Get Daily Stats","api":"GET /orderbooks/commodities/api/order-books/by-token/{tokenAddress}/daily-stats","href":"/endpoints/commodity-trading/get-daily-stats"},{"title":"Get Settlement","api":"GET /orderbooks/commodities/api/settlements/{settlementId}","href":"/endpoints/commodity-trading/get-settlement"},{"title":"Get Custody Balance","api":"GET /orderbooks/commodities/api/custody/{custodyContract}/balance/{userAddress}/{tokenAddress}","href":"/endpoints/commodity-trading/get-custody-balance"}]},{"group":"Price Reference","pages":[{"title":"Set Price Reference","api":"POST /orderbooks/commodities/api/order-books/{orderBookId}/price-reference","href":"/endpoints/commodity-trading/set-price-reference"},{"title":"Get Price Reference","api":"GET /orderbooks/commodities/api/order-books/{orderBookId}/price-reference","href":"/endpoints/commodity-trading/get-price-reference"},{"title":"Get Price Reference History","api":"GET /orderbooks/commodities/api/order-books/{orderBookId}/price-reference/history","href":"/endpoints/commodity-trading/get-price-reference-history"}]}]}]},{"group":"Lending","pages":[{"title":"Lending","icon":"building-columns","href":"/endpoints/lending/introduction"},{"group":"Markets","pages":[{"title":"List Markets","api":"GET /lending-external-securities-v2/api/markets","href":"/endpoints/lending/list-markets"},{"title":"Get Market","api":"GET /lending-external-securities-v2/api/markets/{marketId}","href":"/endpoints/lending/get-market"},{"title":"Get Market Metrics","api":"GET /lending-external-securities-v2/api/markets/{marketId}/metrics","href":"/endpoints/lending/get-metrics"},{"title":"Get Market Config","api":"GET /lending-external-securities-v2/api/markets/{marketId}/config","href":"/endpoints/lending/get-config"},{"title":"Get Supply Caps","api":"GET /lending-external-securities-v2/api/markets/{marketId}/supply-caps","href":"/endpoints/lending/get-supply-caps"},{"title":"Get Max Borrow","api":"GET /lending-external-securities-v2/api/markets/{marketId}/max-borrow","href":"/endpoints/lending/get-max-borrow"},{"title":"List Transactions","api":"GET /lending-external-securities-v2/api/markets/{marketId}/transactions","href":"/endpoints/lending/list-transactions"},{"title":"Get Market History","api":"GET /lending-external-securities-v2/api/markets/{marketId}/history","href":"/endpoints/lending/get-history"},{"title":"Get Index Status","api":"GET /lending-external-securities-v2/api/markets/{marketId}/index-status","href":"/endpoints/lending/get-index-status"},{"title":"Get Lifecycle Statement","api":"GET /lending-external-securities-v2/api/markets/{marketId}/lifecycle-statement","href":"/endpoints/lending/get-lifecycle-statement"},{"title":"List Borrow Assets","api":"GET /lending-external-securities-v2/api/markets/borrow-assets","href":"/endpoints/lending/list-borrow-assets"}]},{"group":"Deployment","pages":[{"title":"Get Deployment Options","api":"GET /lending-external-securities-v2/api/markets/deployment-options","href":"/endpoints/lending/get-deployment-options"},{"title":"Preview Asset Data","api":"GET /lending-external-securities-v2/api/markets/asset-data/preview","href":"/endpoints/lending/preview-asset-data"},{"title":"Deploy Market","api":"POST /lending-external-securities-v2/api/markets/deploy","href":"/endpoints/lending/deploy-market"},{"title":"Get Nominations","api":"GET /lending-external-securities-v2/api/markets/{marketId}/nominations","href":"/endpoints/lending/get-nominations"},{"title":"Nominate Candidate","api":"POST /lending-external-securities-v2/api/markets/{marketId}/nominations","href":"/endpoints/lending/nominate-candidate"},{"title":"Withdraw Nomination","api":"POST /lending-external-securities-v2/api/markets/{marketId}/nominations/withdraw","href":"/endpoints/lending/withdraw-nomination"}]},{"group":"Asset Data","pages":[{"title":"Get Asset Data","api":"GET /lending-external-securities-v2/api/markets/{market}/asset-data","href":"/endpoints/lending/get-asset-data"},{"title":"Get Asset Data Bundle","api":"GET /lending-external-securities-v2/api/markets/{market}/asset-data/bundle","href":"/endpoints/lending/get-asset-data-bundle"},{"title":"Attest Asset Data","api":"POST /lending-external-securities-v2/api/markets/{market}/asset-data/attest","href":"/endpoints/lending/attest-asset-data"},{"title":"Confirm Asset Data Attestation","api":"POST /lending-external-securities-v2/api/markets/{market}/asset-data/attest/confirm","href":"/endpoints/lending/confirm-asset-data-attestation"},{"title":"Acknowledge Asset Data","api":"POST /lending-external-securities-v2/api/markets/{market}/asset-data/acknowledge","href":"/endpoints/lending/acknowledge-asset-data"},{"title":"Confirm Asset Data Acknowledgement","api":"POST /lending-external-securities-v2/api/markets/{market}/asset-data/acknowledge/confirm","href":"/endpoints/lending/confirm-asset-data-acknowledgement"}]},{"group":"Setup","pages":[{"title":"Get Configuration Status","api":"GET /lending-external-securities-v2/api/markets/{marketId}/configuration-status","href":"/endpoints/lending/get-configuration-status"},{"title":"Get Setup Steps","api":"GET /lending-external-securities-v2/api/markets/{marketId}/setup-steps","href":"/endpoints/lending/get-setup-steps"},{"title":"Configure Market","api":"POST /lending-external-securities-v2/api/markets/{marketId}/configure","href":"/endpoints/lending/configure-market"},{"title":"Confirm Configuration","api":"POST /lending-external-securities-v2/api/markets/{marketId}/confirm-configuration","href":"/endpoints/lending/confirm-configuration"},{"title":"Get Upgrade Status","api":"GET /lending-external-securities-v2/api/markets/{marketId}/upgrade","href":"/endpoints/lending/get-upgrade-status"},{"title":"Upgrade Market","api":"POST /lending-external-securities-v2/api/markets/{marketId}/upgrade","href":"/endpoints/lending/upgrade-market"}]},{"group":"Risk and Access","pages":[{"title":"Update Market Config","api":"POST /lending-external-securities-v2/api/markets/{marketId}/config","href":"/endpoints/lending/update-config"},{"title":"Get Identity Gates","api":"GET /lending-external-securities-v2/api/markets/{marketId}/identity-gates","href":"/endpoints/lending/get-identity-gates"},{"title":"Set Identity Gates","api":"POST /lending-external-securities-v2/api/markets/{marketId}/identity-gates","href":"/endpoints/lending/set-identity-gates"}]},{"group":"Whitelists","pages":[{"title":"List Whitelists","api":"GET /lending-external-securities-v2/api/access-lists","href":"/endpoints/lending/list-access-lists"},{"title":"Get Whitelist","api":"GET /lending-external-securities-v2/api/access-lists/{listId}","href":"/endpoints/lending/get-access-list"},{"title":"Create Whitelist","api":"POST /lending-external-securities-v2/api/access-lists","href":"/endpoints/lending/create-access-list"},{"title":"Confirm Whitelist Creation","api":"POST /lending-external-securities-v2/api/access-lists/confirm-create","href":"/endpoints/lending/confirm-access-list-creation"},{"title":"Update Whitelist","api":"PATCH /lending-external-securities-v2/api/access-lists/{listId}","href":"/endpoints/lending/update-access-list"},{"title":"Set Whitelist Members","api":"POST /lending-external-securities-v2/api/access-lists/{listId}/members","href":"/endpoints/lending/set-access-list-members"},{"title":"Confirm Whitelist Members","api":"POST /lending-external-securities-v2/api/access-lists/{listId}/members/confirm","href":"/endpoints/lending/confirm-access-list-members"},{"title":"Set Whitelist Manager","api":"POST /lending-external-securities-v2/api/access-lists/{listId}/managers","href":"/endpoints/lending/set-access-list-manager"},{"title":"Confirm Whitelist Manager","api":"POST /lending-external-securities-v2/api/access-lists/{listId}/managers/confirm","href":"/endpoints/lending/confirm-access-list-manager"},{"title":"Transfer Whitelist Ownership","api":"POST /lending-external-securities-v2/api/access-lists/{listId}/owner","href":"/endpoints/lending/transfer-access-list-ownership"},{"title":"Confirm Whitelist Ownership","api":"POST /lending-external-securities-v2/api/access-lists/{listId}/owner/confirm","href":"/endpoints/lending/confirm-access-list-ownership"},{"title":"Rescan Whitelist","api":"POST /lending-external-securities-v2/api/access-lists/{listId}/rescan","href":"/endpoints/lending/rescan-access-list"}]},{"group":"Rates and Loan Terms","pages":[{"title":"Get Rate Mode","api":"GET /lending-external-securities-v2/api/markets/{marketId}/rate-mode","href":"/endpoints/lending/get-rate-mode"},{"title":"Set Rate Mode","api":"POST /lending-external-securities-v2/api/markets/{marketId}/rate-mode","href":"/endpoints/lending/set-rate-mode"},{"title":"Set Max Fixed Rate","api":"POST /lending-external-securities-v2/api/markets/{marketId}/max-fixed-rate","href":"/endpoints/lending/set-max-fixed-rate"},{"title":"Get Term Config","api":"GET /lending-external-securities-v2/api/markets/{marketId}/term-config","href":"/endpoints/lending/get-term-config"},{"title":"Set Term Config","api":"POST /lending-external-securities-v2/api/markets/{marketId}/term-config","href":"/endpoints/lending/set-term-config"},{"title":"Set Allow Extension","api":"POST /lending-external-securities-v2/api/markets/{marketId}/allow-extension","href":"/endpoints/lending/set-allow-extension"},{"title":"List Extensions","api":"GET /lending-external-securities-v2/api/markets/{marketId}/extensions","href":"/endpoints/lending/list-extensions"},{"title":"Propose Extension","api":"POST /lending-external-securities-v2/api/markets/{marketId}/extensions","href":"/endpoints/lending/propose-extension"},{"title":"Extension Action","api":"POST /lending-external-securities-v2/api/markets/{marketId}/extensions/{proposalId}/{action}","href":"/endpoints/lending/extension-action"},{"title":"Confirm Extension Transaction","api":"POST /lending-external-securities-v2/api/markets/{marketId}/extensions/confirm-tx","href":"/endpoints/lending/confirm-extension-transaction"},{"title":"Get Exit Liquidity","api":"GET /lending-external-securities-v2/api/markets/{marketId}/exit-liquidity","href":"/endpoints/lending/get-exit-liquidity"},{"title":"Set Reserve Ratio","api":"POST /lending-external-securities-v2/api/markets/{marketId}/reserve-ratio","href":"/endpoints/lending/set-reserve-ratio"}]},{"group":"Terms of Use","pages":[{"title":"Get Terms","api":"GET /lending-external-securities-v2/api/markets/{marketId}/terms","href":"/endpoints/lending/get-terms"},{"title":"List Terms Versions","api":"GET /lending-external-securities-v2/api/markets/{marketId}/terms/versions","href":"/endpoints/lending/list-terms-versions"},{"title":"Get Terms Version","api":"GET /lending-external-securities-v2/api/markets/{marketId}/terms/versions/{version}","href":"/endpoints/lending/get-terms-version"},{"title":"Save Terms","api":"PUT /lending-external-securities-v2/api/markets/{marketId}/terms","href":"/endpoints/lending/save-terms"},{"title":"Unpublish Terms","api":"DELETE /lending-external-securities-v2/api/markets/{marketId}/terms","href":"/endpoints/lending/unpublish-terms"},{"title":"Export Terms","api":"GET /lending-external-securities-v2/api/markets/{marketId}/terms/export","href":"/endpoints/lending/export-terms"}]},{"group":"Oracle","pages":[{"title":"Get Oracle Status","api":"GET /lending-external-securities-v2/api/markets/{marketId}/oracle-status","href":"/endpoints/lending/get-oracle-status"},{"title":"Verify Signer","api":"GET /lending-external-securities-v2/api/markets/{marketId}/verify-signer","href":"/endpoints/lending/verify-signer"},{"title":"Sync Oracle Price","api":"POST /lending-external-securities-v2/api/markets/{marketId}/sync-oracle","href":"/endpoints/lending/sync-oracle"},{"title":"Sign Price","api":"POST /lending-external-securities-v2/api/markets/{marketId}/sign-price","href":"/endpoints/lending/sign-price"},{"title":"Verify Signed Price","api":"POST /lending-external-securities-v2/api/markets/{marketId}/verify-price","href":"/endpoints/lending/verify-price"},{"title":"Record Price Attestation","api":"POST /lending-external-securities-v2/api/markets/{marketId}/price-attestation","href":"/endpoints/lending/record-price-attestation"},{"title":"Get Oracle History","api":"GET /lending-external-securities-v2/api/markets/{marketId}/oracle-history","href":"/endpoints/lending/get-oracle-history"}]},{"group":"Liquidity","pages":[{"title":"List Liquidity Providers","api":"GET /lending-external-securities-v2/api/positions/{marketId}/providers","href":"/endpoints/lending/list-providers"},{"title":"Get Provider Balance","api":"GET /lending-external-securities-v2/api/positions/{marketId}/provider-balance/{provider}","href":"/endpoints/lending/get-provider-balance"},{"title":"Add Liquidity","api":"POST /lending-external-securities-v2/api/positions/{marketId}/add-liquidity","href":"/endpoints/lending/add-liquidity"},{"title":"Remove Liquidity","api":"POST /lending-external-securities-v2/api/positions/{marketId}/remove-liquidity","href":"/endpoints/lending/remove-liquidity"}]},{"group":"Vault Liquidity","pages":[{"title":"Get Vault Liquidity","api":"GET /lending-external-securities-v2/api/markets/{marketId}/vault-liquidity","href":"/endpoints/lending/get-vault-liquidity"},{"title":"Set Vault Liquidity","api":"POST /lending-external-securities-v2/api/markets/{marketId}/vault-liquidity","href":"/endpoints/lending/set-vault-liquidity"},{"title":"Register Vault","api":"POST /lending-external-securities-v2/api/markets/{marketId}/vault-liquidity/{action}","href":"/endpoints/lending/register-vault"},{"title":"List Connected Vaults","api":"GET /lending-external-securities-v2/api/markets/{marketId}/connected-vaults","href":"/endpoints/lending/list-connected-vaults"},{"title":"Deposit to Vault","api":"POST /lending-external-securities-v2/api/markets/{marketId}/vaults/{vaultAddress}/deposit","href":"/endpoints/lending/deposit-to-vault"},{"title":"Redeem from Vault","api":"POST /lending-external-securities-v2/api/markets/{marketId}/vaults/{vaultAddress}/redeem","href":"/endpoints/lending/redeem-from-vault"}]},{"group":"Borrowing","pages":[{"title":"Open Loan","api":"POST /lending-external-securities-v2/api/positions/{marketId}/open-loan","href":"/endpoints/lending/open-loan"},{"title":"Borrow More","api":"POST /lending-external-securities-v2/api/positions/{marketId}/borrow-more","href":"/endpoints/lending/borrow-more"},{"title":"Get Permit Quote","api":"POST /lending-external-securities-v2/api/positions/{marketId}/permit-quote","href":"/endpoints/lending/get-permit-quote"},{"title":"Repay Loan","api":"POST /lending-external-securities-v2/api/positions/{marketId}/repay","href":"/endpoints/lending/repay"},{"title":"Close Loan","api":"POST /lending-external-securities-v2/api/positions/{marketId}/close-loan","href":"/endpoints/lending/close-loan"},{"title":"Add Collateral","api":"POST /lending-external-securities-v2/api/positions/{marketId}/add-collateral","href":"/endpoints/lending/add-collateral"},{"title":"Withdraw Collateral","api":"POST /lending-external-securities-v2/api/positions/{marketId}/withdraw-collateral","href":"/endpoints/lending/withdraw-collateral"},{"title":"Get Escrowed Collateral","api":"GET /lending-external-securities-v2/api/positions/{marketId}/escrowed-collateral/{holderAddress}","href":"/endpoints/lending/get-escrowed-collateral"},{"title":"Claim Escrowed Collateral","api":"POST /lending-external-securities-v2/api/positions/{marketId}/claim-escrowed-collateral","href":"/endpoints/lending/claim-escrowed-collateral"},{"title":"Get Escrowed Surplus","api":"GET /lending-external-securities-v2/api/positions/{marketId}/escrowed-surplus/{holderAddress}","href":"/endpoints/lending/get-escrowed-surplus"},{"title":"Claim Surplus","api":"POST /lending-external-securities-v2/api/positions/{marketId}/claim-surplus","href":"/endpoints/lending/claim-surplus"}]},{"group":"Positions \u0026 Queries","pages":[{"title":"List Positions","api":"GET /lending-external-securities-v2/api/positions/{marketId}/positions","href":"/endpoints/lending/list-positions"},{"title":"Get Position","api":"GET /lending-external-securities-v2/api/positions/{marketId}/positions/{positionId}","href":"/endpoints/lending/get-position"},{"title":"Get Position Statement","api":"GET /lending-external-securities-v2/api/positions/{marketId}/positions/{positionId}/statement","href":"/endpoints/lending/get-position-statement"},{"title":"Get Loan","api":"GET /lending-external-securities-v2/api/positions/{marketId}/loan/{loanId}","href":"/endpoints/lending/get-loan"},{"title":"Get User Loans","api":"GET /lending-external-securities-v2/api/positions/{marketId}/user-loans/{userAddress}","href":"/endpoints/lending/get-user-loans"},{"title":"Get User Collateral","api":"GET /lending-external-securities-v2/api/positions/{marketId}/user-collateral/{userAddress}","href":"/endpoints/lending/get-user-collateral"}]},{"group":"Fees","pages":[{"title":"Get Fee Split","api":"GET /lending-external-securities-v2/api/markets/{marketId}/fee-split","href":"/endpoints/lending/get-fee-split"},{"title":"Get Cashflows","api":"GET /lending-external-securities-v2/api/markets/{marketId}/cashflows","href":"/endpoints/lending/get-cashflows"},{"title":"Sweep Operator Fees","api":"POST /lending-external-securities-v2/api/markets/{marketId}/operator-fees/sweep","href":"/endpoints/lending/sweep-operator-fees"},{"title":"Sweep Distributor Fees","api":"POST /lending-external-securities-v2/api/markets/{marketId}/distributor-fees/sweep","href":"/endpoints/lending/sweep-distributor-fees"},{"title":"Sweep Protocol Fees","api":"POST /lending-external-securities-v2/api/markets/{marketId}/protocol-fees/sweep","href":"/endpoints/lending/sweep-protocol-fees"},{"title":"Sweep Infrastructure Fees","api":"POST /lending-external-securities-v2/api/markets/{marketId}/infrastructure-fees/sweep","href":"/endpoints/lending/sweep-infrastructure-fees"},{"title":"Rotate Operator Wallet","api":"POST /lending-external-securities-v2/api/markets/{marketId}/operator-wallet","href":"/endpoints/lending/rotate-operator-wallet"}]},{"group":"Insurance Fund","pages":[{"title":"Get Insurance Status","api":"GET /lending-external-securities-v2/api/markets/{marketId}/insurance/status","href":"/endpoints/lending/get-insurance-status"},{"title":"Top Up Insurance Fund","api":"POST /lending-external-securities-v2/api/markets/{marketId}/insurance/top-up","href":"/endpoints/lending/top-up-insurance"},{"title":"Record Insurance Top-Up","api":"POST /lending-external-securities-v2/api/markets/{marketId}/insurance/record-topup","href":"/endpoints/lending/record-insurance-top-up"},{"title":"Withdraw from Insurance Fund","api":"POST /lending-external-securities-v2/api/markets/{marketId}/insurance/withdraw-calldata","href":"/endpoints/lending/withdraw-insurance"}]},{"group":"Liquidations","pages":[{"title":"Get Liquidation Config","api":"GET /lending-external-securities-v2/api/liquidations/{marketId}/config","href":"/endpoints/lending/get-liquidation-config"},{"title":"Get Liquidatable Loans","api":"GET /lending-external-securities-v2/api/liquidations/{marketId}/liquidatable-loans","href":"/endpoints/lending/get-liquidatable-loans"},{"title":"Liquidate Loan","api":"POST /lending-external-securities-v2/api/liquidations/{marketId}/liquidate/{loanId}","href":"/endpoints/lending/liquidate"},{"title":"Get Pending Liquidations","api":"GET /lending-external-securities-v2/api/liquidations/{marketId}/pending-liquidations","href":"/endpoints/lending/get-pending-liquidations"},{"title":"List Settled Liquidations","api":"GET /lending-external-securities-v2/api/liquidations/{marketId}/settled-liquidations","href":"/endpoints/lending/list-settled-liquidations"},{"title":"Get Liquidation Stats","api":"GET /lending-external-securities-v2/api/liquidations/{marketId}/liquidation-stats","href":"/endpoints/lending/get-liquidation-stats"},{"title":"Get Router Stats","api":"GET /lending-external-securities-v2/api/liquidations/router-stats","href":"/endpoints/lending/get-router-stats"}]},{"group":"Atomic Sale","pages":[{"title":"Get Atomic Sale","api":"GET /lending-external-securities-v2/api/liquidations/{marketId}/atomic-sale","href":"/endpoints/lending/get-atomic-sale"},{"title":"Set Atomic Mode","api":"POST /lending-external-securities-v2/api/liquidations/{marketId}/atomic-mode","href":"/endpoints/lending/set-atomic-mode"},{"title":"Set Sale Bid","api":"POST /lending-external-securities-v2/api/liquidations/{marketId}/sale-bid","href":"/endpoints/lending/set-sale-bid"},{"title":"Sell Pending Liquidation","api":"POST /lending-external-securities-v2/api/liquidations/liquidation/{liquidationId}/sell","href":"/endpoints/lending/sell-pending-liquidation"}]},{"group":"Liquidation Settlement","pages":[{"title":"Withdraw Collateral for Sale","api":"POST /lending-external-securities-v2/api/liquidations/withdraw-collateral/{liquidationId}","href":"/endpoints/lending/withdraw-collateral-for-sale"},{"title":"Report Partial Sale","api":"POST /lending-external-securities-v2/api/liquidations/report-partial-sale/{liquidationId}","href":"/endpoints/lending/report-partial-sale"},{"title":"Settle Liquidation","api":"POST /lending-external-securities-v2/api/liquidations/settle/{liquidationId}","href":"/endpoints/lending/settle-liquidation"},{"title":"Close Liquidation","api":"POST /lending-external-securities-v2/api/liquidations/close/{liquidationId}","href":"/endpoints/lending/close-liquidation"},{"title":"Handle Liquidation Timeout","api":"POST /lending-external-securities-v2/api/liquidations/handle-timeout/{liquidationId}","href":"/endpoints/lending/handle-timeout"},{"title":"Reopen Liquidation","api":"POST /lending-external-securities-v2/api/liquidations/reopen/{liquidationId}","href":"/endpoints/lending/reopen-liquidation"}]},{"group":"Dutch Auctions","pages":[{"title":"Get Auction Module","api":"GET /lending-external-securities-v2/api/markets/{marketId}/auction-module","href":"/endpoints/lending/get-auction-module"},{"title":"Wire Auction Module","api":"POST /lending-external-securities-v2/api/markets/{marketId}/auction-module","href":"/endpoints/lending/wire-auction-module"},{"title":"List Active Auctions","api":"GET /lending-external-securities-v2/api/liquidations/{marketId}/auctions","href":"/endpoints/lending/list-auctions"},{"title":"Get Auction","api":"GET /lending-external-securities-v2/api/liquidations/{marketId}/auctions/{auctionId}","href":"/endpoints/lending/get-auction"},{"title":"Get Loan Auction","api":"GET /lending-external-securities-v2/api/liquidations/{marketId}/loan-auction/{loanId}","href":"/endpoints/lending/get-loan-auction"},{"title":"Bid on Auction","api":"POST /lending-external-securities-v2/api/liquidations/{marketId}/bid-on-auction","href":"/endpoints/lending/bid-on-auction"},{"title":"Settle Expired Auction","api":"POST /lending-external-securities-v2/api/liquidations/{marketId}/settle-expired-auction","href":"/endpoints/lending/settle-expired-auction"}]},{"group":"Hooks","pages":[{"title":"List Hooks","api":"GET /lending-external-securities-v2/api/hooks/{marketId}","href":"/endpoints/lending/list-hooks"},{"title":"Get Hook","api":"GET /lending-external-securities-v2/api/hooks/{marketId}/{hookId}","href":"/endpoints/lending/get-hook"},{"title":"Create Hook","api":"POST /lending-external-securities-v2/api/hooks/{marketId}","href":"/endpoints/lending/create-hook"},{"title":"Update Hook","api":"PUT /lending-external-securities-v2/api/hooks/{marketId}/{hookId}","href":"/endpoints/lending/update-hook"},{"title":"Delete Hook","api":"DELETE /lending-external-securities-v2/api/hooks/{marketId}/{hookId}","href":"/endpoints/lending/delete-hook"},{"title":"Toggle Hook","api":"POST /lending-external-securities-v2/api/hooks/{marketId}/{hookId}/toggle","href":"/endpoints/lending/toggle-hook"},{"title":"Execute Hook","api":"POST /lending-external-securities-v2/api/hooks/{marketId}/{hookId}/execute","href":"/endpoints/lending/execute-hook"},{"title":"Get Hook Executions","api":"GET /lending-external-securities-v2/api/hooks/{marketId}/{hookId}/executions","href":"/endpoints/lending/get-hook-executions"},{"title":"List Hook Deliveries","api":"GET /lending-external-securities-v2/api/hooks/{marketId}/{hookId}/deliveries","href":"/endpoints/lending/list-hook-deliveries"},{"title":"Rotate Hook Secret","api":"POST /lending-external-securities-v2/api/hooks/{marketId}/{hookId}/rotate-secret","href":"/endpoints/lending/rotate-hook-secret"}]},{"group":"Liquidation Bots","pages":[{"title":"List Liquidation Bots","api":"GET /lending-external-securities-v2/api/liquidation-bots","href":"/endpoints/lending/list-bots"},{"title":"Deploy Liquidation Bot","api":"POST /lending-external-securities-v2/api/liquidation-bots","href":"/endpoints/lending/deploy-bot"},{"title":"Confirm Bot Deployment","api":"POST /lending-external-securities-v2/api/liquidation-bots/confirm-deploy","href":"/endpoints/lending/confirm-bot-deployment"},{"title":"Get Liquidation Bot","api":"GET /lending-external-securities-v2/api/liquidation-bots/{botId}","href":"/endpoints/lending/get-bot"},{"title":"List Bot Transactions","api":"GET /lending-external-securities-v2/api/liquidation-bots/{botId}/transactions","href":"/endpoints/lending/list-bot-transactions"},{"title":"Connect Bot to Market","api":"POST /lending-external-securities-v2/api/liquidation-bots/{botId}/connect","href":"/endpoints/lending/connect-bot"},{"title":"Bot Owner Action","api":"POST /lending-external-securities-v2/api/liquidation-bots/{botId}/action","href":"/endpoints/lending/bot-action"},{"title":"Fund Bot","api":"POST /lending-external-securities-v2/api/liquidation-bots/{botId}/fund","href":"/endpoints/lending/fund-bot"},{"title":"Confirm Bot Transaction","api":"POST /lending-external-securities-v2/api/liquidation-bots/{botId}/confirm-tx","href":"/endpoints/lending/confirm-bot-transaction"},{"title":"Update Bot","api":"PATCH /lending-external-securities-v2/api/liquidation-bots/{botId}","href":"/endpoints/lending/update-bot"}]}]},{"group":"Operators","pages":[{"title":"Operators","icon":"user-tie","href":"/endpoints/operators/introduction"},{"group":"Queue","pages":[{"title":"List Pending Markets","api":"GET /lending-external-securities-v2/api/markets/queue/pending","href":"/endpoints/operators/list-pending-markets"},{"title":"List Queued Markets","api":"GET /lending-external-securities-v2/api/markets/queued","href":"/endpoints/operators/list-queued-markets"},{"title":"Get Queued Market","api":"GET /lending-external-securities-v2/api/markets/queued/{marketAddress}/details","href":"/endpoints/operators/get-queued-market"},{"title":"Accept Lender Role","api":"POST /lending-external-securities-v2/api/markets/queued/{marketAddress}/accept","href":"/endpoints/operators/accept-lender-role"},{"title":"Confirm Lender Role","api":"POST /lending-external-securities-v2/api/markets/queued/{marketAddress}/confirm-accept","href":"/endpoints/operators/confirm-lender-role"}]},{"group":"Lender of Record","pages":[{"title":"Get Operator","api":"GET /lending-external-securities-v2/api/markets/{marketId}/operator","href":"/endpoints/operators/get-operator"},{"title":"Get Handover","api":"GET /lending-external-securities-v2/api/markets/{marketId}/handover","href":"/endpoints/operators/get-handover"}]},{"group":"Roles","pages":[{"title":"Get Access Role","api":"GET /lending-external-securities-v2/api/markets/{marketId}/access-role/{address}","href":"/endpoints/operators/get-access-role"},{"title":"Set Access Role","api":"POST /lending-external-securities-v2/api/markets/{marketId}/access-role","href":"/endpoints/operators/set-access-role"},{"title":"Set Liquidator Role","api":"POST /lending-external-securities-v2/api/markets/{marketId}/liquidator-role","href":"/endpoints/operators/set-liquidator-role"}]}]},{"group":"Asset Register","pages":[{"title":"Asset Register","icon":"book","href":"/endpoints/asset-register/introduction"},{"group":"Pledges","pages":[{"title":"List Pledges","api":"GET /lending-external-securities-v2/api/pledges/{marketAddress}","href":"/endpoints/asset-register/list-pledges"}]}]},{"group":"Vaults","pages":[{"title":"Vaults","icon":"vault","href":"/endpoints/vaults/introduction"},{"group":"Queries","pages":[{"title":"List Vaults","api":"GET /lending-external-securities-v2/api/vaults","href":"/endpoints/vaults/list-vaults"},{"title":"Get Vault","api":"GET /lending-external-securities-v2/api/vaults/{vaultId}","href":"/endpoints/vaults/get-vault"}]},{"group":"Vault Groups","pages":[{"title":"Get Vault Group","api":"GET /lending-external-securities-v2/api/vaults/groups/{groupId}","href":"/endpoints/vaults/get-vault-group"},{"title":"Deposit to Vault Group","api":"POST /lending-external-securities-v2/api/vaults/groups/{groupId}/deposit","href":"/endpoints/vaults/deposit-to-vault-group"}]},{"group":"Positions","pages":[{"title":"Get Position","api":"GET /lending-external-securities-v2/api/vaults/{vaultId}/position/{holderAddress}","href":"/endpoints/vaults/get-position"},{"title":"List Transactions","api":"GET /lending-external-securities-v2/api/vaults/{vaultId}/transactions","href":"/endpoints/vaults/list-vault-transactions"}]},{"group":"Deposits \u0026 Redemptions","pages":[{"title":"Deposit","api":"POST /lending-external-securities-v2/api/vaults/{vaultId}/deposit","href":"/endpoints/vaults/deposit"},{"title":"Redeem","api":"POST /lending-external-securities-v2/api/vaults/{vaultId}/redeem","href":"/endpoints/vaults/redeem"},{"title":"Confirm Transaction","api":"POST /lending-external-securities-v2/api/vaults/{vaultId}/confirm-tx","href":"/endpoints/vaults/confirm-transaction"}]},{"group":"Distributor Fees","pages":[{"title":"Get Earnings","api":"GET /lending-external-securities-v2/api/vaults/{vaultId}/earnings","href":"/endpoints/vaults/get-earnings"},{"title":"Collect Distributor Fees","api":"POST /lending-external-securities-v2/api/vaults/{vaultId}/distributor-fees/collect","href":"/endpoints/vaults/collect-distributor-fees"},{"title":"Pay Distributor","api":"POST /lending-external-securities-v2/api/vaults/{vaultId}/distributor-fees/pay","href":"/endpoints/vaults/pay-distributor"},{"title":"Pay Operator Fees","api":"POST /lending-external-securities-v2/api/vaults/{vaultId}/operator-fees/pay","href":"/endpoints/vaults/pay-operator-fees"},{"title":"Set Distributor Wallet","api":"POST /lending-external-securities-v2/api/vaults/{vaultId}/distributor-wallet","href":"/endpoints/vaults/set-distributor-wallet"},{"title":"Set Distributor Approval","api":"POST /lending-external-securities-v2/api/vaults/{vaultId}/distributor-approval","href":"/endpoints/vaults/set-distributor-approval"}]}]},{"group":"Seller Financing","pages":[{"title":"Seller Financing","icon":"handshake","href":"/endpoints/seller-financing/introduction"},{"group":"Markets","pages":[{"title":"List Markets","api":"GET /seller-financing/api/markets","href":"/endpoints/seller-financing/list-markets"},{"title":"Get Market","api":"GET /seller-financing/api/markets/{marketId}","href":"/endpoints/seller-financing/get-market"}]},{"group":"Deployment","pages":[{"title":"Get Deployment Options","api":"GET /seller-financing/api/markets/options","href":"/endpoints/seller-financing/get-deployment-options"},{"title":"Build Deployment","api":"POST /seller-financing/api/markets","href":"/endpoints/seller-financing/deploy-market"},{"title":"Record Deployment","api":"POST /seller-financing/api/markets/confirm","href":"/endpoints/seller-financing/confirm-deployment"},{"title":"Build Token Setup","api":"POST /seller-financing/api/markets/{marketId}/token-setup","href":"/endpoints/seller-financing/token-setup"},{"title":"Get Role Audit","api":"GET /seller-financing/api/markets/{marketId}/role-audit","href":"/endpoints/seller-financing/get-role-audit"},{"title":"Get Role Certificate","api":"GET /seller-financing/api/markets/{marketId}/role-audit/certificate","href":"/endpoints/seller-financing/get-role-certificate"}]},{"group":"Listings","pages":[{"title":"List Listings","api":"GET /seller-financing/api/markets/{marketId}/listings","href":"/endpoints/seller-financing/list-listings"},{"title":"Get Listing","api":"GET /seller-financing/api/markets/{marketId}/listings/{listingId}","href":"/endpoints/seller-financing/get-listing"},{"title":"Get Quote","api":"GET /seller-financing/api/markets/{marketId}/quote","href":"/endpoints/seller-financing/quote-terms"},{"title":"Create Listing","api":"POST /seller-financing/api/markets/{marketId}/listings","href":"/endpoints/seller-financing/create-listing"},{"title":"Cancel Listing","api":"POST /seller-financing/api/markets/{marketId}/listings/{listingId}/cancel","href":"/endpoints/seller-financing/cancel-listing"}]},{"group":"Loans","pages":[{"title":"Purchase","api":"POST /seller-financing/api/markets/{marketId}/listings/{listingId}/purchase","href":"/endpoints/seller-financing/purchase"},{"title":"Get Loan Status","api":"GET /seller-financing/api/markets/{marketId}/listings/{listingId}/status","href":"/endpoints/seller-financing/get-loan-status"},{"title":"Repay","api":"POST /seller-financing/api/markets/{marketId}/listings/{listingId}/repay","href":"/endpoints/seller-financing/repay"},{"title":"Claim Asset","api":"POST /seller-financing/api/markets/{marketId}/listings/{listingId}/claim-asset","href":"/endpoints/seller-financing/claim-asset"},{"title":"Liquidate","api":"POST /seller-financing/api/markets/{marketId}/listings/{listingId}/liquidate","href":"/endpoints/seller-financing/liquidate"}]},{"group":"Payouts","pages":[{"title":"Get Claimable","api":"GET /seller-financing/api/markets/{marketId}/claimable/{address}","href":"/endpoints/seller-financing/get-claimable"},{"title":"Withdraw","api":"POST /seller-financing/api/markets/{marketId}/withdraw","href":"/endpoints/seller-financing/withdraw"},{"title":"Claim Escrowed Collateral","api":"POST /seller-financing/api/markets/{marketId}/claim-escrowed-collateral","href":"/endpoints/seller-financing/claim-escrowed-collateral"}]},{"group":"Administration","pages":[{"title":"Update Configuration","api":"POST /seller-financing/api/markets/{marketId}/config","href":"/endpoints/seller-financing/update-config"},{"title":"Set Identity Register","api":"POST /seller-financing/api/markets/{marketId}/identity-registry","href":"/endpoints/seller-financing/set-identity-registry"},{"title":"Pause Market","api":"POST /seller-financing/api/markets/{marketId}/pause","href":"/endpoints/seller-financing/pause-market"},{"title":"Unpause Market","api":"POST /seller-financing/api/markets/{marketId}/unpause","href":"/endpoints/seller-financing/unpause-market"}]}]}]},{"tab":"Tools","pages":[{"title":"Tools","href":"/tools/kyc-starks/overview"}]},{"tab":"Security","pages":[{"title":"Security","href":"/security/overview"}]}]},"title":"Trusset Protocol - Infrastructure for Asset Tokenization","buildId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","deploymentId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","dynamics":["c2aa737661","b0f84f53ff","2b790eda92"],"chunks":["OpenApiReferenceProvider-BRm_l__d.js","utils-f1l1Oc-G.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BlhqDhJO.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DHCB7rsC.js","snippetPresets-CYXLx6Hv.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-kQh739Uz.js","ApiExamples-B78P2dEq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C4YLPVAh.js","shallow-vlLnTDkQ.js","getApiPlaygroundDisplay-D_98hhvf.js","CodeSnippet-DtnZHGqq.js","CodeSnippets-CLFb8KJt.js","getPastedJson-Cq-zlbnU.js","icon-sN3t983t.js","MethodPill-P_YQ2s09.js","DuplicateIcon-BVzyNsGJ.js","createIcon-B3jqgqC6.js","DynamicMarkdown-Crwq6WG_.js","SectionHeading-C7pGS2Bb.js","axios-vUo_bRtp.js"]}