/parlay/odds

Description

The Parlay Pricer API allows you to get the odds for a parlay bet across multiple sportsbooks. You can include multiple entries in the parlay from different games and markets. It will only work if all entries are available on the sportsbooks you specify and can be combined into a parlay.

Specific Body Information

Supported Sportsbooks

OpticOdds currently supports Same Game Parlay (SGP) data for the following sportsbooks:BetMGM, BetMGM (UK), BetRivers, Betsson, Betway, Bwin, Caesars, DraftKings, Fanatics, Hard Rock, LeoVegas, Midnite, Novig, Prophet X, Rimble, Sportzino, Unibet).

Supported Sports

OpticOdds currently supports Same Game Parlay (SGP) odds for the following sports: Baseball, Basketball, American Football, Golf, Hockey, MMA, Football / Soccer, and Tennis.

Support for additional sports and markets are continuously being added. Reach out to your account manager if you have specific needs or questions about availability.

OpticOdds AI Consensus Line

We support OpticOdds AI as a special sportsbook option that provides AI-generated consensus lines. When you use OpticOdds AI, our parlay engine will handle the correlation calculations for you.

Important: You can only use OpticOdds AI as the sportsbook identifier in your request, or you will receive an error.

Required fields: You must include either price_american or price_decimal for each entry when using OpticOdds AI, or you will receive an error.

Example Requests

Using sportsbooks

curl --location 'https://api.opticodds.com/api/v3/parlay/odds?key=key' \
--header 'Content-Type: application/json' \
--data '{
    "sportsbooks": [
        "Bwin",
        "DraftKings",
        "BetMGM"
    ],
    "entries": [
        {
            "market": "Player Hits",
            "name": "Alec Burleson Over 0.5",
            "fixture_id": "E1AFAEAF67DD"
        },
        {
            "market": "Player Hits",
            "name": "Brendan Donovan Over 0.5",
            "fixture_id": "E1AFAEAF67DD"
        },
        {
            "market": "Player Strikeouts",
            "name": "Andre Pallante Over 3.5",
            "fixture_id": "E1AFAEAF67DD"
        }
    ]
}'

OpticOdds AI Consensus Line

curl --location 'https://api.opticodds.com/api/v3/parlay/odds?key=key' \
--header 'Content-Type: application/json' \
--data '{
    "sportsbooks": [
        "OpticOdds AI"
    ],
    "entries": [
        {
            "market": "Player Hits",
            "name": "Alec Burleson Over 0.5",
            "fixture_id": "E1AFAEAF67DD",
						"price_american": -125
        },
        {
            "market": "Player Hits",
            "name": "Brendan Donovan Over 0.5",
            "fixture_id": "E1AFAEAF67DD",
						"price_decimal": 2.2
        },
        {
            "market": "Player Strikeouts",
            "name": "Andre Pallante Over 3.5",
            "fixture_id": "E1AFAEAF67DD",
						"price_american": 160
        }
    ]
}'

Example Responses

OpticOdds AI Consensus Line

{
    "data": {
        "OpticOdds AI": {
            "error": null,
            "missing_entries": null,
            "legs": [
                {
                    "fixture_id": "mlb:3D5E0C0B1E12",
                    "market": "Total Runs",
                    "name": "Over 8",
                    "price": -102.0
                },
                {
                    "fixture_id": "mlb:3D5E0C0B1E12",
                    "market": "Moneyline",
                    "name": "New York Yankees",
                    "price": -161.0
                }
            ],
            "price": 194.0,
            "deep_link_urls": null
        }
    }
}

Using sportsbooks

Success

{
   "data":{
      "Blue Book":{
         "error":null,
         "missing_entries":null,
         "legs":[
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"Player Hits",
               "name":"Alec Burleson Over 0.5",
               "price":-230.0
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"Player Hits",
               "name":"Brendan Donovan Over 0.5",
               "price":-210.0
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"Player Strikeouts",
               "name":"Andre Pallante Over 3.5",
               "price":122.0
            }
         ],
         "price":336.0
      },
      "DraftKings":{
         "error":null,
         "missing_entries":null,
         "legs":[
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"Player Hits",
               "name":"Alec Burleson Over 0.5",
               "price":-265.0
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"Player Hits",
               "name":"Brendan Donovan Over 0.5",
               "price":-215.0
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"Player Strikeouts",
               "name":"Andre Pallante Over 3.5",
               "price":115.0
            }
         ],
         "price":280.0
      },
      "BetMGM":{
         "error":null,
         "missing_entries":null,
         "legs":[
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"Player Hits",
               "name":"Alec Burleson Over 0.5",
               "price":-250.0
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"Player Hits",
               "name":"Brendan Donovan Over 0.5",
               "price":-210.0
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"Player Strikeouts",
               "name":"Andre Pallante Over 3.5",
               "price":115.0
            }
         ],
         "price":310.0
      }
   }
}

Error (Unable to get parlay

{
   "data":{
      "BetMGM":{
         "error":"Error with response. Try again later.",
         "missing_entries":null,
         "legs":null,
         "price":null
      }
   }
}

Error (Missing Entries)

{
   "data":{
      "Blue Book":{
         "error":"Missing odds for entries.",
         "missing_entries":[
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"player_hits",
               "name":"brendan_donovan_over_0_5",
               "price":null
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"player_hits",
               "name":"alec_burleson_over_0_5",
               "price":null
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"player_strikeouts",
               "name":"andre_pallante_over_3_5",
               "price":null
            }
         ],
         "legs":null,
         "price":null
      },
      "DraftKings":{
         "error":"Missing odds for entries.",
         "missing_entries":[
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"player_hits",
               "name":"brendan_donovan_over_0_5",
               "price":null
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"player_hits",
               "name":"alec_burleson_over_0_5",
               "price":null
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"player_strikeouts",
               "name":"andre_pallante_over_3_5",
               "price":null
            }
         ],
         "legs":null,
         "price":null
      },
      "BetMGM":{
         "error":"Missing odds for entries.",
         "missing_entries":[
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"player_hits",
               "name":"brendan_donovan_over_0_5",
               "price":null
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"player_hits",
               "name":"alec_burleson_over_0_5",
               "price":null
            },
            {
               "fixture_id":"E1AFAEAF67DD",
               "market":"player_strikeouts",
               "name":"andre_pallante_over_3_5",
               "price":null
            }
         ],
         "legs":null,
         "price":null
      }
   }
}

Error (Unable to combine entries)

{
    "Blue Book": {
        "error": "Cannot be combined into a parlay on the sportsbook."
    },
    "DraftKings": {
        "error": "SelectionsCannotBeCombined"
    },
    "BetMGM": {
        "error": "Could not create parlay for all games."
    }
}
Language
Credentials
Click Try It! to start a request and see the response here!