Skip to main content

Crate circle_user_controlled_wallets

Crate circle_user_controlled_wallets 

Source
Expand description

Rust client for the Circle Web3 Services User-Controlled Wallets API.

This crate provides a typed, async HTTP client for the Circle W3S User-Controlled Wallets API, where end-users own their signing keys through a PIN-protected security model.

§Covered Endpoints

ModuleFunctionality
models::userCreate and retrieve end-user accounts
models::challengeInitiate and retrieve PIN / security-factor challenges
models::walletList wallets and query balances and NFTs
models::transactionInitiate and track on-chain transactions
models::signingSign messages and typed data
models::tokenLook up token metadata

§Quick Start

use circle_user_controlled_wallets::{UserWalletsClient, models::user::CreateUserRequest};

#[tokio::main]
async fn main() -> Result<(), circle_user_controlled_wallets::Error> {
    let client = UserWalletsClient::new("your_api_key");
    let req = CreateUserRequest { user_id: "user-123".to_string() };
    let user = client.create_user(&req).await?;
    println!("Created user: {:?}", user.data);
    Ok(())
}

§Authentication

All requests require a Circle API key, which can be created in the Circle Developer Console.

§Error Handling

Every fallible operation returns Error, which captures both HTTP-level transport failures and API-level error responses from Circle.

Re-exports§

pub use client::UserWalletsClient;
pub use error::Error;

Modules§

client
HTTP client for the User-Controlled Wallets API.
error
Error types for the circle-user-controlled-wallets crate.
models
Data models for the Circle User-Controlled Wallets API.