One key, one request, live data.

A plain REST API that returns JSON over HTTPS. Your developers get a step-by-step guide, a full reference and copy-paste examples, so the integration fits into an afternoon.

  • REST and JSON
  • Examples in four languages
  • Ready for AI assistants
Today's live soccer scores
const res = await fetch(
  "https://api.sportstatsapi.com/api/v1/soccer/matches/live",
  { headers: { Authorization: "Bearer sk_live_…" } }
);
const { data } = await res.json();
200 OKResponse, shortened. A real match on 6 October 2026.
{
  "success": true,
  "data": [{
    "league_name": "Slovenia: 2. Snl",
    "status": "52", "start_time": "14:00",
    "home_team": { "name": "Bilje", "score": 1 },
    "away_team": { "name": "Jadran Dekani", "score": 0 },
    "events": [{ "@type": "goal", "@minute": "9" }]
  }]
}

From key to live page in three steps.

No SDK to install and no approval to wait for. If your team can call a URL, they can use SportStatsAPI.

  1. 1

    Copy your key

    Your access key arrives right after payment and lives in your account, where you can rotate it at any time.

    Authorization: Bearer sk_live_…
  2. 2

    Make the first request

    Ask for today's matches in your sport. Every response is JSON with the same shape across all eight sports.

    GET /api/v1/soccer/matches
  3. 3

    Show it on your site

    Use the fields to build your own views, or drop in the ready sentences from Insights. Add a language with one parameter.

    GET …/matches/{id}/briefing?lang=de

Everything your product needs, in one API.

The main areas of the API at a glance. The reference in the docs lists every field and parameter.

  • Data

    Competitions

    GET /api/v1/{sport}/leagues

    Every competition of a sport with its id and name; the coverage page shows how much data each has.

  • Data

    Fixtures and results

    GET /api/v1/{sport}/matches

    Matches by date, date range or competition, from the schedule to the final score.

  • Data

    Live scores

    GET /api/v1/{sport}/matches/live

    Scores, minute and key events for every match in play, updated as it happens.

  • Data

    Standings

    GET /api/v1/{sport}/leagues/{id}/standings

    League tables with position, played, won, lost and points, updated after every match.

  • Data

    Statistics

    GET /api/v1/soccer/matches/{id}/stats

    Team statistics and line-ups, where the competition provides them.

  • Data

    Teams and players

    GET /api/v1/{sport}/teams/{id}

    Team profiles and squads; players at /players/{id}.

  • Insights

    Briefings

    GET /api/v1/{sport}/matches/{id}/briefing

    The match briefing as structured facts and ready sentences, in five languages.

  • Insights

    Facts feed

    GET /api/v1/{sport}/facts

    What changed: runs, comebacks and table moves, newest first.

{sport} is soccer, basketball, tennis, handball, volleyball, hockey, baseball or american-football. The full reference lists every field and parameter.

Built for AI assistants too.

Connect your chatbot or assistant to the same data through our endpoint for AI agents, so its answers come from real results instead of guesses.

Your assistant, connected to SportStatsAPI
When does Arsenal play next, and how are they doing?
get_matches(team: "Arsenal", next: 1)
Arsenal host Chelsea on Sunday at 16:30 in the Premier League. They are 2nd on 20 points and unbeaten in their last nine home league matches. A win would take them top on goal difference.
Demo conversation
  • One endpoint for agents

    Point any assistant that supports tools at mcp.sportstatsapi.com and it can look up fixtures, scores, tables and facts on its own.

  • Pay per request, no account

    AI agents can pay for each request in USDC as they go, with no subscription and no key to manage.

  • Works with the assistants you use

    Works with Claude and other assistants that support tool use, out of the box.

The details developers ask about.

The short answers. The docs have the long ones.

Format

REST over HTTPS, JSON responses, the same shape for every sport. Dates and times are in UTC.

Authentication

One header: Authorization: Bearer …. Rotate your key from your account at any time.

Languages

Add lang=de, es, it or fr to any request for names and Insights sentences in that language. English is the default.

Usage

Your account shows requests per day and per key, so you can see how your product uses the data.

Status and support

A public status page shows live service health. Email support is included with every plan.

Not a developer? Send them this page.

Pick a plan, pay online, and forward the key with a link to the docs. That is everything your team needs to get started.