finance-data

Get stock quotes, company info, market data, and crypto prices. No API key needed.

Finance Data

Real-time and historical financial data via Yahoo Finance (free, no API key).

Stock Quote (current price + 5-day chart)

curl -s "https://query1.finance.yahoo.com/v8/finance/chart/AAPL?interval=1d&range=5d" \
  -H "User-Agent: Mozilla/5.0"

Replace AAPL with any ticker symbol. Response is JSON:

  • chart.result[0].meta.regularMarketPrice — current price
  • chart.result[0].meta.previousClose — previous close
  • chart.result[0].meta.currency — currency
  • chart.result[0].indicators.quote[0].close — closing prices array

Company Profile & Financials

curl -s "https://query1.finance.yahoo.com/v10/finance/quoteSummary/AAPL?modules=assetProfile,financialData,defaultKeyStatistics" \
  -H "User-Agent: Mozilla/5.0"

Useful modules (comma-separated):

  • assetProfile — sector, industry, employees, description
  • financialData — revenue, margins, EPS, recommendation
  • defaultKeyStatistics — P/E, market cap, beta, float
  • incomeStatementHistory — income statements
  • balanceSheetHistory — balance sheet
  • cashflowStatementHistory — cash flows

Market Movers

curl -s "https://query1.finance.yahoo.com/v1/finance/trending/US" \
  -H "User-Agent: Mozilla/5.0"

Multi-Quote (batch)

curl -s "https://query1.finance.yahoo.com/v7/finance/quote?symbols=AAPL,GOOGL,MSFT" \
  -H "User-Agent: Mozilla/5.0"

Returns an array under quoteResponse.result[] with price, change, volume, marketCap for each symbol.

Historical Data (longer range)

curl -s "https://query1.finance.yahoo.com/v8/finance/chart/AAPL?interval=1wk&range=1y" \
  -H "User-Agent: Mozilla/5.0"

Interval options: 1m, 5m, 15m, 1d, 1wk, 1mo Range options: 1d, 5d, 1mo, 3mo, 6mo, 1y, 5y, max

Crypto

Same API, use crypto ticker format:

curl -s "https://query1.finance.yahoo.com/v8/finance/chart/BTC-USD?interval=1d&range=5d" \
  -H "User-Agent: Mozilla/5.0"

Common crypto tickers: BTC-USD, ETH-USD, SOL-USD, DOGE-USD

Forex

curl -s "https://query1.finance.yahoo.com/v8/finance/chart/EURUSD=X?interval=1d&range=1mo" \
  -H "User-Agent: Mozilla/5.0"

Format: {FROM}{TO}=X (e.g., GBPUSD=X, USDJPY=X)

Response Parsing Tips

  • All responses are JSON. Use exec to run curl and parse with JSON.parse().
  • Always include the User-Agent header to avoid 403 errors.
  • Yahoo Finance rate limits are generous for individual use.
  • If a quote endpoint returns empty, try the chart endpoint instead.
  • For crypto and forex, always include =X or -USD suffix.