---
title: "Read one current fair value by canonical outcome id"
method: GET
path: "/v1/fair-values/{outcomeId}"
tags: ["Fair Values"]
---

# Read one current fair value by canonical outcome id

`GET /v1/fair-values/{outcomeId}`

## Request

- Base URL: `https://sorqen.flashodds.live`
- URL: `https://sorqen.flashodds.live/v1/fair-values/{outcomeId}`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

The single-outcome read behind the MCP get_fair_value tool. Same plan shaping as the list route: evidence appears only on plans that include it.

## Path parameters

- `outcomeId` string, required

## Response `200`

One current fair value, shaped to the caller plan.

- object
  - `data` FairValue
    - `outcome_id` string, required
    - `market_id` string
    - `event_id` string
    - `league` 'nfl' | 'nba' | 'mlb' | 'nhl', required
    - `market_type` 'moneyline' | 'spread' | 'total', required
    - `selection` string
    - `starts_at` string, date-time
    - `fair_probability` number, nullable, required: Null means Sorqen refused to produce a number; limiting_factor explains why.
    - `confidence` number, nullable
    - `dispersion` number, nullable
    - `books` integer
    - `limiting_factor` string, nullable
    - `method_version` string, required
    - `computed_at` string, date-time
    - `oldest_component_age_s` integer, nullable
    - `evidence` object: Paid-plan component evidence. Omitted when the plan does not include evidence.
  - `meta` object

## Other responses

- `401`: Missing or invalid API key.
- `403`: The authenticated plan does not include this entitlement.
- `404`: No current fair value for that outcome id.
- `429`: Plan request limit exceeded. Retry-After and X-RateLimit headers are returned.

---

[API](https://skmtc.dev/flashodds/apis/sorqen-api.md) · [All operations](https://skmtc.dev/flashodds/apis/sorqen-api/llms.txt) · [OpenAPI document](https://skmtc.dev/flashodds/apis/sorqen-api/revisions/ec67a9e22813?raw)
