> ## 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.

# Public Sales List

> Returns a feed of public sales, with filters.<br/><br/>Available from&#58; <Badge color="orange">Pro</Badge><br/>Cost&#58; <Badge color="surface">1 credit per request</Badge>

<Tip>
  Sale details are available via [/public-sales/:id](/api-reference/public-sales/public-sale-detail).
</Tip>


## OpenAPI

````yaml https://api.cryptorank.io/v3/documentation-json get /v3/public-sales/list
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/public-sales/list:
    get:
      tags:
        - Public Sales
      summary: Public Sales List
      description: >-
        **Description**


        Returns a feed of public sales, with filters.


        > **Tip:** Sale details are available via
        [/public-sales/:id](/api-reference/public-sales/public-sale-detail).


        **Access**

        - Available from: **Pro**

        - Cost: 1 credit per request
      operationId: PublicSalesController_getList
      parameters:
        - name: page
          required: false
          in: query
          description: Page number (1-based). Returns up to 100 items per page.
          schema:
            minimum: 1
            maximum: 1000
            default: 1
            type: number
        - name: currencyId
          required: false
          in: query
          description: Currency ID.
          schema:
            example: 28
            type: number
        - name: type
          required: false
          in: query
          description: Sale type.
          schema:
            type: string
            enum:
              - Angel
              - ICO
              - IEO
              - IDO
              - Node Sale
              - KOL
              - Private/Pre-sale
              - Private
              - Private 2
              - Pre-sale
              - Strategic
              - Strategic 2
              - Pre-Seed
              - Seed
        - name: status
          required: false
          in: query
          description: Sale status.
          schema:
            type: string
            enum:
              - upcoming
              - active
              - past
        - name: launchpadIds
          required: false
          in: query
          description: Comma-separated launchpad IDs.
          schema:
            example: 12,34
            type: string
        - name: from
          required: false
          in: query
          description: >-
            Sale-date window start (inclusive). Accepts ISO 8601 string or Unix
            timestamp (sec/ms). Defaults to 30 days ago.
          schema:
            example: '2024-01-01T00:00:00.000Z'
            type: string
        - name: to
          required: false
          in: query
          description: >-
            Sale-date window end (inclusive). Accepts ISO 8601 string or Unix
            timestamp (sec/ms). No default — open-ended, so upcoming sales are
            included.
          schema:
            example: '2024-12-31T23:59:59.999Z'
            type: string
        - name: sortBy
          required: false
          in: query
          description: Sort field.
          schema:
            default: id
            type: string
            enum:
              - id
              - date
              - raised
        - name: sortOrder
          required: false
          in: query
          description: Sort direction.
          schema:
            default: desc
            type: string
            enum:
              - asc
              - desc
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                  - meta
                  - status
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/PublicSaleListItemDto'
                  meta:
                    $ref: '#/components/schemas/ListMetaDto'
                  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
        '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:
    PublicSaleListItemDto:
      type: object
      properties:
        id:
          type: number
          example: 1234
          description: Public sale ID.
        currencyId:
          type: number
          example: 28
          description: Coin numeric identifier.
        currencyName:
          type: string
          example: Ethereum
          description: Display name.
        currencySymbol:
          type: string
          example: ETH
          nullable: true
          description: Native token symbol (e.g. 'ETH', 'BNB').
        currencySlug:
          type: string
          example: ethereum
          description: URL-friendly entity slug.
        imageUrl:
          type: string
          example: https://img.cryptorank.io/coins/150x150.ethereum1696248147028.png
          nullable: true
          description: Logo image URL, 150x150. Null when no image is available.
        type:
          type: string
          enum:
            - Angel
            - ICO
            - IEO
            - IDO
            - Node Sale
            - KOL
            - Private/Pre-sale
            - Private
            - Private 2
            - Pre-sale
            - Strategic
            - Strategic 2
            - Pre-Seed
            - Seed
          example: IDO
          description: Sale format.
        launchpadId:
          type: number
          example: 42
          nullable: true
          description: Sale launchpad ID. Null when sold outside a launchpad.
        date:
          type: string
          example: '2024-08-15T00:00:00.000Z'
          nullable: true
          description: >-
            Sale date (ISO 8601 UTC): start date for `upcoming`/`active` sales,
            end date for `past` sales. Null when unknown.
        raised:
          type: string
          example: '5000000'
          nullable: true
          description: Total raised, USD. Null when undisclosed.
        salePrice:
          type: string
          example: '0.25'
          nullable: true
          description: Token price during the sale, USD. Null when undisclosed.
        roi:
          type: number
          example: 1.11
          nullable: true
          description: >-
            Current ROI vs sale price, as a multiplier (e.g. 1.11 = 1.11×). Null
            when the sale price or current price is unavailable.
        athRoi:
          type: number
          example: 5.4
          nullable: true
          description: >-
            All-time-high ROI vs sale price, as a multiplier (e.g. 5.4 = 5.4×).
            Null when the sale price or ATH price is unavailable.
        category:
          nullable: true
          description: Coin primary category. Null when no category is assigned.
          type: object
          allOf:
            - $ref: '#/components/schemas/PublicSaleCategoryDto'
        status:
          type: string
          enum:
            - upcoming
            - active
            - past
          example: past
          description: 'Sale lifecycle status: upcoming, active, past.'
        totalRaised:
          type: string
          example: '125000000'
          nullable: true
          description: >-
            Total amount raised, USD — cumulative across all rounds (public
            sales, private funding, node sales). Null when no fundraising data
            is available.
        valuation:
          type: string
          example: '150000000'
          nullable: true
          description: Project valuation at the sale, USD. Null when undisclosed.
        launchpadName:
          type: string
          example: CoinList
          nullable: true
          description: Launchpad name. Null when sold outside a launchpad.
        blockchains:
          example:
            - Ethereum
            - BNB Chain
          description: >-
            Blockchains associated with the sale. Empty array when none are
            assigned.
          type: array
          items:
            type: string
        listingDate:
          type: string
          example: '2024-10-01T00:00:00.000Z'
          nullable: true
          description: >-
            Token listing date (ISO 8601 UTC). Populated only for `past` sales;
            null otherwise.
        listingPrice:
          type: string
          example: '0.40'
          nullable: true
          description: >-
            Token listing price, USD. Populated only for `past` sales; null
            otherwise.
        currentMarketCap:
          type: string
          example: '300000000'
          nullable: true
          description: >-
            Current market cap, USD. Populated only for `past` sales; null
            otherwise.
      required:
        - id
        - currencyId
        - currencyName
        - currencySymbol
        - currencySlug
        - imageUrl
        - type
        - launchpadId
        - date
        - raised
        - salePrice
        - roi
        - athRoi
        - category
        - status
        - totalRaised
        - valuation
        - launchpadName
        - blockchains
        - listingDate
        - listingPrice
        - currentMarketCap
    ListMetaDto:
      type: object
      properties:
        page:
          type: number
          example: 1
          description: Current page number (1-based)
        pageSize:
          type: number
          example: 25
          description: >-
            Fixed number of items per page for this endpoint (varies per
            endpoint)
        hasNextPage:
          type: boolean
          example: true
          description: Whether a further page of results exists
      required:
        - page
        - pageSize
        - hasNextPage
    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
    PublicSaleCategoryDto:
      type: object
      properties:
        id:
          type: number
          example: 12
        slug:
          type: string
          example: defi
        name:
          type: string
          example: DeFi
      required:
        - id
        - slug
        - name
  securitySchemes:
    X-Api-Key:
      name: X-Api-Key
      type: apiKey
      in: header

````