---
title: "Cross-venue price-gap view over matched pairs (v2)"
method: GET
path: "/v2/spreads"
tags: ["data"]
---

# Cross-venue price-gap view over matched pairs (v2)

`GET /v2/spreads`

The Market-shaped spread-observation counterpart to /v2/arbitrage: matched pairs whose resolution rule
marks them spread-only (never arb-fireable) but that still carry a live, disclosed cross-venue price
gap. Same tier availability as the arb surface — every active-subscription tier, gated only by the
generic account/rate-limit check (no tier-specific feature gate on this REST surface, §7.1).

## Query parameters

- `category` string, nullable
- `sport` string, nullable
- `competition` string, nullable
- `location` string, nullable
- `asset` string, nullable
- `indicator` string, nullable
- `basis` string, nullable
- `institution` string, nullable
- `min_gap` number, nullable — Minimum spread_pts (cross-venue gap, in points)
- `limit` integer

## Headers

- `authorization` string

## Response `200`

Successful Response

- unknown

## Other responses

- `401` — Missing or invalid API key
- `402` — Subscription inactive
- `422` — Validation Error
- `429` — Rate limit exceeded
- `503` — Auth admission gate full (transient) — retry shortly, see retry_after

---

[API](https://skmtc.net/dino/apis/dino-markets-api.md) · [All operations](https://skmtc.net/dino/apis/dino-markets-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/dino/dino-markets-api/revisions/8cbe8774824f/schema)
