Built and run by one person.

Yahoo Finance Data API - Prices, Statements & Market Data

TigZig API & MCP Hub
REST / HTTP APIMCP Server (AI agents)Data APIOpen - no auth

Open, no-auth HTTP API and MCP server exposing Yahoo Finance data via yfinance - historical prices, full financial statements (balance sheet, income, cash flow; annual and quarterly), analyst price targets, recommendations, earnings/revenue estimates, earnings calendar, major holders, detailed company info and market data for any ticker. Most endpoints return JSON; statements come in two families - a structured-JSON family under /v1/excel/ and a separate plain family that returns pipe-delimited CSV text. Calls are lightly paced at roughly 1 second per ticker with up to 25 tickers per request, so a batch returns in seconds; a ticker with no data comes back as a short per-ticker note rather than failing the whole request, and over 25 tickers returns a clear message to split the batch. Built for AI agents first, humans second: every page here has a Copy-as-Markdown button so you can hand it straight to your agent.

AnyYahoo ticker
3financial statements
Annual + Qperiods
Up to 25tickers per call
MCP + RESTtwo interfaces
No authfully open
AI agents: this API is open (no auth). Start with the OpenAPI spec for this API: https://yfin-h.tigzig.com/v1/openapi.json. The RFC 9727 catalog at api.tigzig.com/.well-known/api-catalog is a site-level directory of all TigZig APIs - go there only if you want a different API, not for more detail on this one.
Quick start
MCP server for AI agents
https://yfin-h.tigzig.com/mcp
Streamable HTTP. Add as a custom connector in Claude.ai, ChatGPT, Cursor, n8n.
REST API base URL
https://yfin-h.tigzig.com/v1

Overview

Connect the MCP server below and let your agent pull statements and prices on its own.

