> ## Documentation Index
> Fetch the complete documentation index at: https://docs.b3.fun/llms.txt
> Use this file to discover all available pages before exploring further.

# Get token owners by contract

> Get token owners for specific contract



## OpenAPI

````yaml https://data-api.b3.fun/swagger.json?v=1 get /insights/v1/tokens/owners
openapi: 3.0.0
info:
  description: >-
    Cached proxy layer for multiple blockchain APIs with 24-hour caching and
    automatic fallback across chains. Supports both Blockscout and ThirdWeb
    Insights APIs. Add ?mintlify parameter for Mintlify-compatible version.
  version: 1.0.0
  title: B3 Data API - Multi-Chain Data API
  contact:
    name: B3 Team
    url: https://b3.fun
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
  - url: https://data-api.b3.fun/
    description: B3 Data API - Multi-Chain Proxy
security: []
tags:
  - name: blockscout/search
    description: Blockscout search functionality
  - name: blockscout/transactions
    description: Blockscout transaction data
  - name: blockscout/blocks
    description: Blockscout block data
  - name: blockscout/tokens
    description: Blockscout token and transfer data
  - name: blockscout/stats
    description: Blockscout statistics and charts
  - name: blockscout/main-page
    description: Blockscout main page data
  - name: blockscout
    description: General Blockscout endpoints
  - name: insights/events
    description: ThirdWeb Insights event data
  - name: insights/transactions
    description: ThirdWeb Insights transaction analytics
  - name: insights/tokens
    description: ThirdWeb Insights token analytics
  - name: insights/nfts
    description: ThirdWeb Insights NFT analytics
  - name: insights/wallets
    description: ThirdWeb Insights wallet analytics
  - name: insights/contracts
    description: ThirdWeb Insights contract analytics
  - name: insights/resolve
    description: ThirdWeb Insights ENS resolution
  - name: insights/blocks
    description: ThirdWeb Insights block data
  - name: insights/decode
    description: ThirdWeb Insights transaction decoding
  - name: insights/general
    description: General ThirdWeb Insights endpoints
paths:
  /insights/v1/tokens/owners:
    get:
      tags:
        - insights/tokens
      summary: Get token owners by contract
      description: Get token owners for specific contract
      parameters:
        - name: chain
          in: query
          required: false
          deprecated: true
          description: Use chain_id instead
          schema:
            type: array
            example:
              - 20
              - 56
              - 1
            items:
              type: number
        - name: chain_id
          in: query
          required: false
          description: >-
            The chain ID(s) to request the data for. You can specify multiple
            chain IDs, up to a maximum of 55. Use repeated query parameters,
            e.g., `?chain_id=20&chain_id=56`. Optional, because a single chain
            can as well be specified as a subdomain
          schema:
            type: array
            example:
              - 20
              - 56
              - 1
            items:
              type: number
        - $ref: '#/components/parameters/limit'
        - $ref: '#/components/parameters/page'
        - $ref: '#/components/parameters/contractAddress'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        chain_id:
                          type: string
                        token_address:
                          type: string
                          title: address (hex or ENS)
                          example: vitalik.eth
                        owner_address:
                          type: string
                          title: address (hex or ENS)
                          example: vitalik.eth
                        balance:
                          type: string
                      required:
                        - chain_id
                        - token_address
                        - owner_address
                        - balance
                required:
                  - data
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '404':
          description: Not found
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
components:
  parameters:
    limit:
      schema:
        type: integer
        minimum: 0
        exclusiveMinimum: true
        maximum: 1000
        default: 20
        description: The number of items to return
        example: 20
      required: false
      name: limit
      in: query
    page:
      schema:
        type: integer
        nullable: true
        minimum: 0
        default: 0
        description: >-
          Page number (0-indexed). Maximum value depends on query parameters: 20
          for regular queries, 500 when using aggregate or group_by parameters.
        example: 0
      required: false
      name: page
      in: query
    contractAddress:
      schema:
        type: string
        title: address (hex or ENS)
        example: vitalik.eth
      required: true
      name: contract_address
      in: path

````