Discover/Stake API
live

Stake APIstake.com

Access live, upcoming, and detailed betting odds from Stake.com across soccer, basketball, tennis, esports, and more via 3 structured endpoints.

Endpoint health
verified 1d ago
get_live_odds
get_sport_odds
get_fixture_odds
3/3 passing latest checkself-healing
Endpoints
3
Updated
24d ago

What is the Stake API?

The Stake.com API exposes sports betting odds across 3 endpoints, covering popular fixtures by sport, live and upcoming lines organized by tournament, and full market breakdowns for individual matches. The get_fixture_odds endpoint alone returns odds across market groups including 1x2, over/under, handicap, corners, cards, and player props, alongside fixture status, start time, and competitor details.

Try it
Market group to include.
Maximum number of fixtures to return.
Sport slug.
api.parse.bot/scraper/463ff1be-bbf1-46bf-af6a-f73efe0771c8/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/463ff1be-bbf1-46bf-af6a-f73efe0771c8/get_sport_odds?group=winner&limit=10&sport=soccer' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace stake-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

from parse_apis.stake.com_sports_odds_api import Stake, Sport, MarketGroup, FixtureType, FixtureMarketGroup

stake = Stake()

# Get popular soccer fixtures with winner odds
sport_odds = stake.sportoddses.get(sport=Sport.SOCCER, group=MarketGroup.WINNER)
print(sport_odds.sport, sport_odds.total_fixtures)

for fixture in sport_odds.fixtures:
    print(fixture.name, fixture.slug, fixture.status)
    print(fixture.tournament.tournament_name)
    for market in fixture.markets:
        for outcome in market.outcomes:
            print(outcome.name, outcome.odds, outcome.active)

# Get live fixtures
live = stake.liveoddses.get(sport=Sport.BASKETBALL, type=FixtureType.LIVE, group=MarketGroup.WINNER)
print(live.sport, live.type, live.total_fixtures)

for fixture in live.fixtures:
    print(fixture.name, fixture.start_time)
    if fixture.score:
        print(fixture.score.home, fixture.score.away, fixture.score.match_status)

# Drill into a specific fixture for detailed market odds
detail = stake.fixture("46081991-mexico-south-africa").details(group=FixtureMarketGroup.MAIN)
print(detail.name, detail.total_markets, detail.status)

for grp in detail.available_groups:
    print(grp.name, grp.translation)

for market in detail.markets:
    print(market.market_name, market.template_name)
    for outcome in market.outcomes:
        print(outcome.name, outcome.odds, outcome.active)
All endpoints · 3 totalmissing one? ·

Get popular fixtures with odds for a specific sport. Returns the top tournament's fixtures with winner market odds, plus a list of all tournaments and categories for the sport. Each fixture includes competitors, start time, status, and market outcomes with decimal odds. The limit parameter caps the number of fixtures returned.

Input
ParamTypeDescription
groupstringMarket group to include.
limitintegerMaximum number of fixtures to return.
sportstringSport slug.
Response
{
  "type": "object",
  "fields": {
    "sport": "sport display name",
    "fixtures": "array of fixture objects with odds, competitors, tournament info, and scores",
    "sport_id": "unique sport identifier",
    "categories": "array of categories with nested tournaments",
    "total_fixtures": "number of fixtures returned",
    "top_tournaments": "array of top tournament summaries with fixture counts"
  },
  "sample": {
    "data": {
      "sport": "Soccer",
      "fixtures": [
        {
          "name": "Mexico - South Africa",
          "slug": "46081991-mexico-south-africa",
          "score": {
            "match_status": "Not started"
          },
          "status": "active",
          "markets": [
            {
              "group": "winner",
              "status": "active",
              "outcomes": [
                {
                  "name": "Mexico",
                  "odds": 1.42,
                  "active": true
                }
              ],
              "market_id": "44439334-fd09-40b5-8b06-a6817a304894",
              "specifiers": null,
              "market_name": "1x2",
              "template_name": "1x2"
            }
          ],
          "fixture_id": "94e3515e-649f-4542-a752-b3b8445388e5",
          "start_time": "Thu, 11 Jun 2026 19:00:00 GMT",
          "tournament": {
            "category": "International",
            "category_slug": "international",
            "tournament_id": "24556add-af26-4844-b338-07fc47991731",
            "tournament_name": "World Cup",
            "tournament_slug": "world-cup"
          },
          "competitors": [
            {
              "name": "Mexico",
              "abbreviation": "MEX",
              "country_code": "MX"
            }
          ],
          "market_count": 112
        }
      ],
      "sport_id": "5b4b60b9-ed95-41e7-97e3-f33aa172cf12",
      "categories": [
        {
          "id": "737379d9-a808-42fd-8303-50864b021649",
          "name": "International",
          "slug": "international",
          "tournaments": [
            {
              "id": "24556add-af26-4844-b338-07fc47991731",
              "name": "World Cup",
              "slug": "world-cup",
              "fixture_count": 72
            }
          ],
          "fixture_count": 74
        }
      ],
      "total_fixtures": 10,
      "top_tournaments": [
        {
          "id": "24556add-af26-4844-b338-07fc47991731",
          "name": "World Cup",
          "slug": "world-cup",
          "category": "International",
          "fixture_count": 72
        }
      ]
    },
    "status": "success"
  }
}

About the Stake API

Endpoint Overview

