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

# Perpetual Market Funding Rates

> Settled funding rate for a perpetual futures contract, one point per settlement, across centralized exchanges and Hyperliquid. Each series is one contract, keyed by exchange and contract symbol, with the same id perpetual-markets uses for that contract. The rate is what one interval paid, as a fraction; it is neither annualized nor scaled to a common interval, so read it with intervalHours.

One row per perpetual futures contract that reports a funding rate, across centralized exchanges and Hyperliquid, keyed by exchange and contract symbol: exchange, sub-venue, symbol, base asset and the contract's latest settlement interval. The id is the series key of the perpetual-market-funding-rates timeseries model, and matches the perpetual-markets id for the same contract.

| | |
| - | - |
| Access | Derivatives-dataset |
| Tabular model | `perpetual-market-funding-rates`: primary key `perpetualMarketID` |
| Timeseries model | `perpetual-market-funding-rates`: intervals `1h`, series key `perpetualMarketID` (Perpetual Market ID), series must be named (up to 20 per call) |

## Endpoints

> **[List Perpetual Market Funding Rates](https://docs.blockworks.com/api-reference/data-api/derivatives/tabular-perpetual-market-funding-rates.md)**
>
> One page of rows with per-column filters, sorting and pagination.

> **[Get Perpetual Market Funding Rate](https://docs.blockworks.com/api-reference/data-api/derivatives/tabular-perpetual-market-funding-rates-by-id.md)**
>
> One row by `perpetualMarketID`.

> **[Batch Get Perpetual Market Funding Rate timeseries](https://docs.blockworks.com/api-reference/data-api/derivatives/timeseries-perpetual-market-funding-rates.md)**
>
> Up to 20 series in one request, named by Perpetual Market ID in `series`.

> **[Get Perpetual Market Funding Rate timeseries](https://docs.blockworks.com/api-reference/data-api/derivatives/timeseries-perpetual-market-funding-rates-by-id.md)**
>
> One series over a time window, keyed by its Perpetual Market ID.

## Metrics

2 metrics. Use the `Field` value in `selections`; every point starts with the timestamp and continues in this order.

| Field | Name | Type | Unit | Description |
| - | - | - | - | - |
| `fundingRate` | Funding Rate | float64 | ratio | The funding rate settled for one interval, as a fraction (0.0001 is 0.01%). Positive means longs paid shorts. Not annualized and not scaled to a common interval. |
| `intervalHours` | Interval Hours | int64 | | Hours between this settlement and the contract's neighbouring one (1, 2, 4, 8 or 24). Null where neither gap is one of those. |

## Columns

Use the `Field` value in `selections`, `sortBy`, and as the base of a filter parameter (`Field` plus one of its `Filters` suffixes).

| Field | Type | Filters | Sort | Description |
| - | - | - | - | - |
| `perpetualMarketID` | string | `Eq`, `IsOneOf` | | The series key of the perpetual-market-funding-rates timeseries model, the exchange and contract symbol joined with an underscore (binance\_BTCUSDT). The same id as perpetual-markets where that model covers the contract. (primary key) |
| `name` | string | `Eq`, `IsOneOf`, `Contains` | default | The display name of the market, the exchange name followed by the contract symbol. |
| `exchangeSlug` | string | `Eq`, `IsOneOf` | yes | The exchange's slug, shared by every market on that exchange (gate-io, crypto-com). |
| `exchange` | string | `Eq`, `IsOneOf` | yes | The exchange's short name as used in the id (binance, bybit, okx, hyperliquid). |
| `exchangeSub` | string | `Eq`, `IsOneOf` | yes | The venue within the exchange, where one exchange hosts several: 'main' on every centralized venue and on core Hyperliquid, the HIP-3 builder code (xyz, para) on a builder market. |
| `symbol` | string | `Eq`, `IsOneOf`, `Contains` | yes | The exchange-native contract symbol. |
| `baseAsset` | string | `Eq`, `IsOneOf` | yes | The ticker of the asset the contract tracks, parsed from the contract symbol with contract-size prefixes such as 1000 and k removed (1000PEPEUSDT and kPEPE both read PEPE). Set on every contract. To identify the asset, use baseAssetID, which matches perpetual-markets. |
| `baseAssetID` | string | `Eq`, `IsOneOf` | | The unique identifier of the asset the contract tracks, the same as perpetual-markets for the same contract. Null, along with the other resolved base asset columns, where perpetual-markets has no asset for the contract. |
| `baseAssetName` | string | `Eq`, `IsOneOf`, `Contains` | yes | The name of the asset the contract tracks. |
| `baseAssetSlug` | string | `Eq`, `IsOneOf` | yes | The URL slug of the asset the contract tracks. |
| `baseAssetSymbol` | string | `Eq`, `IsOneOf`, `Contains` | yes | The ticker symbol of the asset the contract tracks, as the asset record holds it. It can differ in case and spelling from baseAsset. |
| `baseAssetSerialID` | int64 | `Eq`, `IsOneOf` | | The numeric serial identifier of the base asset, used by market data services. Join on it to reach the spot markets for the same asset. |
| `exchangeID` | string | `Eq`, `IsOneOf` | | The unique identifier of the exchange. |
| `exchangeName` | string | `Eq`, `IsOneOf`, `Contains` | | The display name of the exchange. |
| `exchangeSerialID` | int64 | `Eq`, `IsOneOf` | | The numeric serial identifier of the exchange, used by market data services. |
| `intervalHours` | int64 | `Eq`, `IsOneOf` | | Hours between the contract's latest two settlements (1, 2, 4, 8 or 24). Null where neither neighbouring gap is one of those. |

## Example

```bash curl theme={null}
curl "https://api.blockworks.com/query/timeseries/perpetual-market-funding-rates/1h/<perpetualMarketID>?timeframe=7d&selections=fundingRate,intervalHours" \
  -H "X-Blockworks-API-Key: $BLOCKWORKS_API_KEY"
```

See [Get Perpetual Market Funding Rate timeseries](https://docs.blockworks.com/api-reference/data-api/derivatives/timeseries-perpetual-market-funding-rates-by-id.md) for the response and the errors.


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