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

# Get Canonical Outcome

> Resolve a canonical Predexon outcome ID to its market and all equivalent venue listings

<Info>
  Use this endpoint after discovering a `predexon_id` to inspect the exact cross-venue equivalence set for that outcome.
</Info>

<Warning>
  **Beta:** Canonical market endpoints are in beta. Response fields and match coverage may evolve as we refine the canonical matching system.
</Warning>

## Endpoint

```http theme={null}
GET https://api.predexon.com/v2/outcomes/{predexon_id}
```

Returns one canonical outcome plus every venue-native listing currently mapped to that outcome.

Use this endpoint when you already have a `predexon_id` and need the full cross-venue execution context.

## Auth

Pass your API key in the `x-api-key` header.

```bash theme={null}
curl -sS \
  -H 'x-api-key: YOUR_API_KEY' \
  'https://api.predexon.com/v2/outcomes/px-udfdzy5gtmm4kdoa'
```

## Path Parameters

| Parameter     | Type   | Description                          |
| ------------- | ------ | ------------------------------------ |
| `predexon_id` | string | Canonical outcome-level Predexon ID. |

## Response Shape

```json theme={null}
{
  "predexon_id": "px-...",
  "event_id": "string",
  "market_type": "game_winner",
  "market_title": "string",
  "description": "string",
  "starts_at": "2026-05-02T00:00:00+00:00",
  "status": "open",
  "outcome": "yes",
  "outcome_label": "Yes",
  "claim": "string",
  "venues": [
    {
      "venue": "polymarket",
      "market_id": "string",
      "market_ticker": "string",
      "condition_id": "string",
      "market_slug": "string",
      "venue_market_title": "string",
      "token_id": "string",
      "side": "yes",
      "status": "open",
      "description": "string",
      "yes_subtitle": "string",
      "no_subtitle": "string",
      "selection_label": "string",
      "resolution_source": "string",
      "venue_event_title": "string",
      "venue_event_slug": "string",
      "image_url": "https://...",
      "icon_url": "https://...",
      "category": "string",
      "tags": ["string"],
      "series": "string",
      "end_time": "2026-05-02T00:00:00Z"
    }
  ],
  "league": "mlb"
}
```

Optional fields are omitted when unavailable.

## Field Reference

| Field           | Type   | Description                                                        |
| --------------- | ------ | ------------------------------------------------------------------ |
| `predexon_id`   | string | Canonical outcome-level trading/routing ID.                        |
| `event_id`      | string | Canonical market/question scope ID.                                |
| `market_type`   | string | Market type. Examples: `binary`, `game_winner`.                    |
| `market_title`  | string | Canonical market display title.                                    |
| `description`   | string | Optional display description/rules text when available.            |
| `starts_at`     | string | Optional ISO timestamp for scheduled markets.                      |
| `status`        | string | Outcome status, usually `open` or `closed`.                        |
| `outcome`       | string | Canonical outcome key.                                             |
| `outcome_label` | string | Human-readable canonical outcome label.                            |
| `claim`         | string | Canonical claim text for this outcome.                             |
| `venues[]`      | array  | Venue-native executable listings mapped to this canonical outcome. |
| `league`        | string | Optional sports league code.                                       |

### Venue Fields

