PointsBet CA API.
PointsBet CA esports lines, normalized.
Quick answer: PointsBet Canada esports odds are live on KashRock: match winner, map winners, series and kill handicaps, total maps, total kills and first-blood markets for CS2 and League of Legends, on the same canonical ids as the other books. One key, GET /v7/{sport}/lines.
What PointsBet CA posts
PointsBet Canada posts team mainlines: match winner, per-map winners, series map handicaps, total maps, per-map kill handicaps, total kills and first-blood objective markets. Every price lands on the same kr_match_id and market names as the rest of the line books.
Where PointsBet CA shows up
- : /lines: PointsBet CA's price per market next to the consensus fair price, the books object reports its row count and age in seconds on every call.
- : /parlays: Name pointsbetca as the leg book and price a ticket or discover +EV parlays against the rest of the market.
- : /flow: When pointsbetca moves a number first, the shift and steam plays record which venue led and how far the price ran.
Endpoints
PointsBet CA is read through the shared v7 surface: no book-specific integration, no upstream fetch on the request path.
| Endpoint | What it returns | Key filter |
|---|---|---|
| GET /v7/{sport}/lines | Per-book prices and the consensus view | book row: pointsbetca |
| GET /v7/{sport}/parlays | Price or discover parlays with pointsbetca as the leg book | book=pointsbetca |
| GET /v7/{sport}/flow | Steam, shift, volume and whale plays where pointsbetca moves lead | kind=steam|shift|volume|whale |
| GET /v7/meta | The registry entry: key, kind, supported markets | key=pointsbetca |
Live in the book registry
The real /v7/meta entry: the key, kind, and what the book supports, exactly as the API reports it.
{
"book_id": 803,
"key": "pointsbetca",
"display_name": "PointsBet CA",
"status": "active",
"aliases": [
"pointsbet ca",
"pointsbet.ca",
"on.pointsbet.ca",
"pointsbet"
]
}Reading it honestly
The booksobject on /lines reports each venue's presence, row count, and age in seconds on every call. When PointsBet CA has nothing posted for a board, the response says so instead of hiding the gap: an empty board is an answer, not an error.
Start in minutes
- : Create a key on Pricing : Sandbox is $0; book lines need Hobby and up
- : Call
GET /v7/{sport}/linesand read thepointsbetcarows - : Compare against the consensus fair price on the same
kr_match_id
Quick reference
| Field | Value |
|---|---|
| Book key | book=pointsbetca |
| Surfaces | /lines, /parlays, /flow |
| Registry | /v7/meta key=pointsbetca |
| Plan | Hobby and up, from $29.99/mo |
If you need a normalized feed instead of another UI wrapper, the esports api exposes live boards, schedules, and history on one schema: with the IDs and outcome patterns that keep backtests and grading honest. Start free on Sandbox, or see published pricing.