Options Data for US Stocks: End-of-Day and Historical Learn more

Live v2 for US Stocks: Extended Quotes (2025)

Add extended, exchange-compliant quote snapshots for US stocks to your product with a single request. For each requested symbol the API returns the last trade with its event time, full bid and ask with sizes and timestamps, intraday change, rolling averages, 52-week extremes, extended-hours data, and reference fields such as market cap, P/E, dividends, and issuer details. Several symbols can be requested in one call.

Test Drive with "DEMO" Key
  1. You can start with "DEMO" API key to test the data for a few tickers only: AAPL.US, TSLA.US, VTI.US, AMZN.US, BTC-USD.CC and EURUSD.FOREX. For these tickers, all of our types of data (APIs), including Real-Time Data, are available without limitations.
  2. Register for the free plan to receive your API key (limited to 20 API calls per day) with access to End-Of-Day Historical Stock Market Data API for any ticker, but within the past year only. Plus a List of tickers per Exchange is available.
  3. We recommend to explore our plans, starting from $19.99, to access the necessary type of data without limitations.

API Endpoint

GET https://eodhd.com/api/us-quote-delayed

The endpoint returns a delayed quote for one or more US stock symbols. The response is always JSON: a top-level object with meta, data (a per-symbol object), and links.

Parameters

api_token string required
Your EODHD API token
s string required
One or more US stock symbols, comma-separated, for example AAPL.US,MSFT.US. The .US suffix is optional. Unknown symbols are skipped.
fields string optional
Comma-separated list of per-symbol fields to return, for example lastTradePrice,bidPrice. Omit to return the full field set.

Unknown or unsupported symbols are silently skipped: they do not appear in data, and meta.count reflects only the symbols that resolved. If none resolve, data is an empty array and meta.count is 0.

Request Example

https://eodhd.com/api/us-quote-delayed?s=AAPL.US&api_token=YOUR_API_TOKEN
(Sign up for free to get an API token)
curl --location "https://eodhd.com/api/us-quote-delayed?s=AAPL.US&api_token=YOUR_API_TOKEN&fmt=json"
(Sign up for free to get an API token)
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://eodhd.com/api/us-quote-delayed?s=AAPL.US&api_token=YOUR_API_TOKEN&fmt=json',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'GET',
));

$data = curl_exec($curl);
curl_close($curl);

try {
    $data = json_decode($data, true, 512, JSON_THROW_ON_ERROR);
    var_dump($data);
} catch (Exception $e) {
    echo 'Error. '.$e->getMessage();
}
(Sign up for free to get an API token)
import requests

url = f'https://eodhd.com/api/us-quote-delayed?s=AAPL.US&api_token=YOUR_API_TOKEN&fmt=json'
data = requests.get(url).json()

print(data)
(Sign up for free to get an API token)
library(httr)
library(jsonlite)

url <- 'https://eodhd.com/api/us-quote-delayed?s=AAPL.US&api_token=YOUR_API_TOKEN&fmt=json'
response <- GET(url)

if (http_type(response) == "application/json") {
    content <- content(response, "text", encoding = "UTF-8")
    cat(content)
} else {
    cat("Error while receiving data\n")
}
(Sign up for free to get an API token)
New to coding? Our ChatGPT assistant can generate code in any language tailored to our API. Simply describe how you want to use our data, and get a working piece of code. Don’t forget to replace the API token with your own.

