True when the bundler can fund this token — paying for a whole multi-exchange group with one transaction instead of a deposit per order. Available on Solana, and on supported EVM chains.
Latest security verdict for this token. Absent until the token has been used in a swap at least once.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Houdini documentation","colors":{"primary":"#A955F7","light":"#A955F7","dark":"#6D19BB"},"logo":{"light":"https://mintcdn.com/houdini/1qxWMAnpbp51-Yh3/logo/wordmark-black.svg?fit=max\u0026auto=format\u0026n=1qxWMAnpbp51-Yh3\u0026q=85\u0026s=835e11b4170923b979bdf1ba4cb302b8","dark":"https://mintcdn.com/houdini/1qxWMAnpbp51-Yh3/logo/wordmark-white.svg?fit=max\u0026auto=format\u0026n=1qxWMAnpbp51-Yh3\u0026q=85\u0026s=93f5cefb108d85fa5bf5397fa325f004"},"favicon":"https://mintcdn.com/houdini/J_K5qV0WwrgjImSc/favicon.svg?fit=max\u0026auto=format\u0026n=J_K5qV0WwrgjImSc\u0026q=85\u0026s=590f308a0168b015c97bd34e59347cc6","appearance":{"default":"dark"},"background":{"decoration":"gradient"},"footer":{"socials":{"x":"https://x.com/HoudiniSwap","github":"https://github.com/HoudiniSwap"}},"fonts":{"family":"Inter"},"integrations":{"posthog":{"apiKey":"phc_w4HfQH4UqlUBDknwuvTDJMJLJ9CpshxIwzH3eZFa32c","apiHost":"https://api4.houdiniswap.com"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"houdini","hasAudioNarration":false,"actualSubdomain":"houdini","customDomains":["docs.houdiniswap.com"],"gitSource":{"type":"github","owner":"houdiniswap","repo":"docs-v2","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6adf551c362b83303f22ca3e","collectionId":"21cee0d4-33ce-4bea-ac75-bfa3750b351e","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adf551c362b83303f22ca3e"},"entitlements":{},"buildId":"6adf551c362b83303f22ca3e","clientVersion":"0.0.3966","searchFilterCounts":[{"language":"default","tag":"API V2 Reference ","count":41},{"language":"default","tag":"Developer Hub","count":23},{"language":"default","tag":"Overview","count":16},{"language":"default","tag":"Multi-Exchange","count":9},{"language":"default","tag":"On-chain DEX or Bridge","count":9},{"language":"default","tag":"Partner Account","count":9},{"language":"default","tag":"Swap Flow Guides","count":8},{"language":"default","tag":"Private and Standard Swaps","count":5},{"language":"default","tag":"Core Concepts","count":5},{"language":"default","tag":"Guides","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"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":false},"customCss":[],"page":{"pagePath":"api-reference/reference-data/get-token-by-id","slug":"/api-reference/reference-data/get-token-by-id","pageMetadata":{"title":"Get token by ID","description":"Returns a single token by its `id`. Use this to refresh one token you already know, rather than re-fetching the whole list.","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /tokens/{id}","href":"/api-reference/reference-data/get-token-by-id","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Returns a single token by its \", _jsx(_components.code, {\n children: \"id\"\n }), \". Use this to refresh one token you already know, rather than re-fetching the whole list.\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Get token by ID","description":"Returns a single token by its `id`. Use this to refresh one token you already know, rather than re-fetching the whole list.","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /tokens/{id}","href":"/api-reference/reference-data/get-token-by-id","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"GetTokenById","responses":{"200":"9fe9e034-a4f4-4cf0-9e48-c57310a1b866","401":"756dc2d8-7af1-4220-b21d-e735711030d4","402":"13dc74ef-615a-4f95-91a0-0f03d523d1e7","404":"49d0a9b1-799d-46cf-8717-105d4cc823ef","422":"0543a13a-e4f5-405d-b2aa-7ee7f8b27531","429":"26f2df80-1286-4711-a37b-b04ada0da3c3","500":"1c62ea0e-f09d-4658-9f04-cdc87b3f0f2c"},"description":"Returns a single token by its `id`. Use this to refresh one token you already know, rather than re-fetching the whole list.","summary":"Get token by ID","tags":["Reference Data"],"security":["7d6390df-3488-4ac6-a15f-b4c1dcb2c11e"],"parameters":["ab46fb76-3da3-4ec3-8b7c-caca1abd9624"],"method":"get","type":"path","servers":["8ebb4976-baf3-411c-8a1c-cd4d2c55015e"],"path":"/tokens/{id}","baseUrlOptions":["http://localhost:3003/v2"],"title":"Get token by ID","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"ab46fb76-3da3-4ec3-8b7c-caca1abd9624":{"description":"The token id returned by [Get tokens](/api-reference/private-and-standard-swaps/get-tokens)","in":"path","name":"id","required":true,"schema":{"type":"string","pattern":"^[a-fA-F0-9]{24}$","isRequired":true,"description":"The token id returned by [Get tokens](/api-reference/private-and-standard-swaps/get-tokens)","uniqueKey":"","typeLabel":"string"},"example":"6689b73ec90e45f3b3e51558"}},"responses":{"9fe9e034-a4f4-4cf0-9e48-c57310a1b866":{"description":"Success","content":{"application/json":{"schema":{"properties":{"icon":{"type":"string","description":"Token icon URL.","isRequired":true,"uniqueKey":"icon","typeLabel":"string"},"id":{"type":"string","description":"The token id. Pass this as `from` / `to` when quoting.","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"chain":{"type":"string","description":"Chain short name, e.g. `ethereum`. Matches `shortName` on `chainData`.","isRequired":true,"uniqueKey":"chain","typeLabel":"string"},"decimals":{"type":"integer","format":"int32","description":"On-chain decimals. Amounts in this API are decimals in the token's own units, so you only need this for on-chain work.","isRequired":true,"uniqueKey":"decimals","typeLabel":"integer\u003cint32>"},"symbol":{"type":"string","isRequired":true,"uniqueKey":"symbol","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"name","typeLabel":"string"},"created":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"created","typeLabel":"string\u003cdate-time>"},"chainData":{"properties":{"icon":{"type":"string","description":"Chain icon URL.","isRequired":true,"uniqueKey":"chainData.icon","typeLabel":"string"},"addressValidation":{"type":"string","description":"Regex a wallet address on this chain must match. Use it to validate `addressTo` before creating an exchange.","isRequired":true,"uniqueKey":"chainData.addressValidation","typeLabel":"string"},"tokenAddressValidation":{"type":"string","description":"Regex a token contract address on this chain must match.","isRequired":true,"uniqueKey":"chainData.tokenAddressValidation","typeLabel":"string"},"id":{"type":"string","isRequired":true,"uniqueKey":"chainData.id","typeLabel":"string"},"created":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"chainData.created","typeLabel":"string\u003cdate-time>"},"name":{"type":"string","description":"Readable chain name, e.g. `Bitcoin`.","isRequired":true,"uniqueKey":"chainData.name","typeLabel":"string"},"shortName":{"type":"string","description":"The chain's identifier. Pass this wherever an endpoint takes a chain, e.g. `ethereum`.","isRequired":true,"uniqueKey":"chainData.shortName","typeLabel":"string"},"explorerUrl":{"type":"string","description":"Template for a transaction link — substitute `{txHash}`, e.g. `https://blockchair.com/bitcoin/transaction/{txHash}`.","isRequired":true,"uniqueKey":"chainData.explorerUrl","typeLabel":"string"},"addressUrl":{"type":"string","description":"Template for an address link — substitute `{address}`, e.g. `https://blockchair.com/bitcoin/address/{address}`.","isRequired":true,"uniqueKey":"chainData.addressUrl","typeLabel":"string"},"priority":{"type":"number","format":"double","description":"Display order, lower sorts first.\n* `0` is the highest priority and `99999` the lowest.","isRequired":true,"uniqueKey":"chainData.priority","typeLabel":"number\u003cdouble>"},"kind":{"type":"string","description":"Chain family, e.g. `evm`, `sol`, `bitcoin`, `xmr`, `ltc`. Determines the address format and which on-chain steps a DEX swap needs.","isRequired":true,"uniqueKey":"chainData.kind","typeLabel":"string"},"enabled":{"type":"boolean","description":"False when the chain is temporarily not routing swaps.","isRequired":true,"uniqueKey":"chainData.enabled","typeLabel":"boolean"},"shortNameV1":{"type":"string","description":"The chain's name in the v1 API. Use `shortName` instead.","isRequired":true,"uniqueKey":"chainData.shortNameV1","typeLabel":"string"},"modified":{"type":"string","format":"date-time","uniqueKey":"chainData.modified","typeLabel":"string\u003cdate-time>"},"memoNeeded":{"oneOf":[{"type":"boolean","description":"True when an address on this chain needs a memo or destination tag, e.g. XRP or TON. Send it as `destinationTag` for the payout address, or `refundExtraId` for the refund address.","uniqueKey":"chainData.memoNeeded.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"True when an address on this chain needs a memo or destination tag, e.g. XRP or TON. Send it as `destinationTag` for the payout address, or `refundExtraId` for the refund address.","uniqueKey":"chainData.memoNeeded.oneOf.1","typeLabel":"null"}],"uniqueKey":"chainData.memoNeeded","typeLabel":"boolean | null"},"hashUrl":{"type":"string","description":"Explorer link for a transaction hash, when it differs from `explorerUrl`.","uniqueKey":"chainData.hashUrl","typeLabel":"string"},"chainId":{"oneOf":[{"type":"number","format":"double","description":"EVM chain id, e.g. `1` for Ethereum. Null on non-EVM chains.","uniqueKey":"chainData.chainId.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","description":"EVM chain id, e.g. `1` for Ethereum. Null on non-EVM chains.","uniqueKey":"chainData.chainId.oneOf.1","typeLabel":"null"}],"uniqueKey":"chainData.chainId","typeLabel":"number\u003cdouble> | null"}},"required":["icon","addressValidation","tokenAddressValidation","id","created","name","shortName","explorerUrl","addressUrl","priority","kind","enabled","shortNameV1"],"type":"object","additionalProperties":false,"description":"The chain this token lives on.","isRequired":true,"uniqueKey":"chainData","typeLabel":"object"},"enabled":{"type":"boolean","description":"False when the token is temporarily not swappable.","isRequired":true,"uniqueKey":"enabled","typeLabel":"boolean"},"address":{"oneOf":[{"type":"string","description":"Contract address. Null for a chain's native coin — see `mainnet`.","uniqueKey":"address.oneOf.0","typeLabel":"string"},{"type":"null","description":"Contract address. Null for a chain's native coin — see `mainnet`.","uniqueKey":"address.oneOf.1","typeLabel":"null"}],"uniqueKey":"address","typeLabel":"string | null"},"modified":{"type":"string","format":"date-time","uniqueKey":"modified","typeLabel":"string\u003cdate-time>"},"description":{"oneOf":[{"type":"string","description":"Token description from CoinGecko.","uniqueKey":"description.oneOf.0","typeLabel":"string"},{"type":"null","description":"Token description from CoinGecko.","uniqueKey":"description.oneOf.1","typeLabel":"null"}],"uniqueKey":"description","typeLabel":"string | null"},"mainnet":{"type":"boolean","description":"True for the chain's native coin (e.g. ETH on Ethereum), false for an issued token (e.g. USDT). Not related to mainnet vs testnet.","uniqueKey":"mainnet","typeLabel":"boolean"},"unverified":{"type":"boolean","description":"True when we have not reviewed this token yet — check `securityScan` before using it.","uniqueKey":"unverified","typeLabel":"boolean"},"hasDex":{"type":"boolean","description":"True when the token can be swapped on DEX routes.","uniqueKey":"hasDex","typeLabel":"boolean"},"hasCex":{"type":"boolean","description":"True when the token can be swapped on private and standard routes.","uniqueKey":"hasCex","typeLabel":"boolean"},"hasBundler":{"type":"boolean","description":"True when the bundler can fund this token — paying for a whole multi-exchange group with one transaction instead of a deposit per order. Available on Solana, and on supported EVM chains.","uniqueKey":"hasBundler","typeLabel":"boolean"},"hasSelfPrivate":{"type":"boolean","description":"True when the token supports self-to-self private swaps — send it and receive the same token at another address, with no on-chain link.","uniqueKey":"hasSelfPrivate","typeLabel":"boolean"},"cexTokenId":{"type":"string","description":"The token's identifier on centralized exchanges.","default":"","uniqueKey":"cexTokenId","typeLabel":"string"},"rank":{"oneOf":[{"type":"number","format":"double","description":"CoinGecko market-cap rank. Null when unranked.","uniqueKey":"rank.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","description":"CoinGecko market-cap rank. Null when unranked.","uniqueKey":"rank.oneOf.1","typeLabel":"null"}],"uniqueKey":"rank","typeLabel":"number\u003cdouble> | null"},"cgId":{"oneOf":[{"type":"string","description":"CoinGecko id for this token.","uniqueKey":"cgId.oneOf.0","typeLabel":"string"},{"type":"null","description":"CoinGecko id for this token.","uniqueKey":"cgId.oneOf.1","typeLabel":"null"}],"uniqueKey":"cgId","typeLabel":"string | null"},"marketCapChange24h":{"type":"number","format":"double","description":"24h market cap change percentage from CoinGecko.","uniqueKey":"marketCapChange24h","typeLabel":"number\u003cdouble>"},"circulatingSupply":{"type":"number","format":"double","description":"Token circulating supply from CoinGecko.","uniqueKey":"circulatingSupply","typeLabel":"number\u003cdouble>"},"price":{"oneOf":[{"type":"number","format":"double","description":"Current price in USD, from CoinGecko.","uniqueKey":"price.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","description":"Current price in USD, from CoinGecko.","uniqueKey":"price.oneOf.1","typeLabel":"null"}],"uniqueKey":"price","typeLabel":"number\u003cdouble> | null"},"marketCap":{"oneOf":[{"type":"number","format":"double","description":"Market cap in USD, from CoinGecko.","uniqueKey":"marketCap.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","description":"Market cap in USD, from CoinGecko.","uniqueKey":"marketCap.oneOf.1","typeLabel":"null"}],"uniqueKey":"marketCap","typeLabel":"number\u003cdouble> | null"},"volume":{"oneOf":[{"type":"number","format":"double","description":"24h trading volume in USD, from CoinGecko.","uniqueKey":"volume.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","description":"24h trading volume in USD, from CoinGecko.","uniqueKey":"volume.oneOf.1","typeLabel":"null"}],"uniqueKey":"volume","typeLabel":"number\u003cdouble> | null"},"fdv":{"oneOf":[{"type":"number","format":"double","description":"Fully diluted valuation in USD, from CoinGecko.","uniqueKey":"fdv.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","description":"Fully diluted valuation in USD, from CoinGecko.","uniqueKey":"fdv.oneOf.1","typeLabel":"null"}],"uniqueKey":"fdv","typeLabel":"number\u003cdouble> | null"},"change":{"oneOf":[{"type":"number","format":"double","description":"24h price change, as a percentage.","uniqueKey":"change.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","description":"24h price change, as a percentage.","uniqueKey":"change.oneOf.1","typeLabel":"null"}],"uniqueKey":"change","typeLabel":"number\u003cdouble> | null"},"priority":{"oneOf":[{"type":"number","format":"double","description":"Display order — lower sorts first. Unrelated to `rank`.","uniqueKey":"priority.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","description":"Display order — lower sorts first. Unrelated to `rank`.","uniqueKey":"priority.oneOf.1","typeLabel":"null"}],"uniqueKey":"priority","typeLabel":"number\u003cdouble> | null"},"warningMessage":{"type":"string","description":"Warning to show the user before swapping this token.","uniqueKey":"warningMessage","typeLabel":"string"},"securityScan":{"properties":{"scannedAt":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"securityScan.scannedAt","typeLabel":"string\u003cdate-time>"},"expiresAt":{"type":"string","format":"date-time","description":"When this verdict goes stale and the token should be re-scanned.","isRequired":true,"uniqueKey":"securityScan.expiresAt","typeLabel":"string\u003cdate-time>"},"provider":{"type":"string","description":"Screening provider that produced this verdict.","uniqueKey":"securityScan.provider","typeLabel":"string"},"resultType":{"description":"Security verdict for a token. Branch on this rather than on `features`.\n\n- `Benign` — no issues found\n- `Warning` — show a warning before swapping\n- `Malicious` — do not swap\n- `Unscanned` — could not be screened. Screening is fail-open, so this never blocks a swap on its own.","enum":["Benign","Warning","Malicious","Unscanned"],"type":"string","uniqueKey":"securityScan.resultType","typeLabel":"enum\u003cstring>"},"providerResultType":{"type":"string","description":"The provider's own `result_type` string, kept unmapped so a verdict we don't model yet is still visible to support instead of being erased.","uniqueKey":"securityScan.providerResultType","typeLabel":"string"},"maliciousScore":{"type":"number","format":"double","description":"Provider `malicious_score`, 0..1. Arrives as a string; stored as a number.","uniqueKey":"securityScan.maliciousScore","typeLabel":"number\u003cdouble>"},"features":{"items":{"description":"One finding from the security scan, for display only. The list of possible findings changes over time, so branch on `resultType` instead.","properties":{"featureId":{"type":"string","uniqueKey":"securityScan.features.items.[INDEX].featureId","typeLabel":"string"},"type":{"type":"string","description":"Provider severity for this feature: Malicious | Warning | Benign | Info.","uniqueKey":"securityScan.features.items.[INDEX].type","typeLabel":"string"},"description":{"type":"string","uniqueKey":"securityScan.features.items.[INDEX].description","typeLabel":"string"}},"type":"object","additionalProperties":false,"uniqueKey":"securityScan.features.items.[INDEX]","typeLabel":"object"},"type":"array","default":[],"uniqueKey":"securityScan.features","typeLabel":"object[]"},"unscannedReason":{"description":"Why a token ended up `UNSCANNED`. Diagnostic only — never a branching input.","enum":["NOT_CONFIGURED","UNSUPPORTED_CHAIN","NATIVE_TOKEN","RATE_LIMITED","TIMEOUT","PROVIDER_ERROR","NO_RESULT","SCAN_PENDING","NOT_A_TOKEN","UNKNOWN_RESULT_TYPE"],"type":"string","uniqueKey":"securityScan.unscannedReason","typeLabel":"enum\u003cstring>"},"unscannedDetail":{"type":"string","description":"Free-text detail behind `unscannedReason` (provider message, status…).","uniqueKey":"securityScan.unscannedDetail","typeLabel":"string"}},"required":["scannedAt","expiresAt"],"type":"object","additionalProperties":false,"description":"Latest security verdict for this token. Absent until the token has been used in a swap at least once.","uniqueKey":"securityScan","typeLabel":"object"}},"required":["icon","id","chain","decimals","symbol","name","created","chainData","enabled"],"type":"object","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example 1":{"title":"Example 1","value":{"address":null,"chain":"solana","decimals":9,"symbol":"SOL","name":"Solana","created":"2024-07-06T21:29:34.822Z","modified":"2026-09-16T07:17:14.429Z","chainData":{"created":"2024-07-06T21:02:11.673Z","modified":"2026-09-14T10:01:00.292Z","name":"Solana","shortName":"solana","addressValidation":"^[1-9A-HJ-NP-Za-km-z]{32,44}$","tokenAddressValidation":"^[1-9A-HJ-NP-Za-km-z]{32,44}$","memoNeeded":false,"explorerUrl":"https://solscan.io/tx/{txHash}","addressUrl":"https://solscan.io/account/{address}","priority":1,"kind":"sol","enabled":true,"shortNameV1":"SOL","id":"6689b0d3c52f263938c4484e","icon":"https://api.houdiniswap.com/assets/chains/solana-n1gfe3.png"},"description":"Solana is a highly functional open source project that banks on blockchain technology’s permissionless nature to provide decentralized finance (DeFi) solutions. It is a layer 1 network that offers fast speeds and affordable costs. While the idea and initial work on the project began in 2017, Solana was officially launched in March 2020 by the Solana Foundation with headquarters in Geneva, Switzerland.","mainnet":true,"enabled":true,"unverified":false,"hasDex":true,"hasCex":true,"hasBundler":true,"hasSelfPrivate":true,"cexTokenId":"SOL","rank":7,"cgId":"solana","marketCapChange24h":-3.76076,"circulatingSupply":587064779.4352292,"price":97.3,"marketCap":56980421616,"volume":3952383111,"fdv":61546706124,"change":-3.61639,"securityScan":{"provider":"blockaid","resultType":"Unscanned","features":[],"unscannedReason":"NATIVE_TOKEN","unscannedDetail":"SOL has no contract address to scan","scannedAt":"2026-09-15T08:23:22.968Z","expiresAt":"2026-09-16T08:23:22.968Z"},"id":"6689b73ec90e45f3b3e51558","icon":"https://api.houdiniswap.com/assets/tokens/sol-solana.png"}}},"exampleType":"examples"}},"exampleType":"examples"},"756dc2d8-7af1-4220-b21d-e735711030d4":{"description":"Credentials missing, malformed, or rejected — all return `INVALID_API_CREDENTIALS`. Sending only `partner-id` returns `PARTNER_ID_NOT_SUPPORTED`.","content":{"application/json":{"schema":{"properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable reason for the failure. Branch on this, not on `message` — messages are free to change.\n\nThe value depends on the HTTP status. The common ones:\n\n- `400` — `BAD_REQUEST`\n- `401` — `INVALID_API_CREDENTIALS`, `PARTNER_ID_NOT_SUPPORTED`\n- `403` — `ACCESS_DENIED`, `FIXED_RATE_NOT_ALLOWED`\n- `404` — `NOT_FOUND`, `TOKEN_NOT_FOUND`, `TOKEN_DISABLED`\n- `409` — `ALREADY_SUBMITTED`, `STATIC_DEPOSIT_IN_USE`\n- `422` — `VALIDATION_ERROR`, `AMOUNT_TOO_LOW`, `INVALID_SWAP`, `FIXED_RATE_QUOTE_EXPIRED`, and most other request problems\n- `429` — `RATE_LIMIT_EXCEEDED`\n- `5xx` — `INTERNAL_SERVER_ERROR`, `PROVIDER_EXCHANGE_FAILED`, `SERVICE_UNAVAILABLE`\n\nNew codes are added over time, so treat this as an open set: match the ones you handle and fall back to the HTTP status for the rest.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"requestId":{"type":"string","description":"Unique id for this request. Quote it when contacting support — it is how we find the failure in our logs.","uniqueKey":"requestId","typeLabel":"string"}},"required":["message","code"],"type":"object","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>","code":"\u003cstring>","requestId":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"13dc74ef-615a-4f95-91a0-0f03d523d1e7":{"description":"Payment required — x402 protocol. The body is empty; what to pay is in the `payment-required` header. Not returned when you send an `Authorization` header.","content":{"application/json":{"schema":{"description":"Body of a `402 Payment required`. Empty — `{}` — for API clients; a request that looks like a browser gets an HTML paywall page instead.\n\nThis is the x402 payment protocol, not the normal error format, so there is no `code` or `message` to branch on. What to pay is always in the `payment-required` response header, in both cases: base64-encoded JSON whose `accepts[]` entries each carry the `network`, the `asset` to pay in, the `amount`, and the `payTo` address, alongside `maxTimeoutSeconds` and the x402 `scheme`.\n\nSending `Authorization` skips the payment flow, so a 402 only reaches callers paying per request. An `apiKey` query param also skips it but is not a credential — those requests fail with `401 INVALID_API_CREDENTIALS`.","properties":{},"type":"object","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{}}},"exampleType":"generated"}},"headers":{"payment-required":{"schema":{"type":"string"},"required":true}},"exampleType":"generated"},"49d0a9b1-799d-46cf-8717-105d4cc823ef":{"description":"Token not found","content":{"application/json":{"schema":{"properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable reason for the failure. Branch on this, not on `message` — messages are free to change.\n\nThe value depends on the HTTP status. The common ones:\n\n- `400` — `BAD_REQUEST`\n- `401` — `INVALID_API_CREDENTIALS`, `PARTNER_ID_NOT_SUPPORTED`\n- `403` — `ACCESS_DENIED`, `FIXED_RATE_NOT_ALLOWED`\n- `404` — `NOT_FOUND`, `TOKEN_NOT_FOUND`, `TOKEN_DISABLED`\n- `409` — `ALREADY_SUBMITTED`, `STATIC_DEPOSIT_IN_USE`\n- `422` — `VALIDATION_ERROR`, `AMOUNT_TOO_LOW`, `INVALID_SWAP`, `FIXED_RATE_QUOTE_EXPIRED`, and most other request problems\n- `429` — `RATE_LIMIT_EXCEEDED`\n- `5xx` — `INTERNAL_SERVER_ERROR`, `PROVIDER_EXCHANGE_FAILED`, `SERVICE_UNAVAILABLE`\n\nNew codes are added over time, so treat this as an open set: match the ones you handle and fall back to the HTTP status for the rest.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"requestId":{"type":"string","description":"Unique id for this request. Quote it when contacting support — it is how we find the failure in our logs.","uniqueKey":"requestId","typeLabel":"string"}},"required":["message","code"],"type":"object","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>","code":"\u003cstring>","requestId":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"0543a13a-e4f5-405d-b2aa-7ee7f8b27531":{"description":"Validation Failed","content":{"application/json":{"schema":{"properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable reason for the failure. Branch on this, not on `message` — messages are free to change.\n\nThe value depends on the HTTP status. The common ones:\n\n- `400` — `BAD_REQUEST`\n- `401` — `INVALID_API_CREDENTIALS`, `PARTNER_ID_NOT_SUPPORTED`\n- `403` — `ACCESS_DENIED`, `FIXED_RATE_NOT_ALLOWED`\n- `404` — `NOT_FOUND`, `TOKEN_NOT_FOUND`, `TOKEN_DISABLED`\n- `409` — `ALREADY_SUBMITTED`, `STATIC_DEPOSIT_IN_USE`\n- `422` — `VALIDATION_ERROR`, `AMOUNT_TOO_LOW`, `INVALID_SWAP`, `FIXED_RATE_QUOTE_EXPIRED`, and most other request problems\n- `429` — `RATE_LIMIT_EXCEEDED`\n- `5xx` — `INTERNAL_SERVER_ERROR`, `PROVIDER_EXCHANGE_FAILED`, `SERVICE_UNAVAILABLE`\n\nNew codes are added over time, so treat this as an open set: match the ones you handle and fall back to the HTTP status for the rest.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"fields":{"properties":{},"type":"object","additionalProperties":{"properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"fields.additionalProperties.message","typeLabel":"string"},"value":{"oneOf":[{}],"uniqueKey":"fields.additionalProperties.value","typeLabel":"any"}},"required":["message"],"type":"object","uniqueKey":"fields.additionalProperties","typeLabel":"object"},"description":"The inputs that failed, keyed by field name — or by path for a nested field, e.g. `filters.rotatePayoutWallets`. Each entry has a `message` and, when you sent one, the `value`.\n\nNot every `422` names its input, so `fields` can be `{}`: branch on `code`, and use `fields` to highlight the input when one is named.","isRequired":true,"uniqueKey":"fields","typeLabel":"object"},"requestId":{"type":"string","description":"Unique id for this request. Quote it when contacting support — it is how we find the failure in our logs.","uniqueKey":"requestId","typeLabel":"string"}},"required":["message","code","fields"],"type":"object","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>","code":"\u003cstring>","fields":{},"requestId":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"26f2df80-1286-4711-a37b-b04ada0da3c3":{"description":"Rate limit exceeded — back off and retry","content":{"application/json":{"schema":{"properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable reason for the failure. Branch on this, not on `message` — messages are free to change.\n\nThe value depends on the HTTP status. The common ones:\n\n- `400` — `BAD_REQUEST`\n- `401` — `INVALID_API_CREDENTIALS`, `PARTNER_ID_NOT_SUPPORTED`\n- `403` — `ACCESS_DENIED`, `FIXED_RATE_NOT_ALLOWED`\n- `404` — `NOT_FOUND`, `TOKEN_NOT_FOUND`, `TOKEN_DISABLED`\n- `409` — `ALREADY_SUBMITTED`, `STATIC_DEPOSIT_IN_USE`\n- `422` — `VALIDATION_ERROR`, `AMOUNT_TOO_LOW`, `INVALID_SWAP`, `FIXED_RATE_QUOTE_EXPIRED`, and most other request problems\n- `429` — `RATE_LIMIT_EXCEEDED`\n- `5xx` — `INTERNAL_SERVER_ERROR`, `PROVIDER_EXCHANGE_FAILED`, `SERVICE_UNAVAILABLE`\n\nNew codes are added over time, so treat this as an open set: match the ones you handle and fall back to the HTTP status for the rest.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"requestId":{"type":"string","description":"Unique id for this request. Quote it when contacting support — it is how we find the failure in our logs.","uniqueKey":"requestId","typeLabel":"string"}},"required":["message","code"],"type":"object","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>","code":"\u003cstring>","requestId":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"1c62ea0e-f09d-4658-9f04-cdc87b3f0f2c":{"description":"Internal Server Error","content":{"application/json":{"schema":{"properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable reason for the failure. Branch on this, not on `message` — messages are free to change.\n\nThe value depends on the HTTP status. The common ones:\n\n- `400` — `BAD_REQUEST`\n- `401` — `INVALID_API_CREDENTIALS`, `PARTNER_ID_NOT_SUPPORTED`\n- `403` — `ACCESS_DENIED`, `FIXED_RATE_NOT_ALLOWED`\n- `404` — `NOT_FOUND`, `TOKEN_NOT_FOUND`, `TOKEN_DISABLED`\n- `409` — `ALREADY_SUBMITTED`, `STATIC_DEPOSIT_IN_USE`\n- `422` — `VALIDATION_ERROR`, `AMOUNT_TOO_LOW`, `INVALID_SWAP`, `FIXED_RATE_QUOTE_EXPIRED`, and most other request problems\n- `429` — `RATE_LIMIT_EXCEEDED`\n- `5xx` — `INTERNAL_SERVER_ERROR`, `PROVIDER_EXCHANGE_FAILED`, `SERVICE_UNAVAILABLE`\n\nNew codes are added over time, so treat this as an open set: match the ones you handle and fall back to the HTTP status for the rest.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"requestId":{"type":"string","description":"Unique id for this request. Quote it when contacting support — it is how we find the failure in our logs.","uniqueKey":"requestId","typeLabel":"string"}},"required":["message","code"],"type":"object","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>","code":"\u003cstring>","requestId":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"7d6390df-3488-4ac6-a15f-b4c1dcb2c11e":{"apiKey":{"type":"apiKey","name":"Authorization","in":"header","description":"Send `Authorization: \u003cApiKey>:\u003cApiSecret>` — joined by a colon, raw. No `Bearer` prefix, no base64.\n\n[Get your credentials](https://docs.houdini.com/developer-hub/getting-started/authentication)","scopes":[],"schemeName":"apiKey"}}},"servers":{"8ebb4976-baf3-411c-8a1c-cd4d2c55015e":{"url":"http://localhost:3003/v2"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","name":"Authorization","in":"header","description":"Send `Authorization: \u003cApiKey>:\u003cApiSecret>` — joined by a colon, raw. No `Bearer` prefix, no base64.\n\n[Get your credentials](https://docs.houdini.com/developer-hub/getting-started/authentication)","scopes":[],"schemeName":"apiKey"},"schema":{"title":"Authorization","type":"string","description":"Send `Authorization: \u003cApiKey>:\u003cApiSecret>` — joined by a colon, raw. No `Bearer` prefix, no base64.\n\n[Get your credentials](https://docs.houdini.com/developer-hub/getting-started/authentication)","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"apiKey","name":"Authorization"}],"title":"apiKey"}]},"originalFileLocation":"https://api-partner.houdiniswap.com/v2/openapi.json"},"subdomain":"houdini","siteName":"Houdini documentation","title":"Get token by ID - Houdini documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-26T13:26:58.052Z","originalFileLocation":"api-reference/reference-data/get-token-by-id.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Returns a single token by its id. Use this to refresh one token you already know, rather than re-fetching the whole list.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Houdini documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/houdini/yzTfSRPGdvC9032C/_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/houdini/yzTfSRPGdvC9032C/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/houdini/yzTfSRPGdvC9032C/_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/houdini/yzTfSRPGdvC9032C/_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/houdini/yzTfSRPGdvC9032C/_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/houdini/yzTfSRPGdvC9032C/_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/houdini/yzTfSRPGdvC9032C/_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/houdini/yzTfSRPGdvC9032C/_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/houdini/yzTfSRPGdvC9032C/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get token by ID - Houdini documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Returns a single token by its id. Use this to refresh one token you already know, rather than re-fetching the whole list.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Houdini documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.houdiniswap.com/api-reference/reference-data/get-token-by-id\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://houdini.mintlify.app/_mintlify/api/og/v2?division=Reference+Data\u0026amp;title=Get+token+by+ID\u0026amp;description=Returns+a+single+token+by+its+%60id%60.+Use+this+to+refresh+one+token+you+already+know%2C+rather+than+re-fetching+the+whole+list.\u0026amp;theme=9ee3d943f07b0e7ca37035be\u0026amp;signature=55cbba47b103e4630157c62dd310712a3ea51e210db8d3d0148cf7edb9d32289\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Get token by ID - Houdini documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Returns a single token by its id. Use this to refresh one token you already know, rather than re-fetching the whole list.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://houdini.mintlify.app/_mintlify/api/og/v2?division=Reference+Data\u0026amp;title=Get+token+by+ID\u0026amp;description=Returns+a+single+token+by+its+%60id%60.+Use+this+to+refresh+one+token+you+already+know%2C+rather+than+re-fetching+the+whole+list.\u0026amp;theme=9ee3d943f07b0e7ca37035be\u0026amp;signature=55cbba47b103e4630157c62dd310712a3ea51e210db8d3d0148cf7edb9d32289\">\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/houdini/yzTfSRPGdvC9032C/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Houdini documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#A955F7\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.houdiniswap.com/api-reference/reference-data/get-token-by-id\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/reference-data/get-token-by-id.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.houdiniswap.com/#organization\",\"name\":\"Houdini documentation\",\"url\":\"https://docs.houdiniswap.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/houdini/1qxWMAnpbp51-Yh3/logo/wordmark-black.svg?fit=max\u0026auto=format\u0026n=1qxWMAnpbp51-Yh3\u0026q=85\u0026s=835e11b4170923b979bdf1ba4cb302b8\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.houdiniswap.com#website\",\"name\":\"Houdini documentation\",\"url\":\"https://docs.houdiniswap.com\",\"publisher\":{\"@id\":\"https://docs.houdiniswap.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.houdiniswap.com/api-reference/reference-data/get-token-by-id#webpage\",\"url\":\"https://docs.houdiniswap.com/api-reference/reference-data/get-token-by-id\",\"name\":\"Get token by ID\",\"description\":\"Returns a single token by its id. Use this to refresh one token you already know, rather than re-fetching the whole list.\",\"dateModified\":\"2026-10-26T13:26:58.052Z\",\"isPartOf\":{\"@id\":\"https://docs.houdiniswap.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.houdiniswap.com/api-reference/reference-data/get-token-by-id#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.houdiniswap.com/api-reference/reference-data/get-token-by-id#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Houdini documentation\",\"item\":\"https://docs.houdiniswap.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get token by ID\",\"item\":\"https://docs.houdiniswap.com/api-reference/reference-data/get-token-by-id\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.houdiniswap.com/api-reference/reference-data/get-token-by-id#apireference\",\"headline\":\"Get token by ID\",\"name\":\"Get token by ID\",\"description\":\"Returns a single token by its id. Use this to refresh one token you already know, rather than re-fetching the whole list.\",\"url\":\"https://docs.houdiniswap.com/api-reference/reference-data/get-token-by-id\",\"mainEntityOfPage\":{\"@id\":\"https://docs.houdiniswap.com/api-reference/reference-data/get-token-by-id#webpage\"},\"dateModified\":\"2026-10-26T13:26:58.052Z\",\"publisher\":{\"@id\":\"https://docs.houdiniswap.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.houdiniswap.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Houdini documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Houdini documentation","nav":{"global":null,"tabs":[{"tab":"Overview","pages":[{"title":"Overview","href":"/overview/getting-started/what-is-houdini"}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/guides/how-to/private-swap"}]},{"tab":"Developer Hub","pages":[{"title":"Developer Hub","href":"/developer-hub/overview/what-you-can-build"}]},{"tab":"API V2 Reference ","icon":"folder-gear","groups":[{"group":"Private and Standard Swaps","pages":[{"title":"Get tokens","openapi":"GET /tokens","href":"/api-reference/private-and-standard-swaps/get-tokens"},{"title":"Get quotes","openapi":"GET /quotes","href":"/api-reference/private-and-standard-swaps/get-quotes"},{"title":"Get quotes by token address","openapi":"GET /quotes/byChainAddress","href":"/api-reference/private-and-standard-swaps/get-quotes-by-token-address"},{"title":"Create exchange","openapi":"POST /exchanges","href":"/api-reference/private-and-standard-swaps/create-exchange"},{"title":"Get order details","openapi":"GET /orders/{houdiniId}","href":"/api-reference/private-and-standard-swaps/get-order-details"}]},{"group":"Private Send","pages":[{"title":"Get tokens","openapi":"GET /tokens","href":"/api-reference/private-send/get-tokens"},{"title":"Get private send quote","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /quotes/private-send","href":"/api-reference/private-send/get-private-send-quote"},{"title":"Create private send order","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json post /exchanges/private-send","href":"/api-reference/private-send/create-private-send-order"},{"title":"Get order details","openapi":"GET /orders/{houdiniId}","href":"/api-reference/private-send/get-order-details"}]},{"group":"Multi-Exchange","pages":[{"title":"Get tokens","openapi":"GET /tokens","href":"/api-reference/multi-exchange/get-tokens"},{"title":"Get multi quotes","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json post /quotes/multi","href":"/api-reference/multi-exchange/get-multi-quotes"},{"title":"Create multi exchange","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json post /exchanges/multi","href":"/api-reference/multi-exchange/create-multi-exchange"},{"title":"Get batch status","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /exchanges/multi/{multiId}","href":"/api-reference/multi-exchange/get-batch-status"},{"group":"Bundler SOL","pages":[{"title":"Get batch transaction","openapi":"GET /exchanges/multi/{multiId}/tx","href":"/api-reference/bundler-sol/get-batch-transaction"}]},{"group":"Bundler EVM","pages":[{"title":"Build batch transaction","openapi":"POST /exchanges/multi/{multiId}/tx/build","href":"/api-reference/bundler-evm/build-batch-transaction"},{"title":"Submit signed transaction","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json post /exchanges/multi/{multiId}/tx","href":"/api-reference/bundler-evm/submit-signed-transaction"},{"title":"Retry failed orders","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json post /exchanges/multi/{multiId}/retry","href":"/api-reference/bundler-evm/retry-failed-orders"},{"title":"Recover stuck assets","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json post /exchanges/multi/recovery","href":"/api-reference/bundler-evm/recover-stuck-assets"}]}]},{"group":"On-chain DEX or Bridge","pages":[{"title":"Get tokens","openapi":"GET /tokens","href":"/api-reference/on-chain-dex-or-bridge/get-tokens"},{"title":"Get quotes","openapi":"GET /quotes","href":"/api-reference/on-chain-dex-or-bridge/get-quotes"},{"title":"Get quotes by token address","openapi":"GET /quotes/byChainAddress","href":"/api-reference/on-chain-dex-or-bridge/get-quotes-by-token-address"},{"title":"Create exchange","openapi":"POST /exchanges","href":"/api-reference/on-chain-dex-or-bridge/create-exchange"},{"title":"Get token approval data","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json post /dex/approve","href":"/api-reference/on-chain-dex-or-bridge/get-token-approval-data"},{"title":"Check token allowance","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json post /dex/allowance","href":"/api-reference/on-chain-dex-or-bridge/check-token-allowance"},{"title":"Get next chain signature","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json post /dex/chainSignatures","href":"/api-reference/on-chain-dex-or-bridge/get-next-chain-signature"},{"title":"Confirm DEX transaction","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json post /dex/confirmTx","href":"/api-reference/on-chain-dex-or-bridge/confirm-dex-transaction"},{"title":"Get order details","description":"Returns an on-chain DEX or bridge order created in the last 48 hours.","openapi":"GET /orders/{houdiniId}","href":"/api-reference/on-chain-dex-or-bridge/get-order-details"}]},{"group":"Reference Data","pages":[{"title":"Get token by ID","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /tokens/{id}","href":"/api-reference/reference-data/get-token-by-id"},{"title":"Get chains","description":"Returns the list of available chains for CEX and DEX swaps.\n\nUse the `shortName` field wherever another endpoint takes a chain.","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /chains","href":"/api-reference/reference-data/get-chains"},{"title":"Get swap providers","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /swaps","href":"/api-reference/reference-data/get-swap-providers"},{"title":"Get min and max amounts","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /minMax","href":"/api-reference/reference-data/get-min-and-max-amounts"}]},{"group":"Partner Account","pages":[{"title":"Get orders","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /orders","href":"/api-reference/partner-account/get-orders"},{"title":"Get partner profile","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /me","href":"/api-reference/partner-account/get-partner-profile"},{"title":"Get rate limits","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /rateLimits","href":"/api-reference/partner-account/get-rate-limits"},{"title":"Get commissions","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /commissions","href":"/api-reference/partner-account/get-commissions"},{"title":"Get commission summary","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /commissions/summary","href":"/api-reference/partner-account/get-commission-summary"},{"title":"Get withdrawals","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /withdrawals","href":"/api-reference/partner-account/get-withdrawals"},{"title":"Get volume stats","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /stats/volume","href":"/api-reference/partner-account/get-volume-stats"},{"title":"Get weekly volume","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /stats/weeklyVolume","href":"/api-reference/partner-account/get-weekly-volume"},{"title":"Get chart stats","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /stats/chart","href":"/api-reference/partner-account/get-chart-stats"}]},{"group":"System","pages":[{"title":"Get system health","deprecated":null,"version":null,"openapi":"https://api-partner.houdiniswap.com/v2/openapi.json get /status","href":"/api-reference/system/get-system-health"}]}]},{"tab":"API v1","hidden":true,"pages":[{"title":"API v1","href":"/migration/v1-to-v2"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog/release-notes"}]},{"tab":"Support \u0026 FAQs","pages":[{"title":"Support \u0026 FAQs","href":"/support-and-faqs/faqs"}]}]},"title":"Get token by ID - Houdini documentation","buildId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","deploymentId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DKJwRUt2.js","utils-CWD_VS3u.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-oFjciODD.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-C76WsxC3.js","snippetPresets-DvPMxpX_.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CuNQfndH.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BVFpVUoF.js","shallow-t59Jg5Kr.js","getApiPlaygroundDisplay-C_JZ4amX.js","CodeSnippet-CLRDnx_h.js","CodeSnippets-C2myU4kc.js","Page-7TwLLapg.js","getPastedJson-B-JaVXw7.js","icon-BA-iDhH3.js","MethodPill-D4qZABFp.js","DuplicateIcon-THIDKO1O.js","createIcon-CYYJwgFd.js","DynamicMarkdown-UGQuxDKp.js","SectionHeading-jYELb23h.js","axios-vUo_bRtp.js","Markdown-DKsLa3wy.js","clsx-CefdjKz2.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BaREnp3o.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-sgx_0XzF.js"]}