Skip to main content

Get All Sports

Returns the 15 sports supported by V6 with their numeric IDs and slugs.

Get Match Counts

Live + today match counts for every sport. Useful for dashboard tiles.
Cache TTL: 15 s
Search is a global, sport-less route: the sport segment in the URL selects the feed, and sport is an optional query filter. It is the primary way to resolve a club — including deep lower-tier clubs — from its name, and returns the opaque V6 entity id plus the logo filename you pass to the image routes.
Strip the !w80 thumbnail suffix and fetch the logo:
Contract details, all verified 14 Sep 2026:
  • Results are capped at 6 teams and 6 players per query. Search resolves an entity; it does not enumerate a catalogue.
  • sport accepts the slug only (?sport=football). A numeric sport id returns 400.
  • Missing q returns 400 Missing q parameter; a missing key returns 401.
  • country is populated for most clubs but is null for some youth and lower-tier teams, so keep a fallback when you match on name + country.
  • Niche queries can legitimately return empty arrays. When that happens, V3 search is a useful second pass — it returns the country in-line plus an absolute, key-less logo URL — but it is fuzzy, so always reject a result whose country does not match.

Resolving teams from schedule feeds

Schedule feeds also carry fully populated team objects, which is handy for bulk indexing without one search call per club:
Every match exposes homeTeam / awayTeam with the opaque V6 id, name and logo filename, plus competition.country with name and ISO code. /today, /live and /team/{teamId} return the same shape. Caveats: the country comes from competition.country (the team object’s own country is null here), and only clubs with a fixture inside the harvested window appear — dormant or out-of-season clubs need the search endpoint.

Country competitions

/api/v1/{sport}/country/{countryId}/competitions and /api/v1/{sport}/competitions/hot both return data (verified 14 Sep 2026: competitions/hot → 9 competitions, country/10001/competitions → 70). An id that is not a valid football country returns 200 with an empty competitions array — that is the correct answer, not an error. Use /countries to get valid ids.

Cache Stats

Internal cache diagnostics — useful for debugging stale data and observing the V6 hit rate.
The cache auto-evicts expired entries once size exceeds 2000.

FIFA Rankings

See the dedicated Match H2H & Rankings page — both /fifa/rankings and /rankings?sport_id=1 (with 348 historical publication dates) are documented there.
Last modified on September 14, 2026