SDK Methods (Rust)
Rust exposes two layers: the high-level circles-sdk facade and the lower-level
circles-rpc method namespaces.
High-level circles-sdk
Sdk:avatar_info,get_avatar,create_profile,get_profile,register_human,register_organisation,register_group,group_members,group_collateral,group_holders, and the optionalreferrals()client.HumanAvatar: balances, trust, history, profile writes, personal minting, path-based transfers, direct transfers, replenish, invitation/referral helpers, and group-token mint/redeem helpers.OrganisationAvatar: trust, profile writes, path/direct transfer, replenish/max-replenish, and group-token mint/redeem helpers.BaseGroupAvatar: trust/member admin, owner/service/fee/membership-condition writes, path/direct transfer, replenish, and profile writes.- Runners:
EoaContractRunner,SafeContractRunner, andSafeExecutionBuilder.
Lower-level circles-rpc
QueryMethods:circles_query,paged_queryBalanceMethods:get_total_balanceEventsMethods: HTTP fetch plus websocket subscriptionsPathfinderMethods: RPC pathfinding endpointsAvatarMethods,GroupMethods,TokenMethods,TokenInfoMethods,TrustMethods,InvitationMethods,TransactionMethods,SearchMethods,TablesMethods,NetworkMethods,HealthMethods
Example: token info lookup
use circles_rpc::{RpcClient, TokenInfoMethods};
use reqwest::Url;
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let client = RpcClient::http(Url::parse("https://rpc.aboutcircles.com/")?);
let tokens = TokenInfoMethods::new(client);
let info = tokens.get_token_info("0xTokenAddressHere".parse()?).await?;
println!("token info: {:?}", info);
Ok(())
}The remaining parity gap is no longer “writes are missing.” It is mostly browser-hosted Safe execution plus some convenience-surface and service/auth polish.