CoinGecko Pro API

The CoinGecko Pro API provides the same comprehensive cryptocurrency market data as the standard API but with enhanced performance, higher rate limits of up to 1,000 calls per minute, and faster data updates with prices cached every 30 seconds. It includes exclusive endpoints for advanced analytics, detailed market data, and historical granularity that are not available on the free Demo plan.

OpenAPI Specification

coingecko-pro-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: CoinGecko Pro API
  description: >-
    The CoinGecko Pro API provides the same comprehensive cryptocurrency
    market data as the standard Demo API but with enhanced performance,
    higher rate limits of up to 1,000 calls per minute, and faster data
    updates with prices cached every 30 seconds. It includes exclusive
    endpoints for advanced analytics, detailed market data, and historical
    granularity that are not available on the free Demo plan. The Pro API
    is designed for commercial use cases and comes with dedicated support
    SLA and access to over 2 million token data points. This spec covers
    the exclusive endpoints available only to paid plan subscribers.
  version: '3.0.1'
  contact:
    name: CoinGecko Support
    url: https://support.coingecko.com
  termsOfService: https://www.coingecko.com/en/terms
externalDocs:
  description: CoinGecko Pro API Documentation
  url: https://docs.coingecko.com/reference/introduction
servers:
  - url: https://pro-api.coingecko.com/api/v3
    description: CoinGecko Pro API Server
tags:
  - name: Coins
    description: >-
      Exclusive coin data endpoints for paid plan subscribers including
      recently added coins, top gainers and losers, and circulating supply
      chart data.
  - name: Exchanges
    description: >-
      Exclusive exchange endpoints for paid plan subscribers including
      extended volume chart data.
  - name: Global
    description: >-
      Exclusive global market data endpoints for paid plan subscribers
      including market cap chart data.
  - name: NFTs
    description: >-
      Exclusive NFT endpoints for paid plan subscribers including NFT
      market data and historical chart data.
  - name: Token Lists
    description: >-
      Token list endpoints for paid plan subscribers providing
      standardized token lists by asset platform.
security:
  - proApiKeyHeader: []
  - proApiKeyQuery: []
