Skip to main content
GET
Browse Active Markets
For category- and property-based filtering (the structured filters Limitless uses to organize markets), use the Market Pages endpoints: resolve a page with Get Market Page by Path to read its baseFilter and filterGroups, then List Markets for a Page. GET /markets/active returns a flat list with basic filtering.
limit is capped at 25. Values above 25 are rejected with 400 (limit must not be greater than 25) — the endpoint never silently truncates. To read more than 25 markets, page with the page parameter; the response’s totalMarketsCount tells you how many are available in total.
tradeType filter values. Selects the market’s trading model:
  • amm — Automated market maker. Prices are set algorithmically against a liquidity pool, and you trade directly against the curve.
  • clob — Central limit order book. Independent YES/NO bids and asks match at prices set by makers and takers. Supports market and limit orders. See CLOB Overview.
  • group — Multi-outcome group (also called Negrisk / category markets). Multiple outcomes are bundled and only one can win; the NO shares across outcomes are linked, which makes collateral more efficient. See Negrisk Markets.
automationType filter values. Selects how a market is created and resolved:
  • lumy — Price-oracle-driven markets created by the recurring launch jobs (for example crypto or stock price ladders). Individual markets carry a price_oracle_id; group markets qualify when any child does. These resolve automatically at the deadline via the oracle (typically Pyth). The Lumy category tag is a branding label and is not the same signal — always filter by automationType, not by tag.
  • manual — Markets that are not oracle-driven and not sports/esports fixtures. Resolved by the Limitless team against the criteria on the market page, typically within 24–72 hours of the deadline. See Market Resolution.
  • sports — Sports fixture markets (identified by a fixtureId or the sports event provider). Resolved from the fixture result feed.
includeNextMarket (optional). Opt in to receive the next round of upfront-scheduled markets, such as crypto price ladders that run in back-to-back windows. When true, each affected market includes a navigation.nextMarket object with the successor’s slug, startAt, deadline, and tradable flag. The current market also stays listed briefly during the activation gap, so the series is always represented by exactly one row.Use this when you want to prefetch the next round or open a websocket subscription before the current market expires. Leave it unset for the default listing behavior. Cursor tokens are scoped to this option, so do not switch it mid-pagination.
The tradable flag is conservative in listings — a successor that has not yet activated reports false. Fetch the successor directly with Get Market before submitting an order.

Path Parameters

categoryId
number

Filter markets by category ID

Query Parameters

page
number

Page number for pagination

Example:

1

limit
number

Number of items per page

Example:

10

sortBy
string

Sort by query parameter

Example:

"newest"

tradeType
enum<string>

Filter by trade type (amm, clob, or group)

Available options:
amm,
clob,
group
automationType
enum<string>

Filter by automation type (manual, lumy, or sports)

Available options:
manual,
lumy,
sports

Response

Active markets and groups with volume and liquidity data

data
object[]
required

Array of active markets with complete trading data including volume, liquidity, and recent feed events

Example:
totalMarketsCount
number
required

Total number of active markets available for pagination

Example:

150