> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bravadotrade.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GET /perps/funding/history: Funding History

> Per-interval Polymarket Perps funding observations for one instrument, oldest first, with the venue-published rate kept exact plus hourly-normalised and annualised forms. Scope analytics.read.

> [!NOTE]
>
> Sign each request with a fresh HMAC signature. The cURL and HTTP header values below are placeholders, not reusable credentials. For runnable signing code, use [request signing examples](https://docs.bravadotrade.com/authentication-examples.md).

Per-interval funding observations for one instrument, **oldest first**. Each observation carries the venue-published per-interval rate (kept as an exact decimal string), the interval it applies to and its provenance, plus the rate normalised to an hourly figure and expressed as an annualised percentage. This is analytics data, not tax-grade. Part of the [Perps Data](https://docs.bravadotrade.com/products/perps-data.md) product; scope `analytics.read`.

```text theme={null}
GET https://partner-api.bravadotrade.com/perps/funding/history
```

### Query Parameters

**instrument** `string` *required*

The instrument, by its venue-native id (for example `6`) or its canonical symbol (for example `BTC`). Matches `[A-Za-z0-9._-]{1,32}`.

**venue** `string`

One of `polymarket`, `binance`, `bybit`, `hyperliquid`. Omit for the default. Polymarket is the covered venue; the others exist for the [funding comparison](https://docs.bravadotrade.com/api/perps-data/funding-compare.md).

**from** `string`

Start of the window. Accepts RFC3339, unix seconds or unix milliseconds.

**to** `string`

End of the window. Same formats as `from`. The window may span at most **31 days**; a wider range is refused with `400 range_too_large`.

**limit** `integer` (default: 1000)

Rows per page, `1`–`5000`.

### Response

Observations in `data`, oldest first. When `has_more` is `true`, page forward by passing `next_from_ms` back as `from`.

**instrument** `string`

The instrument the observations are for.

**interval\_minutes** `integer`

The funding interval requested, in minutes.

**rate\_basis** `string`

The basis the per-interval rate is quoted on.

**data** `array`

**Observation fields**

**funding\_time\_ms** `integer`

When the funding applies, in unix milliseconds (`funding_time` carries the same instant in seconds).

**funding\_rate** `string`

The venue-published per-interval funding rate, as an exact decimal string (`funding_rate_raw` is the unprocessed value).

**hourly\_rate** `string`

The rate normalised to a per-hour figure, so observations on different intervals are comparable.

**annualized\_pct** `string`

The rate expressed as an annualised percentage.

**interval\_minutes** `integer`

The interval this observation applies to, in minutes.

**interval\_source** `string`

How the interval was determined.

**provenance** `string`

Where the rate came from — the venue and how it was published.

**funding\_cap** `string`

The venue's funding cap for the interval, when published.

**has\_more** `boolean`

`true` when more rows remain beyond this page.

**next\_from\_ms** `integer`

Present when `has_more` is `true`. Pass it back as `from` to read the next page.

### Example

```bash cURL theme={null}
curl -G https://partner-api.bravadotrade.com/perps/funding/history \
  -H "X-BRAVADO-API-KEY: $BRAVADO_API_KEY" \
  -H "X-BRAVADO-TIMESTAMP: <unix-ms>" \
  -H "X-BRAVADO-SIGNATURE: <signature-for-this-request>" \
  -d instrument=BTC \
  -d from=2026-10-01T00:00:00Z \
  -d to=2026-10-02T00:00:00Z \
  -d limit=1000
```

```json Response (abbreviated) theme={null}
{
  "instrument": "BTC",
  "interval_minutes": 60,
  "rate_basis": "per_interval",
  "data": [
    {
      "funding_time_ms": 1759276800000,
      "funding_rate": "0.0000125",
      "funding_rate_raw": "0.0000125",
      "hourly_rate": "0.0000125",
      "annualized_pct": "10.95",
      "interval_minutes": 60,
      "interval_source": "venue",
      "provenance": "polymarket",
      "funding_cap": "0.0075"
    }
  ],
  "has_more": true,
  "next_from_ms": 1759363200000
}
```

## Related

* [Funding comparison](https://docs.bravadotrade.com/api/perps-data/funding-compare.md) — one symbol across Polymarket, Binance, Bybit and Hyperliquid.
* [Perps Data overview](https://docs.bravadotrade.com/products/perps-data.md) — the product, its credential and shared conventions.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.