paths:
  /coins/list/new:
    get:
      operationId: getNewlyAddedCoins
      summary: Get recently added coins
      description: >-
        Get the list of the latest 200 coins that have been recently added
        to CoinGecko. This endpoint is exclusive to paid plan subscribers.
      tags:
        - Coins
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      description: CoinGecko coin identifier
                    symbol:
                      type: string
                      description: Coin ticker symbol
                    name:
                      type: string
                      description: Coin display name
                    activated_at:
                      type: integer
                      description: UNIX timestamp when the coin was added
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '403':
          description: Forbidden - endpoint not available on current plan
  /coins/top_gainers_losers:
    get:
      operationId: getTopGainersLosers
      summary: Get top gainers and losers
      description: >-
        Get the top 30 coins with the largest price gain and the top 30
        coins with the largest price loss over a specified time duration.
        This endpoint is exclusive to paid plan subscribers.
      tags:
        - Coins
      parameters:
        - name: vs_currency
          in: query
          required: true
          description: The target currency for price data (e.g., usd)
          schema:
            type: string
            default: usd
        - name: duration
          in: query
          description: Time duration for price change calculation
          schema:
            type: string
            enum:
              - 1h
              - 24h
              - 7d
              - 14d
              - 30d
              - 60d
              - 1y
            default: 24h
        - name: top_coins
          in: query
          description: >-
            Filter by top N coins by market cap (e.g., 300 to only
            consider the top 300 coins)
          schema:
            type: string
            enum:
              - '300'
              - '500'
              - '1000'
              - all
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  top_gainers:
                    type: array
                    description: Top coins by price increase
                    items:
                      $ref: '#/components/schemas/GainerLoser'
                  top_losers:
                    type: array
                    description: Top coins by price decrease
                    items:
                      $ref: '#/components/schemas/GainerLoser'
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '403':
          description: Forbidden - endpoint not available on current plan
  /coins/{id}/circulating_supply_chart:
    get:
      operationId: getCoinCirculatingSupplyChart
      summary: Get coin circulating supply chart
      description: >-
        Get historical circulating supply chart data for a specific coin.
        This endpoint is exclusive to paid plan subscribers.
      tags:
        - Coins
      parameters:
        - name: id
          in: path
          required: true
          description: The CoinGecko coin ID
          schema:
            type: string
        - name: days
          in: query
          required: true
          description: Number of days of historical data
          schema:
            type: string
        - name: interval
          in: query
          description: Data interval (daily)
          schema:
            type: string
            enum:
              - daily
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  type: array
                  description: Data point as [timestamp, circulating_supply]
                  items:
                    type: number
                  minItems: 2
                  maxItems: 2
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '404':
          description: Coin not found
  /coins/{id}/circulating_supply_chart/range:
    get:
      operationId: getCoinCirculatingSupplyChartRange
      summary: Get coin circulating supply chart within date range
      description: >-
        Get historical circulating supply chart data for a specific coin
        within a custom date range specified by UNIX timestamps. This
        endpoint is exclusive to paid plan subscribers.
      tags:
        - Coins
      parameters:
        - name: id
          in: path
          required: true
          description: The CoinGecko coin ID
          schema:
            type: string
        - name: from
          in: query
          required: true
          description: Start date as UNIX timestamp
          schema:
            type: number
        - name: to
          in: query
          required: true
          description: End date as UNIX timestamp
          schema:
            type: number
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  type: array
                  description: Data point as [timestamp, circulating_supply]
                  items:
                    type: number
                  minItems: 2
                  maxItems: 2
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '404':
          description: Coin not found
  /coins/{id}/total_supply_chart:
    get:
      operationId: getCoinTotalSupplyChart
      summary: Get coin total supply chart
      description: >-
        Get historical total supply chart data for a specific coin. This
        endpoint is exclusive to paid plan subscribers.
      tags:
        - Coins
      parameters:
        - name: id
          in: path
          required: true
          description: The CoinGecko coin ID
          schema:
            type: string
        - name: days
          in: query
          required: true
          description: Number of days of historical data
          schema:
            type: string
        - name: interval
          in: query
          description: Data interval (daily)
          schema:
            type: string
            enum:
              - daily
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  type: array
                  description: Data point as [timestamp, total_supply]
                  items:
                    type: number
                  minItems: 2
                  maxItems: 2
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '404':
          description: Coin not found
  /coins/{id}/total_supply_chart/range:
    get:
      operationId: getCoinTotalSupplyChartRange
      summary: Get coin total supply chart within date range
      description: >-
        Get historical total supply chart data for a specific coin within
        a custom date range specified by UNIX timestamps. This endpoint
        is exclusive to paid plan subscribers.
      tags:
        - Coins
      parameters:
        - name: id
          in: path
          required: true
          description: The CoinGecko coin ID
          schema:
            type: string
        - name: from
          in: query
          required: true
          description: Start date as UNIX timestamp
          schema:
            type: number
        - name: to
          in: query
          required: true
          description: End date as UNIX timestamp
          schema:
            type: number
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  type: array
                  description: Data point as [timestamp, total_supply]
                  items:
                    type: number
                  minItems: 2
                  maxItems: 2
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '404':
          description: Coin not found
  /nfts/markets:
    get:
      operationId: getNFTsMarkets
      summary: List NFTs with market data
      description: >-
        Get the list of all supported NFT collections with floor price,
        market cap, volume, and market-related data. This endpoint is
        exclusive to paid plan subscribers.
      tags:
        - NFTs
      parameters:
        - name: order
          in: query
          description: Sort order for results
          schema:
            type: string
            enum:
              - h24_volume_usd_asc
              - h24_volume_usd_desc
              - h24_volume_native_asc
              - h24_volume_native_desc
              - floor_price_native_asc
              - floor_price_native_desc
              - market_cap_native_asc
              - market_cap_native_desc
              - market_cap_usd_asc
              - market_cap_usd_desc
        - name: per_page
          in: query
          description: Number of results per page (1-250)
          schema:
            type: integer
            minimum: 1
            maximum: 250
            default: 100
        - name: page
          in: query
          description: Page number for pagination
          schema:
            type: integer
            default: 1
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      description: NFT collection identifier
                    contract_address:
                      type: string
                      description: Contract address
                    asset_platform_id:
                      type: string
                      description: Asset platform identifier
                    name:
                      type: string
                      description: Collection name
                    image:
                      type: object
                      properties:
                        small:
                          type: string
                          format: uri
                    description:
                      type: string
                      description: Collection description
                    native_currency:
                      type: string
                      description: Native currency
                    floor_price:
                      type: object
                      properties:
                        native_currency:
                          type: number
                        usd:
                          type: number
                    market_cap:
                      type: object
                      properties:
                        native_currency:
                          type: number
                        usd:
                          type: number
                    volume_24h:
                      type: object
                      properties:
                        native_currency:
                          type: number
                        usd:
                          type: number
                    floor_price_24h_percentage_change:
                      type: object
                      properties:
                        native_currency:
                          type: number
                        usd:
                          type: number
                    number_of_unique_addresses:
                      type: integer
                      description: Number of unique holder addresses
                    total_supply:
                      type: number
                      description: Total supply of NFTs
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '403':
          description: Forbidden - endpoint not available on current plan
  /nfts/{id}/market_chart:
    get:
      operationId: getNFTMarketChart
      summary: Get NFT collection market chart
      description: >-
        Get historical market chart data for a specific NFT collection
        including floor price, market cap, and volume data. This endpoint
        is exclusive to paid plan subscribers.
      tags:
        - NFTs
      parameters:
        - name: id
          in: path
          required: true
          description: The NFT collection ID
          schema:
            type: string
        - name: days
          in: query
          required: true
          description: Number of days of historical data
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  floor_price_usd:
                    type: array
                    description: Floor price data points
                    items:
                      type: array
                      items:
                        type: number
                  floor_price_native:
                    type: array
                    description: Floor price in native currency data points
                    items:
                      type: array
                      items:
                        type: number
                  market_cap_usd:
                    type: array
                    description: Market cap data points
                    items:
                      type: array
                      items:
                        type: number
                  h24_volume_usd:
                    type: array
                    description: 24h volume data points
                    items:
                      type: array
                      items:
                        type: number
                  h24_volume_native:
                    type: array
                    description: 24h volume in native currency data points
                    items:
                      type: array
                      items:
                        type: number
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '404':
          description: NFT collection not found
  /nfts/{asset_platform_id}/contract/{contract_address}/market_chart:
    get:
      operationId: getNFTContractMarketChart
      summary: Get NFT market chart by contract address
      description: >-
        Get historical market chart data for a specific NFT collection by
        contract address. This endpoint is exclusive to paid plan
        subscribers.
      tags:
        - NFTs
      parameters:
        - name: asset_platform_id
          in: path
          required: true
          description: The asset platform ID
          schema:
            type: string
        - name: contract_address
          in: path
          required: true
          description: The NFT contract address
          schema:
            type: string
        - name: days
          in: query
          required: true
          description: Number of days of historical data
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  floor_price_usd:
                    type: array
                    items:
                      type: array
                      items:
                        type: number
                  floor_price_native:
                    type: array
                    items:
                      type: array
                      items:
                        type: number
                  market_cap_usd:
                    type: array
                    items:
                      type: array
                      items:
                        type: number
                  h24_volume_usd:
                    type: array
                    items:
                      type: array
                      items:
                        type: number
                  h24_volume_native:
                    type: array
                    items:
                      type: array
                      items:
                        type: number
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '404':
          description: NFT collection not found
  /nfts/{id}/tickers:
    get:
      operationId: getNFTTickers
      summary: Get NFT collection tickers
      description: >-
        Get the latest floor price and 24h volume tickers for a specific
        NFT collection across different marketplaces. This endpoint is
        exclusive to paid plan subscribers.
      tags:
        - NFTs
      parameters:
        - name: id
          in: path
          required: true
          description: The NFT collection ID
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  tickers:
                    type: array
                    items:
                      type: object
                      properties:
                        floor_price_in_native_currency:
                          type: number
                          description: Floor price in native currency
                        h24_volume_in_native_currency:
                          type: number
                          description: 24h volume in native currency
                        native_currency:
                          type: string
                          description: Native currency symbol
                        native_currency_symbol:
                          type: string
                          description: Native currency display symbol
                        updated_at:
                          type: string
                          format: date-time
                          description: Last update timestamp
                        nft_marketplace_id:
                          type: string
                          description: NFT marketplace identifier
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '404':
          description: NFT collection not found
  /global/market_cap_chart:
    get:
      operationId: getGlobalMarketCapChart
      summary: Get global market cap chart
      description: >-
        Get historical global market capitalization and volume chart data.
        This endpoint is exclusive to paid plan subscribers.
      tags:
        - Global
      parameters:
        - name: days
          in: query
          required: true
          description: Number of days of historical data
          schema:
            type: string
        - name: vs_currency
          in: query
          description: The target currency for market cap data
          schema:
            type: string
            default: usd
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  market_cap_chart:
                    type: object
                    properties:
                      market_cap:
                        type: array
                        description: Market cap data points as [timestamp, value]
                        items:
                          type: array
                          items:
                            type: number
                      volume:
                        type: array
                        description: Volume data points as [timestamp, value]
                        items:
                          type: array
                          items:
                            type: number
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '403':
          description: Forbidden - endpoint not available on current plan
  /token_lists/{asset_platform_id}/all.json:
    get:
      operationId: getTokenList
      summary: Get token list by asset platform
      description: >-
        Get a standardized token list for a specific asset platform in the
        Uniswap token list format. Includes token name, symbol, decimals,
        and contract address. This endpoint is exclusive to paid plan
        subscribers.
      tags:
        - Token Lists
      parameters:
        - name: asset_platform_id
          in: path
          required: true
          description: The asset platform ID (e.g., ethereum)
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  name:
                    type: string
                    description: Token list name
                  logoURI:
                    type: string
                    format: uri
                    description: Token list logo
                  keywords:
                    type: array
                    items:
                      type: string
                  timestamp:
                    type: string
                    format: date-time
                    description: Token list generation timestamp
                  tokens:
                    type: array
                    items:
                      type: object
                      properties:
                        chainId:
                          type: integer
                          description: Chain ID
                        address:
                          type: string
                          description: Token contract address
                        name:
                          type: string
                          description: Token name
                        symbol:
                          type: string
                          description: Token symbol
                        decimals:
                          type: integer
                          description: Token decimal places
                        logoURI:
                          type: string
                          format: uri
                          description: Token logo URL
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '403':
          description: Forbidden - endpoint not available on current plan
  /exchanges/{id}/volume_chart/range:
    get:
      operationId: getExchangeVolumeChartRange
      summary: Get exchange volume chart within date range
      description: >-
        Get historical volume chart data for a specific exchange within
        a custom date range specified by UNIX timestamps. This endpoint
        is exclusive to paid plan subscribers.
      tags:
        - Exchanges
      parameters:
        - name: id
          in: path
          required: true
          description: The exchange ID
          schema:
            type: string
        - name: from
          in: query
          required: true
          description: Start date as UNIX timestamp
          schema:
            type: number
        - name: to
          in: query
          required: true
          description: End date as UNIX timestamp
          schema:
            type: number
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  type: array
                  description: Volume data point as [timestamp, volume_in_btc]
                  items:
                    type: string
                  minItems: 2
                  maxItems: 2
        '401':
          description: Unauthorized - invalid or missing Pro API key
        '404':
          description: Exchange not found
components:
  securitySchemes:
    proApiKeyHeader:
      type: apiKey
      in: header
      name: x-cg-pro-api-key
      description: >-
        CoinGecko Pro API key passed via request header. Obtain a paid
        key from the CoinGecko developer dashboard.
    proApiKeyQuery:
      type: apiKey
      in: query
      name: x_cg_pro_api_key
      description: >-
        CoinGecko Pro API key passed via query string parameter.
  schemas:
    GainerLoser:
      type: object
      properties:
        id:
          type: string
          description: CoinGecko coin identifier
        symbol:
          type: string
          description: Coin ticker symbol
        name:
          type: string
          description: Coin display name
        image:
          type: string
          format: uri
          description: Coin logo URL
        market_cap_rank:
          type: integer
          description: Market cap ranking
        usd:
          type: number
          description: Current price in USD
        usd_24h_vol:
          type: number
          description: 24-hour trading volume in USD
        usd_24h_change:
          type: number
          description: 24-hour price change percentage