---
title: "Get all sibling outcomes for the event containing a market"
method: GET
path: "/markets/outcomes"
tags: ["Markets"]
---

# Get all sibling outcomes for the event containing a market

`GET /markets/outcomes`

## Request

- Base URL: `https://data.kairos.trade`
- URL: `https://data.kairos.trade/markets/outcomes`
- Auth: API key in header `X-Client-Id` and API key in header `X-Api-Key` and API key in header `X-Api-Secret`

Returns every outcome in the event that `market_id` belongs to (for multi-outcome / grouped markets), served from a cache of pre-computed event/market lookups. Any identifier (market_id, token_id, condition_id, symbol, slug) is mapped to its `event_id`; if that misses, falls back to the per-market entry's embedded `event_id`, then to deriving a Kalshi-style event ticker by stripping the last `-SEGMENT` off `market_id` (e.g. `KXPGATOUR-THGI26-SSTR` → `KXPGATOUR-THGI26`). If no event can be resolved at all and `provider=polymarket`, falls back to a live Polymarket lookup — guarding against a known upstream quirk that can silently return an unrelated default result instead of an empty list. Non-Polymarket providers get no such fallback — an unresolvable event returns the empty shape. `all_ids` (comma-separated, ≤200 ids, each ≤128 chars) additionally resolves `event_groups` — a map from every supplied id (and every sibling id discovered while resolving events) to its `event_id`, used by the frontend to dedupe sibling contracts across dropdowns. **Price scale note:** unlike most of this API, outcome prices here are returned as a **0–1 decimal probability**, not the platform's usual 0–100 cents scale.

## Query parameters

- `market_id` string, required
- `provider` string, required
- `all_ids` string

## Response `200`

Event outcomes for the market, or the empty shape if no event could be resolved.

- MarketsOutcomesResponse
  - `event_title` string, nullable, required
  - `image` string, nullable
  - `icon` string, nullable
  - `provider` string, nullable
  - `category` string, nullable
  - `outcomes` MarketsOutcomeItem[], required
    - `market_id` string
    - `title` string
    - `outcome_label` string
    - `price` number: 0-1 decimal probability (stored cents / 100.0) — NOT the platform's usual 0-100 cents scale.
    - `volume_total` number
    - `volume_24h` number
    - `volume_1h` number
    - `token_id` string, nullable
    - `condition_id` string, nullable
    - `image` string, nullable: Only present when served from the discover cache, not from the direct upstream-provider fallback path.
    - `icon` string, nullable
    - `expiration` string, nullable
  - `is_grouped` boolean, required
  - `matched_market_id` string, nullable: The outcome entry that corresponds to the queried market_id, if found among the returned outcomes.
  - `event_groups` object, required: Maps every requested id (market_id plus each all_ids entry, plus every sibling id discovered while resolving) to its event_id.
  - `event_titles` object, required: Maps every event_id referenced in event_groups to its title.

## Other responses

- `400`: Invalid/unknown provider, empty `market_id`, an oversized identifier, or too many `all_ids`.
- `401`: No valid credential presented — missing/invalid API-key headers, or an invalid/expired session token.
- `403`: Authenticated but not permitted. Three distinct causes: the session user is not invited (`Invite required`), the API key lacks the operation's scope, or API-key access to the requested venue is switched off (`API access is disabled for <provider>`). Admin and API-key callers bypass the invite check; session and admin callers bypass scope and venue checks.
- `422`: Request failed FastAPI parameter validation.
- `429`: Rate limit exceeded for this route's sliding window, keyed on the session `sub` when authenticated and on the trusted client IP otherwise. Honor `Retry-After`. A per-API-key data ceiling (set per credential) rejects with `{"detail": "API key data rate limit exceeded"}` instead of the `error` envelope below.

---

[API](https://skmtc.dev/kairos/apis/kairos-data-api.md) - [All operations](https://skmtc.dev/kairos/apis/kairos-data-api/llms.txt) - [OpenAPI document](https://skmtc.dev/kairos/apis/kairos-data-api/revisions/cf6b76079e38?raw)
