Unlike the JavaScript SDK, which routes file transfers through a REST gateway, the Go SDK talks to SuperNodes directly over gRPC on port 4444. Your machine needs network access to that port.
Install
Create a client
lumerasdk.New takes a config, a Cosmos SDK keyring, and options. Close the client when you are done.
main.go
Upload a file
Upload registers the action on chain, waits for inclusion, and streams the file to one of the selected SuperNodes. The result carries the ActionID, the permanent on-chain reference to your file.
Download a file
Download fetches the file by action ID into a local directory.
Query actions
client.Blockchain exposes the chain modules. Action queries return the on-chain state of a storage request.
PENDING to PROCESSING to DONE. A failed upload ends at FAILED and the escrowed fee is refunded. Subscribe to task events with client.Cascade.SubscribeToEvents when you need progress callbacks instead of polling.
Multiple accounts
The factory pattern reuses one configuration and one set of connections across several signers.EVM and cross-chain support
The SDK is EVM ready. The keyring supports bothsecp256k1 (Cosmos, coin type 118) and eth_secp256k1 (EVM, coin type 60) key types. The repo ships examples for EVM balance reads, Ethereum format transfers, ERC20 conversion, and calling Lumera precompiles from the EVM. See the smart contracts overview for what the precompiles expose.
Full ICS-27 interchain account support lets an app on another Cosmos chain drive Cascade through IBC. The interchain accounts concept page explains the flow.
Next steps
Go SDK reference
Config fields, client surfaces, and crypto helpers.
How Cascade works
The storage flow behind Upload and Download.
Interchain accounts
Drive Cascade from another Cosmos chain.