Try it now (it's free)!

How to use it (YouTube)

Sign up & Get Data

Response Format

The response is a JSON object with three top-level members: meta (result metadata), data (an object keyed by requested symbol), and links (reserved for pagination; currently always null). Each requested symbol is a key inside data, mapping to that symbol’s quote object.

{
  "meta": { "count": 2 },
  "data": {
    "AAPL.US": {
      "symbol": "AAPL.US",
      "exchange": "XNAS",
      "type": "STOCK",
      "name": "Apple",
      "open": 317.615,
      "high": 328.73,
      "low": 317.32,
      "lastTradePrice": 327.5,
      "lastTradeTime": 1784147349117,
      "bidPrice": 327.43,
      "bidSize": 520,
      "bidTime": 1784147337000,
      "askPrice": 327.5,
      "askSize": 320,
      "askTime": 1784147349000,
      "volume": 60673507,
      "change": 0,
      "changePercent": null,
      "previousClosePrice": null,
      "previousCloseDate": "2026-07-14 17:00:00",
      "marketCap": 4808073350000,
      "pe": 38.118644,
      "dividendYield": 0.0034,
      "currency": "USD",
      "timestamp": 1784161740
    },
    "MSFT.US": { "symbol": "MSFT.US", "exchange": "XNAS", "lastTradePrice": 512.09, "currency": "USD" }
  },
  "links": { "next": null }
}
FieldTypeDescription
meta.countintegerNumber of symbols returned
links.nextstring or nullReserved for pagination; currently always null

Per-symbol fields (data)

Each key inside data is a requested symbol. The value is the quote object below. Fields are grouped for readability; expand each section to see its fields.

Identification and classification
FieldTypeDescription
symbolstringInstrument code, for example AAPL.US
exchangestringExchange MIC code, for example XNAS
isoExchangestringISO exchange identifier
bzExchangestringHuman-readable exchange name, for example NASDAQ
otcMarketstringOTC market name; empty if not applicable
otcTierstringOTC market tier; empty if not applicable
typestringInstrument type, for example STOCK
namestringCompany name
companyStandardNamestringStandardized issuer name
descriptionstringInstrument description
sectorstringSector classification
industrystringIndustry classification
currencystringTrading currency, ISO 4217
issuerNamestringIssuer name
issuerShortNamestringShort issuer name
shortDescriptionstringShort instrument description
primarybooleanWhether this is the primary listing
Price and session
FieldTypeDescription
opennumberSession open price
highnumberSession high price
lownumberSession low price
lastTradePricenumberLast trade price
lastTradeTimeintegerLast trade timestamp, Unix milliseconds
sizeintegerLast trade size
volumeintegerCumulative session volume
changenumberAbsolute change versus previous close
changePercentnumber or nullPercent change versus previous close
previousClosePricenumber or nullPrevious close price
previousCloseDatestringPrevious close date and time, UTC, YYYY-MM-DD HH:MM:SS
Bid and ask
FieldTypeDescription
bidPricenumberBest bid price
bidSizeintegerBest bid size
bidTimeintegerBest bid timestamp, Unix milliseconds
askPricenumberBest ask price
askSizeintegerBest ask size
askTimeintegerBest ask timestamp, Unix milliseconds
Extended hours
FieldTypeDescription
ethPricenumberExtended-hours last price
ethVolumeintegerExtended-hours volume
ethTimeintegerExtended-hours last trade timestamp, Unix milliseconds
Averages and 52-week range
FieldTypeDescription
fiftyDayAveragePricenumber50-day moving average price
hundredDayAveragePricenumber100-day moving average price
twoHundredDayAveragePricenumber200-day moving average price
averageVolumeintegerAverage daily volume
fiftyTwoWeekHighnumber52-week high price
fiftyTwoWeekLownumber52-week low price
Fundamentals
FieldTypeDescription
marketCapintegerMarket capitalization
sharesOutstandingintegerShares outstanding
sharesFloatintegerFree-float shares
penumberTrailing price-to-earnings ratio
forwardPEnumberForward price-to-earnings ratio
dividendYieldnumberDividend yield as a decimal fraction, for example 0.0034 means 0.34 percent
dividendnumberDividend per share
payoutRationumberDividend payout ratio as a decimal fraction
Snapshot
FieldTypeDescription
timestampintegerSnapshot timestamp, Unix seconds

Response Codes

CodeMeaning
200Success; quote data returned
400Invalid request parameters
401Unauthorized; missing or invalid API token

Live v2 vs Live v1

Live v2 for US Stocks gives you an extended quote snapshot per symbol: last trade with event time, full bid and ask with sizes and their event times, plus richer context such as rolling averages, 52-week high and low, market cap, P/E, dividends, and issuer fields. It is focused on US equities and suits quote tiles, watchlists, and any UI that needs bid, ask, and timing detail.

Live v1 (Live OHLCV Stock Prices API) gives you the latest one-minute OHLCV bar, refreshed each minute. It does not include bid, ask, or trade event timestamps. It is multi-asset (US and global stocks, Forex, crypto) and best when you only need the last bar for simple intraday charts or cross-asset tickers.

In short: choose Live v2 when you need quote-level detail (bid, ask, last trade times, richer fundamentals) for US stocks; choose Live v1 when you need minute bars across multiple asset classes and do not need quote microstructure.

Compare plans and find your fit
Free and paid plans for individual and commercial use
Go to Pricing
Chat