{"format":"opendoc-document","version":1,"url":"https://docs.storm.tg/developers/operations/getbalance","title":"Get a token balance","description":"GET /v3-node-0/smartaccount/{address}/balance: Returns the available balance for a specific token in a smart account","kind":"api-operation","locale":"en","inLanguage":"en","lastModified":"2026-10-09T14:26:32+03:00","revision":"d36475e7b456c737fae6933fa27b7e1bc2687f2c19291b05725ab2c4e8f79d7a","section":{"title":"For Developers","url":"https://docs.storm.tg/developers"},"representations":{"html":"https://docs.storm.tg/developers/operations/getbalance","markdown":"https://docs.storm.tg/developers/operations/getbalance.md","json":"https://docs.storm.tg/developers/operations/getbalance.json"},"translations":{"en":"https://docs.storm.tg/developers/operations/getbalance"},"operation":{"id":"GetBalance","method":"GET","path":"/v3-node-0/smartaccount/{address}/balance","summary":"Get a token balance","description":"Returns the available balance for a specific token in a smart account","tags":["Smart accounts"],"deprecated":false,"parameters":[{"name":"address","location":"path","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]},"type":"string","required":true,"description":"Smart account address","example":"string"},{"name":"token_address","location":"query","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]},"type":"string","required":true,"description":"Token collateral asset ID","example":"string"},{"name":"include_breakdown","location":"query","schema":{"type":"boolean","types":["boolean"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]},"type":"boolean","required":false,"description":"Also return leased and locked fields (default false)","example":"true"}],"bodies":[],"responses":[{"status":"200","description":"OK","mediaType":"application/json","properties":[{"name":"amount","type":"integer","required":false,"example":"0","schema":{"type":"integer","types":["integer"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"leased","type":"integer","required":false,"description":"Leased and Locked break down what was netted out of the on-chain amount to\nget Amount (free = on-chain − leased − locked). Populated only when the\ncaller passes ?include_breakdown=true; nil (omitted) otherwise.","example":"0","schema":{"type":"integer","types":["integer"],"description":"Leased and Locked break down what was netted out of the on-chain amount to\nget Amount (free = on-chain − leased − locked). Populated only when the\ncaller passes ?include_breakdown=true; nil (omitted) otherwise.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"locked","type":"integer","required":false,"example":"0","schema":{"type":"integer","types":["integer"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"minter_address","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"schema":{"type":"object","types":["object"],"reference":"#/components/schemas/Trading.api.BalanceResponse","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"amount","type":"integer","required":false,"example":"0","schema":{"type":"integer","types":["integer"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"leased","type":"integer","required":false,"description":"Leased and Locked break down what was netted out of the on-chain amount to\nget Amount (free = on-chain − leased − locked). Populated only when the\ncaller passes ?include_breakdown=true; nil (omitted) otherwise.","example":"0","schema":{"type":"integer","types":["integer"],"description":"Leased and Locked break down what was netted out of the on-chain amount to\nget Amount (free = on-chain − leased − locked). Populated only when the\ncaller passes ?include_breakdown=true; nil (omitted) otherwise.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"locked","type":"integer","required":false,"example":"0","schema":{"type":"integer","types":["integer"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"minter_address","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]},"example":"{\n  \"amount\": 0,\n  \"leased\": 0,\n  \"locked\": 0,\n  \"minter_address\": \"string\"\n}","headers":[]},{"status":"400","description":"Bad Request","mediaType":"application/json","properties":[{"name":"code","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"error","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"externalQueryId","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"msg","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"schema":{"type":"object","types":["object"],"reference":"#/components/schemas/Trading.api.ErrorResponse","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"code","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"error","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"externalQueryId","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"msg","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]},"example":"{\n  \"code\": \"string\",\n  \"error\": \"string\",\n  \"externalQueryId\": \"string\",\n  \"msg\": \"string\"\n}","headers":[]},{"status":"404","description":"Not Found","mediaType":"application/json","properties":[{"name":"code","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"error","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"externalQueryId","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"msg","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"schema":{"type":"object","types":["object"],"reference":"#/components/schemas/Trading.api.ErrorResponse","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"code","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"error","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"externalQueryId","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"msg","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]},"example":"{\n  \"code\": \"string\",\n  \"error\": \"string\",\n  \"externalQueryId\": \"string\",\n  \"msg\": \"string\"\n}","headers":[]},{"status":"500","description":"Internal Server Error","mediaType":"application/json","properties":[{"name":"code","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"error","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"externalQueryId","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"msg","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"schema":{"type":"object","types":["object"],"reference":"#/components/schemas/Trading.api.ErrorResponse","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"code","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"error","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"externalQueryId","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"msg","type":"string","required":false,"example":"string","schema":{"type":"string","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]},"example":"{\n  \"code\": \"string\",\n  \"error\": \"string\",\n  \"externalQueryId\": \"string\",\n  \"msg\": \"string\"\n}","headers":[]}],"security":[],"codeSamples":[{"label":"cURL","language":"bash","source":"curl --request GET 'https://api.storm.tg/v3-node-0/smartaccount/{address}/balance' \\\n  --header 'Accept: application/json'"},{"label":"JavaScript","language":"javascript","source":"const response = await fetch(\"https://api.storm.tg/v3-node-0/smartaccount/{address}/balance\", {\n  method: \"GET\",\n  headers: {\n    \"Accept\": \"application/json\"\n  },\n});\nconsole.log(response.status, await response.text());"},{"label":"Python","language":"python","source":"import requests\n\nresponse = requests.request(\n    \"GET\",\n    \"https://api.storm.tg/v3-node-0/smartaccount/{address}/balance\",\n    headers={\"Accept\":\"application/json\"},\n    timeout=30,\n)\nprint(response.status_code, response.text)"}]},"breadcrumbs":[{"title":"⚡ About Storm Trade","url":"https://docs.storm.tg"},{"title":"For Developers","url":"https://docs.storm.tg/developers"},{"title":"Get a token balance","url":"https://docs.storm.tg/developers/operations/getbalance"}],"headings":[{"depth":2,"id":"parameters","title":"Parameters"},{"depth":2,"id":"examples","title":"Examples"},{"depth":2,"id":"responses","title":"Responses"}],"markdown":"# Get a token balance\n\n`GET /v3-node-0/smartaccount/{address}/balance`\n\nReturns the available balance for a specific token in a smart account\n\n## Authorization\n\n\n\n## Parameters\n\n- path: address (string; required). Smart account address\n\nType: string\n\n- query: token_address (string; required). Token collateral asset ID\n\nType: string\n\n- query: include_breakdown (boolean; optional). Also return leased and locked fields (default false)\n\nType: boolean\n\n## Example · cURL\n\n```bash\ncurl --request GET 'https://api.storm.tg/v3-node-0/smartaccount/{address}/balance' \\\n  --header 'Accept: application/json'\n```\n\n## Example · JavaScript\n\n```javascript\nconst response = await fetch(\"https://api.storm.tg/v3-node-0/smartaccount/{address}/balance\", {\n  method: \"GET\",\n  headers: {\n    \"Accept\": \"application/json\"\n  },\n});\nconsole.log(response.status, await response.text());\n```\n\n## Example · Python\n\n```python\nimport requests\n\nresponse = requests.request(\n    \"GET\",\n    \"https://api.storm.tg/v3-node-0/smartaccount/{address}/balance\",\n    headers={\"Accept\":\"application/json\"},\n    timeout=30,\n)\nprint(response.status_code, response.text)\n```\n\n## Response 200 · Trading.api.BalanceResponse\n\n**200** application/json — OK\n\nSchema: Trading.api.BalanceResponse\n\nType: object\n\nRequired fields: none\n\n- amount (integer; optional)\n\namount example: 0\n\namount.Type: integer\n\n- leased (integer; optional)\n\nleased example: 0\n\nleased.Type: integer\n\nleased.Leased and Locked break down what was netted out of the on-chain amount to\nget Amount (free = on-chain − leased − locked). Populated only when the\ncaller passes ?include_breakdown=true; nil (omitted) otherwise.\n\n- locked (integer; optional)\n\nlocked example: 0\n\nlocked.Type: integer\n\n- minter_address (string; optional)\n\nminter_address example: string\n\nminter_address.Type: string\n\nExample\n\n\n\n```json\n{\n  \"amount\": 0,\n  \"leased\": 0,\n  \"locked\": 0,\n  \"minter_address\": \"string\"\n}\n```\n\n## Response 400 · Trading.api.ErrorResponse\n\n**400** application/json — Bad Request\n\nSchema: Trading.api.ErrorResponse\n\nType: object\n\nRequired fields: none\n\n- code (string; optional)\n\ncode example: string\n\ncode.Type: string\n\n- error (string; optional)\n\nerror example: string\n\nerror.Type: string\n\n- externalQueryId (string; optional)\n\nexternalQueryId example: string\n\nexternalQueryId.Type: string\n\n- msg (string; optional)\n\nmsg example: string\n\nmsg.Type: string\n\nExample\n\n\n\n```json\n{\n  \"code\": \"string\",\n  \"error\": \"string\",\n  \"externalQueryId\": \"string\",\n  \"msg\": \"string\"\n}\n```\n\n## Response 404 · Trading.api.ErrorResponse\n\n**404** application/json — Not Found\n\nSchema: Trading.api.ErrorResponse\n\nType: object\n\nRequired fields: none\n\n- code (string; optional)\n\ncode example: string\n\ncode.Type: string\n\n- error (string; optional)\n\nerror example: string\n\nerror.Type: string\n\n- externalQueryId (string; optional)\n\nexternalQueryId example: string\n\nexternalQueryId.Type: string\n\n- msg (string; optional)\n\nmsg example: string\n\nmsg.Type: string\n\nExample\n\n\n\n```json\n{\n  \"code\": \"string\",\n  \"error\": \"string\",\n  \"externalQueryId\": \"string\",\n  \"msg\": \"string\"\n}\n```\n\n## Response 500 · Trading.api.ErrorResponse\n\n**500** application/json — Internal Server Error\n\nSchema: Trading.api.ErrorResponse\n\nType: object\n\nRequired fields: none\n\n- code (string; optional)\n\ncode example: string\n\ncode.Type: string\n\n- error (string; optional)\n\nerror example: string\n\nerror.Type: string\n\n- externalQueryId (string; optional)\n\nexternalQueryId example: string\n\nexternalQueryId.Type: string\n\n- msg (string; optional)\n\nmsg example: string\n\nmsg.Type: string\n\nExample\n\n\n\n```json\n{\n  \"code\": \"string\",\n  \"error\": \"string\",\n  \"externalQueryId\": \"string\",\n  \"msg\": \"string\"\n}\n```","text":"Get a token balance Returns the available balance for a specific token in a smart account GET /v3-node-0/smartaccount/{address}/balance Smart accounts address Smart account address string token_address Token collateral asset ID string include_breakdown Also return leased and locked fields (default false) boolean 200 OK amount integer leased Leased and Locked break down what was netted out of the on-chain amount to get Amount (free = on-chain − leased − locked). Populated only when the caller passes ?include_breakdown=true; nil (omitted) otherwise. integer locked integer minter_address string 400 Bad Request code string error string externalQueryId string msg string 404 Not Found code string error string externalQueryId string msg string 500 Internal Server Error code string error string externalQueryId string msg string","api":{"title":"Storm API reference","version":"3.0","documentation":"https://docs.storm.tg/developers/overview","playgroundServer":"https://api.storm.tg"}}