Historical Funding
Dev
GET /funding/historical
Historical funding rate time series for one symbol across one or more exchanges. Adaptive downsampling based on the requested range: raw resolution for under 24 hours, hourly buckets for under 7 days, and 4-hour buckets beyond that. Use this endpoint for charting funding rate trends and venue comparisons over time — not for P&L or backtesting. Rate limited to 2 requests per second.
Authentication
Requires Dev tier or higher. Dev: rolling 30-day window ending now — start and end dates are floored server-side so data older than 30 days from the current time is not returned; a notice is included when clamped. Pro: full historical depth since September 2025.
Parameters
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
symbol | string | ✓ | Base symbol, e.g. BTC or ETH. |
start | string (ISO 8601) | – | Start of range. Defaults to end minus 7 days. |
end | string (ISO 8601) | – | End of range. Defaults to current UTC time. |
exchanges | string | – | Comma-separated exchange slugs (e.g. binance,bybit), or all. Defaults to all exchanges. |
Tier behavior
- Dev: Rolling 30-day window ending now. Dates before that floor are raised; end dates in the future are set to now. The response includes a notices field when clamped.
- Pro: Full historical depth since September 2025. No clamp.
Example request
bash
curl -H "X-Api-Key: lk_live_your_key_here" \
"https://api.loris.tools/funding/historical?symbol=BTC&start=2026-06-01T00:00:00Z&exchanges=binance,bybit"Example response
json
{
"symbol": "BTC",
"unit": "bps_8h",
"resolution": "4h",
"series": {
"binance": [
{ "timestamp": "2026-06-01T00:00:00Z", "t": "2026-06-01T00:00:00Z", "y": 1.24 },
{ "timestamp": "2026-06-01T04:00:00Z", "t": "2026-06-01T04:00:00Z", "y": 1.18 },
{ "timestamp": "2026-06-01T08:00:00Z", "t": "2026-06-01T08:00:00Z", "y": 0.95 }
],
"bybit": [
{ "timestamp": "2026-06-01T00:00:00Z", "t": "2026-06-01T00:00:00Z", "y": 1.20 },
{ "timestamp": "2026-06-01T04:00:00Z", "t": "2026-06-01T04:00:00Z", "y": 1.15 }
]
},
"notices": []
}Errors
400— Missing required parameter `symbol`, invalid date format, or unrecognized exchange slug.403— Dev: requested date range falls entirely outside the rolling 30-day window and cannot be clamped. Upgrade to Pro for full depth since September 2025.
For authentication errors (401) and rate limit responses (429), see Errors.