Polkadot NFTs API

The NFTs API from Polkadot — 7 operation(s) for nfts.

Operations 7

POST /api/scan/nfts/account/balances NFT account balances
POST /api/scan/nfts/activities NFT activities
POST /api/scan/nfts/info NFT info
POST /api/scan/nfts/info/holders NFT holders
POST /api/scan/nfts/info/item NFT item
POST /api/scan/nfts/info/items NFT items
POST /api/scan/nfts/list NFTs 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-nfts-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-nfts-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 NF Ts API
  version: '1.0'
servers:
- url: https://https://www.subscan.io/
tags:
- name: NFTs
paths:
  /api/scan/nfts/account/balances:
    post:
      description: 'Get NFT balances by account address

        This API only supports networks with nfts frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/subscan_internal_plugin_share.J'
                - properties:
                    data:
                      properties:
                        count:
                          type: integer
                        list:
                          items:
                            $ref: '#/components/schemas/subscan_internal_plugin_nfts_db.CollectionBalance'
                          type: array
                      type: object
                  type: object
      summary: NFT account balances
      tags:
      - NFTs
      x-synonyms:
      - nft
      - account
      - balances
      - nfts
      - scan
      - erc721
      - collectible
      - non-fungible token
      - wallet
      - address
      - user
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_nfts_http.NftAccountBalancesParams'
        description: body
        required: true
  /api/scan/nfts/activities:
    post:
      description: 'Get Nft activities(include nft Created/Issued/Burned...) by nft collection id

        This API only supports networks with nfts frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/subscan_internal_plugin_share.J'
                - properties:
                    data:
                      properties:
                        count:
                          type: integer
                        list:
                          items:
                            $ref: '#/components/schemas/subscan_internal_plugin_nfts_db.NftRelateExtrinsic'
                          type: array
                      type: object
                  type: object
      summary: NFT activities
      tags:
      - NFTs
      x-synonyms:
      - nft
      - activities
      - nfts
      - scan
      - erc721
      - collectible
      - non-fungible token
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_nfts_http.NftActivitiesParams'
        description: body
        required: true
  /api/scan/nfts/info:
    post:
      description: 'NFT collection info

        This API only supports networks with nfts frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/subscan_internal_plugin_share.J'
                - properties:
                    data:
                      $ref: '#/components/schemas/subscan_internal_plugin_nfts_db.NftsJson'
                  type: object
      summary: NFT info
      tags:
      - NFTs
      x-synonyms:
      - nft
      - nfts
      - scan
      - erc721
      - collectible
      - non-fungible token
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_nfts_http.NftParams'
        description: body
        required: true
  /api/scan/nfts/info/holders:
    post:
      description: 'NFT holders in a collection

        This API only supports networks with nfts frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/subscan_internal_plugin_share.J'
                - properties:
                    data:
                      properties:
                        count:
                          type: integer
                        list:
                          items:
                            $ref: '#/components/schemas/subscan_internal_plugin_nfts_db.NftHolderJson'
                          type: array
                      type: object
                  type: object
      summary: NFT holders
      tags:
      - NFTs
      x-synonyms:
      - nft
      - holders
      - nfts
      - scan
      - erc721
      - collectible
      - non-fungible token
      - owners
      - token holders
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_nfts_http.NftHoldersParams'
        description: body
        required: true
  /api/scan/nfts/info/item:
    post:
      description: 'NFT item info

        This API only supports networks with nfts frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/subscan_internal_plugin_share.J'
                - properties:
                    data:
                      $ref: '#/components/schemas/subscan_internal_plugin_nfts_db.CollectionItemJson'
                  type: object
      summary: NFT item
      tags:
      - NFTs
      x-synonyms:
      - nft
      - item
      - nfts
      - scan
      - erc721
      - collectible
      - non-fungible token
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_nfts_http.NftItemParams'
        description: body
        required: true
  /api/scan/nfts/info/items:
    post:
      description: 'NFT items in a collection

        This API only supports networks with nfts frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/subscan_internal_plugin_share.J'
                - properties:
                    data:
                      properties:
                        count:
                          type: integer
                        list:
                          items:
                            $ref: '#/components/schemas/subscan_internal_plugin_nfts_db.ItemSample'
                          type: array
                      type: object
                  type: object
      summary: NFT items
      tags:
      - NFTs
      x-synonyms:
      - nft
      - items
      - nfts
      - scan
      - erc721
      - collectible
      - non-fungible token
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_nfts_http.NftItemsParams'
        description: body
        required: true
  /api/scan/nfts/list:
    post:
      description: 'NFTs collection list

        This API only supports networks with nfts frame'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/subscan_internal_plugin_share.J'
                - properties:
                    data:
                      properties:
                        count:
                          type: integer
                        list:
                          items:
                            $ref: '#/components/schemas/subscan_internal_plugin_nfts_db.NftsSampleJson'
                          type: array
                      type: object
                  type: object
      summary: NFTs list
      tags:
      - NFTs
      x-synonyms:
      - nfts
      - scan
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_plugin_nfts_http.NftsParams'
        description: body
        required: true
