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

# List recurring crypto window markets

> Returns deterministic crypto window markets grouped by asset, window duration, and derived window start across supported venues. Scope is limited to 5 minute, 15 minute, 1 hour, and 1 day recurring crypto markets.



## OpenAPI

````yaml /openapi/openapi.json get /crypto/recurring-markets
openapi: 3.0.2
info:
  title: AGG API
  version: 1.0.0
  description: >-
    Prediction market aggregator REST API — authentication, users, venue events,
    venue markets, orderbooks, charts, and execution workflows.
servers:
  - url: https://api.agg.market
    description: Production
  - url: https://api.staging.agg.market
    description: Staging
security: []
paths:
  /crypto/recurring-markets:
    get:
      tags:
        - Discovery
      summary: List recurring crypto window markets
      description: >-
        Returns deterministic crypto window markets grouped by asset, window
        duration, and derived window start across supported venues. Scope is
        limited to 5 minute, 15 minute, 1 hour, and 1 day recurring crypto
        markets.
      operationId: listRecurringCryptoMarkets
      parameters:
        - name: assets
          in: query
          required: false
          schema:
            anyOf:
              - type: array
                items:
                  type: string
              - type: string
        - name: durations
          in: query
          required: false
          schema:
            anyOf:
              - type: array
                items:
                  description: >-
                    Recurring crypto duration. Accepts canonical ISO-8601
                    durations (PT5M, PT15M, PT1H, P1D) or friendly aliases such
                    as 5m, 15m, 1h, and 1d.
                  type: string
              - description: >-
                  Recurring crypto duration. Accepts canonical ISO-8601
                  durations (PT5M, PT15M, PT1H, P1D) or friendly aliases such as
                  5m, 15m, 1h, and 1d.
                type: string
        - name: interval
          in: query
          required: false
          schema:
            description: >-
              Recurring crypto duration. Accepts canonical ISO-8601 durations
              (PT5M, PT15M, PT1H, P1D) or friendly aliases such as 5m, 15m, 1h,
              and 1d.
            type: string
        - name: window
          in: query
          required: false
          schema:
            type: string
            enum:
              - current
        - name: venues
          in: query
          required: false
          schema:
            anyOf:
              - type: array
                items:
                  type: string
                  enum:
                    - kalshi
                    - polymarket
                    - limitless
                    - opinion
                    - predict
                    - probable
                    - myriad
                    - hyperliquid
              - type: string
                enum:
                  - kalshi
                  - polymarket
                  - limitless
                  - opinion
                  - predict
                  - probable
                  - myriad
                  - hyperliquid
        - name: status
          in: query
          required: false
          schema:
            anyOf:
              - type: array
                items:
                  type: string
                  enum:
                    - open
                    - closed
                    - resolved
                    - unopened
                    - paused
              - type: string
                enum:
                  - open
                  - closed
                  - resolved
                  - unopened
                  - paused
        - name: windowStartFrom
          in: query
          required: false
          schema:
            type: string
        - name: windowStartTo
          in: query
          required: false
          schema:
            type: string
        - name: cursor
          in: query
          required: false
          schema:
            type: string
        - name: limit
          in: query
          required: false
          schema:
            minimum: 1
            maximum: 100
            type: number
        - name: includeOrderbookPrices
          in: query
          required: false
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
        - name: includeReferencePrices
          in: query
          required: false
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
        - name: includeDirectVenueMarkets
          in: query
          required: false
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
        - name: includeOrderbookDepth
          in: query
          required: false
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
        - name: orderbookDepth
          in: query
          required: false
          schema:
            minimum: 1
            maximum: 15
            type: integer
        - name: orderbookDepthAmountUsd
          in: query
          required: false
          schema:
            exclusiveMinimum: true
            type: number
            minimum: 0
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                  - nextCursor
                  - hasMore
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - asset
                        - quoteAsset
                        - duration
                        - windowStart
                        - windowEnd
                        - status
                        - markets
                        - comparisons
                      properties:
                        id:
                          type: string
                        asset:
                          type: string
                        quoteAsset:
                          type: string
                          enum:
                            - USD
                        duration:
                          type: string
                          enum:
                            - PT5M
                            - PT15M
                            - PT1H
                            - P1D
                        windowStart:
                          type: string
                        windowEnd:
                          type: string
                        status:
                          type: string
                          enum:
                            - open
                            - closed
                            - resolved
                            - unopened
                            - paused
                        markets:
                          type: array
                          items:
                            type: object
                            required:
                              - venue
                              - venueEventId
                              - venueMarketId
                              - externalEventId
                              - externalMarketId
                              - question
                              - status
                              - priceSource
                              - routeable
                              - splitOrdersAllowed
                              - outcomes
                              - metrics
                              - resolution
                              - referencePrice
                            properties:
                              venue:
                                type: string
                                enum:
                                  - kalshi
                                  - polymarket
                                  - limitless
                                  - opinion
                                  - predict
                                  - probable
                                  - myriad
                                  - hyperliquid
                              venueEventId:
                                type: string
                              venueMarketId:
                                type: string
                              externalEventId:
                                type: string
                                nullable: true
                              externalMarketId:
                                type: string
                              question:
                                type: string
                              status:
                                type: string
                                enum:
                                  - open
                                  - closed
                                  - resolved
                                  - unopened
                                  - paused
                              priceSource:
                                type: string
                                enum:
                                  - snag
                                  - direct
                              routeable:
                                type: boolean
                              splitOrdersAllowed:
                                type: boolean
                              outcomes:
                                type: array
                                items:
                                  type: object
                                  required:
                                    - venueMarketOutcomeId
                                    - externalOutcomeId
                                    - routeable
                                    - splitOrdersAllowed
                                    - label
                                    - title
                                    - midpoint
                                    - bestBid
                                    - bestAsk
                                    - markSource
                                    - lastKnownPrice
                                    - orderbookDepth
                                  properties:
                                    venueMarketOutcomeId:
                                      type: string
                                      nullable: true
                                    externalOutcomeId:
                                      type: string
                                      nullable: true
                                    routeable:
                                      type: boolean
                                    splitOrdersAllowed:
                                      type: boolean
                                    label:
                                      type: string
                                    title:
                                      type: string
                                      nullable: true
                                    midpoint:
                                      type: number
                                      nullable: true
                                    bestBid:
                                      type: number
                                      nullable: true
                                    bestAsk:
                                      type: number
                                      nullable: true
                                    markSource:
                                      type: string
                                      nullable: true
                                    lastKnownPrice:
                                      type: number
                                      nullable: true
                                    orderbookDepth:
                                      type: object
                                      required:
                                        - currency
                                        - amountUsd
                                        - buy
                                        - sell
                                      properties:
                                        currency:
                                          type: string
                                          enum:
                                            - USD
                                        amountUsd:
                                          type: number
                                          nullable: true
                                        buy:
                                          type: object
                                          required:
                                            - levels
                                            - totalSize
                                            - totalNotionalUsd
                                            - requestedNotionalUsd
                                            - filledSize
                                            - filledNotionalUsd
                                            - unfilledNotionalUsd
                                            - avgPrice
                                            - worstPrice
                                            - fillsComplete
                                          properties:
                                            levels:
                                              type: array
                                              items:
                                                type: object
                                                required:
                                                  - price
                                                  - size
                                                  - notionalUsd
                                                  - cumulativeSize
                                                  - cumulativeNotionalUsd
                                                  - fillSize
                                                  - fillNotionalUsd
                                                properties:
                                                  price:
                                                    type: number
                                                  size:
                                                    type: number
                                                  notionalUsd:
                                                    type: number
                                                  cumulativeSize:
                                                    type: number
                                                  cumulativeNotionalUsd:
                                                    type: number
                                                  fillSize:
                                                    type: number
                                                    nullable: true
                                                  fillNotionalUsd:
                                                    type: number
                                                    nullable: true
                                            totalSize:
                                              type: number
                                            totalNotionalUsd:
                                              type: number
                                            requestedNotionalUsd:
                                              type: number
                                              nullable: true
                                            filledSize:
                                              type: number
                                              nullable: true
                                            filledNotionalUsd:
                                              type: number
                                              nullable: true
                                            unfilledNotionalUsd:
                                              type: number
                                              nullable: true
                                            avgPrice:
                                              type: number
                                              nullable: true
                                            worstPrice:
                                              type: number
                                              nullable: true
                                            fillsComplete:
                                              type: boolean
                                              nullable: true
                                        sell:
                                          type: object
                                          required:
                                            - levels
                                            - totalSize
                                            - totalNotionalUsd
                                            - requestedNotionalUsd
                                            - filledSize
                                            - filledNotionalUsd
                                            - unfilledNotionalUsd
                                            - avgPrice
                                            - worstPrice
                                            - fillsComplete
                                          properties:
                                            levels:
                                              type: array
                                              items:
                                                type: object
                                                required:
                                                  - price
                                                  - size
                                                  - notionalUsd
                                                  - cumulativeSize
                                                  - cumulativeNotionalUsd
                                                  - fillSize
                                                  - fillNotionalUsd
                                                properties:
                                                  price:
                                                    type: number
                                                  size:
                                                    type: number
                                                  notionalUsd:
                                                    type: number
                                                  cumulativeSize:
                                                    type: number
                                                  cumulativeNotionalUsd:
                                                    type: number
                                                  fillSize:
                                                    type: number
                                                    nullable: true
                                                  fillNotionalUsd:
                                                    type: number
                                                    nullable: true
                                            totalSize:
                                              type: number
                                            totalNotionalUsd:
                                              type: number
                                            requestedNotionalUsd:
                                              type: number
                                              nullable: true
                                            filledSize:
                                              type: number
                                              nullable: true
                                            filledNotionalUsd:
                                              type: number
                                              nullable: true
                                            unfilledNotionalUsd:
                                              type: number
                                              nullable: true
                                            avgPrice:
                                              type: number
                                              nullable: true
                                            worstPrice:
                                              type: number
                                              nullable: true
                                            fillsComplete:
                                              type: boolean
                                              nullable: true
                                      nullable: true
                              metrics:
                                type: object
                                required:
                                  - volume
                                  - volume24h
                                  - openInterest
                                  - liquidity
                                  - spread
                                properties:
                                  volume:
                                    type: number
                                    nullable: true
                                  volume24h:
                                    type: number
                                    nullable: true
                                  openInterest:
                                    type: number
                                    nullable: true
                                  liquidity:
                                    type: number
                                    nullable: true
                                  spread:
                                    type: number
                                    nullable: true
                              resolution:
                                type: object
                                required:
                                  - sourceName
                                  - sourceUrl
                                  - sourceDomain
                                  - rawCriteria
                                  - confidence
                                properties:
                                  sourceName:
                                    maxLength: 256
                                    type: string
                                    nullable: true
                                  sourceUrl:
                                    maxLength: 1024
                                    type: string
                                    nullable: true
                                  sourceDomain:
                                    maxLength: 256
                                    type: string
                                    nullable: true
                                  rawCriteria: {}
                                  confidence:
                                    type: string
                                    enum:
                                      - verified
                                      - inferred
                                      - missing
                              referencePrice:
                                type: object
                                required:
                                  - asset
                                  - quoteAsset
                                  - raw
                                  - decimals
                                  - normalized
                                  - timestamp
                                  - provider
                                  - providerMarketId
                                  - confidence
                                properties:
                                  asset:
                                    minLength: 1
                                    maxLength: 32
                                    type: string
                                  quoteAsset:
                                    type: string
                                    enum:
                                      - USD
                                  raw:
                                    type: string
                                    nullable: true
                                  decimals:
                                    type: number
                                    nullable: true
                                  normalized:
                                    type: number
                                    nullable: true
                                  timestamp:
                                    type: string
                                    nullable: true
                                  provider:
                                    maxLength: 256
                                    type: string
                                    nullable: true
                                  providerMarketId:
                                    maxLength: 1024
                                    type: string
                                    nullable: true
                                  confidence:
                                    type: string
                                    enum:
                                      - verified
                                      - inferred
                                      - missing
                                  fetchedAt:
                                    type: string
                                    nullable: true
                                  ageMs:
                                    minimum: 0
                                    type: number
                                    nullable: true
                                  refreshing:
                                    type: boolean
                                  stale:
                                    type: boolean
                        comparisons:
                          type: object
                          required:
                            - referencePrice
                            - outcomePrices
                          properties:
                            referencePrice:
                              type: object
                              required:
                                - count
                                - min
                                - max
                                - spread
                                - spreadBps
                                - byVenue
                              properties:
                                count:
                                  type: number
                                min:
                                  type: object
                                  required:
                                    - venue
                                    - venueMarketId
                                    - value
                                    - label
                                    - source
                                    - provider
                                    - providerMarketId
                                    - timestamp
                                    - confidence
                                  properties:
                                    venue:
                                      type: string
                                      enum:
                                        - kalshi
                                        - polymarket
                                        - limitless
                                        - opinion
                                        - predict
                                        - probable
                                        - myriad
                                        - hyperliquid
                                    venueMarketId:
                                      type: string
                                    value:
                                      type: number
                                    label:
                                      type: string
                                      nullable: true
                                    source:
                                      type: string
                                      enum:
                                        - referencePrice
                                        - midpoint
                                        - lastKnownPrice
                                    provider:
                                      type: string
                                      nullable: true
                                    providerMarketId:
                                      type: string
                                      nullable: true
                                    timestamp:
                                      type: string
                                      nullable: true
                                    confidence:
                                      type: string
                                      enum:
                                        - verified
                                        - inferred
                                        - missing
                                      nullable: true
                                  nullable: true
                                max:
                                  type: object
                                  required:
                                    - venue
                                    - venueMarketId
                                    - value
                                    - label
                                    - source
                                    - provider
                                    - providerMarketId
                                    - timestamp
                                    - confidence
                                  properties:
                                    venue:
                                      type: string
                                      enum:
                                        - kalshi
                                        - polymarket
                                        - limitless
                                        - opinion
                                        - predict
                                        - probable
                                        - myriad
                                        - hyperliquid
                                    venueMarketId:
                                      type: string
                                    value:
                                      type: number
                                    label:
                                      type: string
                                      nullable: true
                                    source:
                                      type: string
                                      enum:
                                        - referencePrice
                                        - midpoint
                                        - lastKnownPrice
                                    provider:
                                      type: string
                                      nullable: true
                                    providerMarketId:
                                      type: string
                                      nullable: true
                                    timestamp:
                                      type: string
                                      nullable: true
                                    confidence:
                                      type: string
                                      enum:
                                        - verified
                                        - inferred
                                        - missing
                                      nullable: true
                                  nullable: true
                                spread:
                                  type: number
                                  nullable: true
                                spreadBps:
                                  type: number
                                  nullable: true
                                byVenue:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                      - venue
                                      - venueMarketId
                                      - value
                                      - label
                                      - source
                                      - provider
                                      - providerMarketId
                                      - timestamp
                                      - confidence
                                    properties:
                                      venue:
                                        type: string
                                        enum:
                                          - kalshi
                                          - polymarket
                                          - limitless
                                          - opinion
                                          - predict
                                          - probable
                                          - myriad
                                          - hyperliquid
                                      venueMarketId:
                                        type: string
                                      value:
                                        type: number
                                      label:
                                        type: string
                                        nullable: true
                                      source:
                                        type: string
                                        enum:
                                          - referencePrice
                                          - midpoint
                                          - lastKnownPrice
                                      provider:
                                        type: string
                                        nullable: true
                                      providerMarketId:
                                        type: string
                                        nullable: true
                                      timestamp:
                                        type: string
                                        nullable: true
                                      confidence:
                                        type: string
                                        enum:
                                          - verified
                                          - inferred
                                          - missing
                                        nullable: true
                            outcomePrices:
                              type: object
                              required:
                                - up
                                - down
                              properties:
                                up:
                                  type: object
                                  required:
                                    - count
                                    - min
                                    - max
                                    - spread
                                    - spreadBps
                                    - byVenue
                                  properties:
                                    count:
                                      type: number
                                    min:
                                      type: object
                                      required:
                                        - venue
                                        - venueMarketId
                                        - value
                                        - label
                                        - source
                                        - provider
                                        - providerMarketId
                                        - timestamp
                                        - confidence
                                      properties:
                                        venue:
                                          type: string
                                          enum:
                                            - kalshi
                                            - polymarket
                                            - limitless
                                            - opinion
                                            - predict
                                            - probable
                                            - myriad
                                            - hyperliquid
                                        venueMarketId:
                                          type: string
                                        value:
                                          type: number
                                        label:
                                          type: string
                                          nullable: true
                                        source:
                                          type: string
                                          enum:
                                            - referencePrice
                                            - midpoint
                                            - lastKnownPrice
                                        provider:
                                          type: string
                                          nullable: true
                                        providerMarketId:
                                          type: string
                                          nullable: true
                                        timestamp:
                                          type: string
                                          nullable: true
                                        confidence:
                                          type: string
                                          enum:
                                            - verified
                                            - inferred
                                            - missing
                                          nullable: true
                                      nullable: true
                                    max:
                                      type: object
                                      required:
                                        - venue
                                        - venueMarketId
                                        - value
                                        - label
                                        - source
                                        - provider
                                        - providerMarketId
                                        - timestamp
                                        - confidence
                                      properties:
                                        venue:
                                          type: string
                                          enum:
                                            - kalshi
                                            - polymarket
                                            - limitless
                                            - opinion
                                            - predict
                                            - probable
                                            - myriad
                                            - hyperliquid
                                        venueMarketId:
                                          type: string
                                        value:
                                          type: number
                                        label:
                                          type: string
                                          nullable: true
                                        source:
                                          type: string
                                          enum:
                                            - referencePrice
                                            - midpoint
                                            - lastKnownPrice
                                        provider:
                                          type: string
                                          nullable: true
                                        providerMarketId:
                                          type: string
                                          nullable: true
                                        timestamp:
                                          type: string
                                          nullable: true
                                        confidence:
                                          type: string
                                          enum:
                                            - verified
                                            - inferred
                                            - missing
                                          nullable: true
                                      nullable: true
                                    spread:
                                      type: number
                                      nullable: true
                                    spreadBps:
                                      type: number
                                      nullable: true
                                    byVenue:
                                      type: array
                                      items:
                                        type: object
                                        required:
                                          - venue
                                          - venueMarketId
                                          - value
                                          - label
                                          - source
                                          - provider
                                          - providerMarketId
                                          - timestamp
                                          - confidence
                                        properties:
                                          venue:
                                            type: string
                                            enum:
                                              - kalshi
                                              - polymarket
                                              - limitless
                                              - opinion
                                              - predict
                                              - probable
                                              - myriad
                                              - hyperliquid
                                          venueMarketId:
                                            type: string
                                          value:
                                            type: number
                                          label:
                                            type: string
                                            nullable: true
                                          source:
                                            type: string
                                            enum:
                                              - referencePrice
                                              - midpoint
                                              - lastKnownPrice
                                          provider:
                                            type: string
                                            nullable: true
                                          providerMarketId:
                                            type: string
                                            nullable: true
                                          timestamp:
                                            type: string
                                            nullable: true
                                          confidence:
                                            type: string
                                            enum:
                                              - verified
                                              - inferred
                                              - missing
                                            nullable: true
                                down:
                                  type: object
                                  required:
                                    - count
                                    - min
                                    - max
                                    - spread
                                    - spreadBps
                                    - byVenue
                                  properties:
                                    count:
                                      type: number
                                    min:
                                      type: object
                                      required:
                                        - venue
                                        - venueMarketId
                                        - value
                                        - label
                                        - source
                                        - provider
                                        - providerMarketId
                                        - timestamp
                                        - confidence
                                      properties:
                                        venue:
                                          type: string
                                          enum:
                                            - kalshi
                                            - polymarket
                                            - limitless
                                            - opinion
                                            - predict
                                            - probable
                                            - myriad
                                            - hyperliquid
                                        venueMarketId:
                                          type: string
                                        value:
                                          type: number
                                        label:
                                          type: string
                                          nullable: true
                                        source:
                                          type: string
                                          enum:
                                            - referencePrice
                                            - midpoint
                                            - lastKnownPrice
                                        provider:
                                          type: string
                                          nullable: true
                                        providerMarketId:
                                          type: string
                                          nullable: true
                                        timestamp:
                                          type: string
                                          nullable: true
                                        confidence:
                                          type: string
                                          enum:
                                            - verified
                                            - inferred
                                            - missing
                                          nullable: true
                                      nullable: true
                                    max:
                                      type: object
                                      required:
                                        - venue
                                        - venueMarketId
                                        - value
                                        - label
                                        - source
                                        - provider
                                        - providerMarketId
                                        - timestamp
                                        - confidence
                                      properties:
                                        venue:
                                          type: string
                                          enum:
                                            - kalshi
                                            - polymarket
                                            - limitless
                                            - opinion
                                            - predict
                                            - probable
                                            - myriad
                                            - hyperliquid
                                        venueMarketId:
                                          type: string
                                        value:
                                          type: number
                                        label:
                                          type: string
                                          nullable: true
                                        source:
                                          type: string
                                          enum:
                                            - referencePrice
                                            - midpoint
                                            - lastKnownPrice
                                        provider:
                                          type: string
                                          nullable: true
                                        providerMarketId:
                                          type: string
                                          nullable: true
                                        timestamp:
                                          type: string
                                          nullable: true
                                        confidence:
                                          type: string
                                          enum:
                                            - verified
                                            - inferred
                                            - missing
                                          nullable: true
                                      nullable: true
                                    spread:
                                      type: number
                                      nullable: true
                                    spreadBps:
                                      type: number
                                      nullable: true
                                    byVenue:
                                      type: array
                                      items:
                                        type: object
                                        required:
                                          - venue
                                          - venueMarketId
                                          - value
                                          - label
                                          - source
                                          - provider
                                          - providerMarketId
                                          - timestamp
                                          - confidence
                                        properties:
                                          venue:
                                            type: string
                                            enum:
                                              - kalshi
                                              - polymarket
                                              - limitless
                                              - opinion
                                              - predict
                                              - probable
                                              - myriad
                                              - hyperliquid
                                          venueMarketId:
                                            type: string
                                          value:
                                            type: number
                                          label:
                                            type: string
                                            nullable: true
                                          source:
                                            type: string
                                            enum:
                                              - referencePrice
                                              - midpoint
                                              - lastKnownPrice
                                          provider:
                                            type: string
                                            nullable: true
                                          providerMarketId:
                                            type: string
                                            nullable: true
                                          timestamp:
                                            type: string
                                            nullable: true
                                          confidence:
                                            type: string
                                            enum:
                                              - verified
                                              - inferred
                                              - missing
                                            nullable: true
                  nextCursor:
                    type: string
                    nullable: true
                  hasMore:
                    type: boolean
        '400':
          description: '400'
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
        '401':
          description: '401'
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
        '503':
          description: '503'
          content:
            application/json:
              schema:
                type: object
                required:
                  - code
                  - message
                  - retryable
                properties:
                  code:
                    type: string
                    enum:
                      - orderbook_service_unavailable
                  message:
                    type: string
                  retryable:
                    type: boolean
      security:
        - appId: []
components:
  securitySchemes:
    appId:
      type: apiKey
      in: header
      name: x-app-id
      description: Your application ID. Required for all app-tier and user-tier routes.

````