Circle USYC 백서

Circle USYC

원문

bitpro가 원문에서 글자만 모은 내용이에요. 표·그림·수식은 빠지거나 깨질 수 있어요. 전체 75쪽 중 20쪽

kchain and wallet address. If the target wallet already exists, its metadata is updated. # Get fee parameters of a blockchain Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/get-fee-parameters openapi/developer-controlled-wallets.yaml get /v1/w3s/developer/transactions/feeParameters Get latest fee parameters of a blockchain with an optional account type (default to 'EOA'). # Get the lowest nonce pending transaction for a wallet Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/get-lowest-nonce-transaction openapi/developer-controlled-wallets.yaml get /v1/w3s/transactions/lowestNonceTransaction For a nonce-supported blockchain, get the lowest nonce transaction that's in QUEUED or SENT or STUCK state for the provided wallet. # Get token details Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/get-token-id openapi/developer-controlled-wallets.yaml get /v1/w3s/tokens/{id} Fetches details of a specific token given its unique identifier. Every token in your network of wallets has a UUID associated with it, regardless of whether it's already recognized or was added as a monitored token. # Get a transaction Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/get-transaction openapi/developer-controlled-wallets.yaml get /v1/w3s/transactions/{id} Retrieves info for a single transaction using it's unique identifier. # Retrieve a wallet Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/get-wallet openapi/developer-controlled-wallets.yaml get /v1/w3s/wallets/{id} Retrieve an existing wallet # Get a wallet set Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/get-wallet-set openapi/developer-controlled-wallets.yaml get /v1/w3s/walletSets/{id} Retrieve an existing wallet set. # Get all wallet sets Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/get-wallet-sets openapi/developer-controlled-wallets.yaml get /v1/w3s/walletSets Retrieve an array of existing wallet sets. # List wallets Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/get-wallets openapi/developer-controlled-wallets.yaml get /v1/w3s/wallets Retrieves a list of all wallets that fit the specified parameters. # List wallets with balances Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/get-wallets-with-balances openapi/developer-controlled-wallets.yaml get /v1/w3s/developer/wallets/balances Retrieves a list of all wallets that match the specified parameters. Wallet balances update automatically after each transfer. **Note**: On Aptos, this endpoint only returns balances for tokens stored in primary storage. Tokens held in [AIP-21](https://github.com/aptos-labs/aptos-core/releases/tag/aptos-node-v1.5.0) secondary storage are excluded from balance queries and deposit notifications to prevent incorrect or misleading results from secondary storage-based state changes. # List transactions Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/list-transactions openapi/developer-controlled-wallets.yaml get /v1/w3s/transactions Lists all transactions. Includes details such as status, source/destination, and transaction hash. # Get token balance for a wallet Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/list-wallet-balance openapi/developer-controlled-wallets.yaml get /v1/w3s/wallets/{id}/balances Fetches the digital asset balance for a single developer-controlled wallet using its unique identifier. **Note**: On Aptos, this endpoint only returns balances for tokens stored in primary storage. Tokens held in [AIP-21](https://github.com/aptos-labs/aptos-core/releases/tag/aptos-node-v1.5.0) secondary storage are excluded from balance queries and deposit notifications to prevent incorrect or misleading results from secondary storage-based state changes. # Get NFTs for a wallet Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/list-wallet-nfts openapi/developer-controlled-wallets.yaml get /v1/w3s/wallets/{id}/nfts Fetches the info for all NFTs stored in a single developer-controlled wallet, using the wallets unique identifier. # Sign delegate action Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/sign-delegate-action openapi/developer-controlled-wallets.yaml post /v1/w3s/developer/sign/delegateAction Sign a delegate action from a specific developer-controlled wallet. To identify the wallet, you must provide either `walletId`, or both `walletAddress` and `blockchain` in the request body. NOTE: This endpoint is only available for NEAR and NEAR-TESTNET. # Sign message Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/sign-message openapi/developer-controlled-wallets.yaml post /v1/w3s/developer/sign/message Sign a message from a specified developer-controlled wallet. This endpoint supports message signing for Ethereum-based blockchains (using EIP-191), Solana and Aptos (using Ed25519 signatures). Note that Smart Contract Accounts (SCA) are specific to Ethereum and EVM-compatible chains. The difference between Ethereum's EOA and SCA can be found in the [account types guide](https://developers.circle.com/wallets/account-types). You can also check the list of Ethereum Dapps that support SCA: https://eip1271.io/." To identify the wallet, you must provide either `walletId`, or both `walletAddress` and `blockchain` in the request body. # Sign transaction Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/sign-transaction openapi/developer-controlled-wallets.yaml post /v1/w3s/developer/sign/transaction Sign a transaction from a specific developer-controlled wallet. To identify the wallet, you must provide either `walletId`, or both `walletAddress` and `blockchain` in the request body. NOTE: This endpoint is only available for the following chains: `SOL`, `SOL-DEVNET`, `NEAR`, `NEAR-TESTNET`, `EVM`, `EVM-TESTNET`. Each chain defines its own standard, please refer to [Signing APIs doc](https://learn.circle.com/w3s/signing-apis). # Sign typed data Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/sign-typed-data openapi/developer-controlled-wallets.yaml post /v1/w3s/developer/sign/typedData | Sign the EIP-712 typed structured data from a specified developer-controlled wallet. To identify the wallet, you must provide either `walletId`, or both `walletAddress` and `blockchain` in the request body. This endpoint only supports Ethereum and EVM-compatible blockchains. Please note that not all apps currently support Smart Contract Accounts (SCA); the difference between Ethereum's EOA and SCA can be found in the [account types guide](https://developers.circle.com/wallets/account-types). You can also check the list of Ethereum apps that support SCA: https://eip1271.io/. # Update a wallet Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/update-wallet openapi/developer-controlled-wallets.yaml put /v1/w3s/wallets/{id} Updates info metadata of a wallet. # Update a wallet set Source: https://developers.circle.com/api-reference/wallets/developer-controlled-wallets/update-wallet-set openapi/developer-controlled-wallets.yaml put /v1/w3s/developer/walletSets/{id} Update the name of the wallet set # Wallets API error codes Source: https://developers.circle.com/api-reference/wallets/error-codes Descriptions of error codes returned by the Wallets and Compliance Engine APIs. For error response shapes and general errors that can be returned by any Circle API, see [API errors](/api-reference/errors). For error codes surfaced by the user-controlled wallet SDK's built-in UI (`155701`–`155721`), see [SDK error codes](/sdks/user-controlled/error-codes). ## User (`155101`–`155146`) | Error code | HTTP code | Error message | Resolution | | - | - | - | - | | `155101` | `409` | `Existing user already created with the provided userId.` | Retry with a unique user ID. | | `155102` | `404` | `Cannot find the user id in the system.` | Verify the user ID and confirm your entity has access to it. | | `155103` | `401` | `Cannot find the user token in the system.` | Generate a new user token. | | `155104` | `403` | `The userToken had expired.` | Generate a new user token. | | `155105` | `403` | `The userToken is invalid.` | Generate a new user token. | | `155106` | `409` | `The user had already been initialized.` | Query the user status to check whether the user has already set a PIN and created a wallet. | | `155107` | `409` | `User has previously set a PIN. Use PUT /user/pin to reset the PIN.` | Reset the PIN with `PUT /user/pin`. | | `155108` | `409` | `User has previously set up their security questions, and they can't be reset.` | Security questions can only be set once and cannot be reset. | | `155109` | `409` | `The specified user has been disabled.` | Re-enable the user. | | `155110` | `400` | `User has not set up a PIN yet.` | Initialize the user or set a PIN before retrying. | | `155111` | `400` | `User hasn't set the security questions for PIN backup yet.` | Initialize the user or set security questions before retrying. | | `155112` | `400` | `The user has inputted the incorrect pin.` | Retry with the correct PIN. | | `155113` | `400` | `Provided device ID is not found in the system.` | Verify the device ID. | | `155114` | `400` | `Provided app ID is not recognized in the system.` | Verify the app ID. Find it in the Circle Console or via `GET /config/entity`. | | `155115` | `400` | `The user has inputted the incorrect security answers` | Retry with the correct security answers. | | `155116` | `404` | `The challenge ID doesn't exist in the system.` | Verify the challenge ID. | | `155117` | `400` | `The content provided for approval is not correct.` | Update to the latest SDK version. | | `155118` | `400` | `Encryption key does not match with the user's token. Call POST /users/token to get the correct token encryption key pair.` | Call `POST /users/token` to get a matching token and encryption keypair. | | `155119` | `400` | `The user's PIN input is locked. It will be unlocked after the cooldown period.` | Wait for the cooldown to end, then retry. | | `155120` | `400` | `The user's security questions input is locked. It will be unlocked after the cooldown period.` | Wait for the cooldown to end, then retry. | | `155121` | `403` | `The provided challengeId has expired.` | Create a new challenge. | | `155122` | `403` | `The provided challengeId is invalid` | Create a new challenge. | | `155123` | `403` | `No extra information provided when adding PIN-related requests.` | Update to the latest SDK version. The challenge approval payload is malformed. | | `155124` | `403` | `The extra information provided for PIN-related requests is invalid.` | Update to the latest SDK version. The challenge approval payload is malformed. | | `155130` | `400` | `User OTP token is expired.` | Request a new OTP email. | | `155131` | `400` | `User OTP token is invalid.` | Verify the OTP token in the request. | | `155132` | `404` | `User OTP value is not found.` | Request an OTP email first. | | `155133` | `400` | `User OTP value is invalid.` | Verify the OTP value in the request. | | `155134` | `400` | `User OTP value is not matched.` | Confirm the OTP value matches the OTP token. | | `155135` | `400` | `User's email is invalid.` | Verify the email format. | | `155136` | `400` | `User's email is not matched.` | Confirm the email matches the user's registered email. | | `155137` | `400` | `User's device ID is invalid.` | Verify the device ID in the request. | | `155138` | `400` | `Failed to send the email.` | Check the SMTP configuration in the Circle Console. | | `155139` | `400` | `The idToken / accessToken of SSO is expired.` | Refresh the SSO token from your SSO provider. | | `155140` | `400` | `Failed to validate the idToken/ accessToken.` | Verify the SSO provider configuration in the Circle Console. | | `155141` | `400` | `The user has exceeded the max limit (5) of entering OTP at the moment.` | Wait 60 minutes before retrying. | | `155142` | `400` | `The max limit (5) of sending OTP has been exceeded at the moment.` | Wait 60 minutes before retrying. | | `155143` | `400` | `The device token is expired.` | Request a new device token. Tokens expire after 10 minutes. | | `155144` | `400` | `The device token is invalid.` | Request a new device token. Only one active token is allowed per `deviceId`. | | `155145` | `404` | `The device token is not found.` | Request a new device token. | | `155146` | `400` | `The OTP token is invalid as the user has entered it incorrectly three times.` | Request a new OTP email. | ## Authentication configuration (`155150`–`155157`) | Error code | HTTP code | Error message | Resolution | | - | - | - | - | | `155150` | `404` | `The SMTP server configuration is not found.` | Complete the SMTP configuration in the Circle Console. | | `155151` | `400` | `The SMTP server configuration is invalid.` | Fix the SMTP configuration in the Circle Console. | | `155152` | `404` | `The SSO provider configuration is not found.` | Add an SSO provider in the Circle Console. | | `155154` | `400` | `The OTP email template is invalid.` | Fix the OTP email template configuration. | | `155155` | `404` | `The OTP email template is not found.` | Add an OTP email template in the Circle Console. | | `155156` | `400` | `Failed to update the email template.` | Check the OTP email template content. | | `155157` | `400` | `Failed to update the SMTP server` | Check the SMTP configuration in the Circle Console. | ## Transaction (`155201`–`155264`) | Error code | HTTP code | Error message | Resolution | | - | - | - | - | | `155201` | `400` | `Not enough funds to fulfill the withdraw request.` | Add native tokens to the wallet to cover pending transactions. | | `155202` | `400` | `Transaction nonce is inconsistent with sender's latest nonce.` | Retry the transaction after the previous one reaches finality. | | `155203` | `400` | `User op nonce can not be larger than 0 when smart contract wallet hasn't been deployed.` | Send the first user op with nonce 0 to trigger contract deployment. | | `155204` | `400` | `The total cost of executing transaction is higher than the balance of the user's account when estimating fee.` | Add native tokens to cover the total transaction cost. | | `155205` | `400` | `Failed to execute this request on EVM due to insufficient token when estimating fee.` | Add the required non-native token balance to the wallet. | | `155206` | `400` | `The sender address is not token owner or approved when estimating token transfer.` | Approve the caller to spend the token, or use the token owner as sender. | | `155207` | `400` | `Gas required exceeds allowance when estimating fee.` | Increase the gas allowance. | | `155208` | `400` | `Estimate fee execution reverted.` | The transaction reverted onchain during fee estimation. Verify the target contract, function, and parameters. | | `155209` | `400` | `ABI function signature can't pack ABI parameter.` | Correct the ABI parameters. | | `155210` | `400` | `Fails to perform transaction estimation.` | Retry the request. If the error persists, verify the request parameters against the target blockchain. | | `155211` | `400` | `MaxFee * GasLimit exceed configurable max transaction fee (default is 1 native token).` | Reduce `maxFee` or `gasLimit`. Circle applies a per-blockchain maximum fee limit, which defaults to 1 unit of the blockchain's native token. | | `155215` | `400` | `Unsupported operation for transaction.` | Check the transaction status. The requested operation is not valid in its current state. | | `155218` | `400` | `Invalid number of nft in transaction request.` | Provide multiple tokens only for ERC-1155 transfers. | | `155219` | `400` | `Invalid destination address.` | Provide a valid destination address. | | `155220` | `400` | `Wallet and token's blockchain mismatch.` | Use a wallet and token on the same blockchain. | | `155221` | `400` | `Invalid amounts in transfer request.` | For token standards other than ERC-1155, provide a single amount in the transfer request. | | `155222` | `404` | `NFT metadata can not be found.` | Confirm that the token contract exposes NFT metadata. | | `155223` | `400` | `Unsupported userId for get transactions.` | Remove `userId` from the query parameters. | | `155224` | `400` | `Failed to parse the provided amounts in request to decimals.` | Provide amounts as valid decimal numbers. | | `155225` | `400` | `Wallet and request's blockchain mismatch.` | Use a wallet and request blockchain that match. | | `155226` | `400` | `Invalid source address.` | Provide a valid source address. | | `155227` | `400` | `Invalid transaction type.` | Provide an outbound transaction. | | `155228` | `400` | `Missing token ID.` | Include the token ID in the request. | | `155229` | `400` | `Transaction is not eligible for operation.` | Check the transaction status. The operation is no longer allowed in its current state. | | `155230` | `400` | `No call data or abi signature provided.` | Provide `callData` or an ABI signature. | | `155231` | `400` | `Transaction needs feeLevel or gasLimit provided.` | Provide `feeLevel` or `gasLimit`. | | `155232` | `400` | `SCA transaction needs feeLevel provided.` | Provide `feeLevel` for SCA transactions. | | `155233` | `400` | `Provided gasLimit is too low to complete the requested transaction.` | Provide a higher `gasLimit` than the network estimate. | | `155234` | `400` | `Transaction can't have both feeLevel and fee parameters provided.` | Provide either `feeLevel` or the detailed fee parameters, not both. | | `155235` | `400` | `EIP1559 chains need maxFee/priorityFee provided.` | Provide `maxFee` and `priorityFee` for EIP-1559 blockchains. | | `155236` | `400` | `Failed to parse the provided fee in request to decimals.` | Provide fee values as valid decimal numbers. | | `155237` | `400` | `PriorityFee cannot be larger than maxFee in creating transaction request.` | Set `priorityFee` less than or equal to `maxFee`. | | `155238` | `400` | `Non-EIP1559 chains need gasPrice provided.` | Provide `gasPrice` for non-EIP-1559 blockchains. | | `155239` | `400` | `Invalid token address for transfer.` | Provide a valid token address. | | `155240` | `400` | `Invalid token standard for transfer.` | Provide a supported token standard. | | `155241` | `400` | `Invalid token decimal for transfer.` | Provide a valid token decimal. | | `155242` | `400` | `The lengths of amounts and nft tokens don't match.` | Ensure the amounts and NFT token arrays have the same length. | | `155243` | `400` | `Missing bytecode for contract deployment.` | Provide `bytecode` for the contract deployment. | | `155244` | `400` | `Cannot provide both WalletID and SourceAddress/Blockchain.` | Provide either `walletId` or `sourceAddress` and `blockchain`, not both. | | `155245` | `400` | `Invalid amount in contract execution request.` | Provide the amount in the contract execution request as a valid number. | | `155247` | `400` | `Cannot provide both CallData and AbiFunctionSignature/AbiParameters.` | Provide either `callData` or `abiFunctionSignature` and `abiParameters`, not both. | | `155248` | `400` | `Policy is not activated and cannot be used.` | Activate the [Gas Station policy](/wallets/gas-station/policy-management) before submitting transactions. | | `155249` | `400` | `Exceeded max daily transaction of the policy.` | Wait for the daily counter to reset, or raise the policy's max daily transaction limit. | | `155250` | `400` | `Exceeded max spend USD per transact
프로젝트로 돌아가기