🔗 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.
methodis the REST path, for examplev1/symbols/{exchange_id}orv1/ohlcv/exchange-symbol/{exchange_id}/{symbol_id}/latestparamsis 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:
| Environment | Encryption | Value |
|---|---|---|
| Production | Yes | https://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=100API Design Mapping
The proxy follows the REST structure of the Stock API, including:
- Metadata endpoints such as
v1/exchangesandv1/symbols/{exchange_id} - OHLCV endpoints such as
v1/ohlcv/periodsandv1/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/IEXGGet 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=100Get 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-24Responses 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.
