🔗 JSON-RPC API

JSON-RPC proxy for Stock REST endpoints.

Stock Data - JSON RPC

Overview

Our JSON-RPC implementation is a thin proxy around the Stock REST API. It forwards JSON-RPC requests to the same REST resources and does not define separate stock-specific RPC methods.

  • method is the REST path, for example v1/symbols/{exchange_id} or v1/ohlcv/exchange-symbol/{exchange_id}/{symbol_id}/latest
  • params is converted into REST path parameters and query string parameters
  • Keys used in path placeholders are substituted into the path
  • Remaining keys are appended to the proxied REST request as query string values

This means JSON-RPC is only a different transport wrapper over the existing REST design.

Endpoint

To access Stock Data through JSON-RPC, use:

EnvironmentEncryptionValue
ProductionYeshttps://api-historical.stock.finfeedapi.com/jsonrpc

Authentication

Authentication is exactly the same as for the REST API. See the authentication section.

Request Format

Use a JSON-RPC 2.0 request where method contains the REST path and params is an object:

{
  "jsonrpc": "2.0",
  "method": "v1/ohlcv/exchange-symbol/{exchange_id}/{symbol_id}/latest",
  "params": {
    "exchange_id": "IEXG",
    "symbol_id": "AAPL",
    "period_id": "1MIN",
    "limit": 100
  },
  "id": "my-tracking-id-001"
}

The request above is proxied to:

GET /v1/ohlcv/exchange-symbol/IEXG/AAPL/latest?period_id=1MIN&limit=100

API Design Mapping

The proxy follows the REST structure of the Stock API, including:

  • Metadata endpoints such as v1/exchanges and v1/symbols/{exchange_id}
  • OHLCV endpoints such as v1/ohlcv/periods and v1/ohlcv/exchange-symbol/{exchange_id}/{symbol_id}/latest
  • Native IEX endpoints such as v1/native/iex/trade/{symbol}, v1/native/iex/level1-quote/{symbol}, and related market data routes

Examples

List symbols for an exchange

Request

https://api-historical.stock.finfeedapi.com/jsonrpc?apikey=YOUR-API-KEY

{
  "jsonrpc": "2.0",
  "method": "v1/symbols/{exchange_id}",
  "params": {
    "exchange_id": "IEXG"
  },
  "id": "my-tracking-id-001"
}

Proxied REST request:

GET /v1/symbols/IEXG

Get latest OHLCV data

Request

https://api-historical.stock.finfeedapi.com/jsonrpc?apikey=YOUR-API-KEY

{
  "jsonrpc": "2.0",
  "method": "v1/ohlcv/exchange-symbol/{exchange_id}/{symbol_id}/latest",
  "params": {
    "exchange_id": "IEXG",
    "symbol_id": "AAPL",
    "period_id": "1MIN",
    "limit": 100
  },
  "id": "my-tracking-id-001"
}

Proxied REST request:

GET /v1/ohlcv/exchange-symbol/IEXG/AAPL/latest?period_id=1MIN&limit=100

Get native IEX trades

Request

https://api-historical.stock.finfeedapi.com/jsonrpc?apikey=YOUR-API-KEY

{
  "jsonrpc": "2.0",
  "method": "v1/native/iex/trade/{symbol}",
  "params": {
    "symbol": "AAPL",
    "date": "2025-01-24"
  },
  "id": "my-tracking-id-001"
}

Proxied REST request:

GET /v1/native/iex/trade/AAPL?date=2025-01-24

Responses and Errors

Successful JSON-RPC responses return the underlying REST payload in the result field. If the proxied REST request fails, the error is returned as a JSON-RPC error object.

Service StatusGitHub SDK