What you are looking at
The board above is not a mock-up. It lists the soccer events currently available from the 7 Unicorn Gaming odds API, with the same event ids, market ids and in-play flags your integration will receive. Each row is one market on one fixture: home, away and the draw as three runners on Match Odds, plus Over/Under and Correct Score where the exchange offers them. Open a live match and the back and lay prices refresh every second or so; a suspended market shows its status change the moment the feed suspends it, which is the behaviour you should test your settlement logic against.

Soccer
Only live (in-play) matches carry meaningful prices on this page. Pre-match events appear in the list with their market ids so you can see how far ahead the schedule is published, but the demo does not show early prices.
What the JSON looks like
Each market returns one object per poll or push. Sample, field names as in the docs:
{
"event_id": "34012877",
"event_name": "Arsenal v Chelsea",
"market_id": "1.234567890",
"market_name": "Match Odds",
"in_play": true,
"status": "OPEN",
"runners": [
{"selection_id": 1001, "name": "Arsenal",
"back": [{"price": 1.85, "size": 12400}],
"lay": [{"price": 1.87, "size": 9800}]},
{"selection_id": 1002, "name": "Chelsea",
"back": [{"price": 2.16, "size": 7600}],
"lay": [{"price": 2.18, "size": 5100}]}
],
"updated_at": "2026-09-18T14:02:11Z"
}Sizes are the amounts available at that price in the exchange currency; prices are decimal odds. When a market closes you receive the same object with status CLOSED and, once known, a winner selection so your backend can settle without a second call.