components:
  schemas:
    internal_plugin_nfts_http.NftsParams:
      properties:
        collection_id:
          example: '1'
          type: string
        order:
          description: Optional, order sort, default desc
          enum:
          - desc
          - asc
          example: desc
          type: string
        order_field:
          description: Optional, order field
          enum:
          - items
          - holders
          - collection_id
          - transfer_count
          example: holders
          type: string
        page:
          minimum: 0
          type: integer
        row:
          maximum: 100
          minimum: 1
          type: integer
      type: object
    internal_plugin_nfts_http.NftAccountBalancesParams:
      properties:
        address:
          example: EaBRZ3VBUFEd6GT9kxXXk9C5gsYC6zAsNfxahmpusrYPtPf
          type: string
        collection_id:
          example: '1'
          type: string
        page:
          example: 0
          minimum: 0
          type: integer
        row:
          example: 10
          maximum: 100
          minimum: 1
          type: integer
      required:
      - address
      type: object
    subscan_internal_plugin_nfts_db.NftsSampleJson:
      properties:
        collection_id:
          example: '1'
          type: string
        collection_image:
          example: https://ipfs.io/ipfs/bafkreihmb2esqysriq46l2uutyu2bqxkzlgluarbr36kom3hrykd2ku42u
          type: string
        collection_name:
          example: Retrowave
          type: string
        holders:
          example: 10
          type: integer
        items:
          example: 10
          type: integer
        owner:
          $ref: '#/components/schemas/subscan_internal_model.AccountDisplay'
        transfer_count:
          example: 10
          type: integer
      type: object
    internal_plugin_nfts_http.NftItemsParams:
      properties:
        collection_id:
          example: '1'
          type: string
        order:
          description: Optional, order sort, default desc
          enum:
          - desc
          - asc
          type: string
        order_field:
          description: Optional, order field
          enum:
          - item_id
          - create_at
          - transfer_count
          type: string
        owner:
          description: Optional, owner address
          example: EaBRZ3VBUFEd6GT9kxXXk9C5gsYC6zAsNfxahmpusrYPtPf
          type: string
        page:
          example: 0
          minimum: 0
          type: integer
        row:
          example: 10
          maximum: 100
          minimum: 1
          type: integer
      type: object
    internal_plugin_nfts_http.NftParams:
      properties:
        collection_id:
          example: '1'
          type: string
      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_nfts_db.CollectionItemJson:
      properties:
        attributes: {}
        collection_id:
          example: '126'
          type: string
        data:
          example: ipfs://ipfs/bafkreiga2srd2royhpxav3migytg35ny5ph74sbqhfxujwqu6tpoio5ize
          type: string
        holder:
          $ref: '#/components/schemas/subscan_internal_model.AccountDisplay'
        item_id:
          example: '1'
          type: string
        metadata:
          $ref: '#/components/schemas/subscan_internal_model.StandardMetadata'
      type: object
    subscan_internal_plugin_nfts_db.CollectionBalance:
      properties:
        balance:
          example: '1'
          type: string
        collection_id:
          example: '1'
          type: string
        collection_name:
          example: Kusama Crowdloans
          type: string
        item_id:
          example: '1'
          type: string
        token_metadata:
          $ref: '#/components/schemas/subscan_internal_model.MetadataSample'
      type: object
    subscan_internal_plugin_nfts_db.ItemSample:
      properties:
        collection_id:
          example: '1'
          type: string
        collection_name:
          example: Kusama Crowdloans
          type: string
        item_id:
          example: '1'
          type: string
        metadata:
          $ref: '#/components/schemas/subscan_internal_model.StandardMetadata'
        owner:
          $ref: '#/components/schemas/subscan_internal_model.AccountDisplay'
        transfer_count:
          type: integer
      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.MetadataSample:
      properties:
        fallback_image:
          type: string
        image:
          type: string
        media:
          items:
            $ref: '#/components/schemas/subscan_internal_model.MetadataMedia'
          type: array
        name:
          type: string
      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.RegistrationJudgementJson:
      properties:
        index:
          type: integer
        judgement:
          type: string
      type: object
    subscan_internal_model.EvmAccountDisplay:
      properties:
        contract_name:
          type: string
        verify_source:
          type: string
      type: object
    subscan_internal_plugin_share.J:
      properties:
        code:
          example: 0
          type: integer
        data: {}
        generated_at:
          example: 1699600641
          type: integer
        message:
          example: Success
          type: string
      type: object
    subscan_internal_plugin_nfts_db.NftRelateExtrinsic:
      properties:
        block_num:
          example: 5296820
          type: integer
        block_timestamp:
          example: 1693996722
          type: integer
        collection_id:
          example: '129'
          type: string
        event_id:
          example: ItemMetadataSet
          type: string
        event_index:
          example: 5296820-26
          type: string
        extrinsic_index:
          example: 5296820-3
          type: string
        id:
          type: integer
        item_id:
          example: '1'
          type: string
        module_id:
          example: nfts
          type: string
      type: object
    internal_plugin_nfts_http.NftHoldersParams:
      properties:
        collection_id:
          example: '1'
          type: string
        page:
          example: 0
          minimum: 0
          type: integer
        row:
          example: 10
          maximum: 100
          minimum: 1
          type: integer
      type: object
    subscan_internal_plugin_nfts_db.NftHolderJson:
      properties:
        balance:
          example: 1
          type: integer
        holder:
          $ref: '#/components/schemas/subscan_internal_model.AccountDisplay'
      type: object
    internal_plugin_nfts_http.NftActivitiesParams:
      properties:
        after_id:
          description: Optional, after id for pagination
          example: 0
          minimum: 0
          type: integer
        collection_id:
          description: Collection id, required
          example: '1'
          type: string
        item_id:
          description: Item id, optional
          example: '1'
          type: string
        page:
          example: 0
          minimum: 0
          type: integer
        row:
          example: 10
          maximum: 100
          minimum: 1
          type: integer
      type: object
    subscan_internal_model.MetadataMedia:
      properties:
        types:
          type: string
        url:
          type: string
      type: object
    subscan_internal_plugin_nfts_db.NftsJson:
      properties:
        attributes: {}
        collection_id:
          example: '1'
          type: string
        data:
          example: ipfs://ipfs/bafkreiga2srd2royhpxav3migytg35ny5ph74sbqhfxujwqu6tpoio5ize
          type: string
        holders:
          example: 10
          type: integer
        is_destroyed:
          example: false
          type: boolean
        items:
          example: 10
          type: integer
        metadata:
          $ref: '#/components/schemas/subscan_internal_model.StandardMetadata'
        owner:
          $ref: '#/components/schemas/subscan_internal_model.AccountDisplay'
        total_supply:
          example: 10
          type: integer
        unique_id:
          example: standard_nfts/126
          type: string
      type: object
    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_nfts_http.NftItemParams:
      properties:
        collection_id:
          description: Collection id, required
          type: string
        item_id:
          description: Item id, required
          type: string
      type: object
    subscan_internal_model.StandardMetadata:
      properties:
        attributes: {}
        decode_attrs:
          items: {}
          type: array
        description:
          example: Thanks
          type: string
        external_url:
          example: https://beta.nft.io/my-collections
          type: string
        fallback_image:
          type: string
        image:
          example: https://ipfs.io/ipfs/bafkreihmb2esqysriq46l2uutyu2bqxkzlgluarbr36kom3hrykd2ku42u
          type: string
        local_image:
          type: string
        media:
          items:
            $ref: '#/components/schemas/subscan_internal_model.MetadataMedia'
          type: array
        name:
          example: 500 Followers
          type: string
        symbol:
          example: PKG
          type: string
        thumbnail:
          type: string
      type: object