Testnet Reference
Walrus Testnet is a free, non-durable network for development and testing. Read values that change from the canonical Network Reference, which is the single maintained source.
Testnet provides no availability or persistence guarantees, and its state can be wiped at any time without warning. Testnet WAL and SUI have no value. Do not use Testnet for production. When a wipe happens, follow Recover after a Testnet reset.
Testnet at a glance
| Parameter | Value |
|---|---|
| Sui network | Testnet |
| Epoch duration | 1 day |
| Number of shards | 1000 |
| Maximum epochs you can buy in advance | 53 |
| WAL smallest unit | 1 WAL = 1,000,000,000 FROST |
| SUI smallest unit | 1 SUI = 1,000,000,000 MIST |
Confirm you are connected to Testnet by running walrus info and checking for Epoch duration: 1day. The same output shows current storage pricing.
Endpoints
The Mysten Labs reference endpoints for Testnet are:
| Service | Endpoint |
|---|---|
| Sui RPC | https://fullnode.testnet.sui.io:443 |
| Aggregator | https://aggregator.walrus-testnet.walrus.space |
| Publisher | https://publisher.walrus-testnet.walrus.space |
| Upload relay | https://upload-relay.testnet.walrus.space |
https://fullnode.testnet.sui.io:443 is the Sui full node that the Walrus client and sui client use, and it is the value in the pre-filled Walrus configuration and the Network Reference. It serves Sui client and SDK traffic, not JSON-RPC method discovery, so a direct rpc.discover call against it can return 404 even though normal client calls succeed. Configure it through sui client and the Walrus configuration file rather than calling JSON-RPC methods against it by hand.
Many community operators also run public Testnet aggregators and publishers. For the maintained community list and the canonical copy of the endpoints above, see Aggregators and publishers and Upload relays in the Network Reference. Most public endpoints limit requests to 10 MiB.
Object and package IDs
Testnet object and package IDs are volatile: package IDs change whenever the Testnet contracts are redeployed. To avoid stale copies, read them from the canonical, maintained sources rather than pinning a value:
- System and staking object IDs: see System and staking object IDs.
- SUI/WAL exchange objects: used by
walrus get-wal, listed under System and staking object IDs. - Walrus Sites package ID: see Walrus Sites packages.
- Current Testnet package IDs: read them from the
Move.lockfiles in thetestnet-contractsdirectory on GitHub.
These values are also pre-filled in the client configuration file, which is the authoritative source if anything differs.
Tokens and faucets
Testnet uses free test tokens. You need SUI for gas and WAL for storage.
-
Get Testnet SUI from the Sui faucet. Select Testnet and paste your address from
sui client active-address. The faucet is rate limited; see Sui faucet alternatives. -
Exchange SUI for WAL at a 1:1 rate by running
walrus get-wal --context testnet. You can also exchange through the Walrus staking app with Get WAL. -
Confirm your balances:
$ sui client balance
Third-party Testnet WAL faucets might distribute WAL from a package the client rejects. Use walrus get-wal or the staking app so the WAL package matches what the Walrus client expects.
Configuration
Download the pre-filled client configuration, which includes both the Testnet and Mainnet contexts and defaults to Testnet:
$ curl --create-dirs https://docs.wal.app/setup/client_config.yaml -o ~/.config/walrus/client_config.yaml
A Testnet-only version is available at https://docs.wal.app/setup/client_config_testnet.yaml. Because Testnet is the default context, you do not need to pass --context testnet on every command, though this reference includes it to be explicit. For the full configuration reference and snippets, see Configuration snippets.
Recover after a Testnet reset
When Testnet is wiped or your client stops connecting, the cause is almost always an outdated configuration or a client pointed at the wrong network. Work through these steps:
-
Re-download the configuration file. The system object and package IDs change on redeployment, so a stale
client_config.yamlis the most common failure:$ curl --create-dirs https://docs.wal.app/setup/client_config.yaml -o ~/.config/walrus/client_config.yaml -
Confirm the Sui client targets Testnet. Check the active environment with
sui client active-env, and switch if needed withsui client switch --env testnet. -
Verify connectivity. Run
walrus infoand confirmEpoch duration: 1day. -
Re-fund if balances were reset. After a wipe, re-run the faucet and exchange steps.
-
Re-upload your data. Testnet does not persist blobs across a wipe. Blobs stored before a reset are gone and must be stored again.
Common errors and what they mean:
| Symptom | Most likely cause | Fix |
|---|---|---|
walrus info fails | Stale config or wrong network | Re-download config, switch Sui env to Testnet |
could not retrieve enough confirmations to certify the blob | Config points at an old committee | Re-download config |
the specified Walrus system object does not exist | System object changed after a redeploy | Re-download config |
404 reading a blob just after upload | CDN cached a pre-propagation 404 | Retry with backoff, see Reading Blobs Right After Upload |
For the full list of errors and fixes, see the Troubleshooting guide.