Champions LeagueSoccer

Champions League Odds API

Pull real-time UEFA Champions League odds into your platform through a fast, reliable REST API. 1X2, Asian handicaps, goalscorer markets and player props from 85+ sportsbooks worldwide.

The Champions League is the most heavily traded club competition in world football, and its betting markets behave differently from a domestic league. Rotation is heavier, the field spans every major European league at once, and from the knockout rounds onward a tie can run past 90 minutes. Our Champions League odds API covers the full competition — the league phase, the knockout playoffs, and every round through to the final — returning each match with its complete market tree in one request.

Covering more than the UCL? The soccer odds API spans 19 competitions, including the Premier League, La Liga, the Bundesliga, Serie A and the Europa League.

Champions League Odds API Features

Midweek European nights concentrate a huge amount of market activity into a short window, with several matches kicking off simultaneously and team news landing an hour before each. The Sports Game Odds UCL API is built for that, giving you fully customizable endpoints so you retrieve only the markets your application needs.

Available Champions League betting markets include:

  • Match winner (1X2) and 2-way moneyline
  • Asian handicaps and European handicaps
  • Totals (over/under goals), team totals and both teams to score
  • Alternative lines and totals
  • Goalscorer markets — anytime, first and last
  • Player props — shots, shots on goal, assists, tackles, passes, cards
  • Goalkeeper props — saves and goals against
  • Card and corner markets, plus first and second half variants

All data is available pre-match and live. Odds refresh sub-minute on the Pro plan, with Rookie and the free Amateur tier updating on a longer interval — see pricing for the frequency on each tier.

Regulation vs Full Match: the one thing to get right

This is the detail that causes more settlement bugs in knockout football than anything else, so it is worth reading before you integrate.

Soccer markets in the API sit on two different periods, and they do not mean the same thing:

  • reg — regulation, the 90 minutes plus stoppage time. This is where the main lines live, and it is why the headline market is a 3-way moneyline: a draw after 90 minutes is a real outcome, not a push.
  • game — the full match, including extra time (ot) and a penalty shootout (so) where the tie goes that far.

During the league phase the two are effectively the same, because matches end after 90 minutes. From the knockout playoffs onward they diverge: a tie level at 90 minutes settles the reg moneyline as a draw while the game market carries on into extra time and penalties. If you request the wrong one, your settlement logic will disagree with the sportsbook on exactly the matches your users care about most.

Player props and most prop markets sit on game rather than reg.

Champions League Player Props

The UCL player props market is deep, because the field is made up of the strongest squads in Europe and the books price them accordingly. Query goalscorer and player performance markets across every match on the schedule — anytime goalscorer odds, shots on goal totals, assist props, card markets and goalkeeper saves.

Filter by player ID, stat type or bookmaker to return only the props relevant to your platform. Rotation makes lineup confirmation unusually valuable here: a manager resting a first-choice forward for a weekend league fixture repricing the anytime scorer market is a routine midweek occurrence. See the player prop odds API for the full market list across every sport we cover.

Champions League Odds API with Results

Our API delivers UCL odds and match results together in a single response, with no secondary calls and no data stitching. Each response includes:

  • Live, upcoming and completed Champions League matches
  • Home and away team data
  • Player and match statistics
  • Full odds coverage: 1X2, handicaps, totals, goalscorer and player props, alternative lines
  • Final scores and settlement data, including extra time and shootouts

Line movement tracking lets you monitor how UCL prices evolve from the draw through to kickoff, giving you the market context needed for modelling, trading and analytics.

SportsGameOdds API
GEThttps://api.sportsgameodds.com/v2/events

Request Parameters

leagueID=NFL

Only NBA games

oddsAvailable=true

Only games with available odds

includeAltLines=false

Don't return alt-lines

limit=1

Number of games to return

Quick Start: Your First Champions League Odds API Call

Fetching UCL odds takes a single HTTP request. Here's the quickest way to get upcoming Champions League matches with full odds:

https://api.sportsgameodds.com/v2/events?apiKey=YOUR_API_KEY&oddsAvailable=true&leagueID=UEFA_CHAMPIONS_LEAGUE&limit=10

This returns all available markets including 1X2, handicaps, totals and player props across the next 10 UCL fixtures.

To target a specific market, use the oddIDs parameter. This returns the 3-way moneyline for every match on the matchday:

https://api.sportsgameodds.com/v2/events?apiKey=YOUR_API_KEY&oddsAvailable=true&leagueID=UEFA_CHAMPIONS_LEAGUE&oddIDs=points-home-reg-ml3way-home,points-away-reg-ml3way-away

To pull anytime goalscorer markets instead, goals are carried under the points statID:

https://api.sportsgameodds.com/v2/events?apiKey=YOUR_API_KEY&oddsAvailable=true&leagueID=UEFA_CHAMPIONS_LEAGUE&oddIDs=points-PLAYER_ID-game-yn-yes,points-PLAYER_ID-game-yn-no

OddIDs follow the format {statID}-{statEntityID}-{periodID}-{betTypeID}-{sideID}.

