Overview

Somnia is a high-performance, cost-efficient EVM-compatible Layer 1 blockchain capable of processing over 1,000,000 transactions per second (TPS) with sub-second finality. It is suitable for serving millions of users and building real-time mass-consumer applications like games, social applications, metaverses, and more, all fully on-chain.

Explorer

https://shannon-explorer.somnia.network/

Wallets Types

BitGo enables holding Somnia in the following wallet types:

Multisig Cold Multisig Hot MPC Cold MPC Hot
Custody
Self-Custody

Ticker Symbols

Mainnet Testnet
somi tstt

Faucet

You can use a faucet to obtain free testnet Somnia for development and testing purposes.

Faucet: https://cloud.google.com/application/web3/faucet/somnia/shannon

Units

Each Somnia consists of 1,000,000,000,000,000,000 (1018) wei, so not even a single somnia can be stored numerically without exceeding the range of JavaScript numbers. Gas fees use gwei.

  • 1 somi = 1018 wei
  • 1 wei = 10-18 somi
  • 1 gwei = 10-9 somi

For that reason, only string balance properties are available, which are balanceString, confirmedBalanceString, and spendableBalanceString.

Tokens

The Somnia blockchain natively supports tokens.

Create Wallet

export BITGO_EXPRESS_HOST="<YOUR_LOCALHOST>"
export COIN="tstt"
export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>"
export LABEL="<DESIRED_WALLET_NAME>"
export PASSPHRASE="<YOUR_BITGO_LOGIN_PASSPHRASE>"
export ENTERPRISE_ID="<YOUR_ENTERPRISE_ID>"

curl -X POST \
 http://$BITGO_EXPRESS_HOST/api/v2/$COIN/wallet/generate \
 -H 'Content-Type: application/json' \
 -H "Authorization: Bearer $ACCESS_TOKEN" \
  -d '{
    "label": "'"$LABEL"'",
    "passphrase": "'"$PASSPHRASE"'",
    "enterprise": "'"$ENTERPRISE_ID"'",
    "walletVersion": 4
}'

Create Address

export WALLET="585c51a5df8380e0e3082e46"
export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>"

curl -X POST \
-H "Authorization: Bearer $ACCESS_TOKEN" \
https://app.bitgo-test.com/api/v2/tstt/wallet/$WALLET/address

Consolidate Balance

Consolidation Fee Source: Somnia Gas Tank

Somnia uses forwarders, so it does not support manual consolidation

Estimate Fee

export COIN="tstt"
export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>"

curl -X GET \
 https://app.bitgo-test.com/api/v2/$COIN/tx/fee \
 -H 'Content-Type: application/json' \
 -H "Authorization: Bearer $ACCESS_TOKEN"

Transact

Withdrawal Fee Source: Wallet Base Address

export BITGO_EXPRESS_HOST="<YOUR_LOCALHOST>"
export COIN="tstt"
export WALLET_ID="<YOUR_WALLET_ID>"
export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>"
export ADDRESS="<DESTINATION_ADDRESS>"
export AMOUNT="<AMOUNT_IN_BASE_UNITS>"
export WALLET_PASSPHRASE="<YOUR_WALLET_PASSPHRASE>"

curl -X POST \
 http://$BITGO_EXPRESS_HOST/api/v2/$COIN/wallet/$WALLET_ID/sendcoins \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -d '{
    "address": "'"$ADDRESS"'",
    "amount": "'"$AMOUNT"'",
    "walletPassphrase": "'"$WALLET_PASSPHRASE"'"
}'

Stake

Staking is out of scope for these chains as they don’t have native support for them.

See Also