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

# Token Emission Chart

> Returns a time series of token emission for a currency.<br/><br/>Available from&#58; <Badge color="orange">Pro</Badge><br/>Cost&#58; <Badge color="surface">1 credit per request</Badge>

<Note>
  Untracked allocations are excluded — cumulative values may stay below total supply.
</Note>

<Warning>
  There is no interval parameter — granularity is selected automatically from the range: daily for ranges up to 3 years, weekly beyond.
</Warning>

<Tip>
  Per-round release rules behind this chart: [/currencies/:id/vesting/schedule](/api-reference/currencies/vesting-schedule-chart). Discrete unlock events: [/currencies/:id/vesting/events](/api-reference/currencies/unlock-events).
</Tip>


## OpenAPI

````yaml https://api.cryptorank.io/v3/documentation-json get /v3/currencies/{id}/vesting/chart
openapi: 3.0.0
info:
  title: Cryptorank API V3
  description: >
    # Overview


    Cryptorank Public API v3 — comprehensive cryptocurrency data for B2B clients
    and partners.


    Useful Links:

    - [API Plans](https://cryptorank.io/public-api)

    - [Dashboard](https://cryptorank.io/public-api/dashboard)


    # Getting Started


    Primary Server URL:
    [https://api.cryptorank.io/v3/](https://api.cryptorank.io/v3/)


    **Authentication**


    Generate an API key in the
    [dashboard](https://cryptorank.io/public-api/dashboard) and pass it in the
    `X-Api-Key` header.


    Keep your keys secret — never commit them to public repositories or expose
    them in client-side code.
  version: 3.0.0
  contact:
    name: Cryptorank Team
    url: https://cryptorank.io
    email: info@cryptorank.io
servers:
  - url: https://api.cryptorank.io
security: []
tags: []
paths:
  /v3/currencies/{id}/vesting/chart:
    get:
      tags:
        - Vesting & Token Unlocks
      summary: Token Emission Chart
      description: >-
        **Description**


        Returns a time series of token emission for a currency.


        > **Note:** Untracked allocations are excluded — cumulative values may
        stay below total supply.


        > **Warning:** There is no interval parameter — granularity is selected
        automatically from the range: daily for ranges up to 3 years, weekly
        beyond.


        > **Tip:** Per-round release rules behind this chart:
        [/currencies/:id/vesting/schedule](/api-reference/currencies/vesting-schedule-chart).
        Discrete unlock events:
        [/currencies/:id/vesting/events](/api-reference/currencies/unlock-events).


        **Access**

        - Available from: **Pro**

        - Cost: 1 credit per request
      operationId: VestingController_getVestingChart
      parameters:
        - name: id
          required: true
          in: path
          description: Numeric coin id.
          schema:
            example: 1
            type: integer
        - name: from
          required: false
          in: query
          description: >-
            Range start. Defaults to the token generation event (TGE) date.
            Accepted: ISO 8601, bare date (YYYY-MM-DD), or Unix timestamp in
            seconds/milliseconds.
          schema:
            type: string
        - name: to
          required: false
          in: query
          description: >-
            Range end, inclusive. Defaults to now; may be set in the future to
            include scheduled unlocks. Accepted: ISO 8601, bare date
            (YYYY-MM-DD), or Unix timestamp in seconds/milliseconds. Bare dates
            resolve to end-of-day UTC.
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                  - status
                properties:
                  data:
                    $ref: '#/components/schemas/CurrencyVestingChartResponseDto'
                  status:
                    $ref: '#/components/schemas/ResponseStatusDto'
        '400':
          description: Request validation failed
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - code
                      - message
                      - status
                    properties:
                      code:
                        type: string
                        enum:
                          - VALIDATION_ERROR
                        example: VALIDATION_ERROR
                      message:
                        type: string
                        example: Validation failed
                      status:
                        type: number
                        example: 400
        '401':
          description: API key is missing or invalid
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - code
                      - message
                      - status
                    properties:
                      code:
                        type: string
                        enum:
                          - API_KEY_MISSING
                          - API_KEY_INVALID
                        example: API_KEY_MISSING
                      message:
                        type: string
                        example: API key is missing
                      status:
                        type: number
                        example: 401
        '403':
          description: >-
            No active subscription, the endpoint is not available in your plan,
            or the request goes beyond what your plan allows
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - code
                      - message
                      - status
                    properties:
                      code:
                        type: string
                        enum:
                          - NO_ACTIVE_SUBSCRIPTION
                          - ENDPOINT_NOT_AVAILABLE
                          - PLAN_LIMIT_EXCEEDED
                        example: NO_ACTIVE_SUBSCRIPTION
                      message:
                        type: string
                        example: No active subscription found
                      status:
                        type: number
                        example: 403
        '404':
          description: Currency not found
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - code
                      - message
                      - status
                    properties:
                      code:
                        type: string
                        enum:
                          - NOT_FOUND
                        example: NOT_FOUND
                      message:
                        type: string
                        example: Resource not found
                      status:
                        type: number
                        example: 404
        '429':
          description: Rate limit or credit limit exceeded
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - code
                      - message
                      - status
                    properties:
                      code:
                        type: string
                        enum:
                          - RATE_LIMIT_EXCEEDED
                          - DAILY_CREDITS_EXCEEDED
                          - MONTHLY_CREDITS_EXCEEDED
                        example: RATE_LIMIT_EXCEEDED
                      message:
                        type: string
                        example: Rate limit exceeded
                      status:
                        type: number
                        example: 429
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - code
                      - message
                      - status
                    properties:
                      code:
                        type: string
                        enum:
                          - INTERNAL_ERROR
                        example: INTERNAL_ERROR
                      message:
                        type: string
                        example: Internal server error
                      status:
                        type: number
                        example: 500
      security:
        - X-Api-Key: []
components:
  schemas:
    CurrencyVestingChartResponseDto:
      type: object
      properties:
        series:
          description: >-
            Token emission time series. Interval granularity is selected
            automatically: daily for ranges up to 3 years, weekly beyond.
          type: array
          items:
            $ref: '#/components/schemas/CurrencyVestingChartPointDto'
        untracked:
          description: >-
            Allocations excluded from the series because they have no known
            unlock schedule. Their tokens are not counted in the cumulative
            totals, so cumulative values may stay below total supply.
          allOf:
            - $ref: '#/components/schemas/CurrencyVestingChartUntrackedDto'
      required:
        - series
        - untracked
    ResponseStatusDto:
      type: object
      properties:
        usedCredits:
          type: number
          example: 1
          description: Credits charged for this request
        timestamp:
          type: number
          example: 1780000000000
          description: Server time of the response. Unix timestamp in milliseconds
      required:
        - usedCredits
        - timestamp
    CurrencyVestingChartPointDto:
      type: object
      properties:
        time:
          type: number
          example: 1715000000000
          description: Interval start — Unix milliseconds (UTC).
        unlockedTokens:
          type: string
          example: '125000'
          description: Tokens unlocked within the interval (raw token units).
        unlockedPercent:
          type: number
          example: 0.08
          description: >-
            Tokens unlocked within the interval as a percent of total supply
            (max supply with a fallback to total supply).
        cumulativeUnlockedTokens:
          type: string
          example: '527400000'
          description: >-
            Total tokens unlocked from TGE to the end of the interval (raw token
            units).
        cumulativeUnlockedPercent:
          type: number
          example: 84
          description: >-
            Cumulative tokens unlocked from TGE to the end of the interval as a
            percent of total supply.
      required:
        - time
        - unlockedTokens
        - unlockedPercent
        - cumulativeUnlockedTokens
        - cumulativeUnlockedPercent
    CurrencyVestingChartUntrackedDto:
      type: object
      properties:
        totalTokens:
          type: string
          example: '50000000'
          description: >-
            Total tokens in allocations without a known unlock schedule (raw
            token units).
        percentOfTotal:
          type: number
          example: 5
          description: Untracked tokens as a percent of total supply.
        allocationNames:
          example:
            - Ecosystem
            - Treasury
          description: Names of the untracked allocations.
          type: array
          items:
            type: string
      required:
        - totalTokens
        - percentOfTotal
        - allocationNames
  securitySchemes:
    X-Api-Key:
      name: X-Api-Key
      type: apiKey
      in: header

````