Get Kalshi Candlesticks
curl --request GET \
--url https://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticksimport requests
url = "https://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks', 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://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks",
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://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks"
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://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks")
.asString();require 'uri'
require 'net/http'
url = URI("https://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks")
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{
"success": true,
"response": [
{
"open": "0.55",
"high": "0.62",
"low": "0.53",
"close": "0.58",
"volume": "15000",
"created_at": "2026-01-01T00:00:00"
}
]
}Kalshi
Get Kalshi Candlesticks
Get candlestick history for a Kalshi market.
Get Kalshi Candlesticks
curl --request GET \
--url https://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticksimport requests
url = "https://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks', 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://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks",
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://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks"
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://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks")
.asString();require 'uri'
require 'net/http'
url = URI("https://synthesis.trade/api/v1/kalshi/market/{series_id}/{kalshi_id}/candlesticks")
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{
"success": true,
"response": [
{
"open": "0.55",
"high": "0.62",
"low": "0.53",
"close": "0.58",
"volume": "15000",
"created_at": "2026-01-01T00:00:00"
}
]
}Path Parameters
Kalshi series ID.
Kalshi market slug component.
Query Parameters
Start timestamp or ISO 8601 date.
End timestamp or ISO 8601 date.
Aggregation bucket.
Target point count.
Sort direction.
Maximum points to return.
Pagination offset.
Response
200 - application/json
Kalshi candlesticks
⌘I