What the API does and who it is for

The Football Prediction API, published by Boggio Analytics, sits at the intersection of sports data and predictive modelling. Rather than simply exposing raw match schedules or live scores, it exposes opinionated predictions—who will win, whether both teams will score, how many goals are likely—alongside the average bookmaker odds attached to each prediction. Past prediction accuracy is also available through a dedicated performance-stats endpoint, which lets you audit the model before committing to an integration.

The typical audience is developers building betting-adjacent products: odds comparison tools, fantasy sports assistants, Telegram bots that send pre-match summaries, or analytics dashboards for football research. The API is read-only and entirely GET-based, so there is no write surface to worry about.

Endpoint walkthrough

The API exposes 11 endpoints under the /api/v2/ path, and they fall into three logical groups.

Prediction endpoints

  • GET /api/v2/predictions — the core endpoint. Accepts iso_date (YYYY-MM-DD), federation, and market as query parameters and returns a list of matches with predictions and, for eligible subscription tiers, bookmaker odds. Dates must be expressed in the Europe/London timezone, which the provider's own code examples handle explicitly—a detail worth encoding into your client from day one.
  • GET /api/v2/predictions/{id} — retrieves the full prediction detail for a single fixture by its ID.
  • GET /api/v2/get-list-of-fixture-ids — enumerates fixture IDs, useful for batch-fetching or building a local index.

Context and stats endpoints

Once you have a fixture ID, four endpoints let you enrich a prediction with supporting data:

  • GET /api/v2/head-to-head/{id} — historical head-to-head record between the two sides.
  • GET /api/v2/home-league-stats/{id} — the home team's current league statistics.
  • GET /api/v2/away-league-stats/{id} — the equivalent for the away side.
  • GET /api/v2/home-last-10/{id} and GET /api/v2/away-last-10/{id} — recent form for each team over their last ten matches.

Discovery and monitoring endpoints

  • GET /api/v2/list-markets — returns two arrays: all available markets and those unlocked by your specific subscription. Calling this first is the recommended sanity check after setup.
  • GET /api/v2/list-federations — lists the football federations (e.g., UEFA) you can filter predictions by.
  • GET /api/v2/performance-stats — historical accuracy metrics for past predictions, broken out in a way that lets you evaluate the model's track record before you rely on it.

Prediction markets

The market query parameter on the predictions endpoint selects which type of prediction you want. Eight markets are currently defined:

Market What it predicts
classic (default) Final result: home win (1), draw (X), or away win (2)
over_25 Whether total goals exceed 2.5
over_35 Whether total goals exceed 3.5
btts Whether both teams score
home_over_05 Whether the home team scores more than 0.5 goals
home_over_15 Whether the home team scores more than 1.5 goals
away_over_05 Whether the away team scores more than 0.5 goals
away_over_15 Whether the away team scores more than 1.5 goals

Not all markets may be available on every subscription plan—the list-markets endpoint tells you which are accessible under your current tier.

Pricing breakdown

The API follows a freemium model with four tiers. A key structural detail: "Match Stats and Prediction endpoints" (predictions, head-to-head, team stats, last-10 matches) are quota-separated from "API Performance monitoring and listing endpoints" (list-markets, list-federations, performance-stats, fixture IDs).

Plan Price Match/Stats quota Listing/Monitoring quota
BASIC $0/month 100 per month 25 per day
PRO $14.99/month 1,500 per day 1,500 per day
ULTRA $24.99/month 5,000 per day 3,000 per day
MEGA (recommended) $29.99/month 30,000 per day + $0.0005 overage 3,000 per day

The BASIC tier's 100-request monthly cap on core prediction and stats calls is effectively a testing allowance rather than a production budget. At one request per match, 100 calls covers roughly three matches per day across a month—enough to verify integration logic but not to run a live product. Any team building something users will actually rely on should budget for PRO at minimum.

The jump from ULTRA to MEGA is modest ($5/month) and the quota increase is dramatic (5,000 vs 30,000 daily), with per-request overage available beyond that. For high-volume use cases—scraping predictions for every game across multiple federations—MEGA is clearly the intended tier.

Practical use cases

Pre-match briefing bots — The most natural fit. A cron job fetches tomorrow's UEFA predictions each morning, enriches each fixture with head-to-head history and recent form, then posts a summary to Slack or Telegram. The provided Python and Node.js examples implement exactly this pattern.

Odds value detection — Because the API returns the predicted outcome alongside average bookmaker odds for that outcome, it is possible to flag cases where the model's confidence diverges from implied market probability—a common starting point for value-betting research.

Model benchmarking — The performance-stats endpoint makes it straightforward to evaluate the API's historical accuracy before integrating it as a signal in a broader ensemble model.

Fantasy sports features — Team form data (last-10 matches, league stats) is useful context for recommending captain picks or differential selections in weekly fantasy formats.

Limitations and things to check before integrating

Latency — The average response time is 820 ms. For a server-side pre-match pipeline that runs hourly, this is acceptable. For anything attempting to serve real-time or user-facing synchronous requests, you should cache responses aggressively—predictions for a given date do not change moment-to-moment.

Timezone handling — The API uses Europe/London (UK) time. Supplying dates in another timezone will return unexpected results. Build timezone conversion into your client from the start rather than retrofitting it later.

Odds access is subscription-gated — The code examples explicitly handle the case where odds is absent from the response because the plan does not include it. If bookmaker odds are central to your use case, confirm that your plan exposes them before building around the data.

Federation coverage — Use list-federations to see which competitions are covered before assuming a specific league is available.

Free-tier quota cliff — The gap between BASIC (100/month total) and PRO (1,500/day) is steep. There is no intermediate tier for low-volume paid use, so projects that outgrow the free tier face a jump to $14.99/month immediately.

Getting started

The API is distributed exclusively through RapidAPI. Authentication is handled by attaching your X-RapidAPI-Key to every request as an HTTP header—no OAuth flow, no token exchange, just a static key. Keep this key out of client-side code and version control.

The recommended first call is GET /api/v2/list-markets, which confirms your key is valid and shows which prediction markets your subscription unlocks. From there, a request to /api/v2/predictions with iso_date set to tomorrow and market set to classic will return a sorted list of upcoming matches with predictions—a functional starting point in under five minutes. Full code examples in Python, Node.js, and Java are available in the provider documentation on RapidAPI.