Historical stock prices, OHLCV
Stock price history as OHLCV bars for any ticker or company name: open, high, low, close, adjusted close and volume from 1-minute to monthly bars over 1 day to the full history, plus first, last, change, high and low. Use to chart a stock, backtest a signal, compute returns or feed indicators.
Guide: Stock price API, quotes and history
Inputs
| Name | Type | Description |
|---|---|---|
symbol (required) | string | Ticker (AAPL, ^GSPC, BTC-USD) or a company name |
range | string | 1d, 5d, 1mo (default), 3mo, 6mo, 1y, 2y, 5y, 10y, ytd or max. One of: 1d, 5d, 1mo, 3mo, 6mo, 1y, 2y, 5y, 10y, ytd, max. |
interval | string | 1m, 5m, 15m, 30m, 60m, 1d, 1wk or 1mo (default suits the range; intraday bars reach back about 60 days). One of: 1m, 5m, 15m, 30m, 60m, 1h, 1d, 1wk, 1mo. |
Request
Over HTTP, with a card key from /credits:
curl -H "Authorization: Bearer adt_…" "https://agent-data-tools.revmesh2074.workers.dev/stock/history?symbol=AAPL"
Or one of your 25 free calls, no key:
curl "https://agent-data-tools.revmesh2074.workers.dev/stock/history?symbol=AAPL&trial=1"
Without a key, the same URL answers 402 Payment Required with x402 and MPP terms, so an agent with a wallet pays per call in USDC (Base, Polygon, Arbitrum or Solana over x402; Base or Tempo over MPP) and retries.
Example result
{
"symbol": "AAPL",
"currency": "USD",
"range": "1mo",
"interval": "1d",
"count": 1,
"first": 255.1,
"last": 270.37,
"changePercent": 5.9859,
"high": 271.2,
"low": 252.4,
"bars": [
{
"time": "2026-11-05T14:30:00.000Z",
"open": 268.9,
"high": 271.2,
"low": 267.9,
"close": 270.37,
"adjClose": 270.37,
"volume": 41234567
}
],
"note": "Market data from Yahoo Finance's public endpoints; quotes may be delayed by the exchange (often 15 minutes). Not investment advice."
}
From an AI agent (MCP)
Add the MCP server to Claude, Cursor or any MCP client. This tool is stock_history, and the first 25 successful calls are free:
https://agent-data-tools.revmesh2074.workers.dev/mcp