Skip to main content
GET
/
v2
/
markets
/
listings
List Market Listings
curl --request GET \
  --url https://api.predexon.com/v2/markets/listings \
  --header 'x-api-key: <api-key>'
{
  "detail": [
    {
      "loc": [
        "<string>"
      ],
      "msg": "<string>",
      "type": "<string>"
    }
  ]
}
Use canonical listings when you need the venue-native execution metadata behind canonical outcomes: token IDs, condition IDs, Kalshi tickers, market slugs, and venue market IDs.
Beta: Canonical market endpoints are in beta. Response fields and match coverage may evolve as we refine the canonical matching system.

Endpoint

GET https://api.predexon.com/v2/markets/listings
Returns venue-native executable listings flattened across canonical markets and outcomes. Use this endpoint when you need venue-native identifiers for execution or routing: token_id, condition_id, market_ticker, market_slug, or venue-native market_id.

Auth

Pass your API key in the x-api-key header.
curl -sS \
  -H 'x-api-key: YOUR_API_KEY' \
  'https://api.predexon.com/v2/markets/listings?limit=20'

Query Parameters

ParameterTypeDescription
limitintegerNumber of canonical markets to page before flattening listings. Default 50, max 200.
pagination_keystringCursor from the previous response. Omit on the first request.
searchstringText search over market titles and canonical claims. Must be 3–200 characters.
venuestringFilter to one venue. Example: kalshi, polymarket, limitless, opinion, predict.
statusstringMarket status filter: open (default), closed, resolved, or all. Omitting it returns only open markets.
categorystringBroad market category. Examples: sports, crypto, politics, entertainment, economics, weather, general.
leaguestringSports-only league filter. Only use with category=sports or by itself to imply sports. Example: mlb, fl1.
event_idstringFetch listings for a specific canonical market/question scope.
limit paginates canonical markets before listings are flattened. Therefore listings.length can be greater than limit. To fetch the next page, pass the returned pagination.pagination_key as the next request’s pagination_key.

Response Shape

{
  "listings": [
    {
      "event_id": "string",
      "market_title": "string",
      "league": "mlb",
      "predexon_id": "px-...",
      "outcome": "yes",
      "outcome_label": "Yes",
      "venue": "polymarket",
      "venue_market_title": "string",
      "description": "string",
      "yes_subtitle": "string",
      "no_subtitle": "string",
      "selection_label": "string",
      "resolution_source": "string",
      "market_id": "string",
      "market_ticker": "string",
      "condition_id": "string",
      "market_slug": "string",
      "token_id": "string",
      "side": "yes",
      "status": "open"
    }
  ],
  "pagination": {
    "limit": 20,
    "has_more": true,
    "pagination_key": "<string>"
  }
}
Venue-native metadata fields are omitted when unavailable.

Field Reference

FieldTypeDescription
event_idstringCanonical market/question scope ID.
market_titlestringCanonical market display title.
leaguestringOptional sports league code.
predexon_idstringCanonical outcome-level trading/routing ID.
outcomestringCanonical outcome key.
outcome_labelstringHuman-readable canonical outcome label.
venuestringVenue name.
venue_market_titlestringVenue-native market title.
descriptionstringVenue-native description or rules/resolution text when available.
yes_subtitlestringVenue-native YES subtitle/label when available.
no_subtitlestringVenue-native NO subtitle/label when available.
selection_labelstringVenue-native selected outcome/selection label when available.
resolution_sourcestringVenue-native resolution source/oracle when available.
market_idstringVenue-native market ID where available. Not canonical.
market_tickerstringKalshi venue-native ticker. Not canonical.
condition_idstringVenue-native condition ID where available. Not canonical.
market_slugstringVenue-native market slug where available.
token_idstringVenue-native executable token ID where available. Present for on-chain venues such as Polymarket, Limitless, Predict, and Opinion. Not returned for Kalshi.
sidestringVenue-native side, usually yes or no.
statusstringListing status, usually open or closed.

Example

curl -sS \
  -H 'x-api-key: YOUR_API_KEY' \
  'https://api.predexon.com/v2/markets/listings?limit=1&category=sports&league=fl1&event_id=fl1-asm-met-2026-05-02' \
  | python -m json.tool
{
  "listings": [
    {
      "event_id": "fl1-asm-met-2026-05-02",
      "market_title": "Monaco vs Metz Winner?",
      "league": "fl1",
      "predexon_id": "px-udfdzy5gtmm4kdoa",
      "outcome": "asm",
      "outcome_label": "Monaco",
      "venue": "kalshi",
      "venue_market_title": "Metz vs Monaco Winner?",
      "market_ticker": "KXLIGUE1GAME-26MAY02FCMASM-ASM",
      "side": "yes",
      "status": "open",
      "yes_subtitle": "Monaco",
      "selection_label": "Monaco"
    },
    {
      "event_id": "fl1-asm-met-2026-05-02",
      "market_title": "Monaco vs Metz Winner?",
      "league": "fl1",
      "predexon_id": "px-udfdzy5gtmm4kdoa",
      "outcome": "asm",
      "outcome_label": "Monaco",
      "venue": "polymarket",
      "venue_market_title": "Will AS Monaco FC win on 2026-05-02?",
      "market_id": "2018979",
      "condition_id": "0x070254c57b7545b0df2dba4a38ef81655a5b41c1f8edf9d466218f58d9a1f600",
      "market_slug": "fl1-met-asm-2026-05-02-asm",
      "token_id": "10439835459613392921040201374401440506564152347998894843834931942965004437054",
      "side": "yes",
      "status": "open",
      "selection_label": "Monaco"
    }
  ],
  "pagination": {
    "limit": 1,
    "has_more": true,
    "pagination_key": "<string>"
  }
}

Authorizations

x-api-key
string
header
required

Query Parameters

event_id
string | null

Canonical market/question event_id

category
string | null

Broad market category, e.g. sports, crypto, politics

league
string | null

Sports-only league filter, e.g. mlb, nba, epl

status
string
default:open

open, closed, resolved, or all

venue
string | null

Filter to venue-native listings from this venue

search
string | null

Search canonical title/description

Required string length: 3 - 200
routable_only
boolean
default:true

Only include verified/tradable/healthy listings

limit
integer
default:50
Required range: 1 <= x <= 200
pagination_key
string | null

Cursor for the next page

Response

Successful Response