Skip to content

Sport key cycling

Cycling odds API

Pre-match and live cycling odds from bookmakers, with a margin-adjusted fair price on every market, in one consistent JSON format. 270 competitions.

Popular cycling competitions

CompetitionCountry or tourLeague key
Tour de FranceTournaments and eventscycling_tour_de_france
Sparkassen Munsterland GiroTournaments and eventscycling_sparkassen_munsterland_giro
Vuelta MurciaTournaments and eventscycling_vuelta_murcia
Tour of FlandersTournaments and eventscycling_tour_of_flanders
Milan San RemoTournaments and eventscycling_milan_san_remo
World Championship Road RaceTournaments and eventscycling_world_championship_road_race
4 Jours de DunkerqueTournaments and eventscycling_4_jours_de_dunkerque
Alula TourTournaments and eventscycling_alula_tour
Amstel GoldTournaments and eventscycling_amstel_gold

See all 270 cycling competitions and pick the ones for your plan.

Countries and tours

Cycling markets

You get every market the bookmakers offer for each event. The most common ones:

  • Outright winner
  • Top 3, 5 and 10 finish
  • Head-to-head matchups
  • Each way
  • Group and special markets

Which plan fits

Choose cycling competitions as part of your plan's leagues, mixed with any other sport: Solo 10, Pro 25, Scale 60 and Elite every league. Live odds start on Pro.

Want every cycling competition? Add the whole sport for $500/month, or single leagues for $100/month each.

See plans and prices

Example request

One request returns the bookmaker price and the fair price for every outcome. Sport and league keys are being added to the API; the request shows the format.

GET https://api.valueoddsapi.com/v1/odds?sport=cycling&league=cycling_tour_de_france&phase=prematch
Authorization: Bearer YOUR_API_KEY
{
  "example": true,
  "data": [
    {
      "event_id": "example-001",
      "sport": "cycling",
      "league": "cycling_tour_de_france",
      "phase": "prematch",
      "bookmaker": "example-book",
      "observed_at": "2026-11-03T12:00:00Z",
      "data_age_seconds": 0.25,
      "market": {
        "id": "outright_winner",
        "period": "full_time",
        "line": null,
        "status": "open",
        "method": "proportional_v1",
        "fair_status": "available",
        "overround": 0.0751,
        "outcomes": [
          {
            "id": "participant_a",
            "bookmaker_odds": 3.5,
            "fair_odds": 3.76,
            "fair_probability": 0.2658
          },
          {
            "id": "participant_b",
            "bookmaker_odds": 4.2,
            "fair_odds": 4.52,
            "fair_probability": 0.2215
          },
          {
            "id": "participant_c",
            "bookmaker_odds": 6.0,
            "fair_odds": 6.45,
            "fair_probability": 0.155
          },
          {
            "id": "field",
            "bookmaker_odds": 2.6,
            "fair_odds": 2.8,
            "fair_probability": 0.3578
          }
        ]
      }
    }
  ]
}

Example data, not live prices. Fair odds use proportional margin removal. Read the integration guide

Questions about cycling odds

Which cycling competitions does the API cover?

The catalog lists 270 cycling competitions, taken from bookmakers' own public listings. Pick the ones you need on the sports page; your plan sets how many leagues you choose.

Do you have live cycling odds?

Yes. Pro and higher plans stream pre-match and live odds in real time over WebSocket and REST. Solo covers pre-match odds.

Which cycling markets are included?

Every market the bookmakers offer for the event, with the original price and a margin-adjusted fair price side by side.

How do I request cycling odds in the API?

Use the sport key cycling and a league key such as cycling_tour_de_france. League keys are the sport key plus the competition name in snake case.

Other sports

Get cycling odds into your product

Bookmaker odds and fair odds in one format, from pre-match to live.