---
title: "Price movement feed"
method: GET
path: "/v1/sports/{sport_key}/odds/movements"
tags: ["Sports"]
---

# Price movement feed

`GET /v1/sports/{sport_key}/odds/movements`

## Request

- Base URL: `https://api.puntersedge.online`
- URL: `https://api.puntersedge.online/v1/sports/{sport_key}/odds/movements`
- Auth: API key in header `X-API-Key`

Cost: 5 credits. Returns detected home/draw/away price movements from historical snapshots.

Paid tiers only — 403 on Free and Hobby. Same gate as the history endpoint above; the 403
body names the plans that include it.

An unknown `sport_key` returns 404 and costs nothing.

## Path parameters

- `sport_key` string, required

## Query parameters

- `since` string, nullable: ISO date/time; defaults to 24 hours ago
- `bookmakers` string, nullable: Comma-separated bookmaker keys, case-insensitive. An unrecognised key is a free 422 naming the valid keys, so a typo costs nothing.
- `market` string
- `min_delta` number

## Headers

- `X-API-Key` string
- `X-RapidAPI-Proxy-Secret` string

## Response `200`

Successful Response

- unknown

## Other responses

- `401`: Missing or invalid API key. Send `X-API-Key`. See https://puntersedge.online/developers/errors
- `402`: Monthly credit allowance exhausted for this plan. Upgrade at https://puntersedge.online/api/pricing
- `422`: Validation Error
- `429`: Rate limit exceeded for this plan. Honour the `Retry-After` header (seconds) before retrying. See https://puntersedge.online/developers/rate-limits
- `500`: Unexpected server error. Safe to retry with backoff.

---

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