curl --request GET \
--url https://test.deribit.com/api/v2/public/get_delivery_prices \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": 3601,
"method": "public/get_delivery_prices",
"params": {
"index_name": "btc_usd",
"offset": 0,
"count": 5
}
}
'import requests
url = "https://test.deribit.com/api/v2/public/get_delivery_prices"
payload = {
"jsonrpc": "2.0",
"id": 3601,
"method": "public/get_delivery_prices",
"params": {
"index_name": "btc_usd",
"offset": 0,
"count": 5
}
}
headers = {"Content-Type": "application/json"}
response = requests.get(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
jsonrpc: '2.0',
id: 3601,
method: 'public/get_delivery_prices',
params: {index_name: 'btc_usd', offset: 0, count: 5}
})
};
fetch('https://test.deribit.com/api/v2/public/get_delivery_prices', 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://test.deribit.com/api/v2/public/get_delivery_prices",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_POSTFIELDS => json_encode([
'jsonrpc' => '2.0',
'id' => 3601,
'method' => 'public/get_delivery_prices',
'params' => [
'index_name' => 'btc_usd',
'offset' => 0,
'count' => 5
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://test.deribit.com/api/v2/public/get_delivery_prices"
payload := strings.NewReader("{\n \"jsonrpc\": \"2.0\",\n \"id\": 3601,\n \"method\": \"public/get_delivery_prices\",\n \"params\": {\n \"index_name\": \"btc_usd\",\n \"offset\": 0,\n \"count\": 5\n }\n}")
req, _ := http.NewRequest("GET", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://test.deribit.com/api/v2/public/get_delivery_prices")
.header("Content-Type", "application/json")
.body("{\n \"jsonrpc\": \"2.0\",\n \"id\": 3601,\n \"method\": \"public/get_delivery_prices\",\n \"params\": {\n \"index_name\": \"btc_usd\",\n \"offset\": 0,\n \"count\": 5\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://test.deribit.com/api/v2/public/get_delivery_prices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"jsonrpc\": \"2.0\",\n \"id\": 3601,\n \"method\": \"public/get_delivery_prices\",\n \"params\": {\n \"index_name\": \"btc_usd\",\n \"offset\": 0,\n \"count\": 5\n }\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"id": 3601,
"result": {
"data": [
{
"date": "2020-01-02",
"delivery_price": 7131.214606410254
},
{
"date": "2019-12-21",
"delivery_price": 7150.943217777777
},
{
"date": "2019-12-20",
"delivery_price": 7175.988445532345
},
{
"date": "2019-12-19",
"delivery_price": 7189.540776143791
},
{
"date": "2019-12-18",
"delivery_price": 6698.353743857118
}
],
"records_total": 58
}
}public/get_delivery_prices
Retrieves historical delivery prices for a given index. Delivery prices are the settlement prices used when futures or options contracts expire and are settled.
Results can be paginated using the offset and count parameters. Optionally, results can be limited to a date range using start_timestamp and end_timestamp โ each is mapped to the UTC calendar date of the delivery and both bounds are inclusive; records_total reflects the filtered set. This method is useful for analyzing historical settlement prices and understanding how contracts have been settled over time.
๐ Related Article: Options Data Collection Best Practices
curl --request GET \
--url https://test.deribit.com/api/v2/public/get_delivery_prices \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": 3601,
"method": "public/get_delivery_prices",
"params": {
"index_name": "btc_usd",
"offset": 0,
"count": 5
}
}
'import requests
url = "https://test.deribit.com/api/v2/public/get_delivery_prices"
payload = {
"jsonrpc": "2.0",
"id": 3601,
"method": "public/get_delivery_prices",
"params": {
"index_name": "btc_usd",
"offset": 0,
"count": 5
}
}
headers = {"Content-Type": "application/json"}
response = requests.get(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
jsonrpc: '2.0',
id: 3601,
method: 'public/get_delivery_prices',
params: {index_name: 'btc_usd', offset: 0, count: 5}
})
};
fetch('https://test.deribit.com/api/v2/public/get_delivery_prices', 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://test.deribit.com/api/v2/public/get_delivery_prices",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_POSTFIELDS => json_encode([
'jsonrpc' => '2.0',
'id' => 3601,
'method' => 'public/get_delivery_prices',
'params' => [
'index_name' => 'btc_usd',
'offset' => 0,
'count' => 5
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://test.deribit.com/api/v2/public/get_delivery_prices"
payload := strings.NewReader("{\n \"jsonrpc\": \"2.0\",\n \"id\": 3601,\n \"method\": \"public/get_delivery_prices\",\n \"params\": {\n \"index_name\": \"btc_usd\",\n \"offset\": 0,\n \"count\": 5\n }\n}")
req, _ := http.NewRequest("GET", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://test.deribit.com/api/v2/public/get_delivery_prices")
.header("Content-Type", "application/json")
.body("{\n \"jsonrpc\": \"2.0\",\n \"id\": 3601,\n \"method\": \"public/get_delivery_prices\",\n \"params\": {\n \"index_name\": \"btc_usd\",\n \"offset\": 0,\n \"count\": 5\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://test.deribit.com/api/v2/public/get_delivery_prices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"jsonrpc\": \"2.0\",\n \"id\": 3601,\n \"method\": \"public/get_delivery_prices\",\n \"params\": {\n \"index_name\": \"btc_usd\",\n \"offset\": 0,\n \"count\": 5\n }\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"id": 3601,
"result": {
"data": [
{
"date": "2020-01-02",
"delivery_price": 7131.214606410254
},
{
"date": "2019-12-21",
"delivery_price": 7150.943217777777
},
{
"date": "2019-12-20",
"delivery_price": 7175.988445532345
},
{
"date": "2019-12-19",
"delivery_price": 7189.540776143791
},
{
"date": "2019-12-18",
"delivery_price": 6698.353743857118
}
],
"records_total": 58
}
}Query Parameters
Index identifier, matches (base) cryptocurrency with quote currency
btc_usd, eth_usd, ada_usdc, algo_usdc, avax_usdc, bch_usdc, bnb_usdc, btc_usdc, btcdvol_usdc, buidl_usdc, doge_usdc, dot_usdc, eurr_usdc, eth_usdc, ethdvol_usdc, hype_usdc, link_usdc, ltc_usdc, near_usdc, paxg_usdc, shib_usdc, sol_usdc, steth_usdc, ton_usdc, trump_usdc, trx_usdc, uni_usdc, usde_usdc, usyc_usdc, xrp_usdc, btc_usdt, eth_usdt, eurr_usdt, sol_usdt, steth_usdt, usdc_usdt, usde_usdt, btc_eurr, btc_usde, btc_usyc, eth_btc, eth_eurr, eth_usde, eth_usyc, steth_eth, paxg_btc, drbfix-btc_usdc, drbfix-eth_usdc The offset for pagination, default - 0
10
Number of requested items, default - 10, maximum - 1000
1 <= x <= 1000The earliest timestamp to return result from (milliseconds since the UNIX epoch) The timestamp (milliseconds since the Unix epoch)
1536569522277
The most recent timestamp to return result from (milliseconds since the UNIX epoch) The timestamp (milliseconds since the Unix epoch)
1536569522277
Response
Success response
The JSON-RPC version (2.0)
2.0 Hide child attributes
Hide child attributes
Available delivery prices
120
The id that was sent in the request
Was this page helpful?