Tips to keep your UCL queries fast and efficient:

  • Use reg for match lines and game for props — see the section above for why the distinction matters in knockout ties
  • Add bookmakerID=bet365,pinnacle to focus on the sportsbooks most relevant to your market
  • Use includeOpposingOdds=true so you only need to specify one side of a market and automatically receive both
  • Note: 1 object = 1 event regardless of how many markets are returned, so a full matchday of 18 fixtures = 18 objects

What a Champions League response looks like

Every match returns an odds object keyed by oddID. Here's a trimmed 3-way moneyline, with the bookmaker list cut to two books:

{
  "eventID": "...",
  "leagueID": "UEFA_CHAMPIONS_LEAGUE",
  "odds": {
    "points-home-reg-ml3way-home": {
      "oddID": "points-home-reg-ml3way-home",
      "opposingOddID": "points-away-reg-ml3way-away+draw",
      "marketName": "3-Way Moneyline (Regulation)",
      "statID": "points",
      "statEntityID": "home",
      "periodID": "reg",
      "betTypeID": "ml3way",
      "sideID": "home",
      "fairOdds": "+135",
      "bookOdds": "+128",
      "byBookmaker": {
        "bet365": { "odds": "+130", "available": true },
        "pinnacle": { "odds": "+133", "available": true }
      }
    }
  }
}

Two things to read from this. The periodID is reg, so this market settles on 90 minutes — a draw is its own outcome rather than a push, which is why the bet type is ml3way and not ml. And opposingOddID points at points-away-reg-ml3way-away+draw rather than a plain away win: in a three-way market the opposite of backing the home side is the away-or-draw double chance, which is what the API gives you.

Champions League Odds API Technical Specifications

API Architecture

  • REST API — standard HTTP endpoints returning clean JSON responses
  • WebSocket feeds — real-time push updates with no polling required
  • Rate limits — scalable plans matched to your usage volume
  • Authentication — secure API key access

Data Update Speed

  • Odds updates — sub-minute refresh on Pro; longer intervals on Rookie and Amateur
  • Live scores — updated in real time, including stoppage time, extra time and shootouts

Developer Resources

Use Cases

Odds Comparison Platforms — Display UCL 1X2 prices, handicaps and totals from 85+ bookmakers in one place across a full European matchday.

Arbitrage & +EV Tools — Several UCL matches kick off simultaneously, so late team news lands across the board at once and books do not all reprice at the same speed. See also positive EV betting.

Goalscorer & Player Prop Tools — Surface anytime goalscorer odds, shots on goal and assist props across every fixture, updating as confirmed lineups drop.

Pricing Models & Algorithmic Trading — Feed UCL market data into models that account for squad rotation, domestic fixture congestion and the two-legged structure of the knockout rounds.

Sports Analytics & Research — Analyse how European markets respond to draws, seedings and rotation across a competition that pulls clubs from every major domestic league.

Champions League API Documentation

Our interactive documentation covers everything you need to integrate UCL odds into your application:

  • Full endpoint reference with parameters and response schemas
  • Live request and response examples
  • Code snippets in Python, JavaScript and more
  • Authentication setup and API key management
  • Webhook configuration
  • Error handling and troubleshooting

For a practical walkthrough of querying the /v2/events endpoint with soccer examples, see our API documentation or our guide to Premier League betting markets, which covers the same market vocabulary.

What Champions League betting markets does the API cover?
Match winner (1X2) and 2-way moneyline, Asian and European handicaps, totals, team totals, both teams to score, alternative lines, goalscorer props (anytime, first, last), player props covering shots, assists and cards, goalkeeper props, and card and corner markets — pre-match and live, with first and second half variants.
How do extra time and penalties work in the API?
Match lines sit on the reg period, meaning 90 minutes plus stoppage time, which is why the headline market is a 3-way moneyline with the draw as its own outcome. The game period covers the full match including extra time and a penalty shootout. During the league phase the two are effectively identical; from the knockout rounds onward they diverge, so requesting the wrong one will make your settlement logic disagree with the sportsbook.
Why does opposingOddID point at a double chance rather than the away win?
Because in a three-way market the opposite of backing the home side is away-or-draw, not away alone. The API returns away+draw as the opposing side so the two together cover every outcome. The same applies in reverse for the away side, where the opposing side is home+draw.
How do I request anytime goalscorer odds?
Goals are carried under the points statID in soccer, since points is the score stat for every sport. An anytime goalscorer market is points-PLAYER_ID-game-yn-yes, with the no side as its opposing odd.
How often is Champions League odds data updated?
Odds refresh sub-minute on the Pro plan, with Rookie and the free Amateur tier updating on a longer interval. This matters on European nights because several matches kick off at once and team news lands across the board in the same hour. Live scores update in real time on every plan.
Is there a free trial?
Yes. The free Amateur tier lets you query real Champions League data before committing to a paid plan, and the Rookie and Pro plans each include a 7-day trial.
How does object-based pricing work for the Champions League?
Each match counts as one object regardless of how many markets it returns. A full matchday of 18 fixtures costs 18 objects, even if every match returns hundreds of odds across goalscorer props, cards and handicaps.