Reference

Funding rates

Current and historical net funding rates per side. The rate folds funding and borrowing into one figure — positive = the side receives, negative = it pays. GMTrade nets its signed funding leg with per-side borrowing; Jupiter has no funding mechanism, so its rate is the negated per-side borrow cost (always ≤ 0).

Current funding rates

GET
Current net funding rates per side across GMTrade markets (funding folded with borrowing).
Headers
x-api-keystringrequired
API key sent in the request header; never accepted as a query parameter.
Query parameters
market_variantstring
Filter to a protocol-native market variant.
Response
200
{ data: Rate[] }
Rate
market_variantProtocol-native market variant identifier; null when unavailable.
timeTimestamp of the snapshot.
funding_rate_longNet hourly funding rate for long positions. Positive values are received; negative values are paid. Annualize by multiplying by 24 × 365.
funding_rate_shortNet hourly funding rate for short positions. Positive values are received; negative values are paid. Annualize by multiplying by 24 × 365.
Request
cURL
curl --request GET \
  --url https://api.perpdb.xyz/v1/gmtrade/funding-rates \
  --header 'x-api-key: ak_...'
Example
{
  "data": [
    {
      "market_variant": "AAPL/USD[USDC]",
      "time": "2026-08-15T06:26:47.394Z",
      "funding_rate_long": 0.000004211206918812,
      "funding_rate_short": -0.000004233591400608
    },
    {
      "market_variant": "AAVE/USD[WSOL-USDC]",
      "time": "2026-08-15T23:38:21.512Z",
      "funding_rate_long": 0.000102739726027368,
      "funding_rate_short": -0.000210251798037324
    }
  ]
}

Funding rate history

GET
Net funding-rate history per side, bucketed over time. Rates are per market variant, so market is required.
History depth
All plans · 30d
Headers
x-api-keystringrequired
API key sent in the request header; never accepted as a query parameter.
Query parameters
market_variantstringrequired
Protocol-native market variant to aggregate; required because rates are calculated per variant.
interval1h | 4h | 1d
Aggregation bucket size.
fromstring
Inclusive window start as an RFC 3339 timestamp; defaults per endpoint.
tostring
Exclusive window end as an RFC 3339 timestamp; defaults to the current time.
Response
200
{ interval, from, to, data: Bucket[] }
Bucket
timeStart of the aggregation bucket.
funding_rate_longAverage net hourly funding rate for long positions in the bucket.
funding_rate_shortAverage net hourly funding rate for short positions in the bucket.
Request
cURL
curl --request GET \
  --url https://api.perpdb.xyz/v1/gmtrade/funding-rates/history?market_variant=SOL/USD[WSOL-USDC]&interval=1h \
  --header 'x-api-key: ak_...'
Example
{
  "interval": "1h",
  "from": "2026-08-01T23:39:03.486Z",
  "to": "2026-08-15T23:39:03.486Z",
  "data": [
    {
      "time": "2026-08-01T23:00:00.000Z",
      "funding_rate_long": -1.1030577876e-8,
      "funding_rate_short": -7.4876283252e-8
    },
    {
      "time": "2026-08-02T00:00:00.000Z",
      "funding_rate_long": -1.1030577876000002e-8,
      "funding_rate_short": -7.4876283252e-8
    }
  ]
}