curl --request GET \
--url https://calibri.io/api/v2/pythia/public/assets/{symbol}/candlesimport requests
url = "https://calibri.io/api/v2/pythia/public/assets/{symbol}/candles"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://calibri.io/api/v2/pythia/public/assets/{symbol}/candles', 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://calibri.io/api/v2/pythia/public/assets/{symbol}/candles",
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://calibri.io/api/v2/pythia/public/assets/{symbol}/candles"
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://calibri.io/api/v2/pythia/public/assets/{symbol}/candles")
.asString();require 'uri'
require 'net/http'
url = URI("https://calibri.io/api/v2/pythia/public/assets/{symbol}/candles")
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{
"candles": [
{
"c": 65400.5,
"h": 65450.75,
"l": 65300.5,
"o": 65380.25,
"t": 1722950400,
"v": 245.8
}
],
"granularity": "1m",
"has_more": true,
"next_to": 1722950399,
"symbol": "BTC-USD"
}{
"errors": [
"order.not_found"
]
}Asset candles
The EXCHANGE’S OWN published candles, stored verbatim — not recomputed from sampled ticks. A candle derived from samples has systematically narrower wicks, and a member trading off the chart is paid off the exchange’s candle, so the two have to be the same numbers by construction.
Paged BACKWARD only: send the returned next_to as the new to.
curl --request GET \
--url https://calibri.io/api/v2/pythia/public/assets/{symbol}/candlesimport requests
url = "https://calibri.io/api/v2/pythia/public/assets/{symbol}/candles"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://calibri.io/api/v2/pythia/public/assets/{symbol}/candles', 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://calibri.io/api/v2/pythia/public/assets/{symbol}/candles",
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://calibri.io/api/v2/pythia/public/assets/{symbol}/candles"
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://calibri.io/api/v2/pythia/public/assets/{symbol}/candles")
.asString();require 'uri'
require 'net/http'
url = URI("https://calibri.io/api/v2/pythia/public/assets/{symbol}/candles")
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{
"candles": [
{
"c": 65400.5,
"h": 65450.75,
"l": 65300.5,
"o": 65380.25,
"t": 1722950400,
"v": 245.8
}
],
"granularity": "1m",
"has_more": true,
"next_to": 1722950399,
"symbol": "BTC-USD"
}{
"errors": [
"order.not_found"
]
}Path Parameters
Coinbase product id, e.g. BTC-USD
Query Parameters
A width the exchange publishes: 1m, 5m, 15m, 1h, 6h, 1d (default 1m)
Page cursor, Unix seconds. Defaults to now
Candles per page, 1-1000 (default 300)
Response
OK
Show child attributes
Show child attributes
"1m"
true
NextTo is the cursor for the next page back; HasMore is false when the page came back short, meaning the recorded history starts here and the client should stop rather than fire requests into an empty past forever.
1722950399
"BTC-USD"