# Stock Data API — $0.001 per quote

> Stock Data API: Live quote + history for stocks, ETFs and indices — price, volume, day. $0.001 per delivered quote, nothing delivered means nothing charged.

[Home](https://quanticdata.io/)/[Collectors](https://quanticdata.io/collectors/)/*Stock Data API*

# Stock Data API

A stock data API that returns a live quote per ticker from Yahoo Finance: price, currency, exchange, previous close, the day's high and low, the 52-week high and low, volume and the quote time. Ask for the OHLCV history on the same symbols and it attaches the series to each row. Equities, ETFs, indices and FX pairs all resolve through the same call.

[Get my free API key](https://app.quanticdata.io/register) [See the request](/collectors/stock-data-api/#integration)

$0.001 per delivered quote · $2 free every month · Failed runs never billed

POST /v1/scraper/collectors/yahoo_finance/run

```
$ curl $QD/yahoo_finance/run \
    -H "Authorization: Bearer $QD_API_KEY" \
    -d '{"symbols": ["AAPL", "MSFT", "NVDA"], "max_results": 3}'
{ "status": "done", "count": 3,
  "results": [
    {
      "symbol": "…",
      "name": "…",
      "price": …,
      "currency": "…" } ],
  "cost": 0.003 }
# 3 quotes × $0.001 · nothing delivered, nothing charged
```

**$0.001 / quote**2,000 quotes on the free $2 every month

**Semantic input**symbols, range, interval — no URL lists

**Up to 50**quotes per run, pagination handled for you

**No browser**read over HTTP/TLS — cheaper and faster than rendering

On this page: [What it is](/collectors/stock-data-api/#what) [Output fields](/collectors/stock-data-api/#output) [Inputs](/collectors/stock-data-api/#input) [Pricing](/collectors/stock-data-api/#pricing) [Integration](/collectors/stock-data-api/#integration) [Use cases](/collectors/stock-data-api/#use-cases) [Versus the alternatives](/collectors/stock-data-api/#compare) [FAQ](/collectors/stock-data-api/#faq)

## What a stock data API does

A quote and its history usually sit behind two products and an API key each. This reads Yahoo's public chart endpoint, so one request returns the current snapshot for a batch of symbols, and setting include_history adds the candles — no key to provision, no per-minute request budget to nurse.

Symbols are Yahoo's, which is what makes the coverage wide: AAPL for a stock, an ETF ticker, ^GSPC for the S&P 500 index, EURUSD=X for a currency pair, all in the same symbols array. Each row reports its instrument_type, so a mixed request stays sortable, and range and interval control the candles when you want them.

Input is meaning, not a URL *symbols* *range* *interval* *include_history* *max_results*

## What one quote looks like

Every delivered quote carries these fields. Nullable means the source did not publish it — the field stays empty instead of being guessed.

| Field | Type | What it holds |
| --- | --- | --- |
| `symbol` | string | Ticker symbol. |
| `name` | string · nullable | Instrument name. |
| `price` | number · nullable | Current price. |
| `currency` | string · nullable | Price currency. |
| `exchange` | string · nullable | Exchange. |
| `instrument_type` | string · nullable | EQUITY, ETF, INDEX, CURRENCY… |
| `previous_close` | number · nullable | Previous close. |
| `day_high` | number · nullable | Session high. |
| `day_low` | number · nullable | Session low. |
| `fifty_two_week_high` | number · nullable | 52-week high. |
| `fifty_two_week_low` | number · nullable | 52-week low. |
| `volume` | integer · nullable | Regular-market volume. |
| `market_time` | string · nullable | Quote timestamp (ISO 8601). |
| `timezone` | string · nullable | Exchange timezone. |
| `range` | string · nullable | History range returned. |
| `history` | object[] | OHLCV points ({ date, open, high, low, close, volume }); empty unless include_history. |

## Inputs

The whole request. Anything you leave out falls back to the default shown in the catalog.

| Input | Type | Required | What it does |
| --- | --- | --- | --- |
| `symbols` | array | yes | Ticker symbols, e.g. AAPL, MSFT, ^GSPC, EURUSD=X. |
| `range` | string | no | History range when include_history is on. One of: `1d`, `5d`, `1mo`, `3mo`, `6mo`, `1y`, `2y`, `5y`, `10y`, `ytd`, `max`. |
| `interval` | string | no | History candle interval. One of: `1m`, `5m`, `15m`, `1h`, `1d`, `1wk`, `1mo`. |
| `include_history` | boolean | no | Attach the OHLCV series (last 120 points) to each row. |
| `max_results` | integer | no | How many symbols to deliver at most (1–50). You pay only for delivered symbols. |

Pricing

## Stock Data API pricing

$0.001 per delivered quote. A run that delivers nothing costs nothing: blocked pages, challenges and retries are on us, and the $2 monthly allowance covers about 2,000 quotes before you spend anything.

**$0.001**per delivered quote*$0.8 per 1,000 delivered quotes*

**2,000 quotes**on the free allowance*$2 every month, no card*

**Zero rows**zero charge*blocks, captchas and retries are on us*

**−30%**on volume tiers*the catalog returns your key's price*

### Pay as you go

$0/mo

- $2 free credit / month

- 60 requests / min

- List unit prices

### Starter

$19/mo

- $15 free credit / month

- 300 requests / min

- 10% off unit prices

Most popular

### Growth

$79/mo

- $50 free credit / month

- 600 requests / min

- 20% off unit prices

### Scale

$299/mo

- $250 free credit / month

- 1,200 requests / min

- 30% off unit prices

Same wallet, same key and same $2 monthly allowance as every other [Data API](https://quanticdata.io/web-data-api-for-ai/). Prices are launch pricing read live from the billing config — `GET /v1/scraper/collectors` returns the price your key actually pays.

Integration

## One POST, typed rows

Base URL `https://api.quanticdata.io/v1`, Bearer auth, the same key as every other Data API. Endpoint: `POST /v1/scraper/collectors/yahoo_finance/run`.

```
curl -X POST https://api.quanticdata.io/v1/scraper/collectors/yahoo_finance/run \
  -H "Authorization: Bearer $QD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"symbols":["AAPL","MSFT","NVDA"],"max_results":3}'
```

```
import requests

r = requests.post(
    "https://api.quanticdata.io/v1/scraper/collectors/yahoo_finance/run",
    headers={"Authorization": f"Bearer {QD_API_KEY}"},
    json={
        "symbols": [
            "AAPL",
            "MSFT",
            "NVDA"
        ],
        "max_results": 3
    },
    timeout=120,
)
for row in r.json()["payload"]["results"]:
    print(row)
```

```
const res = await fetch(
  "https://api.quanticdata.io/v1/scraper/collectors/yahoo_finance/run",
  {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.QD_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({"symbols":["AAPL","MSFT","NVDA"],"max_results":3}),
  },
);
const { payload } = await res.json();
console.table(payload.results);
```

```
claude mcp add quantumproxies \
  -e QUANTUMPROXIES_API_KEY=qd_live_your_key_here \
  -- npx -y quantumproxies-mcp

# then, in the chat:
> run the yahoo_finance collector with symbols=["AAPL","MSFT","NVDA"] and max_results=3
```

## What people build with the stock data API

Three shapes of work this endpoint was designed around.

### Watchlist quotes

Send a batch of tickers and read price, previous close and the day range for each in one round trip.

### Backtesting inputs

Turn on include_history with a range and interval to pull the OHLCV series a strategy needs, per symbol.

### Cross-asset tracking

Mix equities, an index like ^GSPC and an FX pair such as EURUSD=X in a single call and split them later by instrument_type.

## Stock Data API versus rolling your own

The differences that actually cost time when you build this in-house.

|  | DIY scraper | This collector |
| --- | --- | --- |
| API key | Provisioned per vendor | None — Yahoo's public chart endpoint |
| Quote and history | Two endpoints, often two plans | Both from one call via include_history |
| Instruments | Equities only on many feeds | Stocks, ETFs, indices (^GSPC) and FX (EURUSD=X) |

## FAQ

Questions we get about the stock data API.

[Something else? Ask us →](mailto:hello@quanticdata.io)

### Which symbols does it accept?

Yahoo's own tickers: plain symbols for equities and ETFs, a caret for indices (`^GSPC`, `^IXIC`) and the `=X` suffix for FX pairs (`EURUSD=X`). Whatever resolves on Yahoo Finance resolves here.

### Do I get intraday or only daily history?

Both. `interval` runs from 1m through 1d to 1mo and `range` from 1d to max; the row carries the OHLCV points for that window, and only when `include_history` is on.

### Is there a rate limit or key to manage?

No key, and no per-request quota of ours to ration — the read goes through Yahoo's public endpoint over rotating exits. You pay for the quotes returned, not for a monthly call allowance.

### Is there a free stock data API?

Every account gets $2 of credit every month with no card, which is about 2,000 delivered quotes on this endpoint at $0.001 each. It renews monthly, and a run that delivers nothing is never billed — so a failed or blocked attempt does not eat the allowance.

### How much does one run cost?

Multiply the rows you actually receive by $0.001. A run capped at 50 quotes — the maximum for this collector — costs $0.05 if every row comes back, and less when the source has fewer. Volume tiers take up to 30% off, and `GET /v1/scraper/collectors` returns the price your key actually pays.

## Run the stock data API now

$2 of free credit every month, no card. Your key returns its own prices from `GET /v1/scraper/collectors`.

[Get my free API key](https://app.quanticdata.io/register)

Related: [All 65 collectors](https://quanticdata.io/collectors/) [Google News API](https://quanticdata.io/collectors/google-news-api/) [Google search results API](https://quanticdata.io/collectors/google-search-results-api/) [Reddit scraper API](https://quanticdata.io/collectors/reddit-scraper-api/) [Wikipedia API](https://quanticdata.io/collectors/wikipedia-api/) [App Store reviews API](https://quanticdata.io/collectors/app-store-reviews-api/) [Documentation](https://quanticdata.io/docs/)

---

Source: https://quanticdata.io/collectors/stock-data-api/ · Site index for AI: https://quanticdata.io/llms.txt
