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

# Get unified market kline (OHLCV)

> [OpenAPI JSON Spec](/docs/output/v1_market_kline_get.json)
Returns standardized OHLCV kline data for any supported asset type.
The `trading_pair` uses the format `<Market>_<InstrumentType>_<Symbol>_<Currency>`.

**Supported combinations:**
| Scenario | trading_pair example | Interval |
|---|---|---|
| Crypto spot | `BINANCE_SPOT_BTC_USDT` | All |
| Crypto perp | `BINANCE_PERP_ETH_USDT` | All |
| Hyperliquid spot | `HYPERLIQUID_SPOT_BTC_USDC` | All |
| Hyperliquid perp | `HYPERLIQUID_PERP_AAPL_USDC` | All |
| Stock spot | `US_SPOT_AAPL_USD` | All |
| Stock option | `US_OPTION_AAPL250620C00200000_USD` | All |
| ETF spot | `US_SPOT_SPY_USD` | All |
| ETF option | `US_OPTION_SPY260402C00400000_USD` | All |
| Index spot | `US_SPOT_SPX_USD` | 1d only |
| Index option | `US_OPTION_SPX260402C04000000_USD` | All |
| Commodity future | `CME_FUTURE_GCUSD_USD` | 1d only |
| FX spot | `FX_SPOT_EURUSD_USD` | 1d only |



## OpenAPI

````yaml /api-reference/openapi.json get /v1/market/kline
openapi: 3.0.0
info:
  contact: {}
  description: >-
    Welcome to Arrays!


    Arrays is a unified financial data layer for both financial institutions and
    retail users, delivering comprehensive market data across crypto and equity
    markets. Our datasets cover fundamentals, ETFs, options, crypto, and more.


    Visit [arrays.org](https://arrays.org) to request an API key and start your
    free trial. You can explore our full API offerings in the documentation
    below.


    For any questions regarding APIs or pricing, please contact
    support@arrays.org.
  title: Arrays API
  version: '1.0'
servers:
  - url: https://data-tools.prd.arrays.org/api
security: []
paths:
  /v1/market/kline:
    get:
      tags:
        - Market
      summary: Get unified market kline (OHLCV)
      description: >-
        [OpenAPI JSON Spec](/docs/output/v1_market_kline_get.json)

        Returns standardized OHLCV kline data for any supported asset type.

        The `trading_pair` uses the format
        `<Market>_<InstrumentType>_<Symbol>_<Currency>`.


        **Supported combinations:**

        | Scenario | trading_pair example | Interval |

        |---|---|---|

        | Crypto spot | `BINANCE_SPOT_BTC_USDT` | All |

        | Crypto perp | `BINANCE_PERP_ETH_USDT` | All |

        | Hyperliquid spot | `HYPERLIQUID_SPOT_BTC_USDC` | All |

        | Hyperliquid perp | `HYPERLIQUID_PERP_AAPL_USDC` | All |

        | Stock spot | `US_SPOT_AAPL_USD` | All |

        | Stock option | `US_OPTION_AAPL250620C00200000_USD` | All |

        | ETF spot | `US_SPOT_SPY_USD` | All |

        | ETF option | `US_OPTION_SPY260402C00400000_USD` | All |

        | Index spot | `US_SPOT_SPX_USD` | 1d only |

        | Index option | `US_OPTION_SPX260402C04000000_USD` | All |

        | Commodity future | `CME_FUTURE_GCUSD_USD` | 1d only |

        | FX spot | `FX_SPOT_EURUSD_USD` | 1d only |
      parameters:
        - description: Trading pair (e.g. BINANCE_SPOT_BTC_USDT, US_SPOT_AAPL_USD)
          in: query
          name: trading_pair
          required: true
          schema:
            type: string
        - description: Start time in ISO 8601 / RFC3339 format (e.g. 2025-01-01T00:00:00Z)
          in: query
          name: start_time
          required: true
          schema:
            type: string
        - description: End time in ISO 8601 / RFC3339 format (e.g. 2025-01-02T00:00:00Z)
          in: query
          name: end_time
          required: true
          schema:
            type: string
        - description: Kline interval
          in: query
          name: interval
          required: true
          schema:
            type: string
            enum:
              - 1min
              - 5min
              - 15min
              - 30min
              - 1h
              - 4h
              - 1d
              - 1w
              - 1m
        - description: Max number of bars (default 500, max 10000)
          in: query
          name: limit
          schema:
            type: integer
        - description: 'Trading session: RTH or ETH (default ETH, stock/option only)'
          in: query
          name: session
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/model.APIResponse'
                  - properties:
                      data:
                        items:
                          $ref: '#/components/schemas/model.MarketKlineData'
                        type: array
                    type: object
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.APIResponse'
components:
  schemas:
    model.APIResponse:
      properties:
        data: {}
        error:
          $ref: '#/components/schemas/model.APIError'
        metadata: {}
        pagination: {}
        request_id:
          type: string
        success:
          type: boolean
      type: object
    model.MarketKlineData:
      properties:
        price_close:
          type: number
        price_high:
          type: number
        price_low:
          type: number
        price_open:
          type: number
        time_close:
          type: string
        time_open:
          type: string
        volume:
          type: number
      type: object
    model.APIError:
      properties:
        code:
          example: RESOURCE_NOT_FOUND
          type: string
        details:
          items:
            $ref: '#/components/schemas/model.APIErrorDetail'
          type: array
        docs_url:
          type: string
        examples:
          items:
            type: string
          type: array
        hint:
          type: string
        message:
          example: The requested resource was not found.
          type: string
        suggestions:
          items:
            type: string
          type: array
      type: object
    model.APIErrorDetail:
      properties:
        field:
          type: string
        got:
          type: string
        reason:
          type: string
      type: object

````