Soccer odds API

Soccer odds for 80+ leagues from 46 books in one JSON shape. One key per league, from epl and la_liga to usa_mls, plus corners, cards, props and in-play.

Every league has its own key, 80+ in all: epl, la_liga, italy_serie_a, germany_bundesliga, france_ligue_one, uefa_champs_league, usa_mls and more. Or ask for the soccer key and add a league to narrow it. Each match has one stable id, so you never match club names across books.

Soccer has a long market list. You get the three-way match result, handicap and total ladders, both teams to score, double chance, corners, cards, halves and team totals. Player props cover scorers, shots and cards, and live odds are included from the Growth plan.

curl -H "X-API-Key: $ODDSLINK_KEY" \
  "https://oddslink.app/v1/sports/epl/odds?markets=h2h,spreads,totals"
[
  {
    "id": "soccer:liverpool-manchestercity:2026-10-11",
    "sport_key": "epl",
    "sport_title": "EPL",
    "commence_time": "2026-10-11T15:30:00.000Z",
    "is_live": false,
    "status": "scheduled",
    "home_team": "Liverpool",
    "away_team": "Manchester City",
    "bookmakers": [
      {
        "key": "pinnacle",
        "title": "Pinnacle",
        "last_update": "2026-10-11T05:26:27.040Z",
        "markets": [
          {
            "key": "totals",
            "last_update": "2026-10-11T05:26:27.040Z",
            "outcomes": [
              {
                "name": "Over",
                "price": -382,
                "point": 2,
                "size": {
                  "kind": "posted_limit",
                  "amount": 10000
                }
              },
              {
                "name": "Under",
                "price": 302,
                "point": 2,
                "size": {
                  "kind": "posted_limit",
                  "amount": 10000
                }
              }
            ]
          }
        ]
      },
      {
        "key": "draftkings",
        "title": "Draftkings",
        "last_update": "2026-10-11T05:26:38.115Z",
        "markets": [
          {
            "key": "h2h",
            "last_update": "2026-10-11T05:26:38.115Z",
            "outcomes": [
              {
                "name": "Manchester City",
                "price": 125
              },
              {
                "name": "Liverpool",
                "price": 195
              },
              {
                "name": "Draw",
                "price": 275
              }
            ]
          },
          {
            "key": "spreads",
            "last_update": "2026-10-11T05:26:38.115Z",
            "outcomes": [
              {
                "name": "Manchester City",
                "price": -116,
                "point": -0.25
              },
              {
                "name": "Liverpool",
                "price": -125,
                "point": 0.25
              }
            ]
          },
          {
            "key": "totals",
            "last_update": "2026-10-11T05:26:38.115Z",
            "outcomes": [
              {
                "name": "Over",
                "price": -172,
                "point": 2.5
              },
              {
                "name": "Under",
                "price": 140,
                "point": 2.5
              }
            ]
          }
        ]
      }
    ],
    "unmatched_bookmakers": []
  }
]

A real Soccer response from 11 Oct 2026, trimmed.

More than the main line

Match result, handicap, total

Three-way moneyline, spread with Asian handicap lines, and the whole total ladder, main line first.

Both teams to score

Yes and no, for the full match and the first half, next to double chance and draw no bet lines.

Corners and cards

Total corners, corner handicaps and total cards, for the full match and the first half.

Halves and team totals

First half and second half lines for the main markets, and each team's own total.

Player props

Anytime and first goalscorer, shots on target, assists and cards, on Growth and up.

In-play

Yes. Live soccer prices while the match is on, from the Growth plan and up.

Markets

Soccer markets and periods
MarketPeriods
Moneyline (match result, three-way)Full match, halves
Spread (handicap), with alternate linesFull match, halves
Total goals, with alternate linesFull match, halves
Team totalsFull match, halves
Both teams to scoreFull match, first half
Double chanceFull match
Draw no betFull match, first half
Total corners and corner handicapFull match, first half
Total cardsFull match
Player props: scorers, shots on target, assists, cardsNone

Books for Soccer

1xBet4Casters888sportBally Betbet105bet365BetanoBetfairBetMGMBetOnlineBetRiversBetUSBetwayBovadaCaesarsCircaCloudbetDraftKingsFanatics MarketsFanDuelFliffHard RockKalshiLowVigMatchbookNovigPinnaclePolymarketProphetXReBetSBOBETShuffleSky BetSportBetStakesx.bettheScore BetThunderpickUnibetWilliam Hill

Every book on every plan

Monthly plans, request allowances and features
PlanPer monthRequests a monthIn-play and propsHistory
Free$01,000NoNo
Starter$2420,000NoNo
Scale$99500,000Yes2 years
Business$1995,000,000YesAll of it

Compare every plan

Questions

How do I get one league?

Use its key as the sport, for example epl, la_liga or usa_mls. You can also ask for soccer and add ?league=epl.

How many soccer leagues do you carry?

72, each with its own key. The key list is in the sport keys reference, and GET /v1/sports returns it.

Which books carry soccer?

All 46 books. A book shows up on a game once it prices it. Use the bookmakers filter to choose some, or leave it off to get every book.

Which soccer markets do you carry?

Match result, handicap, totals, team totals, both teams to score, double chance, corners, cards and draw no bet lines, with halves where the market has them.

Are soccer player props included?

Yes, on Growth and up. Props have their own route and you name the markets, such as player_goal_scorer_anytime or player_shots_on_target. Soccer props use the soccer key.

Is in-play included?

Yes. Live soccer prices are on the Growth plan and up, and so are player props.

Get soccer odds from 46 books in one call