Skip to content

GET /v1/quote

GET /v1/quote

Returns the latest quote for a single symbol or a batch of up to 8 symbols. The data is delayed by 15 minutes from the live tape; see delayed data.

Request

GET /v1/quote?symbol=AAPL HTTP/1.1
Host: api.oneapi.finance
Authorization: Bearer oa_live_<your_key>
Accept: application/json

Query parameters

ParamTypeRequiredNotes
symbolstringone ofSingle symbol, e.g. AAPL. Mutually exclusive with symbols.
symbolsstringone ofComma-separated list, max 8. e.g. AAPL,MSFT,GOOGL.
exchangestringnoDisambiguate cross-listed tickers. Use the canonical code from exchanges.

Either symbol or symbols is required, not both.

Response (single symbol)

{
"quote": {
"symbol": "AAPL",
"name": "Apple Inc.",
"exchange": "NASDAQ",
"currency": "USD",
"price": 175.43,
"open": 174.0,
"high": 176.1,
"low": 173.8,
"previousClose": 174.5,
"change": 0.93,
"changePercent": 0.53,
"volume": 52000000,
"avgVolume": 60000000,
"high52Week": 198.23,
"low52Week": 124.17,
"timestamp": "2026-05-04T20:00:00Z",
"meta": {
"source": "yahoo_query1",
"fetched_at": "2026-05-04T20:14:32Z"
}
}
}

Response (batched)

{
"quotes": {
"AAPL": { "symbol": "AAPL", "price": 175.43, "...": "..." },
"MSFT": { "symbol": "MSFT", "price": 421.08, "...": "..." }
}
}

If a symbol in the batch fails to resolve, it is omitted from quotes and the top-level data_issues array lists what went wrong:

{
"quotes": { "AAPL": { "symbol": "AAPL", "...": "..." } },
"data_issues": ["XYZQ: not_found"]
}

Field reference

FieldTypeNotes
symbolstringNormalized to uppercase.
namestring | nullDisplay name of the issuer.
exchangestring | nullCanonical exchange code. See exchanges.
currencystring | nullISO 4217, possibly a sub-unit (GBX, ILA, ZAC).
pricenumber | nullLast trade price in currency.
opennumber | nullOpening price for the current session.
highnumber | nullHigh of the current session.
lownumber | nullLow of the current session.
previousClosenumber | nullClose from the previous session.
changenumber | nullprice - previousClose.
changePercentnumber | nullPercentage change as a plain number (e.g. 0.53 means 0.53%).
volumeinteger | nullVolume traded in the current session.
avgVolumeinteger | null30-day average daily volume.
high52Weeknumber | nullTrailing 52-week high.
low52Weeknumber | nullTrailing 52-week low.
timestampstring | nullISO 8601 UTC. As-of time of the price tick.
meta.sourcestring | nullUpstream identifier. See source attribution.
meta.fetched_atstring | nullISO 8601 UTC. When we pulled from the upstream.

The wire-format model is oneapi_core.responses.quote.Quote.

Examples

Terminal window
# Single symbol
curl -H "Authorization: Bearer oa_live_..." \
"https://api.oneapi.finance/v1/quote?symbol=AAPL"
# Batched
curl -H "Authorization: Bearer oa_live_..." \
"https://api.oneapi.finance/v1/quote?symbols=AAPL,MSFT,GOOGL,AMZN"
# Cross-listed disambiguation
curl -H "Authorization: Bearer oa_live_..." \
"https://api.oneapi.finance/v1/quote?symbol=BMW.DE&exchange=XETR"

Errors

StatuscodeWhen
400bad_requestBoth symbol and symbols provided, or symbols longer than 8.
401unauthenticatedMissing or invalid API key.
404not_foundSymbol unknown on a single-symbol request.
429rate_limitSee rate limits.
502upstream_failureAll sources failed for this symbol.

For batched requests, individual symbol failures populate data_issues rather than returning an error status.

See also