Connect your agent
to live football
Built for the AI era: match state, odds and settled signals from 335k matches, served through a clean API your agents can read without a dashboard.
Search across thousands of live matches
Query match state, pressure and current lines across every league we cover, in one call, to power your agents.
| Match | Min | Score | Tempo | SOT | Poss | FT line |
|---|---|---|---|---|---|---|
| AZ Picerno ASD v CataniaItaly Serie C Group C | 92' | 2–4 | 1.18 | 4–5 | 53–47 | — |
| SAPA/2 v PIF ParainenFinland Kolmonen | 67' | 2–1 | 1.45 | 3–2 | 51–49 | 4.25 · 2.075 |
| Ironi Tiberias v Hapoel Jerusalem FCIsrael Premier League | 80' | 1–2 | 1.18 | 3–3 | 42–58 | — |
| Casertana v Team AltamuraItaly Serie C Group C | 71' | 0–0 | 1.18 | 0–0 | 64–36 | 0.5 · 1.825 |
| Belen Arco Zaragoza v Politecnico J.I.C.Colombia Regional League | 50' | 1–0 | 1.26 | 5–2 | 61–39 | 2.25 · 1.8 |
| Grasshoppers v FC SionSwitzerland Super League | 56' | 2–1 | 0.73 | 3–2 | 39–61 | — |
Snapshots from the live stream, 2026-09-15. Tempo = dangerous attacks per minute, both teams.
| Date | Opponent | GF–GA | SOT | Corners | Dang. att. | Poss |
|---|---|---|---|---|---|---|
| 2026-09-06 | Fram Reykjavik | 2–2 | 6 | 3 | 63 | 58% |
| 2026-08-23 | Valur Reykjavik | 2–0 | 6 | 8 | 61 | 53% |
| 2026-08-20 | Borac Banja Luka | 1–3 | 5 | 10 | 115 | 58% |
| 2026-08-13 | FC Thun | 3–2 | 6 | 2 | 43 | 57% |
| 2026-08-09 | IBV Vestmannaeyjar | 2–2 | 5 | 9 | 96 | 59% |
| 2026-07-24 | Keflavik | 5–1 | 5 | 12 | 0 | 55% |
| 2026-07-21 | Hapoel Beer Sheva | 2–1 | 4 | 7 | 68 | 50% |
| 2026-07-07 | Gyori ETO | 1–0 | 1 | 5 | 0 | 50% |
Analyze deep real-time and historical datasets
Give your agents match timelines and final-state stats going back to 2020: goals, shots, corners, pressure and possession, snapshot by snapshot.
Extract precise context from settled signals
Every one of 768k signals carries the full game state at entry and its settled outcome. Pull the exact context behind any of them for research and model training.
Most recent settled production signals. Outcomes settled against final scores.
A single source of truth for football data
Everything your agent needs about a match, from one API — no scraping, no stitching feeds.
- Fixtures & resultsUpcoming, live and finished matches across 2,139 leagues
- Live match stateScore, minute, pressure, shooting and possession as it happens
- TimelinesEvery snapshot of a match, oldest first
- Match statsFinal-state stats per match and rolling team aggregates
- Odds & line movementPre-match and in-play lines as implied probabilities and deltas
- Form & head-to-headScoring and conceding profiles by half, corner profiles
- Signal ledger768k in-play signals with entry state and settled outcome
- Match screenerFilter live or historical matches by any state expression
- Smart-money flow933k trades from 250 vetted prediction-market wallets
| STATE | ||
| Minute | 92' | |
| Score | 2–4 | |
| PRESSURE | ||
| Dangerous attacks (H / A) | 38 / 71 | 1.18 /min |
| Pressure ratio, home | 0.35 | |
| Possession (H / A) | 53% / 47% | |
| SHOOTING | ||
| Shots on target (H / A) | 4 / 5 | 0.98 /10min |
| MARKET | ||
| FT goal line | closed | |
| Over / Under | — | |
Settled, not scraped
Every number on this page is computed from the same tables the API serves, and every signal is settled against the final score.
55,232 matches in the window · 176 countries · 2,139 leagues
| Market | Signals settled, 12 mo | Avg odds | Hit rate | Settled |
|---|---|---|---|---|
| Bet a goal before FT | 40,900 | 2.07 | 45.1% | 100% |
| Bet a goal before HT | 24,186 | 2.04 | 45.7% | 100% |
| Bet no goal before FT | 18,988 | 1.92 | 52.9% | 100% |
| Bet over corners before FT | 10,260 | 1.90 | 49.3% | 100% |
| Bet a corner before FT | 2,071 | 1.94 | 45.9% | 100% |
Outcomes are settled against final scores within hours of full time. Hit rates are the raw ledger, not a strategy.
Clean and effortless APIs
Predictable JSON, snake_case fields, cursor pagination. One key, every dataset. An MCP server for Claude and ChatGPT, an OpenAPI spec for everything else.
Read the docsimport requests
r = requests.get(
"https://api.polx.io/v1/matches/191304262/live",
headers={"X-API-Key": "polx_..."},
)
match = r.json() const r = await fetch(
"https://api.polx.io/v1/matches/191304262/live",
{ headers: { "X-API-Key": "polx_..." } },
);
const match = await r.json(); curl https://api.polx.io/v1/matches/191304262/live \
-H "X-API-Key: polx_..." {
"match_id": 191304262,
"league": {
"name": "Finland Kolmonen",
"country": "fi"
},
"minute": 67,
"half": 2,
"score": {
"home": 2,
"away": 1
},
"stats": {
"dangerous_attacks": {
"home": 46,
"away": 51
},
"shots_on_target": {
"home": 3,
"away": 2
},
"possession": {
"home": 51,
"away": 49
}
},
"derived": {
"tempo_per_min": 1.45,
"pressure_ratio_home": 0.47
},
"odds": {
"ft_goals": {
"line": 4.25,
"over": 2.075,
"under": 1.725
},
"implied": {
"over": 0.454
}
},
"as_of": "2026-09-15T18:30:00Z"
} Start building today
Connect your agent to live, structured football data through a clean, predictable API. Free for the first 50 accounts while we're in preview — no card.