event_id. At kickoff, Pinnacle creates a separate live event (its own event_id), linked to the prematch by parent_id.
- Prematch odds live under the prematch
event_id. - The in-play series (with
score_home,score_away,red_cards_*on each line) lives under the live child’sevent_id.
Finding a match’s live child
resulting_unit = "Regular".
live_status
A fixture’slive_status field is:
Corners, cards & variants
Corners and Bookings are separate fixtures pointing to the main match viaparent_id. With parent_id=X (without live), you fetch these variants; with live=1, the live child.
Knowing a market or a match is no longer offered
Pinnacle never announces the end of a match. It publishes no “finished” status: it makes the object disappear from the feed. The disappearance is the message. A client waiting for a final state will wait forever. Two distinct disappearances, two signals:
Every
removed entry identifies the line by event_id, period, market, line and
units:
Removing a match waits 30 seconds before being announced. A suspended market leaves the
board and comes back; without that delay, a few seconds of suspension would be reported as
the end of a match.
On REST, without a stream
There is no notification: absence is the signal. A line no longer in/api/odds is no
longer bettable; a match no longer in /api/fixtures is no longer offered. The two agree —
a match pulled by Pinnacle disappears from both.
To find a match again once it has left the book, use
/api/settled with a since cursor: it is the only place a
finished match reappears, together with its settlement.
Lines dropped when a match goes live
At kick-off, Pinnacle does not carry every line over to in-play. The ones it drops keep their oldcutoff, which is therefore in the past — and we stop serving them. You will never
see a price whose cutoff has passed.
This is not about market types: specific lines disappear, across all markets. On a live
football match, home_totals may well keep being priced while a spread -1.25 stops.
A line removed from the book stays entirely in the history:
/api/history keeps its opening, its closing and its full
timeline.