Generates a challenge to create a new user-controlled wallet or a batch of wallets. You must specify the blockchain and wallet name.
Universally unique identifier (UUID v4) idempotency key. This key is utilized to ensure exactly-once execution of mutating requests. To create a UUIDv4 go to uuidgenerator.net. If the same key is reused, it will be treated as the same request and the original response will be returned.
An account can be a Smart Contract Account (SCA) or an Externally Owned Account (EOA). To learn more, see the account types guide.
If an account type is not specified during the creation of a wallet, it defaults to EOA
(Externally Owned Account). Note that Solana doesn't support Smart Contract Account (SCA).
Blockchain(s) the requested wallets will be created on.
List of metadata fields to associate with the corresponding wallet.
Unique system generated JWT session token for specific user.
Developer-provided parameter used to identify this request. Useful when communicating with Circle Support.
1from circle.web3 import user_controlled_wallets
2from circle.web3 import utils
3
4client = utils.init_user_controlled_wallets_client(api_key=key)
5
6api_instance = user_controlled_wallets.WalletsApi(client)
7
8request = user_controlled_wallets.CreateEndUserWalletRequest.from_dict({
9 "idempotencyKey": "d1b66f87-2320-5834-bcd3-175a36a4d331",
10 "accountType": "SCA",
11 "blockchains": ["ETH-SEPOLIA"],
12})
13response = api_instance.create_user_wallet(x_user_token=user_token, create_end_user_wallet_request=request)
14print(response.json())
15
1{
2 "data": {
3 "challenge_id": "c4d1da72-111e-4d52-bdbf-2e74a2d803d5"
4 }
5}