To ensure secure data transmission, ChainUp uses the RSA-2048PKCS#8 key format for asymmetric encryption of API request and response data. The public key is used to decrypt request data and needs to be uploaded to ChainUp, while the private key is used to encrypt data and is configured by the client on the corresponding server and securely stored.
First pair of RSA public-private keys: After creating the API, ChainUp Custody will generate a default pair. The RSA public key will be provided to the developer for decrypting response parameters.Second pair of RSA public-private keys: Generated by the developer, used for encrypting parameters before API requests from the client’s business system. The RSA public key is configured in ChainUp Custody for decrypting request parameters.Third pair of RSA public-private keys: Generated by the developer, used by Co-Signer for encrypting parameters before API requests. The RSA public key is configured in ChainUp Custody for decrypting request parameters.Fourth pair of RSA public-private keys (optional): Generated by the developer, mainly used for verifying transaction signatures when Co-Signer does not configure callback notifications. This pair of public-private keys is generated and saved by the client, and ChainUp Custody does not retain it.
In addition to encrypting interface data, the Co-Signer RSA public key is also involved in the encryption process of Co-Signer private key shares. For security reasons, it is recommended to set the Co-Signer RSA public key different from the business service RSA public key.Co-Signer has a built-in command for generating RSA public-private keys, which is limited to Co-Signer’s use. Please refer to Co-Signer Deployment.
The system currently supports three types of callback services: Transaction Status Callback, Signature Callback, and Transaction Approval Callback.
Transaction Status Callback: ChainUp will notify the client of the latest status of an order when processing is completed (e.g. receiving, transfer orders). The client configures this callback address on the ChainUp platform on the Create API page under Transaction Status Notification Address.
Signature Callback: ChainUp will callback Co-Signer for signature operations when creating an address or generating private key shares for Co-Signer. The client configures this callback address on the ChainUp platform on the Create API page under Co-Signer Interface Address.
Transaction Approval Callback Address: Please refer to the Co-Signer callback.
Co-Signer supports deployment on a regular server or supports SGX server. For security reasons, it is recommended to use a server with SGX support, preferably from Microsoft cloud services. View Co-Signer Server Configuration Requirements
Co-Signer provides a callback handler, which is an optional component:
If configuring the callback handler(Security Level:⭐⭐⭐⭐⭐)
Co-Signer will perform a secondary review of transaction requests initiated by OpenAPI to the business server. Signing operations will only proceed when the business server’s review is successful.
Transactions like creating addresses, sweeping assets, and auto fueling will not trigger callbacks.
If not configuring the callback handler(Security Level:⭐⭐⭐⭐)
API Co-Signer will verify transaction signatures and sign all transaction requests initiated by OpenAPI.
After configuring API and Co-Signer programs, create private key shares for Co-Signer in the app.The workspace owner can create Co-Signer private key shares on the MPC workspace Security - Co-Signer page. The created Co-Signer private key shares will be encrypted and synchronized to the Co-Signer server using the Co-Signer RSA public key configured by the client on the ChainUp platform.
NotesEnsure that the APPID is in an enabled state when creating. Co-Signer services are normal.If Co-Signer private key shares are lost or leaked, new private key shares can be refreshed or Co-Signer private key shares can be deleted. For security reasons, the original Co-Signer private key shares are not usable after refreshing or deleting.
To enhance assets security and utilization, some networks need to be configured for auto sweep and auto fueling functions. ChainUp provides a set of auto sweep solutions for clients. The specific operation process is as follows:Login to the ChainUp management platform and create it on the Co-Signer page;
workspace members (any role) set the sweeping assets to the omnibus wallet and gas station.
Only wallets displayed in the app can be selected. For efficient assets use, it is recommended to set the omnibus wallet and gas station to different wallets (due to the nature of single-execution transfer for account-type networks, if configured with the same wallet, the withdrawal transaction(transfer) will wait until the miner fee is supplemented when supplementing the miner fee for the address).
The workspace owner approves the signature in the app. Encrypt the set workspaces with the workspace’s private key to ensure the correct address for auto sweep.
workspace members (any role) configure wallet for auto sweep, applied scope for sweeping, assets for sweeping, auto fueling rules, and other information.
Configure the currencies for which assets should be swept, along with the sweeping threshold. Assets will be automatically triggered when the threshold is exceeded and the miner fee is set below the configured level. Users can customize the sweeping threshold and maximum miner fee through the Console or API.
Configure the replenishment of miner fees for the auto sweep. Since sweeping operation requires the use of the main coin as a miner fee, when the token in the address meets the auto sweep strategy and the address does not have the main coin, replenishment of miner fees will be triggered from the refueling wallet to the address to be swept. The quantity of replenished miner fees can be customized, and it is essential to ensure that the replenished miner fee is lower than the sweeping threshold.Once the strategy is configured, the system runs automatically, and users can view asset changes in the set workspace.
It is recommended for clients to configure insufficient miner fee alerts to replenish in a timely manner and avoid affecting user transfers (withdrawals).
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"ChainUp Custody","colors":{"primary":"#2662FF","light":"#2662FF","dark":"#2662FF"},"logo":{"light":"https://mintcdn.com/zhp-9d4bf690/cbkONIKtw_CTQw7n/logo/chainupcustody-logo.svg?fit=max\u0026auto=format\u0026n=cbkONIKtw_CTQw7n\u0026q=85\u0026s=2fdc5228d243a49d95fcee4611d8982f","dark":"https://mintcdn.com/zhp-9d4bf690/cbkONIKtw_CTQw7n/logo/chainupcustody-logo.svg?fit=max\u0026auto=format\u0026n=cbkONIKtw_CTQw7n\u0026q=85\u0026s=2fdc5228d243a49d95fcee4611d8982f"},"favicon":"https://mintcdn.com/zhp-9d4bf690/cbkONIKtw_CTQw7n/logo/chainupcustody.svg?fit=max\u0026auto=format\u0026n=cbkONIKtw_CTQw7n\u0026q=85\u0026s=049ab15faffe4fcd88b0ae878c494c03","api":{"playground":{"display":"simple"},"mdx":{"server":"https://openapi.chainup.com"}},"appearance":{"default":"light","strict":true},"navbar":{"links":[{"href":"https://custodydocs-zh.chainup.com/introduction/overview/chainup-custody","label":"ZH-CN"}],"primary":{"type":"button","label":"Official Website","href":"https://custody.chainup.com"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"zhp-9d4bf690","hasAudioNarration":false,"actualSubdomain":"zhp-9d4bf690","customDomains":["custodydocs-en.chainup.com"],"gitSource":{"type":"github","owner":"chainup-custody","repo":"custody-docs","deployBranch":"master","contentDirectory":"en","isPrivate":false,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ae095d5cdcf99f97c312370","collectionId":"0b93002c-0e71-47d2-82e2-41b451fe1179","liveDeploymentHistoryId":"6ae095d5cdcf99f97c312370","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"DISABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6ae095d5cdcf99f97c312370","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"MPC Self-Custody","count":121},{"language":"default","tag":"API","count":53},{"language":"default","tag":"User Guide","count":40},{"language":"default","tag":"API Interface","count":36},{"language":"default","tag":"Help Center","count":27},{"language":"default","tag":"Introduction","count":10},{"language":"default","tag":"Get Started","count":10},{"language":"default","tag":"Auto Sweep","count":8},{"language":"default","tag":"Workspace","count":8},{"language":"default","tag":"Strategy Engine","count":7}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-references/mpc-apis/guide/function-set","slug":"/api-references/mpc-apis/guide/function-set","pageMetadata":{"title":"Preparation","description":null,"href":"/api-references/mpc-apis/guide/function-set"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,blockquote:`blockquote`,code:`code`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Heading,OptimizedImage,Tip,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Before system development, the workspace needs to complete the following preparations.`}),`\n`,_jsx(Heading,{level:`2`,id:`create-api`,children:`Create API`}),`\n`,_jsxs(_components.p,{children:[`The workspace owner should log in to the `,_jsx(_components.a,{href:`https://custody.chainup.com/`,children:`ChainUp Console`}),` System and create an API on the API Management page.`]}),`\n`,_jsx(`div`,{className:`mint-w-full mint-flex mint-items-center mint-justify-center`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-api1_en.png?fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=656244e3b0d3dd24fb2295e06697194b`,width:`600`,\"data-og-width\":`1919`,\"data-og-height\":`1107`,\"data-path\":`images/apis/mpc-api1_en.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-api1_en.png?w=280\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=d2929e291d46df6fe9947443d71e4d33 280w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-api1_en.png?w=560\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=999681f0c5c4fe2b1af53693d223bb14 560w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-api1_en.png?w=840\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=6a557e30a4d71571deda51dd29637531 840w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-api1_en.png?w=1100\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=a5fd03220e1cd3ab511556da53408225 1100w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-api1_en.png?w=1650\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=423d89c09c51b51b9c1d00df31862093 1650w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-api1_en.png?w=2500\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=ff083196c0f1f12be94e35ddf3fe067f 2500w`})}),`\n`,_jsx(Heading,{level:`3`,id:`about-rsa-public-key`,children:`About RSA Public Key`}),`\n`,_jsxs(_components.p,{children:[`To ensure secure data transmission, ChainUp uses the `,_jsx(_components.code,{children:`RSA-2048`}),` `,_jsx(_components.strong,{children:`PKCS#8`}),` key format for asymmetric encryption of API request and response data. The public key is used to decrypt request data and needs to be uploaded to ChainUp, while the private key is used to encrypt data and is configured by the client on the corresponding server and securely stored.`]}),`\n`,_jsx(Heading,{level:`3`,id:`explanation-of-rsa-public-private-key-pairs`,children:`Explanation of RSA Public-Private Key Pairs`}),`\n`,_jsxs(_components.p,{children:[`First pair of RSA public-private keys: After creating the API, ChainUp Custody will generate a default pair. The `,_jsx(_components.code,{children:`RSA public key`}),` will be provided to the developer for `,_jsx(_components.code,{children:`decrypting response parameters`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Second pair of RSA public-private keys: Generated by the developer, used for encrypting parameters before API requests from the client’s business system. The `,_jsx(_components.code,{children:`RSA public key`}),` is configured in ChainUp Custody for `,_jsx(_components.code,{children:`decrypting request parameters`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Third pair of RSA public-private keys: Generated by the developer, used by Co-Signer for encrypting parameters before API requests. The `,_jsx(_components.code,{children:`RSA public key`}),` is configured in ChainUp Custody for `,_jsx(_components.code,{children:`decrypting request parameters`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Fourth pair of RSA public-private keys (`,_jsx(_components.strong,{children:`optional`}),`): Generated by the developer, mainly used for verifying transaction signatures when Co-Signer does not configure callback notifications. This pair of public-private keys is generated and saved by the client, and ChainUp Custody does not retain it.`]}),`\n`,_jsxs(Tip,{children:[_jsx(_components.p,{children:`In addition to encrypting interface data, the Co-Signer RSA public key is also involved in the encryption process of Co-Signer private key shares. For security reasons, it is recommended to set the Co-Signer RSA public key different from the business service RSA public key.`}),_jsxs(_components.p,{children:[`Co-Signer has a built-in command for generating RSA public-private keys, which is limited to Co-Signer’s use. Please refer to `,_jsx(_components.a,{href:`/api-references/mpc-apis/co-signer/deploy`,children:`Co-Signer Deployment`}),`.`]})]}),`\n`,_jsx(Heading,{level:`3`,id:`callback-notifications`,children:`Callback Notifications`}),`\n`,_jsxs(_components.p,{children:[`The system currently supports three types of callback services: `,_jsx(_components.code,{children:`Transaction Status Callback`}),`, `,_jsx(_components.code,{children:`Signature Callback`}),`, and `,_jsx(_components.code,{children:`Transaction Approval Callback`}),`.`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Transaction Status Callback`}),`: ChainUp will notify the client of the latest status of an order when processing is completed (e.g. receiving, transfer orders). The client configures this callback address on the ChainUp platform on the Create API page under Transaction Status Notification Address.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Signature Callback`}),`: ChainUp will callback Co-Signer for signature operations when creating an address or generating private key shares for Co-Signer. The client configures this callback address on the ChainUp platform on the Create API page under Co-Signer Interface Address.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Transaction Approval Callback Address`}),`: Please refer to the `,_jsx(_components.a,{href:`/api-references/mpc-apis/co-signer/callback/withdraw`,children:`Co-Signer callback`}),`.`]}),`\n`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`configure-co-signer`,children:`Configure Co-Signer`}),`\n`,_jsx(_components.p,{children:`Co-Signer is commonly used for automated signing of OpenAPI-initiated transactions and auto sweepimg transactions.`}),`\n`,_jsx(Heading,{level:`3`,id:`co-signer-server-selection`,children:`Co-Signer Server Selection`}),`\n`,_jsxs(_components.p,{children:[`Co-Signer supports deployment on a regular server or supports SGX server. For security reasons, it is recommended to use a server with SGX support, preferably from Microsoft cloud services. View `,_jsx(_components.a,{href:`/api-references/mpc-apis/co-signer/deploy#co-signer-server-configuration-requirements`,children:`Co-Signer Server Configuration Requirements`})]}),`\n`,_jsx(Heading,{level:`3`,id:`co-signer-configuration`,children:`Co-Signer Configuration`}),`\n`,_jsx(_components.p,{children:`Co-Signer provides a callback handler, which is an optional component:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`If configuring the callback handler(`,_jsx(_components.strong,{children:`Security Level`}),`:⭐⭐⭐⭐⭐)`]}),`\n`]}),`\n`,_jsxs(_components.blockquote,{children:[`\n`,_jsx(_components.p,{children:`Co-Signer will perform a secondary review of transaction requests initiated by OpenAPI to the business server. Signing operations will only proceed when the business server’s review is successful.`}),`\n`]}),`\n`,_jsxs(_components.blockquote,{children:[`\n`,_jsx(_components.p,{children:`Transactions like creating addresses, sweeping assets, and auto fueling will not trigger callbacks.`}),`\n`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`If not configuring the callback handler(`,_jsx(_components.strong,{children:`Security Level`}),`:⭐⭐⭐⭐)`]}),`\n`]}),`\n`,_jsxs(_components.blockquote,{children:[`\n`,_jsx(_components.p,{children:`API Co-Signer will verify transaction signatures and sign all transaction requests initiated by OpenAPI.`}),`\n`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/api-references/mpc-apis/co-signer/deploy#co-signer-deployment-process`,children:`View Co-Signer Configuration Tutorial`})}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`create-co-signer-private-key-shares`,children:`Create Co-Signer Private Key Shares`}),`\n`,_jsx(_components.p,{children:`After configuring API and Co-Signer programs, create private key shares for Co-Signer in the app.`}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`workspace owner`}),` can create Co-Signer private key shares on the MPC workspace `,_jsx(_components.strong,{children:`Security - Co-Signer`}),` page. The created Co-Signer private key shares will be encrypted and synchronized to the Co-Signer server using the Co-Signer RSA public key configured by the client on the ChainUp platform.`]}),`\n`,_jsxs(Warning,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`Notes`})}),_jsx(_components.p,{children:`Ensure that the APPID is in an enabled state when creating. Co-Signer services are normal.`}),_jsx(_components.p,{children:`If Co-Signer private key shares are lost or leaked, new private key shares can be refreshed or Co-Signer private key shares can be deleted. For security reasons, the original Co-Signer private key shares are not usable after refreshing or deleting.`})]}),`\n`,_jsx(Heading,{level:`2`,id:`enable-auto-sweep`,children:`Enable Auto Sweep`}),`\n`,_jsx(_components.p,{children:`To enhance assets security and utilization, some networks need to be configured for auto sweep and auto fueling functions. ChainUp provides a set of auto sweep solutions for clients. The specific operation process is as follows:`}),`\n`,_jsxs(_components.p,{children:[`Login to the `,_jsx(_components.a,{href:`https://custody.chainup.com/`,children:`ChainUp management`}),` platform and create it on the Co-Signer page;`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`workspace members (`,_jsx(_components.code,{children:`any role`}),`) set the sweeping assets to the omnibus wallet and gas station.`]}),`\n`]}),`\n`,_jsxs(_components.blockquote,{children:[`\n`,_jsxs(_components.p,{children:[`Only wallets displayed in the app can be selected. For efficient assets use, it is recommended to set the `,_jsx(_components.code,{children:`omnibus wallet`}),` and `,_jsx(_components.code,{children:`gas station`}),` to different wallets (due to the nature of single-execution transfer for account-type networks, if configured with the same wallet, the withdrawal transaction(transfer) will wait until the miner fee is supplemented when supplementing the miner fee for the address).`]}),`\n`]}),`\n`,_jsx(`div`,{className:`mint-w-full mint-flex mint-items-center mint-justify-center`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect1_en.png?fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=ec82cdd78dec570738e5eaf09c4861c7`,width:`600`,\"data-og-width\":`1919`,\"data-og-height\":`1164`,\"data-path\":`images/apis/mpc-auto-collect1_en.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect1_en.png?w=280\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=c9971bed385ad6feaa32987a09f46b93 280w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect1_en.png?w=560\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=cf418f38a3b04130e8a38b18ab9122ff 560w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect1_en.png?w=840\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=78199cf54b53e24cf2e847fccf970d1c 840w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect1_en.png?w=1100\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=bf3821f3c85b5e3961d0fbbe4f116470 1100w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect1_en.png?w=1650\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=0b9f35b7100c989c7e64cb5238880d0e 1650w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect1_en.png?w=2500\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=56cde511ad956290c5b4b7810af0502a 2500w`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`The `,_jsx(_components.code,{children:`workspace owner`}),` approves the signature in the app. Encrypt the set workspaces with the workspace’s private key to ensure the correct address for auto sweep.`]}),`\n`]}),`\n`,_jsx(`div`,{className:`mint-w-full mint-flex mint-items-center mint-justify-center`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect2_en.png?fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=0b120232eae86e432988d7204a40df69`,width:`200`,\"data-og-width\":`473`,\"data-og-height\":`1024`,\"data-path\":`images/apis/mpc-auto-collect2_en.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect2_en.png?w=280\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=ba834cfc84018fa9940563a3c7dc1c71 280w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect2_en.png?w=560\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=d5babf37462727786ac9369a5ae0d145 560w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect2_en.png?w=840\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=b1ccd69c5c3fd156d20c6ad2f6be39e3 840w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect2_en.png?w=1100\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=9d4aa7170dbebb0791b2844605877fe4 1100w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect2_en.png?w=1650\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=52baa1e21df1399d8b548c829ff33bb8 1650w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect2_en.png?w=2500\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=6a6301cac5d41363c4fec0e9ebeec635 2500w`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`workspace members (`,_jsx(_components.code,{children:`any role`}),`) configure wallet for auto sweep, applied scope for sweeping, assets for sweeping, auto fueling rules, and other information.`]}),`\n`]}),`\n`,_jsx(`div`,{className:`mint-w-full mint-flex mint-items-center mint-justify-center`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect3_en.png?fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=58059b326d47eda77c55fed48dd0de8e`,width:`600`,\"data-og-width\":`1915`,\"data-og-height\":`1191`,\"data-path\":`images/apis/mpc-auto-collect3_en.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect3_en.png?w=280\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=69a5f749bdec9c80fc01a6e60a33d23e 280w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect3_en.png?w=560\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=40c25836637dc9c8413c5b9a8a0b43d4 560w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect3_en.png?w=840\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=69d1cd1f407cad3a56aa3b5f0ae9b8c2 840w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect3_en.png?w=1100\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=59d7c1a8ad4e866e68144c93aae33c10 1100w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect3_en.png?w=1650\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=03a8f5f7fef0a293cf3d1225166645b7 1650w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-auto-collect3_en.png?w=2500\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=f6dbad839ac4e94fea82eca9ec8b5eba 2500w`})}),`\n`,_jsx(Heading,{level:`3`,id:`applied-scope`,children:`Applied Scope`}),`\n`,_jsx(_components.p,{children:`Configure the wallets for which assets should be swept.`}),`\n`,_jsx(Heading,{level:`3`,id:`auto-sweep-strategy`,children:`Auto Sweep Strategy`}),`\n`,_jsx(_components.p,{children:`Configure the currencies for which assets should be swept, along with the sweeping threshold. Assets will be automatically triggered when the threshold is exceeded and the miner fee is set below the configured level. Users can customize the sweeping threshold and maximum miner fee through the Console or API.`}),`\n`,_jsx(Heading,{level:`3`,id:`refueling-strategy`,children:`Refueling Strategy`}),`\n`,_jsx(_components.p,{children:`Configure the replenishment of miner fees for the auto sweep. Since sweeping operation requires the use of the main coin as a miner fee, when the token in the address meets the auto sweep strategy and the address does not have the main coin, replenishment of miner fees will be triggered from the refueling wallet to the address to be swept. The quantity of replenished miner fees can be customized, and it is essential to ensure that the replenished miner fee is lower than the sweeping threshold.`}),`\n`,_jsx(_components.p,{children:`Once the strategy is configured, the system runs automatically, and users can view asset changes in the set workspace.`}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`It is recommended for clients to configure insufficient miner fee alerts to replenish in a timely manner and avoid affecting user transfers (withdrawals).`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Preparation","description":null,"href":"/api-references/mpc-apis/guide/function-set"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Create API","slug":"create-api","depth":2,"children":[{"title":"About RSA Public Key","slug":"about-rsa-public-key","depth":3,"children":[]},{"title":"Explanation of RSA Public-Private Key Pairs","slug":"explanation-of-rsa-public-private-key-pairs","depth":3,"children":[]},{"title":"Callback Notifications","slug":"callback-notifications","depth":3,"children":[]}]},{"title":"Configure Co-Signer","slug":"configure-co-signer","depth":2,"children":[{"title":"Co-Signer Server Selection","slug":"co-signer-server-selection","depth":3,"children":[]},{"title":"Co-Signer Configuration","slug":"co-signer-configuration","depth":3,"children":[]},{"title":"Create Co-Signer Private Key Shares","slug":"create-co-signer-private-key-shares","depth":3,"children":[]}]},{"title":"Enable Auto Sweep","slug":"enable-auto-sweep","depth":2,"children":[{"title":"Applied Scope","slug":"applied-scope","depth":3,"children":[]},{"title":"Auto Sweep Strategy","slug":"auto-sweep-strategy","depth":3,"children":[]},{"title":"Refueling Strategy","slug":"refueling-strategy","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":[],"dynamicCss":".mint-flex {\n display: flex\n}\n.mint-w-full {\n width: 100%\n}\n.mint-items-center {\n align-items: center\n}\n.mint-justify-center {\n justify-content: center\n}","subdomain":"zhp-9d4bf690","siteName":"ChainUp Custody","title":"Preparation - ChainUp Custody","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-19T10:57:25.095Z","originalFileLocation":"api-references/mpc-apis/guide/function-set.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";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=\"light\"}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=\"application-name\" content=\"ChainUp Custody\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Preparation - ChainUp Custody\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"ChainUp Custody\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/function-set\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://zhp-9d4bf690.mintlify.app/_mintlify/api/og/v2?division=Integration+Guide\u0026amp;title=Preparation\u0026amp;theme=e4d5ec45666c4be4ba4514c4\u0026amp;signature=4620be0418038288e25836799f94a27dd80eae22a1eea9cdb8769f1a9eac7e4f\">\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=\"Preparation - ChainUp Custody\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://zhp-9d4bf690.mintlify.app/_mintlify/api/og/v2?division=Integration+Guide\u0026amp;title=Preparation\u0026amp;theme=e4d5ec45666c4be4ba4514c4\u0026amp;signature=4620be0418038288e25836799f94a27dd80eae22a1eea9cdb8769f1a9eac7e4f\">\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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"ChainUp Custody\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2662FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/function-set\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-references/mpc-apis/guide/function-set.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://custodydocs-en.chainup.com/#organization\",\"name\":\"ChainUp Custody\",\"url\":\"https://custodydocs-en.chainup.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/zhp-9d4bf690/cbkONIKtw_CTQw7n/logo/chainupcustody-logo.svg?fit=max\u0026auto=format\u0026n=cbkONIKtw_CTQw7n\u0026q=85\u0026s=2fdc5228d243a49d95fcee4611d8982f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://custodydocs-en.chainup.com#website\",\"name\":\"ChainUp Custody\",\"url\":\"https://custodydocs-en.chainup.com\",\"publisher\":{\"@id\":\"https://custodydocs-en.chainup.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/function-set#webpage\",\"url\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/function-set\",\"name\":\"Preparation\",\"dateModified\":\"2026-10-19T10:57:25.095Z\",\"isPartOf\":{\"@id\":\"https://custodydocs-en.chainup.com#website\"},\"breadcrumb\":{\"@id\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/function-set#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/function-set#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"MPC Self-Custody\",\"item\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Integration Guide\",\"item\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/overview\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Preparation\",\"item\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/function-set\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/function-set#article\",\"headline\":\"Preparation\",\"name\":\"Preparation\",\"url\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/function-set\",\"mainEntityOfPage\":{\"@id\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/function-set#webpage\"},\"dateModified\":\"2026-10-19T10:57:25.095Z\",\"publisher\":{\"@id\":\"https://custodydocs-en.chainup.com/#organization\"},\"isPartOf\":{\"@id\":\"https://custodydocs-en.chainup.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"ChainUp Custody\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"ChainUp Custody","nav":{"global":null,"tabs":[{"tab":"Introduction","pages":[{"title":"Introduction","href":"/introduction/overview/chainup-custody"}]},{"tab":"Get Started","pages":[{"title":"Get Started","href":"/quick-start/overview/quickstart"}]},{"tab":"API","groups":[{"group":"Introduction to APIs","pages":[{"title":"ChainUp Custody APIs","href":"/api-references/intro/custody-apis"}]},{"group":"MPC Self-Custody","pages":[{"group":"Integration Guide","pages":[{"title":"Overview","href":"/api-references/mpc-apis/guide/overview"},{"title":"Open Account","description":null,"href":"/api-references/mpc-apis/guide/create-account"},{"title":"Preparation","href":"/api-references/mpc-apis/guide/function-set"},{"title":"Integration Testing","description":null,"href":"/api-references/mpc-apis/guide/test-flow"}]},{"group":"API Interface","pages":[{"title":"Overview","href":"/api-references/mpc-apis/apis/description"},{"group":"Workspace","pages":[{"title":"Get Supported Networks","api":"GET /api/mpc/wallet/open_coin","href":"/api-references/mpc-apis/apis/wallet/open-coin"},{"title":"Get MPC Workspace Coin Details","api":"GET /api/mpc/coin_list","href":"/api-references/mpc-apis/apis/wallet/coin-list"},{"title":"Get Latest Block Height","api":"GET /api/mpc/chain_height","href":"/api-references/mpc-apis/apis/wallet/chain-height"},{"title":"Estimated Mining Fee For Transfer","api":"GET /v2/chain/minerfee","href":"/api-references/mpc-apis/apis/wallet/minner-fee"}]},{"group":"Wallet","pages":[{"title":"Create wallet","api":"POST /api/mpc/sub_wallet/create","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-create"},{"title":"Create Wallet Address","api":"POST /api/mpc/sub_wallet/create/address","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-create-address"},{"title":"Query Wallet Address","api":"POST /api/mpc/sub_wallet/get/address/list","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-get-address"},{"title":"Get Wallet Assets","api":"GET /api/mpc/sub_wallet/assets","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-assets"},{"title":"Modify the Wallet Display Status","api":"POST /api/mpc/sub_wallet/change_show_status","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-show-status"},{"title":"Verify Address Information","api":"GET /api/mpc/sub_wallet/address/info","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-address-info"}]},{"group":"Transfer (Withdrawal)","pages":[{"title":"Transfer (Withdrawal)","api":"POST /api/mpc/billing/withdraw","href":"/api-references/mpc-apis/apis/withdraw/withdraw"},{"title":"Get Transfer Records","api":"GET /api/mpc/billing/withdraw_list","href":"/api-references/mpc-apis/apis/withdraw/withdraw-list"},{"title":"Synchronize Transfer Records","api":"GET /api/mpc/billing/sync_withdraw_list","href":"/api-references/mpc-apis/apis/withdraw/withdraw-sync-list"},{"title":"Accelerate Transfer (Withdrawal)","api":"POST /api/mpc/billing/withdraw_accelerate","href":"/api-references/mpc-apis/apis/withdraw/withdraw-accelerate"}]},{"group":"Receiving (Deposit)","pages":[{"title":"Get Receiving records","api":"GET /api/mpc/billing/deposit_list","href":"/api-references/mpc-apis/apis/deposit/deposit-list"},{"title":"Sync Receiving record","api":"GET /api/mpc/billing/sync_deposit_list","href":"/api-references/mpc-apis/apis/deposit/deposit-sync-list"}]},{"group":"Auto Sweep","pages":[{"title":"Get Auto-Sweep Wallets","api":"GET /api/mpc/auto_collect/sub_wallets","href":"/api-references/mpc-apis/apis/consolidation/consolidation-subwallet"},{"title":"Configure Auto-Sweep for Coin","api":"POST /api/mpc/auto_collect/symbol/set","href":"/api-references/mpc-apis/apis/consolidation/consolidation-symbol-set"},{"title":"Sync Auto Sweeping Records","api":"GET /api/mpc/billing/sync_auto_collect_list","href":"/api-references/mpc-apis/apis/consolidation/consolidation-sync-list"}]},{"group":"Web3 Transaction","pages":[{"title":"Create Web3 Transaction","api":"POST /api/mpc/web3/trans/create","href":"/api-references/mpc-apis/apis/web3/web3-create"},{"title":"Web3 Transaction Speed Up","api":"POST /api/mpc/web3/pending","href":"/api-references/mpc-apis/apis/web3/web3-pending"},{"title":"Get Web3 Transaction Records","api":"GET /api/mpc/web3/trans_list","href":"/api-references/mpc-apis/apis/web3/web3-record-list"},{"title":"Sync Web3 Transaction Records","api":"GET /api/mpc/web3/sync_trans_list","href":"/api-references/mpc-apis/apis/web3/web3-record-sync-list"}]},{"group":"NFT","pages":[{"title":"Get NFT Information","api":"POST /api/nft/info","href":"/api-references/mpc-apis/apis/nft/nft-info"}]},{"group":"Babylon","pages":[{"title":"Stake","api":"POST /api/mpc/babylon/stake","href":"/api-references/mpc-apis/apis/babylon/stake"},{"title":"Unstake","api":"POST /api/mpc/babylon/unstake","href":"/api-references/mpc-apis/apis/babylon/unstake"},{"title":"Unbond","api":"POST /api/mpc/babylon/unbond","href":"/api-references/mpc-apis/apis/babylon/unbond"},{"title":"Get stake record list","api":"GET /api/mpc/babylon/stake_list","href":"/api-references/mpc-apis/apis/babylon/stake-list"},{"title":"Get stake record details","api":"GET /api/mpc/babylon/details","href":"/api-references/mpc-apis/apis/babylon/stake-details"},{"title":"Get stake record details","api":"GET /api/mpc/babylon/details_by_request_id","href":"/api-references/mpc-apis/apis/babylon/stake-details-by-req-id"}]},{"group":"Tron Resource","pages":[{"title":"Purchase TRON resources on the Custody platform.","href":"/api-references/mpc-apis/apis/tron/resource-shopping-guide"},{"title":"Purchase TRON Network Transaction Resources","api":"POST /api/mpc/tron/delegate","href":"/api-references/mpc-apis/apis/tron/delegate-create"},{"title":"Obtain transaction records for purchasing Tron resources","api":"GET /api/mpc/tron/delegate/trans_list","href":"/api-references/mpc-apis/apis/tron/delegate-record-list"},{"title":"Synchronize Tron purchasing resource transaction records","api":"GET /api/mpc/tron/delegate/sync_trans_list","href":"/api-references/mpc-apis/apis/tron/delegate-record-sync-list"},{"title":"Tron Resource Purchase Asynchronous Notification","href":"/api-references/mpc-apis/apis/tron/tron-notify"}]}]},{"group":"Transaction Callback Notification","pages":[{"title":"Overview","href":"/api-references/mpc-apis/notify/description"},{"title":"Receive Asynchronous Notification","href":"/api-references/mpc-apis/notify/deposit"},{"title":"Transfer Asynchronous Notification","href":"/api-references/mpc-apis/notify/withdraw"},{"title":"Web3 Transaction Asynchronous Notification","href":"/api-references/mpc-apis/notify/web3"},{"title":"Tron Resource Purchase Asynchronous Notification","href":"/api-references/mpc-apis/notify/tron"}]},{"group":"Co-Signer","pages":[{"title":"Overview","href":"/api-references/mpc-apis/co-signer/flow"},{"group":"Co-Signer Callback","pages":[{"title":"Transfer(Withdrawal) Callback","api":"POST /{custom-url}","href":"/api-references/mpc-apis/co-signer/callback/withdraw"},{"title":"Web3 Transaction Callback","api":"POST /{custom-url}","href":"/api-references/mpc-apis/co-signer/callback/web3"}]},{"title":"Co-Signer Transaction Signature Verification","href":"/api-references/mpc-apis/co-signer/sign-verify"},{"title":"Co-Signer Deployment","href":"/api-references/mpc-apis/co-signer/deploy"}]},{"title":"Error Code","href":"/api-references/mpc-apis/err-code"},{"title":"SDK","href":"/api-references/mpc-apis/sdk"}]}]},{"tab":"Help Center","pages":[{"title":"Help Center","href":"/help-center/introduction/manage-custody"}]},{"tab":"User Guide","pages":[{"title":"User Guide","href":"/user-guide/mpc-wallet/account/password"}]}]},"basePath":"","title":"Preparation - ChainUp Custody","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":["a74be98ba7"],"chunks":["zoom-image-lightbox-B4-wUcHm.js","lightbox-handle-r17bVUz3.js"]}