curl --request GET \
--url https://perps-api.vooi.io/arbitrage-scanner/funding-candlesimport requests
url = "https://perps-api.vooi.io/arbitrage-scanner/funding-candles"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://perps-api.vooi.io/arbitrage-scanner/funding-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://perps-api.vooi.io/arbitrage-scanner/funding-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://perps-api.vooi.io/arbitrage-scanner/funding-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://perps-api.vooi.io/arbitrage-scanner/funding-candles")
.asString();require 'uri'
require 'net/http'
url = URI("https://perps-api.vooi.io/arbitrage-scanner/funding-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{
"candlesA": [
{
"close": "0.0000128",
"timestamp": 1784715300000
}
],
"candlesB": [
{
"close": "0.0000128",
"timestamp": 1784715300000
}
]
}Per-minute funding rates for a market pair
Returns the funding rates recorded for two markets over a window of limit minutes, ending at dateTo (defaults to now, never later than the current minute) shifted offset minutes back — increase offset by limit to page further into the past. Minutes without a recorded rate are omitted, not zero-filled, so each leg carries between zero and limit rates.
curl --request GET \
--url https://perps-api.vooi.io/arbitrage-scanner/funding-candlesimport requests
url = "https://perps-api.vooi.io/arbitrage-scanner/funding-candles"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://perps-api.vooi.io/arbitrage-scanner/funding-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://perps-api.vooi.io/arbitrage-scanner/funding-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://perps-api.vooi.io/arbitrage-scanner/funding-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://perps-api.vooi.io/arbitrage-scanner/funding-candles")
.asString();require 'uri'
require 'net/http'
url = URI("https://perps-api.vooi.io/arbitrage-scanner/funding-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{
"candlesA": [
{
"close": "0.0000128",
"timestamp": 1784715300000
}
],
"candlesB": [
{
"close": "0.0000128",
"timestamp": 1784715300000
}
]
}Query Parameters
Asset identifier of the first leg market.
1"BTC"
Asset identifier of the second leg market.
1"BTC"
End of the window as a unix timestamp in milliseconds, truncated to the minute. Defaults to now.
0 <= x <= 90071992547409911784720700000
Exchange of the first leg market.
aster, binance, bybit, extended, gate, hyperliquid, lighter, mexc, ondo, robinhood "lighter"
Exchange of the second leg market.
aster, binance, bybit, extended, gate, hyperliquid, lighter, mexc, ondo, robinhood "aster"
Width of the returned window in minutes.
x <= 30001500
Number of most recent minutes to skip before dateTo. Increase by limit to page further back in time.
0 <= x <= 90071992547409910