---
title: "Get Observations"
method: GET
path: "/api/grading/observations"
tags: ["grading"]
---

# Get Observations

`GET /api/grading/observations`

## Request

- Base URL: `https://api.fairline.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.fairline.io/api/grading/observations`
- Auth: HTTP bearer

Raw bet_observations rows for price-path analyses (issue #99).

Range caps: 3 days unfiltered, 31 days when a market or external_game_id
filter narrows the pull. A hard LIMIT protects the response path
regardless; `truncated: true` signals the limit was hit, so callers
(e.g. audits/scripts/timing_niche_weekend_daygames.py) should iterate
per game-day rather than bulk-pull.

## Query parameters

- `start_date` string, date, required
- `end_date` string, date, required
- `sport` string, required
- `market` string, nullable
- `external_game_id` string, nullable
- `is_main` string: 'true' = main lines only (default), 'false' = alt lines only, 'all' = both

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

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