Skip to main content
GET
List historical TPO (Market Profile) data

Authorizations

x-api-key
string
header
required

Query Parameters

exchange
string
required

TakeProfit exchange code as returned by /api/v1/marketdata/exchanges.

Example:

"BATS"

symbol
string
required

Public security symbol returned by /api/v1/marketdata/exchanges/{exchange}/securities. TakeProfit security symbol as returned by /api/v1/marketdata/exchanges/{exchange}/securities. In a path segment a slash must be percent-encoded (BTC/USDT is requested as BTC%2FUSDT).

Example:

"AAPL"

timeframe
string
required

Day (1d..31d), week (1w..4w), or month (1M) timeframe id. Timeframe id returned by /api/v1/marketdata/timeframes. Canonical suffixes include M for months and Q for quarters.

Example:

"1h"

from
string

Range start as Unix seconds or RFC3339 timestamp. Without it the window is measured backwards from to. Unix seconds (for example 1790000000) or RFC3339 timestamp.

to
string

Range end as Unix seconds or RFC3339 timestamp, greater than from. Defaults to now when from is omitted. Unix seconds (for example 1790000000) or RFC3339 timestamp.

period
integer

Range duration in seconds, counted forward from from or backwards from to.

Required range: x >= 1
blockSize
enum<string>

Duration of each profile time block. Defaults to 30m. Duration of each TPO time block.

Available options:
30m,
1h,
2h,
4h
rowSize
integer

Price row height in tick size. 0 (or omitted) enables automatic row size detection.

Required range: 0 <= x <= 1000000
sessionType
enum<string>[]

Optional session filter. Repeat this parameter or pass comma-separated values.

Available options:
MAINSESSION,
PRE_MARKET,
POST_MARKET
mergeSessions
enum<string>

How sessions are merged into profiles. Defaults to MERGE_ALL. MERGE_ALL merges all sessions into one profile per period. GROUP_BY_TYPE builds one profile per session type per period.

Available options:
MERGE_ALL,
GROUP_BY_TYPE

Response

TPO response.

meta
object
required
profiles
object[]
required