Yahoo API: Get company news
Looks up a company by name or ticker on Yahoo Finance and returns its latest news headlines, with article summaries when the article page provides one.
Unofficial. Not affiliated with or endorsed by Yahoo.
Inputs
Values from the run on Oct 23, 2026, shown under Output.
- Company, required
company Company name or ticker, for example Tesla or TSLA.
Microsoft
- Max Results optional
max_results Maximum articles to return, for example 10; up to 50.
10 (default)
Whole number from 1 to 50.
Input as JSON
{ "company": "Microsoft"}Output
{ "ticker": "MSFT", "articles": [ { "summary": "Investors will now turn their attention to next week’s reports from Microsoft, Alphabet, Amazon and Intel for fresh clues.", "headline": "Stocktwits AI Roundup: Meta’s Capex, Lam’s Supply Warning Hit Tech Stocks As Netflix Disappoints", "publisher": "Stocktwits", "article_url": "https://finance.yahoo.com/technology/articles/stocktwits-ai-roundup-meta-capex-060151706.html" , "published_at": "2026-10-23T06:01:51+00:00", "thumbnail_url": "https://media.zenfs.com/en/stocktwits_383/4ffb5f785cf1fb247352995d330ac66b.jpg" , "related_tickers": [ "META", "NFLX", "LRCX" ], "yahoo_article_id": "cf20f61b-d37c-3900-aefd-dae791df3622" }, { "summary": "Forget the quantum computing pure plays -- Microsoft is in a unique position in this space.", "headline": "Not IonQ. Not D-Wave. This Quantum Stock Could Be 2027's Surprise Winner.", "publisher": "Motley Fool", "article_url": "https://finance.yahoo.com/technology/ai/articles/not-ionq-not-d-wave-052000521.html" , "published_at": "2026-10-23T05:20:00+00:00", "thumbnail_url": "https://media.zenfs.com/en/motleyfool.com/cce177fe33388e29026baa91fbfcd1ed.jpg" , "related_tickers": [ "MSFT", "NVDA", "IONQ" ], "yahoo_article_id": "be67458e-d4cd-34b2-aa82-e247e4f8f881" }, { "summary": "The biggest tech stocks have handed the baton as leadership has firmly shifted toward other S&P 500 sectors and industries.", "headline": "S&P 500 best performers: Zero mag 7 stocks past 13 weeks", "publisher": "TheStreet", "article_url": "https://finance.yahoo.com/markets/stocks/articles/p-500-best-performers-zero-040300672.html" , "published_at": "2026-10-23T04:03:00+00:00", "thumbnail_url": "https://media.zenfs.com/en/thestreet_881/544bd44ecd470d9b72051d5bf3ec31e9.jpg" , "related_tickers": [ "TSLA", "META", "AMZN" ], "yahoo_article_id": "bb672730-d2cc-37a0-8475-0b2bb1b342b0" } ], "company_name": "Microsoft Corporation"}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"finance.yahoo.com/get_company_news","input":{"company":"Microsoft"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "finance.yahoo.com/get_company_news" , "input": { "company": "Microsoft" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "finance.yahoo.com/get_company_news" , "input": { "company": "Microsoft" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run finance.yahoo.com/get_company_news# with {"company":"Microsoft"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "company" ], "properties": { "company": { "type": "string", "minLength": 1, "description": "Company name or ticker, for example Tesla or TSLA." }, "max_results": { "type": "integer", "default": 10, "maximum": 50, "minimum": 1, "description": "Maximum articles to return, for example 10; up to 50." } }}Output schema
{ "type": "object", "required": [ "company_name", "ticker", "articles" ], "properties": { "ticker": { "type": "string", "description": "Matched Yahoo Finance ticker." }, "articles": { "type": "array", "items": { "type": "object", "required": [ "headline", "publisher", "published_at", "summary", "thumbnail_url", "article_url", "related_tickers", "yahoo_article_id" ], "properties": { "summary": { "type": [ "string", "null" ], "description": "Short plain-text article description; null if not available." }, "headline": { "type": "string" }, "publisher": { "type": [ "string", "null" ] }, "article_url": { "type": "string" }, "published_at": { "type": [ "string", "null" ], "description": "Publication date and time in ISO 8601 with offset." }, "thumbnail_url": { "type": [ "string", "null" ] }, "related_tickers": { "type": "array", "items": { "type": "string" } }, "yahoo_article_id": { "type": "string" } } }, "description": "Recent news articles, newest first." }, "company_name": { "type": "string", "description": "Matched company name." } }}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
finance.yahoo.com/get_company_news- Returns
- company name, ticker, and articles with headline, publisher, published time, summary, thumbnail, article URL, related tickers
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method finance.yahoo.com/get_company_news with the inputs above.
Ask your agent
- What are the latest headlines about Tesla stock today?
- Pull up the 8 most recent news articles on NVDA with publisher names and links.
- Can you find recent news coverage for Apple Inc. from Yahoo Finance, including short article summaries?
- I need the newest 20 stories about Microsoft and its ticker MSFT, with thumbnails and related tickers.
- Give me a quick rundown of what's been reported lately about Amazon, limited to 5 articles.
See more
All Yahoo methodsSearches Yahoo News articles by keyword, newest first or by relevance, with optional publication dates and pages; returns only articles hosted on Yahoo News, with authors, original publisher and section.
yahoo.com/search_newsLists the latest Yahoo News headlines for a section in page order, with summary, byline, original publisher, image and publication time when the article provides them.
yahoo.com/list_headlinesLooks up a stock, fund, index, or cryptocurrency by name or ticker and returns its latest displayed price and key statistics. Unavailable figures are null; quotes may be delayed.
finance.yahoo.com/get_quoteGets earnings reports for a date range, or the upcoming reports and up to four previous reports for one company.
finance.yahoo.com/get_earnings_calendarShows analyst recommendations, price targets, earnings estimates and recent rating changes for a public company on Yahoo Finance.
finance.yahoo.com/get_analyst_ratingsLists Yahoo Finance's top gainers, top losers, most active stocks, or regional trending tickers in Yahoo's order, with price, change, volume and market cap.
finance.yahoo.com/list_market_moversReads a public Yahoo News article from its link or headline and returns its text and details. Headline matching uses Yahoo News search results.
yahoo.com/read_articleReturns Yahoo Finance daily, weekly or monthly price history and total adjusted-close return for a stock, fund, index or cryptocurrency.
finance.yahoo.com/get_price_history