webstractor
Developer docs

Finance

Market data.
One bounded response.

Retrieve a latest available market snapshot and configurable price history for equities, indices, cryptocurrency pairs, and currency pairs. Keep the native listing currency or request a three-letter quote currency such as EUR in the same call. Data may be delayed.

Request

curl --get 'https://webstractor.com/api/finance' \
  --data-urlencode 'symbol=AAPL' \
  --data-urlencode 'timeframe=3mo' \
  --data-urlencode 'quote=EUR' \
  --data-urlencode 'format=json'
ParameterRequiredDescription
symbolYes1–32 characters. Examples: AAPL, ^GSPC, BTC-USD, EURUSD=X.
timeframeNo1d, 5d, 1mo, 3mo, 6mo, 1y, 5y, or max. Default: 1mo.
quoteNoThree-letter output currency such as EUR. Omit it to retain the native listing currency.
formatNojson (default) or markdown.

Response

JSON uses schema version 1 with a provider-neutral finance document. Available attributes include the symbol, exchange, effective currency, instrument type, latest price, change, ranges, volume, market state, timezone, selected timeframe and interval, up to 512 OHLCV history points, and bounded dividend or split events. Converted responses additionally expose listingCurrency, quoteCurrency, exchangeRate, and exchangeRateTimestamp.

{
  "schemaVersion": 1,
  "type": "document",
  "source": "finance",
  "id": "AAPL",
  "attributes": {
    "tickerSymbol": "AAPL",
    "currency": "EUR",
    "listingCurrency": "USD",
    "quoteCurrency": "EUR",
    "exchangeRate": 0.91,
    "marketPrice": 200.07,
    "historyTimeframe": "3mo",
    "historyInterval": "1d",
    "history": [{ "timestamp": "2026-08-04T13:30:00.000Z", "close": 219.86 }]
  }
}

Behavior

  • The history interval is selected automatically for the requested timeframe.
  • Without quote, every monetary value remains in the instrument’s native listing currency.
  • With quote, the snapshot and chart-ready history are converted in the same public operation. Historical points use corresponding historical exchange rates when available.
  • A converted AAPL&quote=EUR response is a synthetic EUR view of the Nasdaq listing. To request an actual EUR-traded venue, use that listing’s symbol instead.
  • History is capped at 512 points and market events at 128 entries.
  • Successful responses may be cached for up to five minutes. One successful uncached request costs one allowance slot or credit.
  • Use market data for research, not order execution or investment advice.

Search finance symbols

When the company or crypto asset is known but its symbol is not, call GET /api/finance/search. It returns an ordered schema-v1 finance feed without fetching every quote. instrument accepts equity or crypto and defaults to equity.

curl --get 'https://webstractor.com/api/finance/search' \
  --data-urlencode 'q=Apple' \
  --data-urlencode 'limit=10' \
  --data-urlencode 'format=json'
curl --get 'https://webstractor.com/api/finance/search' \
  --data-urlencode 'q=Bitcoin' \
  --data-urlencode 'instrument=crypto' \
  --data-urlencode 'limit=10' \
  --data-urlencode 'format=json'

q accepts an asset name, brand, or partial ticker up to 200 characters. limit is 1–10 and defaults to 10. Successful searches may be cached for one hour; an empty valid search is HTTP 200.

Daily market movers

Use GET /api/finance/movers for market-wide questions such as “what stock rose the most today?”, “what fell the most?”, or “what stocks are most active?”. This is a distinct ranked-list operation; finance name search cannot answer those questions honestly.

curl --get 'https://webstractor.com/api/finance/movers' \
  --data-urlencode 'list=gainers' \
  --data-urlencode 'limit=10' \
  --data-urlencode 'format=json'

list accepts gainers (default), losers, or active. JSON returns a schema-v1 market-movers feed with already-ranked equity documents and available symbol, exchange, currency, price, daily change, daily percentage change, volume, ranges, market state, and timestamp fields. Results may be delayed, are cached for up to five minutes, and a successful uncached request costs one credit.

Ordinary public Yahoo Finance quote and price-history URLs remain supported by /api/extract and keep their one-month daily-history default.