A financial-data extraction service over yfinance. It exposes Yahoo Finance financial statements, market data and OHLCV price histories for any ticker, over the same backend two ways:

  • REST + Swagger at yfin-h.tigzig.com/v1/* for any HTTP client - /v1/get-all-prices/, /v1/get-balance-sheet/, /v1/get-income-statement/, /v1/get-cash-flow/, /v1/get-detailed-info/, /v1/get-market-data/, quarterly variants, and Excel-friendly /v1/excel/* endpoints.
  • MCP for AI agent clients - the same data as tool calls (see below).

Most endpoints take a tickers query param (comma-separated for multiple symbols, up to 25 per request - send more and you get a clear message to split the batch); price endpoints add start_date / end_date. See the full parameter list in the API Endpoints section below or try them in Swagger.

MCP Server (for AI agents)

Connect an AI agent (Claude.ai, Cursor, n8n, custom clients) and let it pull statements and prices directly. No auth. One endpoint:

  • https://yfin-h.tigzig.com/mcp - Streamable HTTP, the recommended transport (MCP spec 2025-03-26).

Add to Claude.ai: Settings -> Connectors -> Add custom connector -> paste the Streamable HTTP URL -> approve. The same URL works for Cursor, n8n, and any MCP client.

What it returns

  • Financial statements - two families. The /v1/excel/ family (income, balance sheet, cash flow; annual + quarterly) returns structured JSON ({dates, data}) and is the MCP-exposed one. A separate plain family (/v1/get-income-statement/, /v1/get-cash-flow/, /v1/get-balance-sheet/ and the two quarterly variants) returns pipe-delimited CSV text.
  • Prices - /v1/get-all-prices/ returns OHLCV where Close is already split- and dividend-adjusted (yfinance auto_adjust; there is no separate "Adj Close" column, so do not re-adjust). Dividends and Stock Splits columns are populated only on the actual event dates, 0.0 otherwise.
  • Company & markets - market data, detailed company info, analyst price targets, analyst recommendations, earnings + revenue estimates (one endpoint), earnings calendar, major holders.
  • FastAPI backend + the fastapi-mcp package (exposes FastAPI endpoints as MCP tools), with Pydantic validation. Deployed on Coolify (Hetzner) behind Cloudflare.

Build your own (open source)

The source is open - the repo runs the whole Yahoo Finance surface, REST and MCP over the same code.

github.com/amararun/shared-yfin-coolify

Built on FastAPI, fastapi-mcp, yfinance, pandas.

Self-hosting a public MCP server is your responsibility for security. A public endpoint needs edge rate limiting, abuse detection and secret hygiene. Full checklist: tigzig.com/security

Guides

This page is the reference - what the endpoints are and how to call them. The guides below are the long-form versions, with worked examples and the edges you only meet in real use:

Each is a plain page with a Markdown twin, so you can hand a URL straight to an agent. Come back to this page when you want parameter-level detail.

Rate limits

Published so a well-behaved client can plan around them. These are per-IP limits:

  • Per IP: 100 requests / minute.
  • Up to 25 tickers per request.

You get a 429 with Retry-After and a body explaining how to batch.

Avoiding 429s: Batch tickers instead of looping. One request carrying 25 tickers costs one unit of budget; 25 separate requests cost 25. Nearly every 429 seen on this API comes from one-ticker-per-request spreadsheets.

Every successful response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset (Unix epoch seconds), read straight from the running limiter, and Retry-After is set on 429. The current numbers are also published as machine-readable JSON at https://yfin-h.tigzig.com/, derived from live config. Read those at runtime rather than hard-coding the figures above - limits change, and these channels change with them.

API Endpoints (REST / HTTP)

Base URLhttps://yfin-h.tigzig.comPrepend this to every path listed below (e.g. /series becomes https://yfin-h.tigzig.com/series). The curl example on each card shows the full URL.

Generated from the live OpenAPI spec - always in sync with the API. Try them interactively in Swagger.

GET /v1/excel/get-balance-sheet/

Get Balance Sheet Excel Endpoint

Retrieves annual balance sheets for specified Yahoo Finance tickers in a structured JSON format.

ParamInTypeDescription
tickersquerystringrequiredComma-separated list of Yahoo Finance ticker symbols (e.g., 'AAPL,MSFT,GOOG')
curl "https://yfin-h.tigzig.com/v1/excel/get-balance-sheet/?tickers=AAPL"
GET /v1/excel/get-cash-flow/

Get Cash Flow Excel Endpoint

Retrieves annual cash flow statements for specified Yahoo Finance tickers in a structured JSON format.

ParamInTypeDescription
tickersquerystringrequiredComma-separated list of Yahoo Finance ticker symbols (e.g., 'AAPL,MSFT,GOOG')
curl "https://yfin-h.tigzig.com/v1/excel/get-cash-flow/?tickers=AAPL"
GET /v1/excel/get-income-statement/

Get Income Statement Excel Endpoint

Retrieves annual income statements for specified Yahoo Finance tickers in a structured JSON format.

ParamInTypeDescription
tickersquerystringrequiredComma-separated list of Yahoo Finance ticker symbols (e.g., 'AAPL,MSFT,GOOG')
curl "https://yfin-h.tigzig.com/v1/excel/get-income-statement/?tickers=AAPL"
GET /v1/excel/get-quarterly-balance-sheet/

Get Quarterly Balance Sheet Excel Endpoint

QUARTERLY balance sheet for one or more Yahoo Finance tickers, structured JSON.

ParamInTypeDescription
tickersquerystringrequiredComma-separated Yahoo Finance ticker symbols (e.g. 'AAPL,MSFT').
curl "https://yfin-h.tigzig.com/v1/excel/get-quarterly-balance-sheet/?tickers=AAPL"
GET /v1/excel/get-quarterly-cash-flow/

Get Quarterly Cash Flow Excel Endpoint

Retrieves quarterly cash flow statements for specified Yahoo Finance tickers in a structured JSON format.

ParamInTypeDescription
tickersquerystringrequiredComma-separated list of Yahoo Finance ticker symbols (e.g., 'AAPL,MSFT,GOOG')
curl "https://yfin-h.tigzig.com/v1/excel/get-quarterly-cash-flow/?tickers=AAPL"
GET /v1/excel/get-quarterly-income-statement/

Get Quarterly Income Statement Excel Endpoint

Retrieves quarterly income statements for specified Yahoo Finance tickers in a structured JSON format.

ParamInTypeDescription
tickersquerystringrequiredComma-separated list of Yahoo Finance ticker symbols (e.g., 'AAPL,MSFT,GOOG')
curl "https://yfin-h.tigzig.com/v1/excel/get-quarterly-income-statement/?tickers=AAPL"
GET /v1/get-actions/

Get Actions Endpoint

Corporate actions (dividends AND splits together) for one or more tickers, straight

ParamInTypeDescription
tickersquerystringrequiredComma-separated Yahoo Finance ticker symbols (e.g. 'AAPL,MSFT'). Max 25 per request.
curl "https://yfin-h.tigzig.com/v1/get-actions/?tickers=AAPL"
GET /v1/get-adj-close/

Get Adj Close Endpoint

Adjusted closing prices for one or more tickers over a date range.

ParamInTypeDescription
tickersquerystringrequired
start_datequerystringrequired
end_datequerystringrequired
curl "https://yfin-h.tigzig.com/v1/get-adj-close/?tickers=AAPL&start_date=2020-01-01&end_date=2024-12-31"
GET /v1/get-all-prices/

Get All Prices Endpoint

Fetches comprehensive historical price data for specified Yahoo Finance tickers.

ParamInTypeDescription
tickersquerystringrequiredComma-separated list of Yahoo Finance ticker symbols (e.g., 'AAPL,MSFT,GOOG')
start_datequerystringrequiredStart date in YYYY-MM-DD format (e.g., '2023-01-01')
end_datequerystringrequiredEnd date in YYYY-MM-DD format (e.g., '2023-12-31')
formatquerystringoptionalResponse format: 'json' (default) returns nested JSON, 'tsv' returns compact tab-delimited string optimized for LLM context windows (~70% fewer tokens)
curl "https://yfin-h.tigzig.com/v1/get-all-prices/?tickers=AAPL&start_date=2020-01-01&end_date=2024-12-31&format=json"
GET /v1/get-analyst-price-targets/

Get Analyst Price Targets Endpoint

Analyst price targets (current / high / low / mean / median) for one or more tickers.

ParamInTypeDescription
tickersquerystringrequiredComma-separated Yahoo Finance ticker symbols (e.g. 'AAPL,MSFT').
curl "https://yfin-h.tigzig.com/v1/get-analyst-price-targets/?tickers=AAPL"
GET /v1/get-balance-sheet/

Get Balance Sheet Endpoint

Annual balance sheet for one or more Yahoo Finance tickers.

ParamInTypeDescription
tickersquerystringrequired
curl "https://yfin-h.tigzig.com/v1/get-balance-sheet/?tickers=AAPL"
GET /v1/get-calendar/

Get Calendar Endpoint

Upcoming corporate calendar for one or more tickers: next earnings date(s),

ParamInTypeDescription
tickersquerystringrequiredComma-separated Yahoo Finance ticker symbols (e.g. 'AAPL,MSFT').
curl "https://yfin-h.tigzig.com/v1/get-calendar/?tickers=AAPL"
GET /v1/get-cash-flow/

Get Cash Flow Endpoint

Annual cash-flow statement for one or more Yahoo Finance tickers.

ParamInTypeDescription
tickersquerystringrequired
curl "https://yfin-h.tigzig.com/v1/get-cash-flow/?tickers=AAPL"
GET /v1/get-detailed-info/

Get Detailed Info Endpoint

Retrieves comprehensive company information and data points from Yahoo Finance.

ParamInTypeDescription
tickersquerystringrequiredComma-separated list of Yahoo Finance ticker symbols (e.g., 'AAPL,MSFT,GOOG')
curl "https://yfin-h.tigzig.com/v1/get-detailed-info/?tickers=AAPL"
GET /v1/get-dividends/

Get Dividends Endpoint

Full dividend payment history for one or more tickers, straight from Yahoo Finance.

ParamInTypeDescription
tickersquerystringrequiredComma-separated Yahoo Finance ticker symbols (e.g. 'AAPL,MSFT'). Max 25 per request.
curl "https://yfin-h.tigzig.com/v1/get-dividends/?tickers=AAPL"
GET /v1/get-estimates/

Get Estimates Endpoint

Forward analyst estimates for one or more tickers, EARNINGS and REVENUE together

ParamInTypeDescription
tickersquerystringrequiredComma-separated Yahoo Finance ticker symbols (e.g. 'AAPL,MSFT').
curl "https://yfin-h.tigzig.com/v1/get-estimates/?tickers=AAPL"
GET /v1/get-income-statement/

Get Income Statement Endpoint

Annual income statement (P&L) for one or more Yahoo Finance tickers.

ParamInTypeDescription
tickersquerystringrequired
curl "https://yfin-h.tigzig.com/v1/get-income-statement/?tickers=AAPL"
GET /v1/get-major-holders/

Get Major Holders Endpoint

Ownership breakdown for one or more tickers: percent held by insiders and by

ParamInTypeDescription
tickersquerystringrequiredComma-separated Yahoo Finance ticker symbols (e.g. 'AAPL,MSFT').
curl "https://yfin-h.tigzig.com/v1/get-major-holders/?tickers=AAPL"
GET /v1/get-market-data/

Get Market Data

Fetches key market data metrics for specified stock tickers from Yahoo Finance.

ParamInTypeDescription
tickersquerystringrequiredComma-separated list of Yahoo Finance ticker symbols (e.g., 'AAPL,MSFT,GOOG')
curl "https://yfin-h.tigzig.com/v1/get-market-data/?tickers=AAPL"
GET /v1/get-quarterly-cash-flow/

Get Quarterly Cash Flow Endpoint

QUARTERLY cash-flow statement for one or more Yahoo Finance tickers.

ParamInTypeDescription
tickersquerystringrequired
curl "https://yfin-h.tigzig.com/v1/get-quarterly-cash-flow/?tickers=AAPL"
GET /v1/get-quarterly-income-statement/

Get Quarterly Income Statement Endpoint

QUARTERLY income statement (P&L) for one or more Yahoo Finance tickers.

ParamInTypeDescription
tickersquerystringrequired
curl "https://yfin-h.tigzig.com/v1/get-quarterly-income-statement/?tickers=AAPL"
GET /v1/get-recommendations/

Get Recommendations Endpoint

Analyst recommendation trend for one or more tickers: monthly tallies of

ParamInTypeDescription
tickersquerystringrequiredComma-separated Yahoo Finance ticker symbols (e.g. 'AAPL,MSFT').
curl "https://yfin-h.tigzig.com/v1/get-recommendations/?tickers=AAPL"
GET /v1/get-splits/

Get Splits Endpoint

Full stock-split history for one or more tickers, straight from Yahoo Finance.

ParamInTypeDescription
tickersquerystringrequiredComma-separated Yahoo Finance ticker symbols (e.g. 'AAPL,MSFT'). Max 25 per request.
curl "https://yfin-h.tigzig.com/v1/get-splits/?tickers=AAPL"