The first frame is {"type": "connected"}. Every frame after it is a JSON array of one or more drops, each with home, away, league, sport and sport_id, the event id and starts, the market section sect (Moneyline, Total and so on), period, outcome, the line in point where relevant, from_price, to_price, nvp, interval, alerted and the score.
On live drops the last key is live, a snapshot of the match when the price fell: status, score, soccer minute, cards and corners, basketball quarter and clock, tennis sets, games and points with the server, and the moneyline favorite. It is absent when no state is published for the event, as with most esports. The live object reference lists every key.
sse/odds-drop, one live soccer drop
data: {"type": "connected", "id": "5f0c1a92-7e3d-..."}
data: [{"home": "Hammarby", "away": "Djurgarden",
"league": "Sweden - Allsvenskan",
"from_price": 2.41, "to_price": 2.26,
"outcome": "Home", "period": 0, "sect": "Moneyline",
"id": 1632907731, "sport": "Soccer", "sport_id": 1,
"nvp": 2.33, "home_score": 1, "away_score": 1, ...,
"live": {"status": "2nd Half - 22'", "minute": 22,
"score": {"home": 1, "away": 1},
"red_cards": {"home": 0, "away": 1},
"favorite": "home", ...}}]