scallop-rpc-clientlisted
Install: claude install-skill scallop-io/scallop-skills
# Sui RPC Client
Direct Sui JSON-RPC access for low-level blockchain queries and transaction execution.
## Overview
The SDK includes `SuiRpcClient` (sync) and `AsyncSuiRpcClient` (async) for direct Sui blockchain interaction. These are used internally by `ScallopQuery` and `ScallopBuilder`, but you can also use them directly for custom queries.
## Quick Start
```python
from sui_scallop_sdk import SuiRpcClient
# Standalone
rpc = SuiRpcClient("https://fullnode.mainnet.sui.io:443", timeout=30.0)
# Or from an existing ScallopClient
client = ScallopClient(network="mainnet")
rpc = client.rpc_client
```
## SuiRpcClient Methods
### Object Queries
```python
# Get single object
obj = rpc.get_object(
"0xOBJECT_ID",
options={"showContent": True, "showType": True, "showOwner": True},
)
print(obj["data"]["content"])
# Get multiple objects in one call
objects = rpc.get_objects(
["0xOBJ_1", "0xOBJ_2", "0xOBJ_3"],
options={"showContent": True},
)
# Get objects owned by address
owned = rpc.get_owned_objects(
owner="0xADDRESS",
object_type="0x2::coin::Coin<0x2::sui::SUI>", # Optional filter
cursor=None, # For pagination
limit=50,
)
for item in owned["data"]:
print(item["data"]["objectId"])
```
### Coin Queries
```python
# Get coins of specific type
coins = rpc.get_coins(
owner="0xADDRESS",
coin_type="0x2::sui::SUI", # Optional
limit=50,
)
for coin in coins["data"]:
print(f"ID: {coin['coinObjectId']}, Balance: {coin['balance']