Football-Data.org

European football competitions and tables

AUTH NONECORS AGENT ?HTTPS COMMERCIAL ?

Major league competitions, matches and squads. Free registration token required; competitions list is the lightest smoke test.

HOW IT'S SCORED ⓘ
Status badge · for your READMEshipapis health badge: — · unmonitored
ON PROBE SCHEDULE

We probe a documented GET and expect 2xx JSON — full uptime and health score. Open provider docs ↗

Uptime historystarts after first probe

On our probe schedule. Uptime charts appear after the first check lands.

Example responsefrom provider docs — not verified by us
GET https://api.football-data.org/v4/competitions

{
  "count": 187,
  "filters": {},
  "competitions": [
    {
      "id": 2006,
      "area": {
        "id": 2001,
        "name": "Africa",
        "code": "AFR",
        "flag": null
      },
      "name": "WC Qualification CAF",
      "code": "QCAF",
      "type": "CUP",
      "emblem": null,
      "plan": "TIER_FOUR",
      "currentSeason": {
        "id": 1609,
        "startDate": "2023-11-15",
        "endDate": "2025-10-13",
        "currentMatchday": 10,
        "winner": null
      }
    },
    {
      "id": 2176,
      "area": {
        "id": 2001,
        "name": "Africa",
        "code": "AFR",
        "flag": null
      },
      "name": "Africa Cup",
      "code": "AC",
      "type": "CUP",
      "emblem": "https://crests.football-data.org/ac.png",
      "plan": "TIER_FOUR",
      "currentSeason": {
        "id": 2385,
        "startDate": "2025-12-21",
        "endDate": "2026-01-18",
        "currentMatchday": 3,
        "winner": null
      }
    }
  ]
}
Call itcurl · fetch · python
curl "https://api.football-data.org/v4/competitions"
const res = await fetch("https://api.football-data.org/v4/competitions");
const data = await res.json();
console.log(data);
import requests

res = requests.get("https://api.football-data.org/v4/competitions")
print(res.json())

BROWSER CALLS BLOCKED (NO CORS/HTTPS) — USE THE CURL SNIPPET

Endpoints · 2On scheduleFULL DOCS ↗
On schedule — GET /competitions awaits first probe
GET/competitionsPROBED

European football competitions and tables

GET/competitions?limit=5

Paginated variant with limit parameter.

Machine-readable spec

We probe a documented GET and expect 2xx JSON — full uptime and health score. Export includes every documented route below.

Response-shape history

Not tracked yet. Shape-change history starts once this API joins our probe schedule.

Football-Data.org: common questions

Is Football-Data.org free to use?

Yes — Football-Data.org is a free health & food API. Free tier: Free — limits not published. Whether the free tier allows commercial use is unclear — check the provider docs.

Does Football-Data.org need an API key?

No — Football-Data.org needs no API key or signup. You can call it straight away; rate limits still apply (Unpublished).

Can I call Football-Data.org from the browser?

Not directly — Football-Data.org doesn't send browser-friendly CORS headers, so call it from a server or proxy instead. Copy the curl or Python snippet on this page to get started.

Is Football-Data.org up right now?

Football-Data.org is catalogued but not yet on our probe schedule, so we don't publish a live status for it. Check the provider's own status page or docs for its current state.