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

# List market top movers

> Fetch bounded gainers and losers from one fresh global top-200 market snapshot. Results use canonical Qoory token identities and normalized price, change, market-cap, and volume facts only; provider identifiers, ranks, media, source metadata, pagination, and arbitrary sorting are unavailable.



## OpenAPI

````yaml /openapi/public-v1.json get /v1/markets/top-movers
openapi: 3.1.0
info:
  title: Qoory Developer API
  version: 1.0.0-beta
  description: >-
    Authenticated, credit-metered REST API for bounded, public-safe intelligence
    from Qoory's curated entity graph. Responses use strict source-free DTOs and
    do not expose bulk entity listing endpoints.
servers:
  - url: https://api.qoory.ai
    description: Qoory production API
security: []
tags:
  - name: Search
    description: Resolve specific entities through bounded search and identity matching.
  - name: Discovery
    description: Explore curated, fixed-size Qoory snapshots without bulk entity listing.
  - name: Projects
    description: Fetch project identities and bounded project intelligence.
  - name: Funds
    description: >-
      Fetch fund identities, rankings, partners, and verified portfolio
      relationships.
  - name: People
    description: Fetch person identities, roles, and verified investment relationships.
  - name: Tokens
    description: Fetch token identities, market facts, tokenomics, and unlock windows.
  - name: Markets
    description: Fetch bounded crypto-market snapshots and visualisation data.
  - name: Stocks
    description: Fetch crypto-related stock identities, rankings, and curated news.
  - name: News
    description: Fetch Qoory-curated, source-free news summaries and entity links.
  - name: Narratives
    description: Fetch Qoory-curated market narratives and bounded timelines.
  - name: Events
    description: Fetch eligible Web3 event identities and upcoming-event snapshots.
  - name: X Accounts
    description: Fetch opaque Qoory-owned X-account references and eligible entity links.
paths:
  /v1/markets/top-movers:
    get:
      tags:
        - Markets
      summary: List market top movers
      description: >-
        Fetch bounded gainers and losers from one fresh global top-200 market
        snapshot. Results use canonical Qoory token identities and normalized
        price, change, market-cap, and volume facts only; provider identifiers,
        ranks, media, source metadata, pagination, and arbitrary sorting are
        unavailable.
      operationId: listMarketTopMovers
      parameters:
        - name: period
          in: query
          required: false
          description: Fixed market-change period used to rank gainers and losers.
          example: 24h
          schema:
            type: string
            enum:
              - 24h
              - 7d
            default: 24h
        - name: limit
          in: query
          required: false
          description: >-
            Maximum number of items to return. This API does not expose
            pagination for this operation.
          example: 5
          schema:
            type: integer
            minimum: 1
            maximum: 20
            default: 5
      responses:
        '200':
          description: Successful response.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                properties:
                  data:
                    $ref: >-
                      #/components/schemas/DeveloperApiMarketTopMoversResponseData
                    description: Operation-specific response data.
                  meta:
                    type: object
                    additionalProperties: false
                    properties:
                      request_id:
                        type: string
                        minLength: 8
                        maxLength: 96
                        pattern: ^[A-Za-z0-9_.:-]{8,96}$
                      credits_used:
                        type: integer
                        minimum: 0
                      credits_remaining:
                        type: integer
                        minimum: 0
                      rate_limit:
                        type: object
                        additionalProperties: false
                        properties:
                          limit:
                            type: integer
                            minimum: 0
                          remaining:
                            type: integer
                            minimum: 0
                          reset_at:
                            type: string
                            format: date-time
                          tier:
                            type: string
                            enum:
                              - free
                              - pro
                              - pro_plus
                              - team
                              - internal
                        required:
                          - limit
                          - remaining
                          - reset_at
                          - tier
                    required:
                      - request_id
                    description: Request correlation, credit, and rate-limit metadata.
                required:
                  - data
                  - meta
              example:
                data:
                  kind: market_top_movers
                  as_of: '2026-07-10T00:00:00.000Z'
                  period: 24h
                  limit: 5
                  gainers:
                    - type: token
                      rank: 1
                      direction: gainer
                      id: solana
                      symbol: SOL
                      name: Solana
                      price_usd: 180
                      change_pct: 7.4
                      market_cap_usd: 84000000000
                      volume_24h_usd: 6200000000
                  losers:
                    - type: token
                      rank: 1
                      direction: loser
                      id: dogecoin
                      symbol: DOGE
                      name: Dogecoin
                      price_usd: 0.16
                      change_pct: -4.2
                      market_cap_usd: 23000000000
                      volume_24h_usd: 1900000000
                meta:
                  request_id: req_example
                  credits_used: 1
                  credits_remaining: 99
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '401':
          description: Missing or invalid API key.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: INVALID_API_KEY
                  message: The API key is invalid.
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 100
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '402':
          description: Insufficient credits.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: INSUFFICIENT_CREDITS
                  message: Not enough credits are available for this request.
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 0
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '403':
          description: API key is disabled, revoked, or missing the required scope.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: FORBIDDEN
                  message: The API key does not have the required scope.
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 100
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '422':
          description: Invalid request.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: INVALID_REQUEST
                  message: The request parameters are invalid.
                  details:
                    - path: limit
                      message: Expected a value within the documented range.
                      code: too_big
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 100
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '429':
          description: Rate limit exceeded.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
            Retry-After:
              description: Whole seconds to wait before retrying a rate-limited request.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 10
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: RATE_LIMITED
                  message: Rate limit exceeded.
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 100
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '500':
          description: Internal server error.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: INTERNAL_ERROR
                  message: The request could not be completed.
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 100
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
      security:
        - bearerAuth: []
