Triggers a key rotation for the wallet. The wallet address may change after rotation. Use this when a wallet’s signing key needs to be replaced. For a non-custodial wallet account that needs admin approval, returns 202 with a ceremonyId and a verificationUrl; the rotation completes when an admin approves, and is refused at approval if the wallet can no longer be rotated.
{
"type": "INVALID_OID_FORMAT",
"title": "Invalid Object ID Format",
"status": 400,
"detail": "A path or query parameter expected a valid object identifier but received a value that does not match the expected format.",
"resolution": "Verify that all IDs in the request URL and query parameters are correctly formatted. IDs are typically prefixed strings like 'cus_...', 'app_...', or 'doc_...'.",
"docs": "https://v2.docs.conduit.financial/errors#invalid-oid-format",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "API_KEY_MISSING",
"title": "API Key Missing",
"status": 401,
"detail": "The request did not include an API key. All API requests must be authenticated.",
"resolution": "Include your API key in the 'x-api-key' header with every request.",
"docs": "https://v2.docs.conduit.financial/errors#api-key-missing",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "ORGANIZATION_ACCESS_SUSPENDED",
"title": "Organization Access Suspended",
"status": 403,
"detail": "Conduit has suspended this organization's access. Requests with the organization's API keys and from its users are refused until Conduit restores access.",
"resolution": "Contact Conduit support.",
"docs": "https://v2.docs.conduit.financial/errors#organization-access-suspended",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "WALLET_NOT_FOUND",
"title": "Wallet Not Found",
"status": 404,
"detail": "No wallet exists with the specified ID, or the wallet belongs to a different organization.",
"resolution": "Verify the wallet ID is correct. Use the list wallets endpoint to find valid wallet IDs for your organization.",
"docs": "https://v2.docs.conduit.financial/errors#wallet-not-found",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "IDEMPOTENCY_KEY_CONFLICT",
"title": "Idempotency Key Conflict",
"status": 409,
"detail": "The idempotency key was previously used with a different request body, and that request succeeded or ended in a `5xx`. A `4xx` response does not bind the key. Idempotency keys are bound to the exact request shape — replays must match the original.",
"resolution": "Use a fresh idempotency key for the new request, or replay the original request unchanged.",
"docs": "https://v2.docs.conduit.financial/errors#idempotency-key-conflict",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "UNSUPPORTED_MEDIA_TYPE",
"title": "Unsupported Media Type",
"status": 415,
"detail": "The request carries a body with a Content-Type this endpoint cannot parse. JSON endpoints accept 'application/json'; a body with no Content-Type header at all is assumed to be JSON. File-upload endpoints accept only 'multipart/form-data' — JSON or undeclared bodies are rejected there.",
"resolution": "Send the request body with the 'Content-Type: application/json' header. For file uploads, use 'Content-Type: multipart/form-data' — upload endpoints accept no other body type.",
"docs": "https://v2.docs.conduit.financial/errors#unsupported-media-type",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "WALLET_ROTATION_BLOCKED_BALANCE",
"title": "Wallet Rotation Blocked: Balance Above Dust",
"status": 422,
"detail": "The wallet holds a balance (available, pending, or frozen) above the asset's dust floor and cannot be rotated. Rotation would strand those funds on the retired wallet record. A leftover at or below the dust floor does not block rotation — it is too small to be worth a transfer, so nothing will ever move it.",
"resolution": "Move the funds out of the wallet (e.g. via a payout) and wait for any in-flight deposits to settle, then retry the rotation. Compliance-frozen balances must be released before rotation is possible.",
"docs": "https://v2.docs.conduit.financial/errors#wallet-rotation-blocked-balance",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "RATE_LIMITED",
"title": "Rate Limited",
"status": 429,
"detail": "Too many requests. This error is returned by three independent checks: the per-organization bucket applied to every authenticated API request; the per-IP bucket applied to unauthenticated traffic before an API key is validated; and the per-IP bucket applied when repeated invalid API keys are submitted from the same address. Honor the Retry-After header (also exposed as retryAfterSeconds in the body) before retrying. Current limits and remaining budget are visible in X-RateLimit-Limit (the bucket size), X-RateLimit-Remaining, and X-RateLimit-Reset (seconds until the bucket refills) on every response once your API key is accepted.",
"resolution": "Sleep until Retry-After seconds have elapsed, then retry. For sustained workloads exceeding the per-organization defaults, request a rate-limit increase through your support contact.",
"docs": "https://v2.docs.conduit.financial/errors#rate-limited",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z",
"retryAfterSeconds": 3
}
{
"type": "INTERNAL_ERROR",
"title": "Internal Error",
"status": 500,
"detail": "An unexpected error occurred while processing your request.",
"resolution": "Retry the request after a brief delay. If the error persists, contact support and include the correlationId from the error response for investigation.",
"docs": "https://v2.docs.conduit.financial/errors#internal-error",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "ASSET_CHAIN_PAUSED",
"title": "Asset Chain Paused",
"status": 503,
"detail": "Conduit has temporarily paused this asset on this chain, or the whole chain, so it cannot accept this request now. Asset and chain pairs that are not paused stay available.",
"resolution": "Retry the same request later; it succeeds once Conduit lifts the pause. Use an asset and chain pair that is not paused if you cannot wait.",
"docs": "https://v2.docs.conduit.financial/errors#asset-chain-paused",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
Caller-generated unique key that lets the server safely replay this request. The original response is returned for 30 days on any retry with the same key from the same organization, with the response header Idempotency-Replayed: true. Required on every state-changing money-moving or resource-creating POST.
non_custodial — the customer co-signs each payout via the verify URL (see requiresUserSignature on payouts). custodial is a return-only value for legacy/operational wallets. Omitted until the custody model is determined.
Client-supplied reference, unique per resource within your organization. 1-255 characters from A-Za-z, 0-9, underscore, hyphen, colon, and period — no spaces.
{
"type": "INVALID_OID_FORMAT",
"title": "Invalid Object ID Format",
"status": 400,
"detail": "A path or query parameter expected a valid object identifier but received a value that does not match the expected format.",
"resolution": "Verify that all IDs in the request URL and query parameters are correctly formatted. IDs are typically prefixed strings like 'cus_...', 'app_...', or 'doc_...'.",
"docs": "https://v2.docs.conduit.financial/errors#invalid-oid-format",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "API_KEY_MISSING",
"title": "API Key Missing",
"status": 401,
"detail": "The request did not include an API key. All API requests must be authenticated.",
"resolution": "Include your API key in the 'x-api-key' header with every request.",
"docs": "https://v2.docs.conduit.financial/errors#api-key-missing",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "ORGANIZATION_ACCESS_SUSPENDED",
"title": "Organization Access Suspended",
"status": 403,
"detail": "Conduit has suspended this organization's access. Requests with the organization's API keys and from its users are refused until Conduit restores access.",
"resolution": "Contact Conduit support.",
"docs": "https://v2.docs.conduit.financial/errors#organization-access-suspended",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "WALLET_NOT_FOUND",
"title": "Wallet Not Found",
"status": 404,
"detail": "No wallet exists with the specified ID, or the wallet belongs to a different organization.",
"resolution": "Verify the wallet ID is correct. Use the list wallets endpoint to find valid wallet IDs for your organization.",
"docs": "https://v2.docs.conduit.financial/errors#wallet-not-found",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "IDEMPOTENCY_KEY_CONFLICT",
"title": "Idempotency Key Conflict",
"status": 409,
"detail": "The idempotency key was previously used with a different request body, and that request succeeded or ended in a `5xx`. A `4xx` response does not bind the key. Idempotency keys are bound to the exact request shape — replays must match the original.",
"resolution": "Use a fresh idempotency key for the new request, or replay the original request unchanged.",
"docs": "https://v2.docs.conduit.financial/errors#idempotency-key-conflict",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "UNSUPPORTED_MEDIA_TYPE",
"title": "Unsupported Media Type",
"status": 415,
"detail": "The request carries a body with a Content-Type this endpoint cannot parse. JSON endpoints accept 'application/json'; a body with no Content-Type header at all is assumed to be JSON. File-upload endpoints accept only 'multipart/form-data' — JSON or undeclared bodies are rejected there.",
"resolution": "Send the request body with the 'Content-Type: application/json' header. For file uploads, use 'Content-Type: multipart/form-data' — upload endpoints accept no other body type.",
"docs": "https://v2.docs.conduit.financial/errors#unsupported-media-type",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "WALLET_ROTATION_BLOCKED_BALANCE",
"title": "Wallet Rotation Blocked: Balance Above Dust",
"status": 422,
"detail": "The wallet holds a balance (available, pending, or frozen) above the asset's dust floor and cannot be rotated. Rotation would strand those funds on the retired wallet record. A leftover at or below the dust floor does not block rotation — it is too small to be worth a transfer, so nothing will ever move it.",
"resolution": "Move the funds out of the wallet (e.g. via a payout) and wait for any in-flight deposits to settle, then retry the rotation. Compliance-frozen balances must be released before rotation is possible.",
"docs": "https://v2.docs.conduit.financial/errors#wallet-rotation-blocked-balance",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "RATE_LIMITED",
"title": "Rate Limited",
"status": 429,
"detail": "Too many requests. This error is returned by three independent checks: the per-organization bucket applied to every authenticated API request; the per-IP bucket applied to unauthenticated traffic before an API key is validated; and the per-IP bucket applied when repeated invalid API keys are submitted from the same address. Honor the Retry-After header (also exposed as retryAfterSeconds in the body) before retrying. Current limits and remaining budget are visible in X-RateLimit-Limit (the bucket size), X-RateLimit-Remaining, and X-RateLimit-Reset (seconds until the bucket refills) on every response once your API key is accepted.",
"resolution": "Sleep until Retry-After seconds have elapsed, then retry. For sustained workloads exceeding the per-organization defaults, request a rate-limit increase through your support contact.",
"docs": "https://v2.docs.conduit.financial/errors#rate-limited",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z",
"retryAfterSeconds": 3
}
{
"type": "INTERNAL_ERROR",
"title": "Internal Error",
"status": 500,
"detail": "An unexpected error occurred while processing your request.",
"resolution": "Retry the request after a brief delay. If the error persists, contact support and include the correlationId from the error response for investigation.",
"docs": "https://v2.docs.conduit.financial/errors#internal-error",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "ASSET_CHAIN_PAUSED",
"title": "Asset Chain Paused",
"status": 503,
"detail": "Conduit has temporarily paused this asset on this chain, or the whole chain, so it cannot accept this request now. Asset and chain pairs that are not paused stay available.",
"resolution": "Retry the same request later; it succeeds once Conduit lifts the pause. Use an asset and chain pair that is not paused if you cannot wait.",
"docs": "https://v2.docs.conduit.financial/errors#asset-chain-paused",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{"docsConfig":{"theme":"maple","$schema":"https://mintlify.com/docs.json","name":"Conduit API","colors":{"primary":"#0445F5"},"favicon":"https://mintcdn.com/conduit-v2/TDfL4m3KARlDDGif/favicon.svg?fit=max\u0026auto=format\u0026n=TDfL4m3KARlDDGif\u0026q=85\u0026s=26f960e7de4cc7324c4942bb0970c778","api":{"playground":{}},"navbar":{"primary":{"type":"button","label":"Talk to Sales","href":"https://meetings.hubspot.com/gianmarco-carmelino/talk-to-sales"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"variables":{"production-host":"https://api.conduit.financial","sandbox-host":"https://api.sandbox.conduit.financial"},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"Trust Center","href":"https://trust.conduitpay.com/"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"conduit-v2","hasAudioNarration":false,"actualSubdomain":"conduit-v2","customDomains":["docs.conduit.financial"],"gitSource":{"type":"github","owner":"conduit-financial","repo":"conduit-api","deployBranch":"main","contentDirectory":"api-docs","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af240c680c4ca53605dbb7e","clientVersion":"0.0.4094","searchFilterCounts":[{"language":"default","tag":"KYB Reference","count":204},{"language":"default","tag":"API Reference","count":138},{"language":"default","tag":"Africa","count":47},{"language":"default","tag":"Europe","count":45},{"language":"default","tag":"Latin America","count":41},{"language":"default","tag":"Sandbox","count":36},{"language":"default","tag":"Asia-Pacific","count":35},{"language":"default","tag":"Guides","count":33},{"language":"default","tag":"Asia (West, South \u0026 Central)","count":28},{"language":"default","tag":"Errors","count":22}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/wallets/rotate-a-wallet","slug":"/api-reference/wallets/rotate-a-wallet","pageMetadata":{"title":"Rotate a wallet","description":"Triggers a key rotation for the wallet. The wallet address may change after rotation. Use this when a wallet's signing key needs to be replaced. For a non-custodial wallet account that needs admin approval, returns 202 with a ceremonyId and a verificationUrl; the rotation completes when an admin approves, and is refused at approval if the wallet can no longer be rotated.","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallets/{walletId}/rotate","href":"/api-reference/wallets/rotate-a-wallet","autogeneratedByOpenApi":true},"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: \"Triggers a key rotation for the wallet. The wallet address may change after rotation. Use this when a wallet’s signing key needs to be replaced. For a non-custodial wallet account that needs admin approval, returns 202 with a ceremonyId and a verificationUrl; the rotation completes when an admin approves, and is refused at approval if the wallet can no longer be rotated.\"\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":"Rotate a wallet","description":"Triggers a key rotation for the wallet. The wallet address may change after rotation. Use this when a wallet's signing key needs to be replaced. For a non-custodial wallet account that needs admin approval, returns 202 with a ceremonyId and a verificationUrl; the rotation completes when an admin approves, and is refused at approval if the wallet can no longer be rotated.","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallets/{walletId}/rotate","href":"/api-reference/wallets/rotate-a-wallet","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/conduit-v2/fc10fecbb08a67cd/changelog-feed.js"],"openApiReferenceData":{"operation":{"description":"Triggers a key rotation for the wallet. The wallet address may change after rotation. Use this when a wallet's signing key needs to be replaced. For a non-custodial wallet account that needs admin approval, returns 202 with a ceremonyId and a verificationUrl; the rotation completes when an admin approves, and is refused at approval if the wallet can no longer be rotated.","operationId":"WalletsCustomerController_rotateWallet_v2","parameters":["6e42e2b7-7091-47e7-8d0c-b5d3b3cfa117","188bfdce-d41b-409c-9015-ac0e513f1f1c","b5c1770b-6eca-46a1-b357-8c99431ce175"],"responses":{"200":"3318933e-8b84-4db0-be65-9b99649cb33c","202":"f5080056-3c42-4fcb-a899-9150cfe623bf","400":"b8bb1242-0134-4c4f-892f-1baf7258e7ef","401":"74d9b49a-042c-4115-9470-ae0c3e4d1358","403":"9e74c669-730e-4365-b2e7-cc5499d84273","404":"9d9fb135-cace-4c5d-b644-587eb11d1c39","409":"3a6c68c7-53c0-40c3-9ed6-9bc221c0146b","415":"8ea76390-165d-43d0-93c2-de6b9dda978e","422":"428b795d-d647-48fb-b053-ab1f909f7798","429":"fb9daed0-7ca6-46a9-ad99-5d59b032634e","500":"ebe525da-667a-44ef-b6af-f8695200ef0e","503":"e44a1116-d2b5-48bc-8c9c-fbab691e6fe8"},"summary":"Rotate a wallet","tags":["Wallets"],"method":"post","type":"path","servers":["5707e0ee-a73c-4f7a-b3dd-5e91e6ddef88","107fb7ae-4503-4921-bfe7-67fa54c45455"],"security":["e216d117-afec-4a29-92f2-646b533f2725"],"path":"/customers/{customerId}/wallets/{walletId}/rotate","baseUrlOptions":["https://api.sandbox.conduit.financial/v2","https://api.conduit.financial/v2"],"title":"Rotate a wallet","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"6e42e2b7-7091-47e7-8d0c-b5d3b3cfa117":{"name":"customerId","required":true,"in":"path","schema":{"type":"string","example":"cus_1A2b3C4d5E6f7G8h9I0jKl","isRequired":true,"uniqueKey":"","typeLabel":"string"}},"188bfdce-d41b-409c-9015-ac0e513f1f1c":{"name":"walletId","required":true,"in":"path","schema":{"type":"string","example":"wlt_1A2b3C4d5E6f7G8h9I0jKl","isRequired":true,"uniqueKey":"","typeLabel":"string"}},"b5c1770b-6eca-46a1-b357-8c99431ce175":{"name":"Idempotency-Key","in":"header","description":"Caller-generated unique key that lets the server safely replay this request. The original response is returned for 30 days on any retry with the same key from the same organization, with the response header `Idempotency-Replayed: true`. Required on every state-changing money-moving or resource-creating POST.","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,128}$","minLength":1,"maxLength":128,"example":"01J7B3K2X9M8N5P6Q7R8S9T0V1","isRequired":true,"description":"Caller-generated unique key that lets the server safely replay this request. The original response is returned for 30 days on any retry with the same key from the same organization, with the response header `Idempotency-Replayed: true`. Required on every state-changing money-moving or resource-creating POST.","uniqueKey":"","typeLabel":"string"}}},"responses":{"3318933e-8b84-4db0-be65-9b99649cb33c":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","pattern":"^wlt_[0-9A-Za-z]{22}$","description":"Unique wallet identifier","example":"wlt_2xKjF9mQb7vN4hL1pR3w8t","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"chain":{"type":"string","enum":["ethereum","base","solana","polygon","tron","stellar","tempo","arbitrum","optimism","arc"],"description":"Blockchain network of the wallet","isRequired":true,"uniqueKey":"chain","typeLabel":"enum\u003cstring>"},"address":{"oneOf":[{"type":"string","description":"On-chain wallet address, null while provisioning","example":"0x742d35Cc6634C0532925a3b844Bc9e7595f2bD18","isRequired":true,"uniqueKey":"address.oneOf.0","typeLabel":"string"},{"type":"null","description":"On-chain wallet address, null while provisioning","example":"0x742d35Cc6634C0532925a3b844Bc9e7595f2bD18","isRequired":true,"uniqueKey":"address.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"address","typeLabel":"string | null"},"status":{"description":"Current wallet lifecycle status","type":"string","enum":["pending","active","disabled"],"isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"balances":{"type":"array","items":{"type":"object","properties":{"available":{"type":"object","properties":{"code":{"type":"string","enum":["USD","EUR","GBP","CHF","JPY","CAD","AUD","NZD","SGD","HKD","CNY","KRW","INR","BRL","MXN","ARS","CLP","COP","PEN","ZAR","NGN","KES","GHS","EGP","AED","SAR","ILS","TRY","PLN","CZK","HUF","SEK","NOK","DKK","THB","IDR","MYR","PHP","VND","TWD","USDC","USDT","DAI","EURC","PYUSD","OUSD","BTC","ETH","SOL","TRX","XLM","POL"],"description":"Asset code (USDC, USD, etc.)","isRequired":true,"uniqueKey":"balances.items.[INDEX].available.code","typeLabel":"enum\u003cstring>"},"amount":{"type":"string","description":"Decimal string, asset-precision rounded","isRequired":true,"uniqueKey":"balances.items.[INDEX].available.amount","typeLabel":"string"},"chain":{"description":"Chain when the asset is on-chain; omitted for fiat.","type":"string","enum":["ethereum","base","solana","polygon","tron","stellar","tempo","arbitrum","optimism","arc"],"uniqueKey":"balances.items.[INDEX].available.chain","typeLabel":"enum\u003cstring>"}},"required":["code","amount"],"additionalProperties":false,"isRequired":true,"uniqueKey":"balances.items.[INDEX].available","typeLabel":"object"},"pending":{"type":"object","properties":{"code":{"type":"string","enum":["USD","EUR","GBP","CHF","JPY","CAD","AUD","NZD","SGD","HKD","CNY","KRW","INR","BRL","MXN","ARS","CLP","COP","PEN","ZAR","NGN","KES","GHS","EGP","AED","SAR","ILS","TRY","PLN","CZK","HUF","SEK","NOK","DKK","THB","IDR","MYR","PHP","VND","TWD","USDC","USDT","DAI","EURC","PYUSD","OUSD","BTC","ETH","SOL","TRX","XLM","POL"],"description":"Asset code (USDC, USD, etc.)","isRequired":true,"uniqueKey":"balances.items.[INDEX].pending.code","typeLabel":"enum\u003cstring>"},"amount":{"type":"string","description":"Decimal string, asset-precision rounded","isRequired":true,"uniqueKey":"balances.items.[INDEX].pending.amount","typeLabel":"string"},"chain":{"description":"Chain when the asset is on-chain; omitted for fiat.","type":"string","enum":["ethereum","base","solana","polygon","tron","stellar","tempo","arbitrum","optimism","arc"],"uniqueKey":"balances.items.[INDEX].pending.chain","typeLabel":"enum\u003cstring>"}},"required":["code","amount"],"additionalProperties":false,"isRequired":true,"uniqueKey":"balances.items.[INDEX].pending","typeLabel":"object"},"frozen":{"type":"object","properties":{"code":{"type":"string","enum":["USD","EUR","GBP","CHF","JPY","CAD","AUD","NZD","SGD","HKD","CNY","KRW","INR","BRL","MXN","ARS","CLP","COP","PEN","ZAR","NGN","KES","GHS","EGP","AED","SAR","ILS","TRY","PLN","CZK","HUF","SEK","NOK","DKK","THB","IDR","MYR","PHP","VND","TWD","USDC","USDT","DAI","EURC","PYUSD","OUSD","BTC","ETH","SOL","TRX","XLM","POL"],"description":"Asset code (USDC, USD, etc.)","isRequired":true,"uniqueKey":"balances.items.[INDEX].frozen.code","typeLabel":"enum\u003cstring>"},"amount":{"type":"string","description":"Decimal string, asset-precision rounded","isRequired":true,"uniqueKey":"balances.items.[INDEX].frozen.amount","typeLabel":"string"},"chain":{"description":"Chain when the asset is on-chain; omitted for fiat.","type":"string","enum":["ethereum","base","solana","polygon","tron","stellar","tempo","arbitrum","optimism","arc"],"uniqueKey":"balances.items.[INDEX].frozen.chain","typeLabel":"enum\u003cstring>"}},"required":["code","amount"],"additionalProperties":false,"isRequired":true,"uniqueKey":"balances.items.[INDEX].frozen","typeLabel":"object"}},"required":["available","pending","frozen"],"description":"Balance for one asset on an account: available, pending, and frozen buckets all in the same asset. Frozen is money under a compliance hold or on a bank account the bank has blocked.","uniqueKey":"balances.items.[INDEX]","typeLabel":"object"},"description":"Wallet balances by asset","isRequired":true,"uniqueKey":"balances","typeLabel":"object[]"},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the wallet was created","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the wallet was last updated","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"updatedAt","typeLabel":"string\u003cdate-time>"},"custodyModel":{"description":"`non_custodial` — the customer co-signs each payout via the verify URL (see `requiresUserSignature` on payouts). `custodial` is a return-only value for legacy/operational wallets. Omitted until the custody model is determined.","type":"string","enum":["non_custodial","custodial"],"uniqueKey":"custodyModel","typeLabel":"enum\u003cstring>"},"rotatedAt":{"description":"Timestamp of the last key rotation, omitted until rotated","type":"string","format":"date-time","example":"2026-01-15T09:30:00.000Z","uniqueKey":"rotatedAt","typeLabel":"string\u003cdate-time>"},"replacedByWalletId":{"description":"ID of the wallet that replaced this one after rotation, omitted until rotated","type":"string","pattern":"^wlt_[0-9A-Za-z]{22}$","uniqueKey":"replacedByWalletId","typeLabel":"string"},"clientReferenceId":{"type":"string","pattern":"^[A-Za-z0-9_\\-:.]{1,255}$","description":"Client-supplied reference, unique per resource within your organization. 1-255 characters from A-Za-z, 0-9, underscore, hyphen, colon, and period — no spaces.","uniqueKey":"clientReferenceId","typeLabel":"string"}},"required":["id","chain","address","status","balances","createdAt","updatedAt"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"wlt_2xKjF9mQb7vN4hL1pR3w8t","chain":"ethereum","address":"0x742d35Cc6634C0532925a3b844Bc9e7595f2bD18","status":"pending","balances":[{"available":{"code":"USD","amount":"\u003cstring>","chain":"ethereum"},"pending":{"code":"USD","amount":"\u003cstring>","chain":"ethereum"},"frozen":{"code":"USD","amount":"\u003cstring>","chain":"ethereum"}}],"createdAt":"2026-01-15T09:30:00.000Z","updatedAt":"2026-01-15T09:30:00.000Z","custodyModel":"non_custodial","rotatedAt":"2026-01-15T09:30:00.000Z","replacedByWalletId":"\u003cstring>","clientReferenceId":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"f5080056-3c42-4fcb-a899-9150cfe623bf":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"ceremonyId":{"type":"string","pattern":"^wcm_[0-9A-Za-z]{22}$","description":"Ceremony ID for the pending wallet provisioning","isRequired":true,"uniqueKey":"ceremonyId","typeLabel":"string"},"verificationUrl":{"type":"string","description":"URL for admin approval of the ceremony","isRequired":true,"uniqueKey":"verificationUrl","typeLabel":"string"}},"required":["ceremonyId","verificationUrl"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"ceremonyId":"\u003cstring>","verificationUrl":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"b8bb1242-0134-4c4f-892f-1baf7258e7ef":{"description":"**INVALID_OID_FORMAT**: A path or query parameter expected a valid object identifier but received a value that does not match the expected format.\n\n**VALIDATION_ERROR**: The request body or query parameters failed validation. One or more fields have invalid values, missing required properties, or incorrect types. A required text field that holds only spaces counts as missing. Multipart file uploads that fail at the multipart-parser layer (unexpected form-field name, too many parts) carry an extra 'field' member naming the offending form-field.\n\n**MALFORMED_JSON**: The request body could not be parsed as JSON. Bodies declared as 'application/json' — and bodies with no Content-Type header, which are assumed to be JSON — must contain syntactically valid JSON.\n\n**IDEMPOTENCY_KEY_REQUIRED**: This endpoint requires an Idempotency-Key header to prevent duplicate processing. Generate a unique key per logical request and resend the request.\n\n**IDEMPOTENCY_KEY_INVALID**: The Idempotency-Key header value did not match the required shape (1-128 characters, letters / digits / underscore / dot / colon / hyphen).\n\n**IDEMPOTENCY_BODY_TOO_NESTED**: The request body exceeds the maximum nesting depth allowed by the idempotency fingerprint hasher. Deeply-nested arrays or objects are rejected as a malformed payload.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"},"errors":{"type":"array","items":{"type":"object","properties":{"pointer":{"type":"string","description":"JSON pointer to the invalid field","example":"/email","isRequired":true,"uniqueKey":"errors.items.[INDEX].pointer","typeLabel":"string"},"detail":{"type":"string","description":"What is wrong with this field","example":"Invalid email format","isRequired":true,"uniqueKey":"errors.items.[INDEX].detail","typeLabel":"string"},"allowedValues":{"description":"The values this field accepts, when it is a closed set","example":["ach","fedwire","rtp"],"type":"array","items":{"type":"string","uniqueKey":"errors.items.[INDEX].allowedValues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"errors.items.[INDEX].allowedValues","typeLabel":"string[]"},"category":{"description":"Class of blocker (requirements-validator output only). 'field' = form-field gap, 'document' = missing or insufficient document (including per-UBO document slots), 'individual' = required person missing.","example":"field","type":"string","enum":["field","document","individual"],"uniqueKey":"errors.items.[INDEX].category","typeLabel":"enum\u003cstring>"}},"required":["pointer","detail"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"INVALID_OID_FORMAT","title":"Invalid Object ID Format","status":400,"detail":"A path or query parameter expected a valid object identifier but received a value that does not match the expected format.","resolution":"Verify that all IDs in the request URL and query parameters are correctly formatted. IDs are typically prefixed strings like 'cus_...', 'app_...', or 'doc_...'.","docs":"https://v2.docs.conduit.financial/errors#invalid-oid-format","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"INVALID_OID_FORMAT","title":"Invalid Object ID Format","status":400,"detail":"A path or query parameter expected a valid object identifier but received a value that does not match the expected format.","resolution":"Verify that all IDs in the request URL and query parameters are correctly formatted. IDs are typically prefixed strings like 'cus_...', 'app_...', or 'doc_...'.","docs":"https://v2.docs.conduit.financial/errors#invalid-oid-format","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"74d9b49a-042c-4115-9470-ae0c3e4d1358":{"description":"**API_KEY_MISSING**: The request did not include an API key. All API requests must be authenticated.\n\n**API_KEY_INVALID**: The provided API key is not recognized or has been revoked.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"API_KEY_MISSING","title":"API Key Missing","status":401,"detail":"The request did not include an API key. All API requests must be authenticated.","resolution":"Include your API key in the 'x-api-key' header with every request.","docs":"https://v2.docs.conduit.financial/errors#api-key-missing","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"API_KEY_MISSING","title":"API Key Missing","status":401,"detail":"The request did not include an API key. All API requests must be authenticated.","resolution":"Include your API key in the 'x-api-key' header with every request.","docs":"https://v2.docs.conduit.financial/errors#api-key-missing","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"9e74c669-730e-4365-b2e7-cc5499d84273":{"description":"**ORGANIZATION_ACCESS_SUSPENDED**: Conduit has suspended this organization's access. Requests with the organization's API keys and from its users are refused until Conduit restores access.\n\n**API_KEY_READ_ONLY**: This API key has read-only access and cannot perform write operations. Read-only keys may make read requests (GET, HEAD, OPTIONS) only.\n\n**CAPABILITY_SUSPENDED**: This account is currently restricted from this action: a money movement, or opening a new account, wallet, customer or payout destination.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"ORGANIZATION_ACCESS_SUSPENDED","title":"Organization Access Suspended","status":403,"detail":"Conduit has suspended this organization's access. Requests with the organization's API keys and from its users are refused until Conduit restores access.","resolution":"Contact Conduit support.","docs":"https://v2.docs.conduit.financial/errors#organization-access-suspended","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"ORGANIZATION_ACCESS_SUSPENDED","title":"Organization Access Suspended","status":403,"detail":"Conduit has suspended this organization's access. Requests with the organization's API keys and from its users are refused until Conduit restores access.","resolution":"Contact Conduit support.","docs":"https://v2.docs.conduit.financial/errors#organization-access-suspended","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"9d9fb135-cace-4c5d-b644-587eb11d1c39":{"description":"**WALLET_NOT_FOUND**: No wallet exists with the specified ID, or the wallet belongs to a different organization.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"WALLET_NOT_FOUND","title":"Wallet Not Found","status":404,"detail":"No wallet exists with the specified ID, or the wallet belongs to a different organization.","resolution":"Verify the wallet ID is correct. Use the list wallets endpoint to find valid wallet IDs for your organization.","docs":"https://v2.docs.conduit.financial/errors#wallet-not-found","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"WALLET_NOT_FOUND","title":"Wallet Not Found","status":404,"detail":"No wallet exists with the specified ID, or the wallet belongs to a different organization.","resolution":"Verify the wallet ID is correct. Use the list wallets endpoint to find valid wallet IDs for your organization.","docs":"https://v2.docs.conduit.financial/errors#wallet-not-found","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"3a6c68c7-53c0-40c3-9ed6-9bc221c0146b":{"description":"**IDEMPOTENCY_KEY_CONFLICT**: The idempotency key was previously used with a different request body, and that request succeeded or ended in a `5xx`. A `4xx` response does not bind the key. Idempotency keys are bound to the exact request shape — replays must match the original.\n\n**IDEMPOTENCY_KEY_REQUEST_IN_PROGRESS**: An earlier request with this idempotency key has not finished, or stopped before its result was recorded. In the second case it may or may not have completed its work.\n\n**WALLET_NOT_ROTATABLE**: Only an active wallet can be rotated. The wallet is no longer active — it may already have been rotated or disabled. An admin approving a rotation also gets this error when the wallet can no longer be rotated at approval time (for example, it now holds a balance or the customer is restricted); the rotation is then cancelled and the wallet does not change.\n\n**WALLET_ROTATION_IN_PROGRESS**: A rotation for this wallet is already running. Concurrent rotations of the same wallet are rejected until the in-flight one completes.\n\n**CEREMONY_IN_FLIGHT**: A ceremony for this account is already in progress and the request would duplicate it. This happens for a signer roster change (a concurrent promote or demote of the same signer), or for a wallet create when a wallet for the same account is already being created (for example, requesting a second EVM chain while the first EVM chain's wallet is still being set up — the EVM chains share one address), or for a wallet create and a wallet rotation on the same wallet, or on a chain that shares its address, while either one waits for admin approval. The request is rejected until the in-flight ceremony finishes.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"IDEMPOTENCY_KEY_CONFLICT","title":"Idempotency Key Conflict","status":409,"detail":"The idempotency key was previously used with a different request body, and that request succeeded or ended in a `5xx`. A `4xx` response does not bind the key. Idempotency keys are bound to the exact request shape — replays must match the original.","resolution":"Use a fresh idempotency key for the new request, or replay the original request unchanged.","docs":"https://v2.docs.conduit.financial/errors#idempotency-key-conflict","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"IDEMPOTENCY_KEY_CONFLICT","title":"Idempotency Key Conflict","status":409,"detail":"The idempotency key was previously used with a different request body, and that request succeeded or ended in a `5xx`. A `4xx` response does not bind the key. Idempotency keys are bound to the exact request shape — replays must match the original.","resolution":"Use a fresh idempotency key for the new request, or replay the original request unchanged.","docs":"https://v2.docs.conduit.financial/errors#idempotency-key-conflict","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"8ea76390-165d-43d0-93c2-de6b9dda978e":{"description":"**UNSUPPORTED_MEDIA_TYPE**: The request carries a body with a Content-Type this endpoint cannot parse. JSON endpoints accept 'application/json'; a body with no Content-Type header at all is assumed to be JSON. File-upload endpoints accept only 'multipart/form-data' — JSON or undeclared bodies are rejected there.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"UNSUPPORTED_MEDIA_TYPE","title":"Unsupported Media Type","status":415,"detail":"The request carries a body with a Content-Type this endpoint cannot parse. JSON endpoints accept 'application/json'; a body with no Content-Type header at all is assumed to be JSON. File-upload endpoints accept only 'multipart/form-data' — JSON or undeclared bodies are rejected there.","resolution":"Send the request body with the 'Content-Type: application/json' header. For file uploads, use 'Content-Type: multipart/form-data' — upload endpoints accept no other body type.","docs":"https://v2.docs.conduit.financial/errors#unsupported-media-type","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"UNSUPPORTED_MEDIA_TYPE","title":"Unsupported Media Type","status":415,"detail":"The request carries a body with a Content-Type this endpoint cannot parse. JSON endpoints accept 'application/json'; a body with no Content-Type header at all is assumed to be JSON. File-upload endpoints accept only 'multipart/form-data' — JSON or undeclared bodies are rejected there.","resolution":"Send the request body with the 'Content-Type: application/json' header. For file uploads, use 'Content-Type: multipart/form-data' — upload endpoints accept no other body type.","docs":"https://v2.docs.conduit.financial/errors#unsupported-media-type","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"428b795d-d647-48fb-b053-ab1f909f7798":{"description":"**WALLET_ROTATION_BLOCKED_BALANCE**: The wallet holds a balance (available, pending, or frozen) above the asset's dust floor and cannot be rotated. Rotation would strand those funds on the retired wallet record. A leftover at or below the dust floor does not block rotation — it is too small to be worth a transfer, so nothing will ever move it.\n\n**WALLET_ROTATION_BLOCKED_RETURN**: The wallet received a coin that Conduit does not support, and Conduit is returning it to its sender, can still return it, or cannot yet prove whether an earlier return sent it. Rotation would leave the coin on a wallet that Conduit can no longer send from.\n\n**WALLET_PROVISIONING_REJECTED**: The custody provider rejected the wallet creation; no wallet was created and no funds were moved.\n\n**CRYPTO_WALLET_CONSENSUS_REQUIRED**: This wallet operation needs a customer admin's approval before it can complete; it could not be finished synchronously. No funds were moved and no wallet was created.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"WALLET_ROTATION_BLOCKED_BALANCE","title":"Wallet Rotation Blocked: Balance Above Dust","status":422,"detail":"The wallet holds a balance (available, pending, or frozen) above the asset's dust floor and cannot be rotated. Rotation would strand those funds on the retired wallet record. A leftover at or below the dust floor does not block rotation — it is too small to be worth a transfer, so nothing will ever move it.","resolution":"Move the funds out of the wallet (e.g. via a payout) and wait for any in-flight deposits to settle, then retry the rotation. Compliance-frozen balances must be released before rotation is possible.","docs":"https://v2.docs.conduit.financial/errors#wallet-rotation-blocked-balance","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"WALLET_ROTATION_BLOCKED_BALANCE","title":"Wallet Rotation Blocked: Balance Above Dust","status":422,"detail":"The wallet holds a balance (available, pending, or frozen) above the asset's dust floor and cannot be rotated. Rotation would strand those funds on the retired wallet record. A leftover at or below the dust floor does not block rotation — it is too small to be worth a transfer, so nothing will ever move it.","resolution":"Move the funds out of the wallet (e.g. via a payout) and wait for any in-flight deposits to settle, then retry the rotation. Compliance-frozen balances must be released before rotation is possible.","docs":"https://v2.docs.conduit.financial/errors#wallet-rotation-blocked-balance","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"fb9daed0-7ca6-46a9-ad99-5d59b032634e":{"description":"**RATE_LIMITED**: Too many requests. This error is returned by three independent checks: the per-organization bucket applied to every authenticated API request; the per-IP bucket applied to unauthenticated traffic before an API key is validated; and the per-IP bucket applied when repeated invalid API keys are submitted from the same address. Honor the Retry-After header (also exposed as retryAfterSeconds in the body) before retrying. Current limits and remaining budget are visible in X-RateLimit-Limit (the bucket size), X-RateLimit-Remaining, and X-RateLimit-Reset (seconds until the bucket refills) on every response once your API key is accepted.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"retryAfterSeconds":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991,"description":"Seconds to wait before retrying","example":3,"isRequired":true,"uniqueKey":"retryAfterSeconds","typeLabel":"integer"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp","retryAfterSeconds"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"RATE_LIMITED","title":"Rate Limited","status":429,"detail":"Too many requests. This error is returned by three independent checks: the per-organization bucket applied to every authenticated API request; the per-IP bucket applied to unauthenticated traffic before an API key is validated; and the per-IP bucket applied when repeated invalid API keys are submitted from the same address. Honor the Retry-After header (also exposed as retryAfterSeconds in the body) before retrying. Current limits and remaining budget are visible in X-RateLimit-Limit (the bucket size), X-RateLimit-Remaining, and X-RateLimit-Reset (seconds until the bucket refills) on every response once your API key is accepted.","resolution":"Sleep until Retry-After seconds have elapsed, then retry. For sustained workloads exceeding the per-organization defaults, request a rate-limit increase through your support contact.","docs":"https://v2.docs.conduit.financial/errors#rate-limited","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z","retryAfterSeconds":3},"examples":{"Example":{"title":"Example","value":{"type":"RATE_LIMITED","title":"Rate Limited","status":429,"detail":"Too many requests. This error is returned by three independent checks: the per-organization bucket applied to every authenticated API request; the per-IP bucket applied to unauthenticated traffic before an API key is validated; and the per-IP bucket applied when repeated invalid API keys are submitted from the same address. Honor the Retry-After header (also exposed as retryAfterSeconds in the body) before retrying. Current limits and remaining budget are visible in X-RateLimit-Limit (the bucket size), X-RateLimit-Remaining, and X-RateLimit-Reset (seconds until the bucket refills) on every response once your API key is accepted.","resolution":"Sleep until Retry-After seconds have elapsed, then retry. For sustained workloads exceeding the per-organization defaults, request a rate-limit increase through your support contact.","docs":"https://v2.docs.conduit.financial/errors#rate-limited","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z","retryAfterSeconds":3}}},"exampleType":"examples"}},"exampleType":"examples"},"ebe525da-667a-44ef-b6af-f8695200ef0e":{"description":"**INTERNAL_ERROR**: An unexpected error occurred while processing your request.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"INTERNAL_ERROR","title":"Internal Error","status":500,"detail":"An unexpected error occurred while processing your request.","resolution":"Retry the request after a brief delay. If the error persists, contact support and include the correlationId from the error response for investigation.","docs":"https://v2.docs.conduit.financial/errors#internal-error","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"INTERNAL_ERROR","title":"Internal Error","status":500,"detail":"An unexpected error occurred while processing your request.","resolution":"Retry the request after a brief delay. If the error persists, contact support and include the correlationId from the error response for investigation.","docs":"https://v2.docs.conduit.financial/errors#internal-error","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"e44a1116-d2b5-48bc-8c9c-fbab691e6fe8":{"description":"**ASSET_CHAIN_PAUSED**: Conduit has temporarily paused this asset on this chain, or the whole chain, so it cannot accept this request now. Asset and chain pairs that are not paused stay available.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"ASSET_CHAIN_PAUSED","title":"Asset Chain Paused","status":503,"detail":"Conduit has temporarily paused this asset on this chain, or the whole chain, so it cannot accept this request now. Asset and chain pairs that are not paused stay available.","resolution":"Retry the same request later; it succeeds once Conduit lifts the pause. Use an asset and chain pair that is not paused if you cannot wait.","docs":"https://v2.docs.conduit.financial/errors#asset-chain-paused","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"ASSET_CHAIN_PAUSED","title":"Asset Chain Paused","status":503,"detail":"Conduit has temporarily paused this asset on this chain, or the whole chain, so it cannot accept this request now. Asset and chain pairs that are not paused stay available.","resolution":"Retry the same request later; it succeeds once Conduit lifts the pause. Use an asset and chain pair that is not paused if you cannot wait.","docs":"https://v2.docs.conduit.financial/errors#asset-chain-paused","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"e216d117-afec-4a29-92f2-646b533f2725":{"api-key":{"type":"apiKey","in":"header","name":"x-api-key","scopes":[],"schemeName":"api-key"}}},"servers":{"5707e0ee-a73c-4f7a-b3dd-5e91e6ddef88":{"url":"https://api.sandbox.conduit.financial/v2","description":"Sandbox"},"107fb7ae-4503-4921-bfe7-67fa54c45455":{"url":"https://api.conduit.financial/v2","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","scopes":[],"schemeName":"api-key"},"schema":{"title":"x-api-key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"api-key","name":"x-api-key"}],"title":"api-key"}]},"originalFileLocation":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json"},"subdomain":"conduit-v2","siteName":"Conduit API","title":"Rotate a wallet - Conduit API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-06T22:59:23.642Z","originalFileLocation":"api-reference/wallets/rotate-a-wallet.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=\"Triggers a key rotation for the wallet. The wallet address may change after rotation. Use this when a wallet\u0026#x27;s signing key needs to be replaced. For a non-custodial wallet account that needs admin approval, returns 202 with a ceremonyId and a verificationUrl; the rotation completes when an admin approves, and is refused at approval if the wallet can no longer be rotated.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Conduit API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Rotate a wallet - Conduit API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Triggers a key rotation for the wallet. The wallet address may change after rotation. Use this when a wallet\u0026#x27;s signing key needs to be replaced. For a non-custodial wallet account that needs admin approval, returns 202 with a ceremonyId and a verificationUrl; the rotation completes when an admin approves, and is refused at approval if the wallet can no longer be rotated.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Conduit API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.conduit.financial/api-reference/wallets/rotate-a-wallet\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://conduit-v2.mintlify.site/_mintlify/api/og/v2?division=Wallets\u0026amp;title=Rotate+a+wallet\u0026amp;description=Triggers+a+key+rotation+for+the+wallet.+The+wallet+address+may+change+after+rotation.+Use+this+when+a+wallet%27s+signing+key+needs+to+be+replaced.+For+a+non-custo\u0026amp;theme=3d508c90c97bd7e1f652ff9d\u0026amp;signature=b4b8e73c05bf25cf0b788bc37fcb10d62e081f053ceca5e570aedde5f7359190\">\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=\"Rotate a wallet - Conduit API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Triggers a key rotation for the wallet. The wallet address may change after rotation. Use this when a wallet\u0026#x27;s signing key needs to be replaced. For a non-custodial wallet account that needs admin approval, returns 202 with a ceremonyId and a verificationUrl; the rotation completes when an admin approves, and is refused at approval if the wallet can no longer be rotated.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://conduit-v2.mintlify.site/_mintlify/api/og/v2?division=Wallets\u0026amp;title=Rotate+a+wallet\u0026amp;description=Triggers+a+key+rotation+for+the+wallet.+The+wallet+address+may+change+after+rotation.+Use+this+when+a+wallet%27s+signing+key+needs+to+be+replaced.+For+a+non-custo\u0026amp;theme=3d508c90c97bd7e1f652ff9d\u0026amp;signature=b4b8e73c05bf25cf0b788bc37fcb10d62e081f053ceca5e570aedde5f7359190\">\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/conduit-v2/aehrL9Bd40t-JxrL/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Conduit API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0445F5\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.conduit.financial/api-reference/wallets/rotate-a-wallet\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/wallets/rotate-a-wallet.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.conduit.financial/#organization\",\"name\":\"Conduit API\",\"url\":\"https://docs.conduit.financial\"},{\"@type\":\"WebSite\",\"@id\":\"https://docs.conduit.financial#website\",\"name\":\"Conduit API\",\"url\":\"https://docs.conduit.financial\",\"publisher\":{\"@id\":\"https://docs.conduit.financial/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.conduit.financial/api-reference/wallets/rotate-a-wallet#webpage\",\"url\":\"https://docs.conduit.financial/api-reference/wallets/rotate-a-wallet\",\"name\":\"Rotate a wallet\",\"description\":\"Triggers a key rotation for the wallet. The wallet address may change after rotation. Use this when a wallet's signing key needs to be replaced. For a non-custodial wallet account that needs admin approval, returns 202 with a ceremonyId and a verificationUrl; the rotation completes when an admin approves, and is refused at approval if the wallet can no longer be rotated.\",\"dateModified\":\"2026-11-06T22:59:23.642Z\",\"isPartOf\":{\"@id\":\"https://docs.conduit.financial#website\"},\"breadcrumb\":{\"@id\":\"https://docs.conduit.financial/api-reference/wallets/rotate-a-wallet#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.conduit.financial/api-reference/wallets/rotate-a-wallet#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Wallets\",\"item\":\"https://docs.conduit.financial/api-reference/wallets/claim-non-custodial-control-for-a-customer\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Rotate a wallet\",\"item\":\"https://docs.conduit.financial/api-reference/wallets/rotate-a-wallet\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.conduit.financial/api-reference/wallets/rotate-a-wallet#apireference\",\"headline\":\"Rotate a wallet\",\"name\":\"Rotate a wallet\",\"description\":\"Triggers a key rotation for the wallet. The wallet address may change after rotation. Use this when a wallet's signing key needs to be replaced. For a non-custodial wallet account that needs admin approval, returns 202 with a ceremonyId and a verificationUrl; the rotation completes when an admin approves, and is refused at approval if the wallet can no longer be rotated.\",\"url\":\"https://docs.conduit.financial/api-reference/wallets/rotate-a-wallet\",\"mainEntityOfPage\":{\"@id\":\"https://docs.conduit.financial/api-reference/wallets/rotate-a-wallet#webpage\"},\"dateModified\":\"2026-11-06T22:59:23.642Z\",\"publisher\":{\"@id\":\"https://docs.conduit.financial/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.conduit.financial#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Conduit API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Conduit API","nav":{"global":{"anchors":[{"anchor":"Trust Center","href":"https://trust.conduitpay.com/"}]},"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/introduction"}]},{"tab":"Sandbox","pages":[{"title":"Sandbox","href":"/sandbox/overview"}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"API Conventions","href":"/api-reference/overview"},{"title":"OpenAPI Specification","href":"/sdks/openapi"},{"title":"Changelog","href":"/changelog"}]},{"group":"Errors","pages":[{"title":"Error Codes","href":"/errors"},{"group":"Recovery playbooks","pages":[{"title":"TRAVEL_RULE_REJECTED error","href":"/errors/travel-rule-rejected"},{"title":"SENDER_INFO_TIMEOUT error","href":"/errors/sender-info-timeout"},{"title":"USER_SIGNATURE_DECLINED error","href":"/errors/user-signature-declined"},{"title":"USER_SIGNATURE_TIMEOUT error","href":"/errors/user-signature-timeout"},{"title":"USER_SIGNATURE_REJECTED_BY_PROVIDER error","href":"/errors/user-signature-rejected-by-provider"},{"title":"COMPLIANCE_HOLD error","href":"/errors/compliance-hold"},{"title":"COMPLIANCE_REVIEW_REJECTED error","href":"/errors/compliance-review-rejected"},{"title":"CRYPTO_WALLET_MISCONFIGURED error","href":"/errors/crypto-wallet-misconfigured"},{"title":"RETURNED_BY_SENDER error","href":"/errors/returned-by-sender"},{"title":"PROVIDER_REJECTED error","href":"/errors/provider-rejected"},{"title":"RAIL_POLICY_REJECTED error","href":"/errors/rail-policy-rejected"},{"title":"INSUFFICIENT_FUNDS_AT_SETTLE error","href":"/errors/insufficient-funds-at-settle"},{"title":"RAIL_UNAVAILABLE error","href":"/errors/rail-unavailable"},{"title":"SANDBOX_TRANSACTION_NOT_FORCE_TERMINAL_READY error","href":"/errors/sandbox-transaction-not-force-terminal-ready"},{"title":"INVALID_ADDRESS_FORMAT error","href":"/errors/invalid-address-format"},{"title":"CUSTOMER_NOT_ONBOARDED","href":"/errors/customer-not-onboarded"},{"title":"RATE_UNAVAILABLE","href":"/errors/rate-unavailable"},{"title":"RATE_UNAVAILABLE_AFTER_HOURS","href":"/errors/rate-unavailable-after-hours"},{"title":"DOCUMENTATION_REQUIRED","href":"/errors/documentation-required"},{"title":"RECIPIENT_NOT_WHITELISTED","href":"/errors/recipient-not-whitelisted"},{"title":"PAYOUT_RAIL_CURRENCY_MISMATCH","href":"/errors/payout-rail-currency-mismatch"}]}]},{"group":"Customers","pages":[{"title":"List customers","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers","href":"/api-reference/customers/list-customers"},{"title":"Get a customer by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{id}","href":"/api-reference/customers/get-a-customer-by-id"},{"title":"Submit a customer update application","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/updates","href":"/api-reference/customers/submit-a-customer-update-application"}]},{"group":"Registered Addresses","pages":[{"title":"List registered addresses for a customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/registered-addresses","href":"/api-reference/registered-addresses/list-registered-addresses-for-a-customer"},{"title":"Register a wallet address for a customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallets/registered-addresses","href":"/api-reference/registered-addresses/register-a-wallet-address-for-a-customer"},{"title":"Get a registered address by id","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /wallets/registered-addresses/{id}","href":"/api-reference/registered-addresses/get-a-registered-address-by-id"},{"title":"Revoke (soft-delete) a registered address","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json delete /wallets/registered-addresses/{id}","href":"/api-reference/registered-addresses/revoke-soft-delete-a-registered-address"}]},{"group":"Wallets","pages":[{"title":"Claim non-custodial control for a customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallets/claim-non-custodial","href":"/api-reference/wallets/claim-non-custodial-control-for-a-customer"},{"title":"List customer wallets","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets","href":"/api-reference/wallets/list-customer-wallets"},{"title":"Create a wallet","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallets","href":"/api-reference/wallets/create-a-wallet"},{"title":"List non-custodial claims","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/claims","href":"/api-reference/wallets/list-non-custodial-claims"},{"title":"Get a non-custodial claim by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/claims/{claimId}","href":"/api-reference/wallets/get-a-non-custodial-claim-by-id"},{"title":"Get a wallet by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/{walletId}","href":"/api-reference/wallets/get-a-wallet-by-id"},{"title":"Get wallet balances","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/{walletId}/balances","href":"/api-reference/wallets/get-wallet-balances"},{"title":"Get a wallet statement","description":"Returns every transaction that completed on the wallet in one asset over a period, oldest first, with what the wallet held before and after. A line is one transaction, dated by its `completedAt`, so a transaction that completes in a month is on that month's statement and in the `completedAfter` / `completedBefore` list for that month. Give `from` and `to` as UTC days; both are included, `to` must be fully in the past, and the period holds at most 92 days. The wallet is on one chain, so no chain is named; an asset that is not on it returns 400 `UNSUPPORTED_ASSET`. Follow `meta.nextCursor` for the next page; `openingBalance`, `closingBalance` and `totals` cover the whole period on every page.","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/{walletId}/statement","href":"/api-reference/wallets/get-a-wallet-statement"},{"title":"Rotate a wallet","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallets/{walletId}/rotate","href":"/api-reference/wallets/rotate-a-wallet"}]},{"group":"Wallet Signers","pages":[{"title":"List signers for a customer's wallets","description":"Returns a paginated list of all current signers for the customer's wallets (excludes removed and errored signers).","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallet-signers","href":"/api-reference/wallet-signers/list-signers-for-a-customers-wallets"},{"title":"Add a signer to a customer's wallets","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers","href":"/api-reference/wallet-signers/add-a-signer-to-a-customers-wallets"},{"title":"Reissue a wallet signer's enrollment invite","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/reissue-invite","href":"/api-reference/wallet-signers/reissue-a-wallet-signers-enrollment-invite"},{"title":"Recover a signer's pending admin-approval link","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/reissue-admin-approval","href":"/api-reference/wallet-signers/recover-a-signers-pending-admin-approval-link"},{"title":"Start a passkey recovery for a signer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/recovery","href":"/api-reference/wallet-signers/start-a-passkey-recovery-for-a-signer"},{"title":"Cancel a signer's passkey recovery","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/recovery/cancel","href":"/api-reference/wallet-signers/cancel-a-signers-passkey-recovery"},{"title":"Remove a signer from a customer's wallets","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json delete /customers/{customerId}/wallet-signers/{signerId}","href":"/api-reference/wallet-signers/remove-a-signer-from-a-customers-wallets"},{"title":"Promote a signer to admin in place of an admin","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/promote","href":"/api-reference/wallet-signers/promote-a-signer-to-admin-in-place-of-an-admin"},{"title":"Demote an admin","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/demote","href":"/api-reference/wallet-signers/demote-an-admin"}]},{"group":"Signing Quorum","pages":[{"title":"Get a customer's signing quorum configuration","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/signing-quorum","href":"/api-reference/signing-quorum/get-a-customers-signing-quorum-configuration"},{"title":"Set a customer's signing quorum threshold","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json put /customers/{customerId}/signing-quorum","href":"/api-reference/signing-quorum/set-a-customers-signing-quorum-threshold"},{"title":"Override a wallet's signing quorum threshold","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json put /wallets/{walletId}/signing-quorum","href":"/api-reference/signing-quorum/override-a-wallets-signing-quorum-threshold"},{"title":"Clear a wallet's signing quorum override","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json delete /wallets/{walletId}/signing-quorum","href":"/api-reference/signing-quorum/clear-a-wallets-signing-quorum-override"}]},{"group":"Virtual Accounts","pages":[{"title":"List customer virtual accounts","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/virtual-accounts","href":"/api-reference/virtual-accounts/list-customer-virtual-accounts"},{"title":"Get a virtual account","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/virtual-accounts/{virtualAccountId}","href":"/api-reference/virtual-accounts/get-a-virtual-account"},{"title":"Get virtual account balances","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/virtual-accounts/{virtualAccountId}/balances","href":"/api-reference/virtual-accounts/get-virtual-account-balances"},{"title":"Get a virtual account statement","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/virtual-accounts/{virtualAccountId}/statement","href":"/api-reference/virtual-accounts/get-a-virtual-account-statement"}]},{"group":"Applications","pages":[{"title":"List all applications","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /applications","href":"/api-reference/applications/list-all-applications"},{"title":"Get an application by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /applications/{id}","href":"/api-reference/applications/get-an-application-by-id"},{"title":"Cancel an application","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /applications/{id}/cancel","href":"/api-reference/applications/cancel-an-application"},{"title":"Get an identity-verification link for a person","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /applications/{applicationId}/persons/{referenceId}/idv-link","href":"/api-reference/applications/get-an-identity-verification-link-for-a-person"}]},{"group":"Verifications","pages":[{"title":"Initiate a customer verification","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/verifications","href":"/api-reference/verifications/initiate-a-customer-verification"}]},{"group":"Signing Requests","pages":[{"title":"List signing requests awaiting a machine signature","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /signing-requests","href":"/api-reference/signing-requests/list-signing-requests-awaiting-a-machine-signature"},{"title":"Get a signing request","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /signing-requests/{id}","href":"/api-reference/signing-requests/get-a-signing-request"},{"title":"Approve a signing request with a machine stamp","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /signing-requests/{id}/approve","href":"/api-reference/signing-requests/approve-a-signing-request-with-a-machine-stamp"},{"title":"Reject a signing request with a machine stamp","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /signing-requests/{id}/reject","href":"/api-reference/signing-requests/reject-a-signing-request-with-a-machine-stamp"}]},{"group":"Transactions","pages":[{"title":"Submit sender (originator) information for a deposit parked on UNREGISTERED_ADDRESS","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /transactions/{id}/sender-information","href":"/api-reference/transactions/submit-sender-originator-information-for-a-deposit-parked-on-unregistered_address"},{"title":"List transactions","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /transactions","href":"/api-reference/transactions/list-transactions"},{"title":"Get a transaction by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /transactions/{id}","href":"/api-reference/transactions/get-a-transaction-by-id"}]},{"group":"Payouts","pages":[{"title":"Discover payout requirements","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /payouts/requirements","href":"/api-reference/payouts/discover-payout-requirements"},{"title":"Preview payout requirements","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /payouts/requirements","href":"/api-reference/payouts/preview-payout-requirements"},{"title":"Create a payout","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /payouts","href":"/api-reference/payouts/create-a-payout"},{"title":"Retrieve a payout","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /payouts/{id}","href":"/api-reference/payouts/retrieve-a-payout"},{"title":"Cancel a pending payout","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /payouts/{id}/cancel","href":"/api-reference/payouts/cancel-a-pending-payout"}]},{"group":"RFIs","pages":[{"title":"List RFIs","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /rfis","href":"/api-reference/rfis/list-rfis"},{"title":"Get an RFI by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /rfis/{id}","href":"/api-reference/rfis/get-an-rfi-by-id"},{"title":"Acknowledge an RFI","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /rfis/{id}/acknowledge","href":"/api-reference/rfis/acknowledge-an-rfi"},{"title":"Respond to an RFI","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /rfis/{id}/responses","href":"/api-reference/rfis/respond-to-an-rfi"}]},{"group":"Documents","pages":[{"title":"List documents","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /documents","href":"/api-reference/documents/list-documents"},{"title":"Upload a document","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /documents","href":"/api-reference/documents/upload-a-document"},{"title":"Get a document by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /documents/{id}","href":"/api-reference/documents/get-a-document-by-id"},{"title":"Get a download URL for a document","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /documents/{id}/download","href":"/api-reference/documents/get-a-download-url-for-a-document"}]},{"group":"Payee checks","pages":[{"title":"Check a payee name","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /payee-checks","href":"/api-reference/payee-checks/check-a-payee-name"}]},{"group":"Whitelist Recipients","pages":[{"title":"List whitelist recipients for a customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/whitelist-recipients","href":"/api-reference/whitelist-recipients/list-whitelist-recipients-for-a-customer"},{"title":"Register an intercompany recipient for whitelisting","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/whitelist-recipients","href":"/api-reference/whitelist-recipients/register-an-intercompany-recipient-for-whitelisting"},{"title":"Get a whitelist recipient by id","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/whitelist-recipients/{id}","href":"/api-reference/whitelist-recipients/get-a-whitelist-recipient-by-id"},{"title":"Revoke a whitelist recipient","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json delete /customers/{customerId}/whitelist-recipients/{id}","href":"/api-reference/whitelist-recipients/revoke-a-whitelist-recipient"}]},{"group":"Orders","pages":[{"title":"List orders for the authenticated organization","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /orders","href":"/api-reference/orders/list-orders-for-the-authenticated-organization"},{"title":"Create an order","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /orders","href":"/api-reference/orders/create-an-order"},{"title":"List required recipient fields","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /orders/requirements","href":"/api-reference/orders/list-required-recipient-fields"},{"title":"Retrieve an order by id","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /orders/{id}","href":"/api-reference/orders/retrieve-an-order-by-id"},{"title":"Cancel a pending order","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /orders/{id}/cancel","href":"/api-reference/orders/cancel-a-pending-order"},{"title":"Execute a pending order","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /orders/{id}/execute","href":"/api-reference/orders/execute-a-pending-order"}]},{"group":"Asset Chain Pairs","pages":[{"title":"List offerable asset/chain pairs","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /asset-chain-pairs","href":"/api-reference/asset-chain-pairs/list-offerable-assetchain-pairs"}]},{"group":"Quotes","pages":[{"title":"Price a conversion, payout, or withdrawal","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /quotes","href":"/api-reference/quotes/price-a-conversion-payout-or-withdrawal"}]},{"group":"Webhook Endpoints","pages":[{"title":"List webhook endpoints","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /webhooks/endpoints","href":"/api-reference/webhook-endpoints/list-webhook-endpoints"},{"title":"Create a webhook endpoint","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /webhooks/endpoints","href":"/api-reference/webhook-endpoints/create-a-webhook-endpoint"},{"title":"Get a webhook endpoint by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /webhooks/endpoints/{id}","href":"/api-reference/webhook-endpoints/get-a-webhook-endpoint-by-id"},{"title":"Delete a webhook endpoint","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json delete /webhooks/endpoints/{id}","href":"/api-reference/webhook-endpoints/delete-a-webhook-endpoint"},{"title":"Update a webhook endpoint","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json patch /webhooks/endpoints/{id}","href":"/api-reference/webhook-endpoints/update-a-webhook-endpoint"},{"title":"Rotate a webhook endpoint's signing secret","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /webhooks/endpoints/{id}/rotate","href":"/api-reference/webhook-endpoints/rotate-a-webhook-endpoints-signing-secret"}]},{"group":"Webhook Deliveries","pages":[{"title":"List webhook deliveries","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /webhooks/deliveries","href":"/api-reference/webhook-deliveries/list-webhook-deliveries"},{"title":"Get a delivery by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /webhooks/deliveries/{id}","href":"/api-reference/webhook-deliveries/get-a-delivery-by-id"},{"title":"Retry a failed delivery","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /webhooks/deliveries/{id}/retry","href":"/api-reference/webhook-deliveries/retry-a-failed-delivery"}]},{"group":"Webhook Event Types","pages":[{"title":"List available webhook event types","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /webhooks/event-types","href":"/api-reference/webhook-event-types/list-available-webhook-event-types"}]},{"group":"Events","pages":[{"title":"List events","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /events","href":"/api-reference/events/list-events"},{"title":"Get an event by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /events/{id}","href":"/api-reference/events/get-an-event-by-id"}]},{"group":"Features","pages":[{"title":"Submit a feature request","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/features","href":"/api-reference/features/submit-a-feature-request"},{"title":"Discover feature requirements for a customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/features/requirements","href":"/api-reference/features/discover-feature-requirements-for-a-customer"}]},{"group":"Customer Onboarding","pages":[{"title":"Submit a customer onboarding application","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /onboarding","href":"/api-reference/customer-onboarding/submit-a-customer-onboarding-application"},{"title":"Discover onboarding requirements for a country","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /onboarding/requirements","href":"/api-reference/customer-onboarding/discover-onboarding-requirements-for-a-country"},{"title":"Discover selectable policy-subject catalog options for an axis","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /onboarding/policy-subjects","href":"/api-reference/customer-onboarding/discover-selectable-policy-subject-catalog-options-for-an-axis"}]},{"group":"Markup","pages":[{"title":"Accrued markup balances","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /markup/balances","href":"/api-reference/markup/accrued-markup-balances"},{"title":"Monthly markup statements","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /markup/statements","href":"/api-reference/markup/monthly-markup-statements"},{"title":"Markup statement lines","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /markup/statement-lines","href":"/api-reference/markup/markup-statement-lines"}]},{"group":"Sandbox","pages":[{"title":"Mark a sandbox customer as a house account","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json patch /sandbox/customers/{customerId}/house-account","href":"/api-reference/sandbox/mark-a-sandbox-customer-as-a-house-account"},{"title":"Reset a sandbox customer's wallet claim","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/customers/{customerId}/simulate-reset-claim","href":"/api-reference/sandbox/reset-a-sandbox-customers-wallet-claim"},{"title":"Resolve a registered address parked in screening review (sandbox only)","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/wallets/registered-addresses/{id}/simulate/compliance-decision","href":"/api-reference/sandbox/resolve-a-registered-address-parked-in-screening-review-sandbox-only"},{"title":"Simulate the compliance verdict on a sandbox application","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/applications/{id}/simulate/decision","href":"/api-reference/sandbox/simulate-the-compliance-verdict-on-a-sandbox-application"},{"title":"Simulate fiat-rail settlement for a sandbox payout","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/payouts/{id}/simulate/settled","href":"/api-reference/sandbox/simulate-fiat-rail-settlement-for-a-sandbox-payout"},{"title":"Simulate a Travel Rule counterparty webhook for a sandbox payout","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/payouts/{id}/simulate/counterparty-webhook","href":"/api-reference/sandbox/simulate-a-travel-rule-counterparty-webhook-for-a-sandbox-payout"},{"title":"Release a sandbox payout held for review","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/payouts/{id}/simulate-review-approve","href":"/api-reference/sandbox/release-a-sandbox-payout-held-for-review"},{"title":"Reject a sandbox payout held for review","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/payouts/{id}/simulate-review-reject","href":"/api-reference/sandbox/reject-a-sandbox-payout-held-for-review"},{"title":"Resolve a funding transfer held for compliance review (sandbox only)","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/orders/{orderId}/deposits/simulate/compliance-decision","href":"/api-reference/sandbox/resolve-a-funding-transfer-held-for-compliance-review-sandbox-only"},{"title":"Simulate an overall conversion failure for a sandbox order","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/orders/{id}/simulate/conversion-failed","href":"/api-reference/sandbox/simulate-an-overall-conversion-failure-for-a-sandbox-order"},{"title":"Simulate a transaction terminal outcome (sandbox only)","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/transactions/{id}/simulate/terminal","href":"/api-reference/sandbox/simulate-a-transaction-terminal-outcome-sandbox-only"},{"title":"Return a completed transaction from the bank (sandbox only)","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/transactions/{id}/simulate/return","href":"/api-reference/sandbox/return-a-completed-transaction-from-the-bank-sandbox-only"},{"title":"Resolve a transaction parked for compliance review (sandbox only)","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/transactions/{id}/simulate/compliance-decision","href":"/api-reference/sandbox/resolve-a-transaction-parked-for-compliance-review-sandbox-only"},{"title":"Simulate a fiat deposit to a sandbox virtual account","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/customers/{customerId}/virtual-accounts/{virtualAccountId}/deposits/simulate","href":"/api-reference/sandbox/simulate-a-fiat-deposit-to-a-sandbox-virtual-account"},{"title":"Simulate a Conduit compliance RFI on a sandbox customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/rfis/simulate","href":"/api-reference/sandbox/simulate-a-conduit-compliance-rfi-on-a-sandbox-customer"},{"title":"Simulate the resolution of a sandbox RFI","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/rfis/{id}/simulate/resolve","href":"/api-reference/sandbox/simulate-the-resolution-of-a-sandbox-rfi"},{"title":"Simulate a request for more information on a sandbox RFI","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/rfis/{id}/simulate/more-info","href":"/api-reference/sandbox/simulate-a-request-for-more-information-on-a-sandbox-rfi"},{"title":"Simulate compliance approval of a pending whitelist registration","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/whitelist-recipients/{id}/simulate-approve","href":"/api-reference/sandbox/simulate-compliance-approval-of-a-pending-whitelist-registration"},{"title":"Simulate compliance rejection of a pending whitelist registration","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/whitelist-recipients/{id}/simulate-reject","href":"/api-reference/sandbox/simulate-compliance-rejection-of-a-pending-whitelist-registration"},{"title":"Force a sandbox order's rate lock to expire immediately","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/orders/{id}/simulate/rate-lock-expired","href":"/api-reference/sandbox/force-a-sandbox-orders-rate-lock-to-expire-immediately"},{"title":"Simulate a Conduit restriction on a sandbox customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/customers/{customerId}/simulate/restrict","href":"/api-reference/sandbox/simulate-a-conduit-restriction-on-a-sandbox-customer"},{"title":"Simulate a lifted restriction on a sandbox customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/customers/{customerId}/simulate/lift-restriction","href":"/api-reference/sandbox/simulate-a-lifted-restriction-on-a-sandbox-customer"}]}]},{"tab":"KYB Reference","pages":[{"title":"KYB Reference","href":"/kyb/overview"}]}]},"basePath":"","title":"Rotate a wallet - Conduit API","buildId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","deploymentId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-C-hEh3I2.js","utils-CnF4QiUD.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C7PVNbel.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-8ytevL2A.js","snippetPresets-BT1alx3v.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","Page-C945cI-W.js","ApiExamples-BLXC0i_W.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CyLIGI9_.js","shallow-DC0lGVIW.js","getApiPlaygroundDisplay-CgDQ85tN.js","CodeSnippet-6-I-Gpv9.js","CodeSnippets-BAk1kDdu.js","getPastedJson-B276RuWN.js","icon-BqP8etTm.js","MethodPill-DM6sbxG1.js","DuplicateIcon-PyJglOaE.js","createIcon-CMeOMAc_.js","DynamicMarkdown-BoyYAA8K.js","SectionHeading-DAYv3gvZ.js","axios-vUo_bRtp.js","Markdown-BhTTmazV.js","clsx-CR-RHrVC.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CBUH0-zX.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BmARFYNC.js"]}