Polkadot Assets API

The Assets API from Polkadot — 5 operation(s) for assets.

Operations 5

POST /api/scan/assets/account/balances Asset account balances
POST /api/scan/assets/activities Asset activities
POST /api/scan/assets/asset Asset info
POST /api/scan/assets/asset/holders Asset holders
POST /api/scan/assets/assets Assets list

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/polkadot-assets-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

polkadot-assets-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: bruce.sun@itering.io
    name: API Support
    url: http://www.swagger.io/support
  description: This is a subscan API server.
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  termsOfService: http://swagger.io/terms/
  title: Subscan Assets API
  version: '1.0'
servers:
- url: https://https://www.subscan.io/
tags:
- name: Assets
paths:
  /api/scan/assets/account/balances:
    post:
      description: 'Get asset balances by account address

        This API only supports networks with assets frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
      summary: Asset account balances
      tags:
      - Assets
      x-synonyms:
      - asset
      - account
      - balances
      - assets
      - scan
      - wallet
      - address
      - user
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_assets_http.assetBalancesParams'
        description: param
        required: true
  /api/scan/assets/activities:
    post:
      description: 'Get asset activities(include asset Created/Issued/Burned...) by asset id

        This API only supports networks with assets frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
      summary: Asset activities
      tags:
      - Assets
      x-synonyms:
      - asset
      - activities
      - assets
      - scan
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_assets_http.assetActivitiesParams'
        description: param
        required: true
  /api/scan/assets/asset:
    post:
      description: 'Get asset info by asset id

        This API only supports networks with assets frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
      summary: Asset info
      tags:
      - Assets
      x-synonyms:
      - asset
      - assets
      - scan
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_assets_http.assetParam'
        description: param
        required: true
  /api/scan/assets/asset/holders:
    post:
      description: 'Get asset holders by asset id

        This API only supports networks with assets frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
      summary: Asset holders
      tags:
      - Assets
      x-synonyms:
      - asset
      - holders
      - assets
      - scan
      - owners
      - token holders
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_assets_http.assetHolderParams'
        description: param
        required: true
  /api/scan/assets/assets:
    post:
      description: 'Assets token list

        This API only supports networks with assets frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                properties:
                  code:
                    type: integer
                  data:
                    properties:
                      count:
                        type: integer
                      list:
                        items:
                          $ref: '#/components/schemas/subscan_internal_plugin_assets_db.StateAssetSampleJson'
                        type: array
                    type: object
                  message:
                    type: string
                type: object
      summary: Assets list
      tags:
      - Assets
      x-synonyms:
      - assets
      - scan
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_assets_http.assetsParam'
        description: param
        required: true
components:
  schemas:
    subscan_internal_model.SampleIdentity:
      properties:
        display:
          type: string
        identity:
          type: boolean
        judgements:
          items:
            $ref: '#/components/schemas/subscan_internal_model.RegistrationJudgementJson'
          type: array
        parent:
          $ref: '#/components/schemas/subscan_internal_model.AccountParentJson'
      type: object
    internal_plugin_assets_http.assetsParam:
      properties:
        asset_id:
          type: string
        order:
          enum:
          - asc
          - desc
          type: string
        order_field:
          enum:
          - asset_id
          - symbol
          - holders
          type: string
        page:
          minimum: 0
          type: integer
        row:
          maximum: 100
          minimum: 1
          type: integer
        search:
          description: assets symbol or name
          maxLength: 256
          minLength: 1
          type: string
      type: object
    subscan_internal_model.AccountParentJson:
      properties:
        address:
          type: string
        display:
          type: string
        identity:
          type: boolean
        sub_symbol:
          type: string
      type: object
    subscan_internal_model.EvmAccountDisplay:
      properties:
        contract_name:
          type: string
        verify_source:
          type: string
      type: object
    subscan_internal_plugin_assets_db.Metadata:
      properties:
        decimals:
          type: integer
        deposit:
          type: string
        name:
          type: string
        symbol:
          type: string
      type: object
    internal_plugin_assets_http.assetHolderParams:
      properties:
        asset_id:
          type: string
        page:
          minimum: 0
          type: integer
        row:
          maximum: 100
          minimum: 1
          type: integer
      type: object
    internal_plugin_assets_http.assetParam:
      properties:
        asset_id:
          type: string
      type: object
    internal_plugin_assets_http.assetBalancesParams:
      properties:
        address:
          type: string
      required:
      - address
      type: object
    subscan_internal_model.AccountDisplay:
      properties:
        account_index:
          type: string
        address:
          description: Current network account
          type: string
        display:
          type: string
        evm_address:
          type: string
        evm_contract:
          $ref: '#/components/schemas/subscan_internal_model.EvmAccountDisplay'
        identity:
          type: boolean
        judgements:
          items:
            $ref: '#/components/schemas/subscan_internal_model.RegistrationJudgementJson'
          type: array
        merkle:
          $ref: '#/components/schemas/subscan_internal_model.MerkleTag'
        parent:
          allOf:
          - $ref: '#/components/schemas/subscan_internal_model.AccountParentJson'
          description: Parent account
        people:
          $ref: '#/components/schemas/subscan_internal_model.SampleIdentity'
      type: object
    subscan_internal_model.MerkleTag:
      properties:
        address_type:
          type: string
        tag_name:
          type: string
        tag_subtype:
          type: string
        tag_type:
          type: string
      type: object
    subscan_internal_plugin_assets_db.StateAssetSampleJson:
      properties:
        asset_id:
          type: string
        holders:
          type: integer
        issuer:
          $ref: '#/components/schemas/subscan_internal_model.AccountDisplay'
        market_cap:
          type: string
        metadata:
          $ref: '#/components/schemas/subscan_internal_plugin_assets_db.Metadata'
        owner:
          $ref: '#/components/schemas/subscan_internal_model.AccountDisplay'
        price:
          type: string
        supply:
          type: string
        transfer_count:
          type: integer
        unique_id:
          type: string
      type: object
    internal_plugin_assets_http.assetActivitiesParams:
      properties:
        asset_id:
          type: string
        page:
          minimum: 0
          type: integer
        row:
          maximum: 100
          minimum: 1
          type: integer
      type: object
    subscan_internal_model.RegistrationJudgementJson:
      properties:
        index:
          type: integer
        judgement:
          type: string
      type: object