Fixture Odds CLV
curl --request GET \
--url 'https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey='import requests
url = "https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey="
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey=', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey="
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey=")
.asString();require 'uri'
require 'net/http'
url = URI("https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"fixtureId": "id1400003160574219",
"status": {
"live": false,
"statusId": 2,
"statusName": "Finished"
},
"sport": {
"sportId": 14,
"sportName": "American Football"
},
"tournament": {
"tournamentId": 31,
"tournamentName": "NFL",
"categoryName": "USA"
},
"season": {
"seasonId": null,
"seasonName": null,
"seasonRound": null
},
"venue": {
"venueId": null,
"venueName": null,
"venueLocation": null
},
"startTime": 1766685600,
"trueStartTime": "2025-12-25T18:00:17.744256+00:00",
"trueEndTime": "2025-12-25T21:09:09.345372+00:00",
"participants": {
"participant1Id": 4423,
"participant1RotNr": null,
"participant1Name": "Minnesota Vikings",
"participant1ShortName": "Vikings",
"participant1Abbr": null,
"participant2Id": 4419,
"participant2RotNr": null,
"participant2Name": "Detroit Lions",
"participant2ShortName": "Lions",
"participant2Abbr": null
},
"scores": {},
"clock": {
"currentPeriod": null,
"currentTime": null,
"remainingTime": null,
"remainingTimeInPeriod": null,
"stopped": null
},
"expectedPeriods": 4,
"periodLength": 15,
"externalProviders": {},
"odds": {
"bet365": {
"id1400003160574219:bet365:14198:0": {
"clv": {
"bookmaker": "bet365",
"outcomeId": 14198,
"playerId": 0,
"price": 1.952,
"priceFractional": "",
"priceAmerican": 0,
"active": true,
"limit": null,
"changedAt": 1766361894121
},
"olv": {
"bookmaker": "bet365",
"outcomeId": 14198,
"playerId": 0,
"price": 1.952,
"priceFractional": "",
"priceAmerican": 0,
"active": true,
"limit": null,
"changedAt": 1765975761422
}
}
}
}
}fixtures/odds
Fixture Odds CLV
Get opening vs closing line values (OLV/CLV) for a fixture.
Lookup mode: required fixtureId + optional bookmakers OR optional oddsIds.
GET
/
fixtures
/
odds
/
clv
Fixture Odds CLV
curl --request GET \
--url 'https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey='import requests
url = "https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey="
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey=', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey="
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey=")
.asString();require 'uri'
require 'net/http'
url = URI("https://v5.oddspapi.io/en/fixtures/odds/clv?apiKey=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"fixtureId": "id1400003160574219",
"status": {
"live": false,
"statusId": 2,
"statusName": "Finished"
},
"sport": {
"sportId": 14,
"sportName": "American Football"
},
"tournament": {
"tournamentId": 31,
"tournamentName": "NFL",
"categoryName": "USA"
},
"season": {
"seasonId": null,
"seasonName": null,
"seasonRound": null
},
"venue": {
"venueId": null,
"venueName": null,
"venueLocation": null
},
"startTime": 1766685600,
"trueStartTime": "2025-12-25T18:00:17.744256+00:00",
"trueEndTime": "2025-12-25T21:09:09.345372+00:00",
"participants": {
"participant1Id": 4423,
"participant1RotNr": null,
"participant1Name": "Minnesota Vikings",
"participant1ShortName": "Vikings",
"participant1Abbr": null,
"participant2Id": 4419,
"participant2RotNr": null,
"participant2Name": "Detroit Lions",
"participant2ShortName": "Lions",
"participant2Abbr": null
},
"scores": {},
"clock": {
"currentPeriod": null,
"currentTime": null,
"remainingTime": null,
"remainingTimeInPeriod": null,
"stopped": null
},
"expectedPeriods": 4,
"periodLength": 15,
"externalProviders": {},
"odds": {
"bet365": {
"id1400003160574219:bet365:14198:0": {
"clv": {
"bookmaker": "bet365",
"outcomeId": 14198,
"playerId": 0,
"price": 1.952,
"priceFractional": "",
"priceAmerican": 0,
"active": true,
"limit": null,
"changedAt": 1766361894121
},
"olv": {
"bookmaker": "bet365",
"outcomeId": 14198,
"playerId": 0,
"price": 1.952,
"priceFractional": "",
"priceAmerican": 0,
"active": true,
"limit": null,
"changedAt": 1765975761422
}
}
}
}
}Authorizations
Your API key (query-based auth for v5).
Query Parameters
Single fixture ID (e.g. id1400003160574219).
Comma/space-separated bookmaker slugs (default: all).
Optional: comma/space-separated oddsIds to restrict the response.
Response
Returns FixtureClvResponse (fixture meta + OLV/CLV pairs)
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
⌘I