The API provides three endpoints. get_sport_odds returns top-tournament fixtures for a given sport slug — soccer, basketball, tennis, mma, counter-strike, dota-2, and others — along with a nested category and tournament hierarchy and a top_tournaments array with per-tournament fixture counts. The optional group parameter filters returned odds to winner, totals, or handicap markets. get_live_odds expands on this with a type parameter that switches between live, popular, and upcoming fixtures, and supports fixture_limit and tournament_limit to control response size. Live fixtures include real-time scores in the response.

Fixture-Level Detail

get_fixture_odds requires a fixture slug in the format <fixture-id>-<team-a>-<team-b>, which comes from the fixture listings returned by the other two endpoints. The response contains a markets array with all available market groups and their outcomes with current odds, plus teams with home/away qualifiers, status (active, live, or ended), start_time, tournament nesting up to sport level, and a total_markets count. The optional group parameter targets specific market categories — goals, corners, cards, half, player, combos, specials, and others — so callers can narrow the payload to what they need.

Coverage and Data Shape

Sport coverage spans traditional sports (soccer, cricket, baseball, ice hockey, horse racing) and esports (Counter-Strike, Dota 2). Every fixture object across all three endpoints includes competitors, tournament metadata, and odds. The categories field in get_sport_odds provides a full hierarchical map of all available categories and nested tournaments for the sport, useful for building sport-navigation interfaces or iterating across all available competitions.

Reliability & maintenanceVerified

The Stake API is a managed, monitored endpoint for stake.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when stake.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official stake.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
1d ago
Latest check
3/3 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Monitor live in-play odds movements across soccer and basketball fixtures using get_live_odds with type=live
  • Build an odds comparison feed by pulling winner market odds for multiple sports via get_sport_odds
  • Track line movements for esports markets (Counter-Strike, Dota 2) before and during matches
  • Aggregate tournament-level fixture counts from top_tournaments to identify high-volume betting events
  • Pull full handicap and over/under markets for a specific match using get_fixture_odds with group=handicap or group=totals
  • Enumerate all categories and nested tournaments for a sport to build a structured betting navigation tree
  • Detect fixture status changes (active → live → ended) by polling get_fixture_odds for a known fixture slug
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Stake.com have an official developer API?+
Stake.com does not publish a documented public developer API for third-party access to its odds data.
What does `get_live_odds` return differently from `get_sport_odds`?+
get_live_odds accepts a type parameter (live, popular, upcoming) and returns fixtures grouped by tournament with real-time scores for live matches. It also supports fixture_limit and tournament_limit to cap response size per tournament. get_sport_odds focuses on the top tournament for a sport and additionally returns a full categories hierarchy with nested tournaments, which get_live_odds does not include.
Does the API return historical odds or settled match results?+
Not currently. All three endpoints cover active, live, and upcoming fixtures — get_fixture_odds returns a status field that can be ended, but the API is oriented toward current odds rather than historical lines or settlement outcomes. You can fork this API on Parse and revise it to add an endpoint targeting historical fixture data.
How do I get the `fixture` slug needed for `get_fixture_odds`?+
The fixture slug is returned in the fixtures array of both get_sport_odds and get_live_odds. It follows the pattern <fixture-id>-<team-a>-<team-b>. Pass that value directly as the fixture parameter to get_fixture_odds.
Does the API cover player prop markets?+
Player prop markets are included when available for a fixture. In get_fixture_odds, setting group=player returns player-specific outcomes where the source provides them. Coverage of player props varies by sport and fixture; not all matches expose this market group. If a sport or market type you need is missing, you can fork this API on Parse and revise it to target additional market groups.
Page content last updated . Spec covers 3 endpoints from stake.com.
Related APIs in SportsSee all →
oddsportal.com API
Track sports betting odds, matches, and results across multiple sports and leagues in real-time, while viewing team standings and match details to stay informed on upcoming games. Access comprehensive betting data and historical results from OddsPortal to compare odds and analyze sports outcomes.
oddschecker.com API
Compare betting odds across multiple bookmakers for a wide range of sports, markets, and events on Oddschecker. Retrieve match details, race cards, market outcomes, and bookmaker-by-bookmaker odds to identify the best available prices.
oddspedia.com API
Find profitable betting opportunities and compare real-time odds across dozens of bookmakers to identify sure bets, value bets, and dropping odds for various sports. Filter matches by sport, league, and region to make informed betting decisions with comprehensive odds comparisons and match information.
pinnacle.com API
Access real-time and pre-event sports betting odds, matchups, and markets from Pinnacle. Retrieve data across all available sports and leagues, monitor live events with scores and live odds, and explore political and entertainment betting markets. Covers full market depth including spreads, totals, moneylines, props, and alternate lines.
sportybet.com API
Get real-time betting odds and live scores for football, basketball, and other sports from SportyBet. Browse upcoming events with full market odds, monitor live matches as they happen, and view sport listings with event counts across multiple markets.
unibet.com API
Access live betting odds, browse sports categories and upcoming matches, and search for specific events across multiple leagues in real-time. Get detailed event information including current odds for thousands of sports matchups to inform your betting decisions.
sportsbookreview.com API
Compare sportsbooks and their ratings, view real-time betting odds across sports and specific matchups, monitor how lines move over time, and discover expert picks and promotions all in one place. Make more informed betting decisions by accessing comprehensive sportsbook reviews, odds comparisons, and professional analysis.
oh.bet365.com API
Retrieve current betting odds from Bet365 for major sports leagues, including spread, moneyline, and over/under totals. Compare betting lines across sports such as NBA, MLB, NHL, soccer, and tennis.