Skip to content

Price history (OHLCV)

GET
/v1/stocks/{symbol}/price
curl --request GET \
--url 'https://api.tapetide.com/v1/stocks/example/price?days=365&interval=daily&end_date=2025-12-31' \
--header 'Authorization: Bearer <token>'

Row-per-day OHLCV with delivery %. days sets the lookback window (default 365, max 2000); interval is the bar size (daily or weekly). meta.window states the window actually served and next_cursor gives the end_date for the preceding page, so a multi-year series is paged with end_date until has_more is false.

symbol
required
string
<= 64 characters

Stock or index symbol, e.g. “RELIANCE”, “TCS”, “NIFTY”. Percent-encode symbols containing “&” (M%26M).

days
integer
>= 1 <= 2000

Lookback window in calendar days (default 365, max 2000).

Example

365
interval
string
Allowed values: daily weekly

Bar size: daily (default) or weekly. Intraday bars are not served here.

end_date
string

Inclusive YYYY-MM-DD upper bound; the paging cursor. Pass meta.window.next_cursor from the previous page.

Example

2025-12-31

OK. Costs one request unit.

Media typeapplication/json
object
data
required

The document. Shape is route-specific and never truncated.

meta
required

Paging and window information where the route pages (e.g. window.next_cursor on price history).

object
as_of

When this response was assembled (UTC).

string format: date-time
route

The operationId that served it.

string
key
additional properties
any

Example generated

{
"data": "example",
"meta": {
"as_of": "2026-04-15T12:00:00Z",
"route": "example"
}
}
X-RateLimit-Reset
integer

Unix seconds when the binding quota window resets (IST boundaries).

Malformed or out-of-range parameter. Not charged.

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: authentication_required invalid_token invalid_request route_not_found not_found method_not_allowed rate_limited quota_exhausted upstream_unavailable service_unavailable tool_error internal_error
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "authentication_required"
}
}

Missing or invalid bearer token.

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: authentication_required invalid_token invalid_request route_not_found not_found method_not_allowed rate_limited quota_exhausted upstream_unavailable service_unavailable tool_error internal_error
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "authentication_required"
}
}

The symbol, index or document does not exist. Not charged.

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: authentication_required invalid_token invalid_request route_not_found not_found method_not_allowed rate_limited quota_exhausted upstream_unavailable service_unavailable tool_error internal_error
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "authentication_required"
}
}

Per-minute burst cap or plan quota reached.

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: authentication_required invalid_token invalid_request route_not_found not_found method_not_allowed rate_limited quota_exhausted upstream_unavailable service_unavailable tool_error internal_error
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "authentication_required"
}
}
Retry-After
integer
X-RateLimit-Reset
integer

Unix seconds when the binding quota window resets (IST boundaries).

A data dependency was unavailable. Not charged.

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: authentication_required invalid_token invalid_request route_not_found not_found method_not_allowed rate_limited quota_exhausted upstream_unavailable service_unavailable tool_error internal_error
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "authentication_required"
}
}