pysui

June 7, 2026 · View on GitHub

PySui

pysui

Downloads

Python Client SDK for Sui blockchain

A cup of coffee

  • The team could use a cup or carafe. Sui address 0xc45e5ea887e037ddc6a482afa412773b4291c8fdc338f647fb0fcea324975d8e

pysui SDK install

With Rust on machine

pip install pysui if first time or pip install -U pysui if upgrading.

Without Rust on machine

  1. Fetch the latest pysui-fastcrypto binary from the release assets, unzip and pip install it
  2. pip install pysui

pysui SDK current (github)

Release-1.0.0

PyPi current

Release-1.0.0 - Released 2026-06-08

⚠️ Deletion Notice: Release 1.0.0 has removed the legacy JSON-RPC client and synchronous GraphQL client. If your code used either then use the Migration Guide on ReadTheDocs.

This is a significant release that redesigns pysui around the Unified Client Interface (UCI). It introduces breaking changes — see CHANGELOG for the full list.

Unified Client Interface (UCI)

The UCI provides a protocol-agnostic programming model: write application code once and run it transparently on either GraphQL or gRPC. The active transport is determined by configuration at runtime — no code changes required to switch.

The UCI is built on four pillars:

  1. Thin Client Design — pysui clients carry no convenience methods such as get_coins or get_object. All data access goes through typed request objects dispatched via await client.execute(command=...), keeping the client surface small and transport-neutral.

  2. Protocol-Agnostic Command Execution — Use await client.execute(command=...) with any SuiCommand subclass. The same code runs identically on both GraphQL and gRPC. Switching protocols requires only a configuration change.

  3. Shared Transaction Infrastructure — PTBs with unified transaction builders and executor factories work across all protocols. Obtain a transaction builder via await client.transaction(**kwargs), and executors via await client.serial_executor(options=...) or await client.parallel_executor(options=...).

  4. Protocol-Level Access — When you need capabilities beyond SuiCommand: use GraphQL QueryNodes via execute_query_node for custom queries, or gRPC Requests via execute_grpc_request for direct gRPC access.

FULL Documentation

Changelog

See CHANGELOG

Issues and enhancement requests

We would appreciate using the github issue log to let us know!

Release/Publish Strategy

See Strategies

Discord

Discord server invitation is Found here:

Sample utilities

Note: Sample utilities are implemented using pysui UCI

See samples