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

# Get Historical ERC20-Token TotalSupply by ContractAddress & BlockNo

> Returns the amount of an ERC-20 token in circulation at a certain block height.

export const chain = '1';

<Note>This is a PRO endpoint, available to the [Standard Plan](/resources/rate-limits) and above</Note>

<Warning>This endpoint is throttled to **2 calls/second** regardless of API Pro tier.</Warning>

<ResponseExample>
  ```json Response theme={null}
  {
    "status": "1",
    "message": "OK",
    "result": "21265524714464"
  }
  ```
</ResponseExample>


## OpenAPI

````yaml openapi/api-reference/endpoint/tokensupplyhistory.json GET /v2/api
openapi: 3.1.0
info:
  title: Get Historical ERC20-Token TotalSupply by ContractAddress & BlockNo
  version: 2.0.0
  description: >-
    Returns the amount of an ERC-20 token in circulation at a certain block
    height.
  license:
    name: Etherscan API Terms
    url: https://etherscan.io/terms
servers:
  - url: https://api.etherscan.io
    description: Etherscan API.
security:
  - apiKey: []
paths:
  /v2/api:
    get:
      summary: Get Historical ERC20-Token TotalSupply by ContractAddress & BlockNo
      description: >-
        Returns the amount of an ERC-20 token in circulation at a certain block
        height.
      operationId: getTokensupplyhistory
      parameters:
        - name: chainid
          in: query
          required: true
          description: >-
            Chain ID to query, eg 1 for Ethereum, 8453 for Base from our
            supported chains.
          schema:
            type: string
          example: '1'
        - name: module
          in: query
          required: true
          description: Set to stats for this endpoint.
          schema:
            type: string
            default: stats
          example: stats
        - name: action
          in: query
          required: true
          description: Set to tokensupplyhistory for this endpoint.
          schema:
            type: string
            default: tokensupplyhistory
          example: tokensupplyhistory
        - name: contractaddress
          in: query
          required: true
          description: Contract address of the ERC-20 token.
          schema:
            type: string
          example: '0x57d90b64a1a57749b0f932f1a3395792e12e7055'
        - name: blockno
          in: query
          required: true
          description: Block number to check total supply for.
          schema:
            type: integer
          example: 8000000
      security:
        - apiKey: []
components:
  securitySchemes:
    apiKey:
      type: apiKey
      in: query
      name: apikey
      description: Your Etherscan API key.

````