Sign in
Use your Google account. Data is loaded directly from the Sports API using your Firebase token.
Select a market from the list.
| PLAYER / TEAM | PRE-PLAY | IN-PLAY | ||||||
|---|---|---|---|---|---|---|---|---|
| NAME | STATUS | BSP | BACK | LAY | MATCHED | BACK | LAY | MATCHED |
| {{ r.runner_name }} | {{ r.status }} | {{ r.bsp }} | {{ r.pp?.back }} | {{ r.pp?.lay }} | {{ r.pp?.matched }} | {{ r.ip?.back }} | {{ r.ip?.lay }} | {{ r.ip?.matched }} |
{{ marketAnalysis.snapshots?.reason || 'No snapshot logs available.' }}
| Date | Source | Location | Size |
|---|---|---|---|
| {{ file.dateFolder }} | {{ file.source }} | {{ file.location }} | {{ file.fileSize }} |
No definition changes in snapshot logs.
| Observed | Market time | In play | Status | Changed |
|---|---|---|---|---|
| {{ formatTime(row.observedAt) }} | {{ formatTime(row.marketTime) }} | {{ formatInPlay(row.inPlay) }} | {{ row.status || '—' }} | {{ formatChangedFields(row.changed) }} |
No timeline events in snapshot logs.
| Observed | Type | Market time | In play | Status | Detail |
|---|---|---|---|---|---|
| {{ formatTime(ev.observedAt) }} | {{ ev.type }} | {{ formatTime(ev.marketTime) }} | {{ formatInPlay(ev.inPlay) }} | {{ ev.status || '—' }} | {{ formatChangedFields(ev.changed) || (ev.rcCount != null ? ev.rcCount + ' runners' : '—') }} |
No log lines match.
| Observed | Kind | Date folder | mc |
|---|---|---|---|
| {{ formatTime(line.observedAt) }} | {{ line.kind }} | {{ line.dateFolder }} | {{ formatLogMc(line) }} |
Select a market to analyse.
No rows.
| {{ col }} |
|---|
| {{ formatAdminCell(row[col]) }} |