| Field                | Type             | Description                                                                                                                                                        |
| -------------------- | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `venue`              | string           | Venue name.                                                                                                                                                        |
| `market_id`          | string           | Venue-native market ID where available. Not canonical.                                                                                                             |
| `market_ticker`      | string           | Kalshi venue-native ticker. Not canonical.                                                                                                                         |
| `condition_id`       | string           | Venue-native condition ID where available. Not canonical.                                                                                                          |
| `market_slug`        | string           | Venue-native market slug where available.                                                                                                                          |
| `venue_market_title` | string           | Venue-native market title.                                                                                                                                         |
| `token_id`           | string           | Venue-native executable token ID when the venue has one. Present for on-chain venues such as Polymarket, Limitless, Predict, and Opinion. Not returned for Kalshi. |
| `side`               | string           | Venue-native side, usually `yes` or `no`.                                                                                                                          |
| `status`             | string           | Listing status, usually `open` or `closed`.                                                                                                                        |
| `description`        | string           | Venue-native description or rules/resolution text when available.                                                                                                  |
| `yes_subtitle`       | string           | Venue-native YES subtitle/label when available.                                                                                                                    |
| `no_subtitle`        | string           | Venue-native NO subtitle/label when available.                                                                                                                     |
| `selection_label`    | string           | Venue-native selected outcome/selection label when available.                                                                                                      |
| `resolution_source`  | string           | Venue-native resolution source/oracle when available.                                                                                                              |
| `venue_event_id`     | string           | Venue-native event/container ID when available.                                                                                                                    |
| `venue_event_title`  | string           | Venue-native parent event or series title when available.                                                                                                          |
| `venue_event_slug`   | string           | Venue-native parent event or series slug when available.                                                                                                           |
| `image_url`          | string           | Venue-native image URL when available.                                                                                                                             |
| `icon_url`           | string           | Venue-native icon URL when available.                                                                                                                              |
| `category`           | string or array  | Venue-native category metadata when available.                                                                                                                     |
| `tags`               | string or array  | Venue-native tag metadata when available.                                                                                                                          |
| `series`             | string or object | Venue-native series metadata when available.                                                                                                                       |
| `end_time`           | string           | Venue-native end, close, or expiration time when available.                                                                                                        |

Optional venue-native fields are added directly to each venue object when that venue/source provides them. Kalshi does not have token IDs, so Kalshi entries use `market_ticker` and do not return `token_id`.

## Example

```bash theme={null}
curl -sS \
  -H 'x-api-key: YOUR_API_KEY' \
  'https://api.predexon.com/v2/outcomes/px-udfdzy5gtmm4kdoa' \
  | python -m json.tool
```

```json theme={null}
{
  "predexon_id": "px-udfdzy5gtmm4kdoa",
  "event_id": "fl1-asm-met-2026-05-02",
  "market_type": "game_winner",
  "market_title": "Monaco vs Metz Winner?",
  "starts_at": "2026-05-02T00:00:00+00:00",
  "status": "open",
  "outcome": "asm",
  "outcome_label": "Monaco",
  "claim": "Monaco win fl1-asm-met-2026-05-02.",
  "venues": [
    {
      "venue": "kalshi",
      "market_ticker": "KXLIGUE1GAME-26MAY02FCMASM-ASM",
      "venue_market_title": "Metz vs Monaco Winner?",
      "side": "yes",
      "status": "open",
      "yes_subtitle": "Monaco",
      "selection_label": "Monaco",
      "series": "KXLIGUE1GAME"
    },
    {
      "venue": "polymarket",
      "market_id": "2018979",
      "condition_id": "0x070254c57b7545b0df2dba4a38ef81655a5b41c1f8edf9d466218f58d9a1f600",
      "market_slug": "fl1-met-asm-2026-05-02-asm",
      "venue_market_title": "Will AS Monaco FC win on 2026-05-02?",
      "token_id": "10439835459613392921040201374401440506564152347998894843834931942965004437054",
      "side": "yes",
      "status": "open",
      "selection_label": "Monaco",
      "description": "Venue-native market description when provided by Polymarket.",
      "resolution_source": "Venue-native resolution source when provided.",
      "venue_event_slug": "fl1-met-asm-2026-05-02",
      "image_url": "https://..."
    }
  ],
  "league": "fl1"
}
```

## Errors

| Status | Reason                                                     |
| ------ | ---------------------------------------------------------- |
| `404`  | No canonical outcome found for the provided `predexon_id`. |


## OpenAPI

````yaml GET /v2/outcomes/{predexon_id}
openapi: 3.1.0
info:
  title: Predexon API
  description: Prediction market data aggregation and matching API
  version: 2.0.0
servers:
  - url: https://api.predexon.com
security:
  - apiKey: []
paths:
  /v2/outcomes/{predexon_id}:
    get:
      tags:
        - markets
      summary: Get Outcome
      description: >-
        Return all equivalent venue listings for one canonical outcome
        predexon_id.
      operationId: get_outcome_v2_outcomes__predexon_id__get
      parameters:
        - name: predexon_id
          in: path
          required: true
          schema:
            type: string
            title: Predexon Id
        - name: routable_only
          in: query
          required: false
          schema:
            type: boolean
            description: Only include verified/tradable/healthy venue listings
            default: true
            title: Routable Only
          description: Only include verified/tradable/healthy venue listings
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key

````