getSupply
Last updated:
`getSupply` reports the total supply of SOL on the cluster, split into the **circulating** and **non-circulating** portions. All amounts are returned in **lamports** (1 SOL = 1,000,000,000 lamports), so divide each figure by `1e9` to display a SOL amount.
The supply is reported relative to a particular slot, returned in the `context` object. Use the optional `commitment` config to control how finalized that slot must be.
By default the response also includes `nonCirculatingAccounts` — the list of account public keys whose balances make up the non-circulating supply. This list can be large; set `excludeNonCirculatingAccountsList: true` to suppress it and return an empty array, which keeps the response small when you only need the aggregate totals.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| config | GetSupplyConfig | No |
Returns
| Field | Type |
|---|---|
| result | object |
Examples
curl https://<your-endpoint>/ \
-X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"getSupply","params":[]}'const res = await fetch("https://<your-endpoint>/", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"id": 1,
"method": "getSupply",
"params": [],
"jsonrpc": "2.0"
}),
});
const data = await res.json();import requests
resp = requests.post("https://<your-endpoint>/", json={"id":1,"method":"getSupply","params":[],"jsonrpc":"2.0"})
print(resp.json())Usage
- Transport: HTTP (JSON-RPC).
- Networks: mainnet, devnet, testnet.
- Credit cost: 1 per call.
FAQ
- What does getSupply do?
- Returns information about the current supply of SOL, broken down into circulating and non-circulating lamports.
- How many credits does getSupply cost?
- getSupply costs 1 credit(s) per call on Triport by default.
- Is getSupply available over WebSocket?
- getSupply is an HTTP JSON-RPC method.