Skip to content

Circles SDK Interface (Rust)

Main entry points and core types:

  • circles_sdk::Sdk: high-level orchestrator for RPC, profiles, pathfinding, transfer planning, registration, and optional write execution.
  • circles_sdk::Avatar: runtime enum that resolves into HumanAvatar, OrganisationAvatar, or BaseGroupAvatar.
  • circles_sdk::ContractRunner: execution boundary for write-capable methods.
  • circles_sdk::EoaContractRunner: built-in native EOA runner.
  • circles_sdk::SafeContractRunner: built-in native runner for existing single-owner Safes.
  • circles_sdk::SafeExecutionBuilder: canonical Safe payload/hash preparation for external signing or browser-hosted execution.
  • circles_sdk::PreparedTransaction, PreparedSafeExecution, and SubmittedTx: handoff/result types for runner-backed flows.

Lower-level primitives remain available directly:

  • circles_rpc::CirclesRpc: HTTP/WS RPC client built on Alloy providers.
  • RPC method namespaces: query, balance, events, pathfinder, avatar, group, token, invitation, trust, search, transaction history, and health.
  • Shared types: Address, U256, Profile, AvatarInfo, TrustRelation, TokenBalanceResponse, CirclesEvent, FindPathParams, FlowMatrix, QueryParams, FilterPredicate, PagedResult, SortOrder.

Write-capable helpers return SdkError::MissingRunner if you construct the SDK without a runner. Read-only helpers continue to work with Sdk::new(config, None).