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

# Per-minute funding rates for a market pair

> Returns the funding rates recorded for two markets over a window of `limit` minutes, ending at `dateTo` (defaults to now, never later than the current minute) shifted `offset` minutes back — increase offset by limit to page further into the past. Minutes without a recorded rate are omitted, not zero-filled, so each leg carries between zero and `limit` rates.



## OpenAPI

````yaml https://vooi-api-app.fly.dev/swagger/json get /arbitrage-scanner/funding-candles
openapi: 3.1.0
info:
  title: VOOI API
  description: Unified perps API
  version: '1.0'
  contact: {}
servers:
  - url: https://perps-api.vooi.io
security: []
tags: []
paths:
  /arbitrage-scanner/funding-candles:
    get:
      tags:
        - Arbitrage Scanner
      summary: Per-minute funding rates for a market pair
      description: >-
        Returns the funding rates recorded for two markets over a window of
        `limit` minutes, ending at `dateTo` (defaults to now, never later than
        the current minute) shifted `offset` minutes back — increase offset by
        limit to page further into the past. Minutes without a recorded rate are
        omitted, not zero-filled, so each leg carries between zero and `limit`
        rates.
      operationId: ArbitrageScannerController_getFundingCandles
      parameters:
        - name: assetA
          required: true
          in: query
          schema:
            type: string
            minLength: 1
            example: BTC
          description: Asset identifier of the first leg market.
        - name: assetB
          required: true
          in: query
          schema:
            type: string
            minLength: 1
            example: BTC
          description: Asset identifier of the second leg market.
        - name: dateTo
          required: false
          in: query
          schema:
            example: 1784720700000
            type: integer
            minimum: 0
            maximum: 9007199254740991
          description: >-
            End of the window as a unix timestamp in milliseconds, truncated to
            the minute. Defaults to now.
        - name: exchangeA
          required: true
          in: query
          schema:
            type: string
            enum:
              - aster
              - binance
              - bybit
              - extended
              - gate
              - hyperliquid
              - lighter
              - mexc
              - ondo
              - robinhood
            example: lighter
          description: Exchange of the first leg market.
        - name: exchangeB
          required: true
          in: query
          schema:
            type: string
            enum:
              - aster
              - binance
              - bybit
              - extended
              - gate
              - hyperliquid
              - lighter
              - mexc
              - ondo
              - robinhood
            example: aster
          description: Exchange of the second leg market.
        - name: limit
          required: false
          in: query
          schema:
            default: 1500
            example: 1500
            type: integer
            exclusiveMinimum: 0
            maximum: 3000
          description: Width of the returned window in minutes.
        - name: offset
          required: false
          in: query
          schema:
            default: 0
            example: 0
            type: integer
            minimum: 0
            maximum: 9007199254740991
          description: >-
            Number of most recent minutes to skip before dateTo. Increase by
            limit to page further back in time.
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetFundingCandlesResponseDto'
components:
  schemas:
    GetFundingCandlesResponseDto:
      type: object
      properties:
        candlesA:
          type: array
          items:
            $ref: '#/components/schemas/FundingCandleDto'
          description: >-
            Per-minute funding rates of the first leg market, in ascending time
            order.
        candlesB:
          type: array
          items:
            $ref: '#/components/schemas/FundingCandleDto'
          description: >-
            Per-minute funding rates of the second leg market, in ascending time
            order.
      required:
        - candlesA
        - candlesB
      title: GetFundingCandlesResponse
    FundingCandleDto:
      type: object
      properties:
        close:
          type: string
          description: Funding rate recorded for the minute, as a decimal fraction.
          example: '0.0000128'
        timestamp:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: Start of the 1-minute interval as a unix timestamp in milliseconds.
          example: 1784715300000
      required:
        - close
        - timestamp
      title: FundingCandle

````

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