Skip to main content
GET
TypeScript

Authorizations

Authorization
string
header
required

The Trading API key (trdrs_sk_…), for market data, orders and account state on the accounts its owner holds. Use it server-to-server, and keep it on your server. Its scope is named trading in the API.

Query Parameters

symbol
string
required

The symbol, or a spread expression as /api/market/history accepts. A spread resolves as type spread, with no tick and no quotes. A string that exactly matches a catalog symbol is always that symbol, never arithmetic.

Response

The symbol's details. A known symbol with no feed set up still resolves, with provider null.

Everything you need to display and chart one symbol: its identity, how its prices are written, and its trading sessions and holidays.

symbol
string
required

The symbol as you asked for it.

name
string
required

The short display name.

ticker
string
required

The symbol id to use in every later call, to resolve or subscribe.

description
string
required

The long display name.

exchange
string
required

The exchange the symbol trades on.

listedExchange
string
required

The exchange that lists the symbol.

type
string
required

The kind of instrument, as symbol search writes it in each row's type. A spread expression resolves as spread.

supportedResolutions
string[]
required

The timeframes this symbol's feed serves. Empty means the feed serves any timeframe the format from /api/market/config accepts, rather than a short list that would promise less than it serves.

timezone
string
required

The IANA time zone of the exchange session, such as America/Chicago.

session
string
required

The weekly session in exchange time, as HHMM-HHMM. A trading-day suffix (1 is Sunday through 7 is Saturday) marks a session that opens on the previous calendar day, and 24x7 marks a market that never closes.

dataStatus
enum<string>
required

How live the data is for you. streaming means a real-time feed serves the symbol. delayed_streaming means your feed sends prices the exchange has delayed: show them as delayed, because they never count as real time. endofday means no feed serves it.

Available options:
streaming,
endofday,
delayed_streaming
volumePrecision
number
required

How many decimal places to show for volume: 0 for a market that trades whole units, otherwise the provider's size step.

format
object
required

How to write the symbol's prices.

provider
enum<string> | null
required

The provider that publishes the data, or null when no feed is set up for the symbol.

Available options:
rithmic,
null
tick
number | null
required

The smallest price move, or null when the symbol has none, as a spread expression doesn't.

quotes
boolean
required

True when the feed serves real top-of-book quotes for the symbol.

sessionClass
enum<string>
required

The trading-session model the symbol follows. trdrs states it, so you never have to guess it.

Available options:
equity,
futures,
fx,
crypto
multiplier
number | null
required

What a price move of 1.0 is worth per unit, in dollars, or null until known.

market
string | null
required

The market key the symbol names: the one name of the market an order trades, whichever feed or provider names the symbol. A perpetual is its registered symbol (HYPERLIQUID:BTC), a dated future its contract (CME:ESZ2026, from ESZ6, ESZ2026 or CME_MINI:ESZ2026), a continuous future its product and position (CME:ES1!, and CME:ES2!; a root such as ES names position 1), and a CFD its contract. An account's markets are matched by it, so two symbols with the same key are the same market. Null for a symbol that names no market: a venue's published data series, a spread, or a futures root trdrs holds no contract specification for. It is data only, and no account trades it.

displaySymbol
string

The ticker a builder-deployed Hyperliquid market is read by, as symbol search writes it in each row's displaySymbol. Present only for builder-deployed markets.

displayExchange
string

The exchange a builder-deployed Hyperliquid market is read by, as symbol search writes it in each row's displayExchange. Present where that row's is.

dex
string

The full name of the builder-deployed perp dex that lists the market, as symbol search writes it in each row's dex. Present only for builder-deployed markets.

sessionHolidays
string

The days the market is fully closed, as comma-separated YYYYMMDD dates in order. Present only when sessionCalendar is.

corrections
string

The trading days whose hours differ from the weekly session, as semicolon-separated hours:dates entries. The hours use the same format as session, without a trading-day suffix: a start later than the end opens on the previous calendar day, and hours that run to midnight end at 0000. The dates are an ordered, comma-separated YYYYMMDD list. Full closures are never listed here, because they are in sessionHolidays. Present only when the served calendar holds a shortened trading day.

Example:

"1700-1200:20261126;1700-1215:20261127,20261224"

subsessions
object[]

The named sessions of a market that keeps extended hours: regular, extended, premarket and postmarket. For a stock, the regular entry has the same hours as session, and the extended hours appear only here. For a future, the extended entry has the same hours as session, and the regular entry states the regular trading hours inside it. Read pre-market and post-market status and extended-hours shading from here. Present for stocks and futures, and absent for FX, crypto and spreads, which have one session with no named parts.

Example:
currencyCode
string

The quote currency: an ISO 4217 code for a market quoted in money, or the quote asset the provider declares for a perpetual margined in a stablecoin. Absent when the instrument declares none.

unitId
string

The unit a symbol that isn't quoted in a currency is quoted in.

sessionCalendar
object

The holiday calendar for the symbol's session model, for futures and stocks. It is absent for FX and crypto. Dates are exchange-local YYYY-MM-DD, an empty list of stretches is a full closure, and a date that isn't listed follows the weekday rules. trdrs keeps this calendar up to date every year, so your client never ships its own calendar updates.