GET /api/stock-historyHistorical OHLCV bars for a symbol. Configurable interval (1m, 5m, 15m, 30m, 60m, 1d, 1wk, 1mo, 3mo) and range (1d, 5d, 1mo, 3mo, 6mo, 1y, 2y, 5y, 10y, ytd, max). Intraday intervals are limited by Yahoo to ~60 days of data. Returns a flat array of bars (time, open, high, low, close, volume) ready for charting or backtests.
| Field | Type | Description |
|---|---|---|
symbol * | string | Ticker symbol |
interval | string | Bar size: 1m, 5m, 15m, 30m, 60m, 1d, 1wk, 1mo, 3mo (default 1d) |
range | string | History window: 1d, 5d, 1mo, 3mo, 6mo, 1y, 2y, 5y, 10y, ytd, max (default 1mo) |
{
"symbol": "AAPL",
"interval": "1d",
"range": "1mo",
"currency": "USD",
"timezone": "America/New_York",
"bars": [
{
"time": "2026-05-20T13:30:00Z",
"open": 218.2,
"high": 220.3,
"low": 217.65,
"close": 219.8,
"volume": 48123456
}
],
"count": 1
}
curl -i "https://agent402.tools/api/stock-history?symbol=AAPL&interval=1d&range=1mo"
The response is HTTP 402 Payment Required with exact payment requirements. Any x402 v2 client pays automatically and retries:
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const client = new x402Client();
registerExactEvmScheme(client, { signer: privateKeyToAccount(KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);
const res = await payFetch("https://agent402.tools/api/stock-history?symbol=AAPL&interval=1d&range=1mo");
Wallet-only. This tool reaches the network/browser/storage, so it is paid in USDC via x402 (no proof-of-work tier).
This tool is one step in 2 curated multi-tool workflows — agents can fetch the whole sequence as an MCP prompt or call https://agent402.tools/api/skill-packs/{slug}/prompt.
GET /api/gov-dataSearch 300,000+ US government datasets on catalog.data.gov (CKAN): titles, publishing org, formats, and direct resource …
GET /api/weather-alertsActive National Weather Service alerts for a US state as clean JSON: event, severity, headline, affected areas, onset/ex…
GET /api/earthquakesReal-time USGS earthquake feed: magnitude, place, time, depth, coordinates. Live government data, no key. ?minMag=4.5&pe…