Skip to main content
POST
/
info
fundingHistory | Hyperliquid Info API
curl --request POST \
  --url https://hypercore.goldrushdata.com/info \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "type": "<string>",
  "coin": "<string>",
  "startTime": 123,
  "endTime": 123
}
'
import requests

url = "https://hypercore.goldrushdata.com/info"

payload = {
"type": "<string>",
"coin": "<string>",
"startTime": 123,
"endTime": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({type: '<string>', coin: '<string>', startTime: 123, endTime: 123})
};

fetch('https://hypercore.goldrushdata.com/info', 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://hypercore.goldrushdata.com/info",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'type' => '<string>',
'coin' => '<string>',
'startTime' => 123,
'endTime' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://hypercore.goldrushdata.com/info"

payload := strings.NewReader("{\n \"type\": \"<string>\",\n \"coin\": \"<string>\",\n \"startTime\": 123,\n \"endTime\": 123\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Authorization", "Bearer <token>")
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.post("https://hypercore.goldrushdata.com/info")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"type\": \"<string>\",\n \"coin\": \"<string>\",\n \"startTime\": 123,\n \"endTime\": 123\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://hypercore.goldrushdata.com/info")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"type\": \"<string>\",\n \"coin\": \"<string>\",\n \"startTime\": 123,\n \"endTime\": 123\n}"

response = http.request(request)
puts response.read_body
{
  "coin": "<string>",
  "fundingRate": "<string>",
  "premium": "<string>",
  "time": 123
}

Credit Cost

1 per call

Processing

Realtime
The Hyperliquid info endpoint with type: "fundingHistory" is used to fetch a coin’s historical funding rates and premiums over a time window for funding analytics and basis strategies.
Estimate your monthly cost for this API using the Pricing Calculator.
  • Wire-equal to POST api.hyperliquid.xyz/info with {"type": "fundingHistory", "coin": "..."}.
  • Each response contains at most 500 entries per call.
  • This is market-wide funding history for a coin. For a single wallet’s actual funding payments, use userFunding instead.
  • For the current funding rate alongside live market context, use metaAndAssetCtxs.
Returns the sequence of applied funding intervals for a single coin within a [startTime, endTime] window. Each entry carries the funding rate that was applied and the mark-vs-oracle premium at that time. Use it for funding-rate charts, basis/carry analytics, and historical funding P&L modeling. This is a global, non-user-keyed type. Page through time by advancing startTime.

Endpoint

POST https://hypercore.goldrushdata.com/info
Authorization: Bearer <GOLDRUSH_API_KEY>
Content-Type: application/json

Request

type
string
default:"fundingHistory"
required
Always "fundingHistory".
coin
string
required
The asset symbol, e.g. "BTC". HIP-3 markets use the deployer-prefixed form.
startTime
int
required
Unix timestamp in milliseconds. Inclusive lower bound for the window.
endTime
int
Unix timestamp in milliseconds. Inclusive upper bound. Defaults to current server time when omitted.

Example

curl -X POST https://hypercore.goldrushdata.com/info \
  -H "Authorization: Bearer $GOLDRUSH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "fundingHistory",
    "coin": "BTC",
    "startTime": 1735689600000,
    "endTime": 1735776000000
  }'
const response = await fetch("https://hypercore.goldrushdata.com/info", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GOLDRUSH_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    type: "fundingHistory",
    coin: "BTC",
    startTime: 1735689600000,
    endTime: 1735776000000,
  }),
});

const history = await response.json();
import os, requests

response = requests.post(
    "https://hypercore.goldrushdata.com/info",
    headers={"Authorization": f"Bearer {os.environ['GOLDRUSH_API_KEY']}"},
    json={
        "type": "fundingHistory",
        "coin": "BTC",
        "startTime": 1735689600000,
        "endTime": 1735776000000,
    },
)

history = response.json()

Response

An array of funding-interval objects, oldest first.
[
  {
    "coin": "BTC",
    "fundingRate": "0.0000054021",
    "premium": "-0.0004567829",
    "time": 1735693200000
  }
]

Field descriptions

fundingRate and premium are returned as decimal strings, preserving upstream precision. Do not parse them as floats.
coin
string
The asset the funding interval is for - echoes the request coin.
fundingRate
string
The funding rate applied for this interval (decimal string, e.g. "0.0000125").
premium
string
Mark-vs-oracle premium at the time the funding was computed (decimal string).
time
int
Unix timestamp in milliseconds when the funding interval was applied.

delegatorHistory

reconstruct the sequence of HYPE staking events behind the totals shown in delegatorSummary.

userFunding

fetch a user’s per-coin funding payment history within a time window for funding-only P&L attribution.

userNonFundingLedgerUpdates

fetch a user’s non-funding USDC ledger history (deposits, withdrawals, transfers, vault flows) within a time…
Last reviewed: 2026-06-13