Skip to main content
The Coin API provides access to coin-related data such as coins owned by an address, balances, and metadata. All methods are in the iotax namespace.

iotax_getCoins

Return all Coin objects of a specific coin type owned by an address.
owner
IotaAddress
required
The owner’s IOTA address
coin_type
String
Optional type name for the coin (e.g., 0x168da5bf1f48dafc111b0a488fa454aca95e0b5e::usdc::USDC). Defaults to 0x2::iota::IOTA if not specified
cursor
ObjectID
Optional paging cursor for pagination
limit
usize
Maximum number of items per page (default: 50, max: 100)
data
Vec<Coin>
List of coin objects
nextCursor
ObjectID
Cursor for the next page, if available
hasNextPage
boolean
Whether there are more pages available
cURL
curl -X POST https://api.iota.io \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "iotax_getCoins",
    "params": [
      "0x0479c602460ae68771dcb9bfcef607dccc678859fb72d7d8aa8d9ce58c9430747",
      "0x2::iota::IOTA",
      null,
      10
    ]
  }'

iotax_getAllCoins

Return all Coin objects of all types owned by an address.
owner
IotaAddress
required
The owner’s IOTA address
cursor
ObjectID
Optional paging cursor
limit
usize
Maximum number of items per page
cURL
curl -X POST https://api.iota.io \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "iotax_getAllCoins",
    "params": [
      "0x0479c602460ae68771dcb9bfcef607dccc678859fb72d7d8aa8d9ce58c9430747",
      null,
      50
    ]
  }'

iotax_getBalance

Return the total coin balance for one coin type, owned by the address owner.
owner
IotaAddress
required
The owner’s IOTA address
coin_type
String
Optional type name for the coin (e.g., 0x168da5bf1f48dafc111b0a488fa454aca95e0b5e::usdc::USDC). Defaults to 0x2::iota::IOTA if not specified
coinType
String
The coin type identifier
coinObjectCount
usize
The number of coin objects for this type
totalBalance
BigInt<u128>
The total balance across all coins of this type
lockedBalance
Object
Breakdown of locked balance by epoch
cURL
curl -X POST https://api.iota.io \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "iotax_getBalance",
    "params": [
      "0x0479c602460ae68771dcb9bfcef607dccc678859fb72d7d8aa8d9ce58c9430747",
      "0x2::iota::IOTA"
    ]
  }'

iotax_getAllBalances

Return the total coin balance for all coin types owned by an address.
owner
IotaAddress
required
The owner’s IOTA address
balances
Vec<Balance>
Array of balance objects, one for each coin type ownedEach balance includes:
  • coinType - The coin type identifier
  • coinObjectCount - Number of coin objects
  • totalBalance - Total balance for this coin type
  • lockedBalance - Locked balance breakdown
cURL
curl -X POST https://api.iota.io \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "iotax_getAllBalances",
    "params": [
      "0x0479c602460ae68771dcb9bfcef607dccc678859fb72d7d8aa8d9ce58c9430747"
    ]
  }'

iotax_getCoinMetadata

Return metadata (e.g., symbol, decimals) for a coin type.
coin_type
String
required
Type name for the coin (e.g., 0x168da5bf1f48dafc111b0a488fa454aca95e0b5e::usdc::USDC)
id
ObjectID
The object ID of the coin metadata object
decimals
u8
Number of decimal places the coin uses
name
String
Human-readable name of the coin
symbol
String
Symbol or ticker of the coin
description
String
Description of the coin
iconUrl
String
URL for the coin icon
cURL
curl -X POST https://api.iota.io \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "iotax_getCoinMetadata",
    "params": [
      "0x2::iota::IOTA"
    ]
  }'

iotax_getTotalSupply

Return the total supply for a coin type.
coin_type
String
required
Type name for the coin (e.g., 0x168da5bf1f48dafc111b0a488fa454aca95e0b5e::usdc::USDC)
value
BigInt<u64>
The total supply value
cURL
curl -X POST https://api.iota.io \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "iotax_getTotalSupply",
    "params": [
      "0x2::iota::IOTA"
    ]
  }'

iotax_getCirculatingSupply

Return the circulating supply summary for IOTA.
circulatingSupply
BigInt<u64>
The circulating supply of IOTA
totalSupply
BigInt<u64>
The total supply of IOTA
lockedSupply
BigInt<u64>
The locked supply of IOTA
cURL
curl -X POST https://api.iota.io \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "iotax_getCirculatingSupply",
    "params": []
  }'

Coin Type Format

Coin types follow the format:
<package_id>::<module_name>::<type_name>
Examples:
  • Native IOTA: 0x2::iota::IOTA
  • Custom token: 0x168da5bf1f48dafc111b0a488fa454aca95e0b5e::usdc::USDC

Working with Coin Balances

Coin balances are returned in the smallest unit. To convert to human-readable format:
  1. Get the coin metadata to find the decimals
  2. Divide the balance by 10^decimals
Example for IOTA (9 decimals):
Balance: 1000000000 NANOS = 1.0 IOTA

Build docs developers (and LLMs) love