components:
  schemas:
    DeveloperApiMarketTopMoversResponseData:
      type: object
      additionalProperties: false
      properties:
        kind:
          type: string
          enum:
            - market_top_movers
          description: Stable response-shape discriminator.
        as_of:
          type: string
          format: date-time
          description: Public as of value for this record.
        period:
          type: string
          enum:
            - 24h
            - 7d
          description: Public period value for this record.
        limit:
          type: integer
          minimum: 1
          maximum: 20
          description: Maximum result count applied to this response.
        gainers:
          type: array
          items:
            $ref: '#/components/schemas/DeveloperApiMarketMover'
          maxItems: 20
          description: Public gainers value for this record.
        losers:
          type: array
          items:
            $ref: '#/components/schemas/DeveloperApiMarketMover'
          maxItems: 20
          description: Public losers value for this record.
      required:
        - kind
        - as_of
        - period
        - limit
        - gainers
        - losers
      title: Market Top Movers Response Data
      description: Bounded gainers and losers from one coherent market snapshot.
    DeveloperApiErrorEnvelope:
      type: object
      additionalProperties: false
      properties:
        error:
          type: object
          additionalProperties: false
          properties:
            code:
              type: string
              enum:
                - MISSING_API_KEY
                - INVALID_API_KEY
                - DISABLED_API_KEY
                - REVOKED_API_KEY
                - USER_SUSPENDED
                - FEATURE_DISABLED
                - CONFIGURATION_ERROR
                - FORBIDDEN
                - INVALID_REQUEST
                - RATE_LIMITED
                - INSUFFICIENT_CREDITS
                - NOT_FOUND
                - DATA_UNAVAILABLE
                - INTERNAL_ERROR
              description: Stable machine-readable error code.
            message:
              type: string
              description: Public-safe human-readable error message.
            details:
              $ref: '#/components/schemas/DeveloperApiValidationErrorDetails'
              description: Optional bounded validation details for an invalid request.
          required:
            - code
            - message
          description: Standard Developer API error object.
        meta:
          type: object
          additionalProperties: false
          properties:
            request_id:
              type: string
              minLength: 8
              maxLength: 96
              pattern: ^[A-Za-z0-9_.:-]{8,96}$
              description: Public request identifier for support and usage correlation.
            credits_used:
              type: integer
              minimum: 0
              description: Total credits charged for this request.
            credits_remaining:
              type: integer
              minimum: 0
              description: Credits available after this request, when known.
            rate_limit:
              type: object
              additionalProperties: false
              properties:
                limit:
                  type: integer
                  minimum: 0
                  description: Maximum result count applied to this response.
                remaining:
                  type: integer
                  minimum: 0
                  description: Requests remaining in the active rate-limit window.
                reset_at:
                  type: string
                  format: date-time
                  description: UTC timestamp when the active rate-limit window resets.
                tier:
                  type: string
                  enum:
                    - free
                    - pro
                    - pro_plus
                    - team
                    - internal
                  description: >-
                    Rate-limit or trend tier, as defined by the containing
                    schema.
              required:
                - limit
                - remaining
                - reset_at
                - tier
              description: Rate-limit metadata for the active request window.
          required:
            - request_id
          description: Request correlation, credit, and rate-limit metadata.
      required:
        - error
        - meta
      title: Error Envelope
      description: Standard error response shared by every Developer API operation.
    DeveloperApiMarketMover:
      type: object
      additionalProperties: false
      properties:
        type:
          type: string
          enum:
            - token
          description: Stable entity or record-type discriminator.
        rank:
          type: integer
          minimum: 1
          maximum: 20
          description: Public rank value for this record.
        direction:
          type: string
          enum:
            - gainer
            - loser
          description: Public direction value for this record.
        id:
          type: string
          minLength: 1
          maxLength: 160
          description: Stable Qoory identifier for this record.
        symbol:
          type: string
          minLength: 1
          maxLength: 64
          description: Canonical token symbol.
        name:
          type: string
          minLength: 1
          maxLength: 160
          description: Canonical display name for this entity.
        price_usd:
          type: number
          minimum: 0
          description: USD-denominated price value.
        change_pct:
          type: number
          description: Percentage value for change.
        market_cap_usd:
          type: number
          exclusiveMinimum: 0
          description: USD-denominated market cap value.
        volume_24h_usd:
          type: number
          minimum: 0
          description: USD-denominated volume 24h value.
      required:
        - type
        - rank
        - direction
        - id
        - symbol
        - name
        - price_usd
        - change_pct
        - market_cap_usd
        - volume_24h_usd
      title: Market Mover
      description: One canonical token classified as a bounded-period gainer or loser.
    DeveloperApiValidationErrorDetails:
      anyOf:
        - type: array
          items:
            type: object
            additionalProperties: false
            properties:
              path:
                type: string
                maxLength: 160
                pattern: ^[A-Za-z0-9_.:-]{1,160}$
                description: Bounded input path associated with a validation issue.
              message:
                type: string
                maxLength: 500
                description: Public-safe human-readable error message.
              code:
                type: string
                maxLength: 80
                pattern: ^[A-Za-z0-9_]+$
                description: Stable machine-readable error code.
            required:
              - path
              - message
              - code
          maxItems: 50
        - type: object
          additionalProperties: false
          properties:
            formErrors:
              type: array
              items:
                type: string
                maxLength: 500
              maxItems: 50
              description: Validation messages that apply to the request as a whole.
            fieldErrors:
              type: object
              maxProperties: 50
              propertyNames:
                type: string
                minLength: 1
                maxLength: 160
                pattern: ^[A-Za-z0-9_.:-]{1,160}$
              additionalProperties:
                type: array
                items:
                  type: string
                  maxLength: 500
                maxItems: 50
              description: Validation messages grouped by bounded input field name.
          required: []
      title: Validation Error Details
      description: Bounded validation issues for an invalid request.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Qoory API key
      description: Use the HTTP authentication scheme with a Qoory API key.

````