# Yahoo Finance API

> Yahoo Finance returns stock prices, company data, earnings reports, and news, available as a workflow and API.

Yahoo Finance, also called Yahoo, returns quotes, price history, and market movers from an asset, date range, frequency, list, or region. Get company financials, analyst ratings, and earnings reports using a company, statement, reporting period, or date range. Get company news headlines and summaries by providing a company name or ticker.

- Page: https://fous.com/workflows/yahoo-finance
- Handle: `@yahoo-finance`
- Category: [Finance](https://fous.com/workflows/category/finance)
- Source website: https://finance.yahoo.com
- Last verified: Sep 30, 2026
- Fous is not affiliated with Yahoo Finance.

## Methods

### Get analyst ratings

Operation `get_analyst_ratings`, version 1. 1 credit per call.

See analyst recommendations, price targets, earnings estimates, and recent rating changes for a public company. Figures may be unavailable for some stocks.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `company` | string | yes | `"Nvidia"` | Company name or stock ticker, for example Nvidia or NVDA. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "company"
  ],
  "properties": {
    "company": {
      "type": "string",
      "description": "Company name or stock ticker, for example Nvidia or NVDA.",
      "examples": [
        "Nvidia",
        "NVDA",
        "Microsoft"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "company": "Nvidia"
    },
    {
      "company": "NVDA"
    },
    {
      "company": "Microsoft"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `ticker` | string | `"NVDA"` | Stock ticker. |
| `currency` | string or null | `"USD"` | ISO currency code for prices and targets. |
| `buy_count` | integer or null | `48` | Analysts with a buy rating this month. |
| `page_link` | string | `"https://finance.yahoo.com/quote/NVDA/analysis/"` | Yahoo Finance analysis page for this company. |
| `hold_count` | integer or null | `2` | Analysts with a hold rating this month. |
| `sell_count` | integer or null | `1` | Analysts with a sell rating this month. |
| `company_name` | string or null | `"NVIDIA Corporation"` | Company name on Yahoo Finance. |
| `current_price` | number or null | `228.86` | Latest regular-market share price in the stated currency. |
| `consensus_rating` | string or null | `"Strong Buy"` | Overall recommendation: Strong Buy, Buy, Hold, Underperform, or Sell. |
| `low_price_target` | number or null | `180` | Lowest analyst price target per share in the stated currency. |
| `strong_buy_count` | integer or null | `10` | Analysts with a strong buy rating this month. |
| `high_price_target` | number or null | `515` | Highest analyst price target per share in the stated currency. |
| `strong_sell_count` | integer or null | `0` | Analysts with a strong sell rating this month. |
| `next_earnings_date` | string or null | `"2026-11-17"` | Next scheduled earnings report date, if Yahoo shows one. |
| `number_of_analysts` | integer or null | `59` | Number of analyst opinions for the consensus. |
| `median_price_target` | number or null | `315` | Median analyst price target per share in the stated currency. |
| `average_price_target` | number or null | `327.7` | Average analyst price target per share in the stated currency. |
| `recent_rating_changes` | array |  | Up to 10 most recent analyst rating actions, newest first. |
| `recent_rating_changes[].date` | string or null | `"2026-09-10"` |  |
| `recent_rating_changes[].firm` | string or null | `"Piper Sandler"` |  |
| `recent_rating_changes[].action` | string or null | `"Initiates"` |  |
| `recent_rating_changes[].to_rating` | string or null | `"Overweight"` |  |
| `recent_rating_changes[].from_rating` | string or null | `"Buy"` |  |
| `recent_rating_changes[].price_target` | number or null | `300` | New price target per share in the stated currency, if shown. |
| `current_year_eps_estimate` | number or null | `9.30713` | Average earnings per share estimate for the current fiscal year. |
| `mean_recommendation_score` | number or null | `1.29508` | Mean analyst recommendation score; 1 is strongest buy and 5 is sell. |
| `current_quarter_eps_estimate` | number or null | `2.47356` | Average earnings per share estimate for the current quarter. |
| `current_year_revenue_estimate` | number or null | `411558455310` | Average revenue estimate for the current fiscal year in the stated currency. |
| `current_quarter_revenue_estimate` | number or null | `109010834070` | Average revenue estimate for the current quarter in the stated currency. |

**Example input**

```json
{
  "company": "Nvidia"
}
```

**Example output**

```json
{
  "ticker": "NVDA",
  "currency": "USD",
  "buy_count": 48,
  "page_link": "https://finance.yahoo.com/quote/NVDA/analysis/",
  "hold_count": 2,
  "sell_count": 1,
  "company_name": "NVIDIA Corporation",
  "current_price": 228.86,
  "consensus_rating": "Strong Buy",
  "low_price_target": 180,
  "strong_buy_count": 10,
  "high_price_target": 515,
  "strong_sell_count": 0,
  "next_earnings_date": "2026-11-17",
  "number_of_analysts": 59,
  "median_price_target": 315,
  "average_price_target": 327.7,
  "recent_rating_changes": [
    {
      "date": "2026-09-10",
      "firm": "Piper Sandler",
      "action": "Initiates",
      "to_rating": "Overweight",
      "from_rating": null,
      "price_target": 300
    },
    {
      "date": "2026-09-04",
      "firm": "Rosenblatt",
      "action": "Maintains",
      "to_rating": "Buy",
      "from_rating": "Buy",
      "price_target": 390
    },
    {
      "date": "2026-09-04",
      "firm": "Needham",
      "action": "Reiterates",
      "to_rating": "Buy",
      "from_rating": "Buy",
      "price_target": 300
    }
  ],
  "current_year_eps_estimate": 9.30713,
  "mean_recommendation_score": 1.29508,
  "current_quarter_eps_estimate": 2.47356,
  "current_year_revenue_estimate": 411558455310,
  "current_quarter_revenue_estimate": 109010834070
}
```

### Get company financials

Operation `get_company_financials`, version 1. 1 credit per call.

Get a company’s income statement, balance sheet, or cash flow by annual or quarterly period, with full-value statement lines shown on Yahoo Finance. Public company statements only.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `period` | string | no | `"quarterly"` | Reporting frequency, for example quarterly. |
| `company` | string | yes | `"Apple"` | Company name or ticker, for example Apple or AAPL. |
| `statement` | string | no | `"balance_sheet"` | Statement to read, for example balance_sheet. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "company"
  ],
  "properties": {
    "period": {
      "enum": [
        "annual",
        "quarterly"
      ],
      "type": "string",
      "default": "annual",
      "description": "Reporting frequency, for example quarterly.",
      "examples": [
        "quarterly",
        "annual"
      ]
    },
    "company": {
      "type": "string",
      "description": "Company name or ticker, for example Apple or AAPL.",
      "examples": [
        "Apple",
        "Microsoft",
        "AAPL"
      ]
    },
    "statement": {
      "enum": [
        "income_statement",
        "balance_sheet",
        "cash_flow"
      ],
      "type": "string",
      "default": "income_statement",
      "description": "Statement to read, for example balance_sheet.",
      "examples": [
        "balance_sheet",
        "cash_flow",
        "income_statement"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "company": "Apple"
    },
    {
      "period": "quarterly",
      "company": "Microsoft",
      "statement": "balance_sheet"
    },
    {
      "period": "annual",
      "company": "AAPL",
      "statement": "cash_flow"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `period` | string | `"annual"` |  |
| `ticker` | string | `"AAPL"` |  |
| `periods` | array |  |  |
| `periods[].page_url` | string | `"https://finance.yahoo.com/quote/AAPL/financials/"` |  |
| `periods[].period_label` | string | `"TTM"` |  |
| `periods[].period_end_date` | string | `"2026-06-30"` |  |
| `periods[].statement_lines` | object |  | Yahoo statement line names and full numeric values; missing amounts are null. |
| `currency` | string or null | `"USD"` | Reporting currency code, such as USD. |
| `statement` | string | `"income_statement"` |  |
| `company_name` | string | `"Apple Inc."` |  |

**Example input**

```json
{
  "company": "Apple"
}
```

**Example output**

```json
{
  "period": "annual",
  "ticker": "AAPL",
  "periods": [
    {
      "page_url": "https://finance.yahoo.com/quote/AAPL/financials/",
      "period_label": "TTM",
      "period_end_date": "2026-06-30",
      "statement_lines": {
        "EBIT": 154859000000,
        "EBITDA": 167959000000,
        "Basic EPS": 8.76,
        "Net Income": 128930000000,
        "Diluted EPS": 8.72,
        "Gross Profit": 227123000000,
        "Pretax Income": 155906000000,
        "Tax Provision": 26976000000,
        "Total Revenue": 466823000000,
        "Total Expenses": 311964000000,
        "Cost of Revenue": 239700000000,
        "Interest Income": null,
        "Interest Expense": null,
        "Operating Income": 154859000000,
        "Normalized EBITDA": 167959000000,
        "Normalized Income": 128930000000,
        "Operating Expense": 72264000000,
        "Tax Rate for Calcs": 0.173027,
        "Net Interest Income": null,
        "Basic Average Shares": 14723212750,
        "Other Income Expense": 1047000000,
        "Diluted Average Shares": 14778629000,
        "Reconciled Depreciation": 13100000000,
        "Reconciled Cost of Revenue": 239700000000,
        "Net Income Common Stockholders": 128930000000,
        "Total Operating Income as Reported": 154859000000,
        "Diluted NI Available to Com Stockholders": 128930000000,
        "Net Non Operating Interest Income Expense": null,
        "Net Income from Continuing & Discontinued Operation": 128930000000,
        "Net Income from Continuing Operation Net Minority Interest": 128930000000
      }
    }
  ],
  "currency": "USD",
  "statement": "income_statement",
  "company_name": "Apple Inc."
}
```

### Get company news

Operation `get_company_news`, version 1. 1 credit per call.

Get the latest Yahoo Finance news headlines for a company name or ticker, with article summaries when available. Up to 50 recent articles are returned.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `company` | string | yes | `"Microsoft"` | Company name or ticker, for example Tesla or TSLA. |
| `max_results` | integer | no | `2` | Maximum articles to return, for example 10; up to 50. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "company"
  ],
  "properties": {
    "company": {
      "type": "string",
      "minLength": 1,
      "description": "Company name or ticker, for example Tesla or TSLA.",
      "examples": [
        "Microsoft",
        "Tesla",
        "TSLA"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 10,
      "maximum": 50,
      "minimum": 1,
      "description": "Maximum articles to return, for example 10; up to 50.",
      "examples": [
        2,
        3,
        4
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "company": "Microsoft",
      "max_results": 2
    },
    {
      "company": "Tesla",
      "max_results": 3
    },
    {
      "company": "TSLA",
      "max_results": 4
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `ticker` | string | `"MSFT"` | Matched Yahoo Finance ticker. |
| `articles` | array |  | Recent news articles, newest first. |
| `articles[].summary` | string or null | `"SPY hands most of your money to a handful of giants, but one rival fund treats the smallest S&P 500 company as an equal` | Short plain-text article description; null if not available. |
| `articles[].headline` | string | `"Forget SPY: Invesco’s Fund Gives the Smallest S&P 500 Company the Same Say as the Largest"` |  |
| `articles[].publisher` | string or null | `"24/7 Wall St."` |  |
| `articles[].article_url` | string | `"https://finance.yahoo.com/markets/stocks/articles/forget-spy-invesco-fund-gives-221141672.html"` |  |
| `articles[].published_at` | string or null | `"2026-09-28T22:11:41+00:00"` | Publication date and time in ISO 8601 with offset. |
| `articles[].thumbnail_url` | string or null | `"https://media.zenfs.com/en/24_7_wall_st__718/971c014e0890e5847dc6a456b3b3fe19.jpg"` |  |
| `articles[].related_tickers` | array |  |  |
| `articles[].yahoo_article_id` | string | `"0b7a2c6a-c201-39e5-990b-708cf5eac4e8"` |  |
| `company_name` | string | `"Microsoft Corporation"` | Matched company name. |

**Example input**

```json
{
  "company": "Microsoft",
  "max_results": 2
}
```

**Example output**

```json
{
  "ticker": "MSFT",
  "articles": [
    {
      "summary": "SPY hands most of your money to a handful of giants, but one rival fund treats the smallest S&P 500 company as an equal to the largest. The tradeoff is stranger than it sounds, and the recent returns …",
      "headline": "Forget SPY: Invesco’s Fund Gives the Smallest S&P 500 Company the Same Say as the Largest",
      "publisher": "24/7 Wall St.",
      "article_url": "https://finance.yahoo.com/markets/stocks/articles/forget-spy-invesco-fund-gives-221141672.html",
      "published_at": "2026-09-28T22:11:41+00:00",
      "thumbnail_url": "https://media.zenfs.com/en/24_7_wall_st__718/971c014e0890e5847dc6a456b3b3fe19.jpg",
      "related_tickers": [
        "IVZ",
        "SPY",
        "NVDA"
      ],
      "yahoo_article_id": "0b7a2c6a-c201-39e5-990b-708cf5eac4e8"
    },
    {
      "summary": "It was reported on September 17 that Nokia Oyj (NYSE:NOK) is extending its partnership with Microsoft Corporation (NASDAQ:MSFT) to build an agentic, unified data foundation combining Nokia Data Suite …",
      "headline": "Nokia (NOK) and Microsoft (MSFT) are Expanding Their AI Reach. Can the Opportunity Translate into Returns?",
      "publisher": "Insider Monkey",
      "article_url": "https://finance.yahoo.com/technology/ai/articles/nokia-nok-microsoft-msft-expanding-214127241.html",
      "published_at": "2026-09-28T21:41:27+00:00",
      "thumbnail_url": "https://media.zenfs.com/en/insidermonkey.com/96a4534c492de1424099eb44a8b0355d.jpg",
      "related_tickers": [
        "NOK",
        "MSFT",
        "NOK"
      ],
      "yahoo_article_id": "0b975f71-4d39-3f5b-86f1-35625e401139"
    }
  ],
  "company_name": "Microsoft Corporation"
}
```

### Get earnings calendar

Operation `get_earnings_calendar`, version 1. 1 credit per call.

Get earnings reports for a date range, or upcoming and recent reports for one company. Company searches show the next reports and up to four previous reports instead of the date range.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `days` | integer | no | `7` | Number of consecutive days to cover, such as 7. Defaults to 7; at most 14. |
| `company` | string | no | `"Apple"` | Company name or ticker, such as Apple or AAPL. Returns its upcoming and last four reports instead of the date range. |
| `start_date` | string | no | `"2026-09-28"` | First report date in the date range, such as 2026-09-28. Defaults to today. |
| `max_results` | integer | no | `5` | Maximum reports to return, such as 50. Defaults to 50; at most 200. |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "default": 7,
      "maximum": 14,
      "minimum": 1,
      "description": "Number of consecutive days to cover, such as 7. Defaults to 7; at most 14.",
      "examples": [
        7,
        1
      ]
    },
    "company": {
      "type": "string",
      "description": "Company name or ticker, such as Apple or AAPL. Returns its upcoming and last four reports instead of the date range.",
      "examples": [
        "Apple",
        "TSLA"
      ]
    },
    "start_date": {
      "type": "string",
      "format": "date",
      "description": "First report date in the date range, such as 2026-09-28. Defaults to today.",
      "examples": [
        "2026-09-28",
        "2026-07-30",
        "2026-10-03"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 50,
      "maximum": 200,
      "minimum": 1,
      "description": "Maximum reports to return, such as 50. Defaults to 50; at most 200.",
      "x-fous-developer": true,
      "examples": [
        5,
        50,
        120
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "company": "Apple",
      "max_results": 5
    },
    {
      "days": 7,
      "start_date": "2026-09-28",
      "max_results": 50
    },
    {
      "days": 1,
      "start_date": "2026-07-30",
      "max_results": 120
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `earnings_reports` | array |  | Reports ordered by date, then market cap descending. |
| `earnings_reports[].ticker` | string | `"AAPL"` | Trading ticker. |
| `earnings_reports[].report_date` | string | `"2025-10-30"` | Earnings report date. |
| `earnings_reports[].time_of_day` | string | `"after market close"` | When the report is expected or occurred. |
| `earnings_reports[].company_name` | string or null | `"Apple Inc."` | Company name. |
| `earnings_reports[].eps_estimate` | number or null | `1.77` | Estimated earnings per share. |
| `earnings_reports[].reported_eps` | number or null | `1.85` | Reported earnings per share, if available. |
| `earnings_reports[].surprise_percent` | number or null | `4.52` | Surprise versus estimated EPS, as a percent. |
| `earnings_reports[].yahoo_finance_link` | string | `"https://finance.yahoo.com/quote/AAPL/"` | Yahoo Finance company page link. |

**Example input**

```json
{
  "company": "Apple",
  "max_results": 5
}
```

**Example output**

```json
{
  "earnings_reports": [
    {
      "ticker": "AAPL",
      "report_date": "2025-10-30",
      "time_of_day": "after market close",
      "company_name": "Apple Inc.",
      "eps_estimate": 1.77,
      "reported_eps": 1.85,
      "surprise_percent": 4.52,
      "yahoo_finance_link": "https://finance.yahoo.com/quote/AAPL/"
    },
    {
      "ticker": "AAPL",
      "report_date": "2026-01-29",
      "time_of_day": "after market close",
      "company_name": "Apple Inc.",
      "eps_estimate": 2.67,
      "reported_eps": 2.84,
      "surprise_percent": 6.34,
      "yahoo_finance_link": "https://finance.yahoo.com/quote/AAPL/"
    },
    {
      "ticker": "AAPL",
      "report_date": "2026-04-30",
      "time_of_day": "after market close",
      "company_name": "Apple Inc.",
      "eps_estimate": 1.94,
      "reported_eps": 2.01,
      "surprise_percent": 3.46,
      "yahoo_finance_link": "https://finance.yahoo.com/quote/AAPL/"
    }
  ]
}
```

### Get price history

Operation `get_price_history`, version 1. 1 credit per call.

Get Yahoo Finance price history and total adjusted-close return for a stock, fund, index, or cryptocurrency. Includes up to 5,000 price rows; dividends and splits are not listed separately.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `asset` | string | yes | `"Apple"` | Company, fund, index, or cryptocurrency name or ticker, for example Apple, AAPL, S&P 500, or Bitcoin. |
| `end_date` | string | no | `"2026-09-18"` | Last date to include (YYYY-MM-DD), for example 2026-09-18. Defaults to today. |
| `frequency` | string | no | `"weekly"` | Price grouping, for example weekly. Defaults to daily. |
| `start_date` | string | no | `"2026-09-01"` | First date to include (YYYY-MM-DD), for example 2026-01-01. Defaults to one year ago. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "asset"
  ],
  "properties": {
    "asset": {
      "type": "string",
      "description": "Company, fund, index, or cryptocurrency name or ticker, for example Apple, AAPL, S&P 500, or Bitcoin.",
      "examples": [
        "Apple",
        "S&P 500",
        "Bitcoin"
      ]
    },
    "end_date": {
      "type": "string",
      "format": "date",
      "description": "Last date to include (YYYY-MM-DD), for example 2026-09-18. Defaults to today.",
      "examples": [
        "2026-09-18",
        "2026-09-20"
      ]
    },
    "frequency": {
      "enum": [
        "daily",
        "weekly",
        "monthly"
      ],
      "type": "string",
      "default": "daily",
      "description": "Price grouping, for example weekly. Defaults to daily.",
      "examples": [
        "weekly",
        "monthly",
        "daily"
      ]
    },
    "start_date": {
      "type": "string",
      "format": "date",
      "description": "First date to include (YYYY-MM-DD), for example 2026-01-01. Defaults to one year ago.",
      "examples": [
        "2026-09-01",
        "2026-07-01",
        "2026-06-01"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "asset": "Apple",
      "end_date": "2026-09-18",
      "start_date": "2026-09-01"
    },
    {
      "asset": "S&P 500",
      "end_date": "2026-09-18",
      "frequency": "weekly",
      "start_date": "2026-07-01"
    },
    {
      "asset": "Bitcoin",
      "end_date": "2026-09-18",
      "frequency": "monthly",
      "start_date": "2026-06-01"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `name` | string | `"Apple Inc."` |  |
| `prices` | array |  |  |
| `prices[].low` | number or null | `314.7300109863281` |  |
| `prices[].date` | string | `"2026-09-01"` |  |
| `prices[].high` | number or null | `327.29998779296875` |  |
| `prices[].open` | number or null | `316.9800109863281` |  |
| `prices[].close` | number or null | `325.1300048828125` |  |
| `prices[].volume` | integer or null | `53167400` |  |
| `prices[].adjusted_close` | number or null | `325.1300048828125` |  |
| `ticker` | string | `"AAPL"` |  |
| `currency` | string or null | `"USD"` |  |
| `yahoo_finance_link` | string | `"https://finance.yahoo.com/quote/AAPL/history/"` |  |
| `total_return_percent` | number or null | `3.383262028973544` | Percentage change from first to last adjusted close; null when unavailable. |

**Example input**

```json
{
  "asset": "Apple",
  "end_date": "2026-09-18",
  "start_date": "2026-09-01"
}
```

**Example output**

```json
{
  "name": "Apple Inc.",
  "prices": [
    {
      "low": 314.7300109863281,
      "date": "2026-09-01",
      "high": 327.29998779296875,
      "open": 316.9800109863281,
      "close": 325.1300048828125,
      "volume": 53167400,
      "adjusted_close": 325.1300048828125
    },
    {
      "low": 323.5299987792969,
      "date": "2026-09-02",
      "high": 328.3999938964844,
      "open": 326.8699951171875,
      "close": 324.9599914550781,
      "volume": 33776400,
      "adjusted_close": 324.9599914550781
    },
    {
      "low": 324.1099853515625,
      "date": "2026-09-03",
      "high": 330.80999755859375,
      "open": 324.8699951171875,
      "close": 328.2099914550781,
      "volume": 37225800,
      "adjusted_close": 328.2099914550781
    }
  ],
  "ticker": "AAPL",
  "currency": "USD",
  "yahoo_finance_link": "https://finance.yahoo.com/quote/AAPL/history/",
  "total_return_percent": 3.383262028973544
}
```

### Get quote

Operation `get_quote`, version 1. 1 credit per call.

Get the latest displayed price and key statistics for a stock, fund, index, or cryptocurrency by name or ticker. Unavailable figures are null; quotes may be delayed.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `asset` | string | yes | `"MSFT"` | Asset name or Yahoo Finance ticker, for example Microsoft, MSFT, S&P 500, or Bitcoin. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "asset"
  ],
  "properties": {
    "asset": {
      "type": "string",
      "description": "Asset name or Yahoo Finance ticker, for example Microsoft, MSFT, S&P 500, or Bitcoin.",
      "examples": [
        "MSFT",
        "Microsoft",
        "Bitcoin"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "asset": "MSFT"
    },
    {
      "asset": "Microsoft"
    },
    {
      "asset": "Bitcoin"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `link` | string or null | `"https://finance.yahoo.com/quote/MSFT/"` | Yahoo Finance quote page |
| `name` | string or null | `"Microsoft Corporation"` | Asset name on Yahoo Finance |
| `open` | number or null | `505.425` | Regular-session open price |
| `as_of` | string or null | `"2026-09-28T18:57:09-04:00"` | Timestamp of the latest displayed price with UTC offset |
| `change` | number or null | `0.6687927` | Price change in the displayed trading session |
| `ticker` | string or null | `"MSFT"` | Yahoo Finance ticker |
| `volume` | number or null | `19545869` | Regular-session volume |
| `currency` | string or null | `"USD"` | Quote currency code |
| `dividend` | number or null | `3.92` | Forward annual dividend per unit |
| `exchange` | string or null | `"NasdaqGS"` | Full exchange name or quote venue |
| `pe_ratio` | number or null | `28.353008` | Trailing price-to-earnings ratio |
| `day_range` | string or null | `"502.22 - 513.33"` | Regular-session low and high as displayed |
| `market_cap` | number or null | `3781236359168` | Market capitalization |
| `latest_price` | number or null | `509.8888` | Most recent displayed trading price |
| `market_state` | string or null | `"after-hours"` | Market status: open, closed, pre-market, or after-hours |
| `average_volume` | number or null | `29973890` | Average daily volume |
| `dividend_yield` | number or null | `0.76` | Forward annual dividend yield in percent units |
| `percent_change` | number or null | `0.13133669` | Percent change in the displayed trading session, in percent units |
| `previous_close` | number or null | `516.17` | Previous regular closing price |
| `earnings_per_share` | number or null | `17.96` | Trailing twelve-month earnings per share |
| `market_cap_display` | string or null | `"3.781T"` | Market capitalization as displayed, for example 3.1T |
| `next_earnings_date` | string or null | `"2026-10-28"` | Next earnings date in YYYY-MM-DD format |
| `fifty_two_week_range` | string or null | `"349.20 - 553.72"` | 52-week low and high as displayed |

**Example input**

```json
{
  "asset": "MSFT"
}
```

**Example output**

```json
{
  "link": "https://finance.yahoo.com/quote/MSFT/",
  "name": "Microsoft Corporation",
  "open": 505.425,
  "as_of": "2026-09-28T18:57:09-04:00",
  "change": 0.6687927,
  "ticker": "MSFT",
  "volume": 19545869,
  "currency": "USD",
  "dividend": 3.92,
  "exchange": "NasdaqGS",
  "pe_ratio": 28.353008,
  "day_range": "502.22 - 513.33",
  "market_cap": 3781236359168,
  "latest_price": 509.8888,
  "market_state": "after-hours",
  "average_volume": 29973890,
  "dividend_yield": 0.76,
  "percent_change": 0.13133669,
  "previous_close": 516.17,
  "earnings_per_share": 17.96,
  "market_cap_display": "3.781T",
  "next_earnings_date": "2026-10-28",
  "fifty_two_week_range": "349.20 - 553.72"
}
```

### List market movers

Operation `list_market_movers`, version 1. 1 credit per call.

List Yahoo Finance's top gainers, top losers, most active stocks, or regional trending tickers in Yahoo's order. Prices may be delayed; some regions may have no trending tickers.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `list` | string | no | `"top_gainers"` | Which Yahoo market list to show, for example top_gainers. |
| `region` | string | no | `"United Kingdom"` | Region for trending tickers, for example Canada. Other lists show US stocks. |
| `max_results` | integer | no | `7` | Maximum number of entries, for example 25 (up to 100). |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "list": {
      "enum": [
        "top_gainers",
        "top_losers",
        "most_active",
        "trending"
      ],
      "type": "string",
      "default": "top_gainers",
      "description": "Which Yahoo market list to show, for example top_gainers.",
      "examples": [
        "top_gainers",
        "top_losers",
        "most_active"
      ]
    },
    "region": {
      "enum": [
        "United States",
        "United Kingdom",
        "Canada",
        "Australia",
        "India",
        "Germany",
        "France",
        "Hong Kong"
      ],
      "type": "string",
      "default": "United States",
      "description": "Region for trending tickers, for example Canada. Other lists show US stocks.",
      "examples": [
        "United Kingdom",
        "Hong Kong"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 25,
      "maximum": 100,
      "minimum": 1,
      "description": "Maximum number of entries, for example 25 (up to 100).",
      "x-fous-developer": true,
      "examples": [
        7,
        3,
        10
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "list": "top_gainers"
    },
    {
      "list": "top_losers",
      "max_results": 7
    },
    {
      "list": "most_active",
      "max_results": 3
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `as_of` | string | `"2026-09-28T20:02:57+00:00"` | Latest Yahoo quote time for the list, ISO 8601 with a time-zone offset. |
| `movers` | array |  | Market tickers in Yahoo Finance order. |
| `movers[].price` | number or null | `89.92` |  |
| `movers[].change` | number or null | `57.57` |  |
| `movers[].ticker` | string | `"KOD"` |  |
| `movers[].volume` | integer or null | `38398805` |  |
| `movers[].currency` | string or null | `"USD"` |  |
| `movers[].market_cap` | number or null | `5651422720` |  |
| `movers[].quote_link` | string | `"https://finance.yahoo.com/quote/KOD/"` |  |
| `movers[].company_name` | string or null | `"Kodiak Sciences Inc."` |  |
| `movers[].percent_change` | number or null | `177.95982` |  |
| `movers[].market_cap_display` | string or null | `"5.651B"` |  |
| `movers[].average_volume_3_months` | integer or null | `701082` |  |
| `movers[].price_to_earnings_ratio` | number or null | `478.1143` |  |

**Example input**

```json
{
  "list": "top_gainers"
}
```

**Example output**

```json
{
  "as_of": "2026-09-28T20:02:57+00:00",
  "movers": [
    {
      "price": 89.92,
      "change": 57.57,
      "ticker": "KOD",
      "volume": 38398805,
      "currency": "USD",
      "market_cap": 5651422720,
      "quote_link": "https://finance.yahoo.com/quote/KOD/",
      "company_name": "Kodiak Sciences Inc.",
      "percent_change": 177.95982,
      "market_cap_display": "5.651B",
      "average_volume_3_months": 701082,
      "price_to_earnings_ratio": null
    },
    {
      "price": 17.95,
      "change": 2.5800009,
      "ticker": "MAAS",
      "volume": 647812,
      "currency": "USD",
      "market_cap": 7937052160,
      "quote_link": "https://finance.yahoo.com/quote/MAAS/",
      "company_name": "Maase Inc.",
      "percent_change": 16.785952,
      "market_cap_display": "7.937B",
      "average_volume_3_months": 250857,
      "price_to_earnings_ratio": null
    },
    {
      "price": 13.92,
      "change": 1.2200003,
      "ticker": "ABCL",
      "volume": 7772249,
      "currency": "USD",
      "market_cap": 4510739456,
      "quote_link": "https://finance.yahoo.com/quote/ABCL/",
      "company_name": "AbCellera Biologics Inc.",
      "percent_change": 9.606302,
      "market_cap_display": "4.511B",
      "average_volume_3_months": 6966638,
      "price_to_earnings_ratio": null
    }
  ]
}
```

## Quick start

Call the API with a Fous API key (`FOUS_API_KEY`). To create one, turn on Developer mode in Fous Studio, then open Keys & connections → API keys (https://app.fous.com/keys).

```bash
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
: "${FOUS_API_KEY:?Set FOUS_API_KEY before running this example}"

curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 120 \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@yahoo-finance",
  "visibility": "public",
  "operation": "get_analyst_ratings",
  "version": 1,
  "input": {
    "company": "Nvidia"
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
import json
import os
import urllib.error
import urllib.request

api_key = os.environ.get("FOUS_API_KEY")
if not api_key:
    raise RuntimeError("Set FOUS_API_KEY before running this example")

body = json.loads("{\n  \"api\": \"@yahoo-finance\",\n  \"visibility\": \"public\",\n  \"operation\": \"get_analyst_ratings\",\n  \"version\": 1,\n  \"input\": {\n    \"company\": \"Nvidia\"\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=120) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
// First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
const apiKey = process.env.FOUS_API_KEY;
if (!apiKey) throw new Error("Set FOUS_API_KEY before running this example");

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(120_000),
  body: JSON.stringify({
  "api": "@yahoo-finance",
  "visibility": "public",
  "operation": "get_analyst_ratings",
  "version": 1,
  "input": {
    "company": "Nvidia"
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

Or describe the data in plain language: send `{"api":"@yahoo-finance","prompt":"Describe the data you need, with every detail"}` to the same URL. Fous fills in the input, runs the method that fits and returns only the fields you asked for; `data.route.calls[].request` is the exact call it made. Routing is free; the run costs the same.

## Use cases

- Track displayed prices and trading changes for selected assets.
- Compare historical prices and adjusted-close returns across date ranges.
- Monitor market gainers, losers, active stocks, and regional trends.
- Review company statements, analyst views, and scheduled earnings.
- Follow recent company headlines and article summaries.

## FAQ

### Is Fous affiliated with Yahoo Finance?

No. Fous is not affiliated with Yahoo Finance. This workflow reads the public finance.yahoo.com website and returns its data.

### How much does it cost?

Each run costs 1 credit. With pay-as-you-go, a credit costs 1¢; monthly plans cost less per credit.

### Do I need a Yahoo Finance account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from finance.yahoo.com when you run it; repeating the same request within a day may return the saved result. Fous checks this workflow automatically; it last passed a check on Sep 30, 2026.

### What is the latest displayed price for an asset?

Use Get quote with an asset name or ticker to return its latest displayed price and key statistics.

### How has an asset's price changed over time?

Use Get price history with an asset and optional date range and frequency to return price rows and total adjusted-close return.

### When is a company's next earnings report?

Use Get earnings calendar with a company name or ticker to return upcoming reports and up to four previous reports.

## Related

- [Google Finance API](https://fous.com/workflows/google-finance.md): Google Finance returns possibly delayed prices and figures, indexes, up to four movers timed by oldest quote, currency conversions, and up to five financial periods.
- [MSN Money API](https://fous.com/workflows/msn-money.md): MSN Money provides stock quotes, key facts, financial news, and market data, including current market movers; quotes and prices may be delayed.
- [Nasdaq API](https://fous.com/workflows/nasdaq.md): Nasdaq provides market activity, scheduled earnings by date with fiscal quarter-end month, monthly US IPO listings, and dated ex-dividend entries; dividend histories cover Nasdaq-listed stocks only.
- [Stock Analysis API](https://fous.com/workflows/stock-analysis.md): Stock Analysis returns free-period company statements, statistics current as of its displayed date, typically top-25 ETF holdings, and US IPOs since 2019 with potentially missing prices or returns.
- [SEC EDGAR API](https://fous.com/workflows/sec-edgar.md): SEC EDGAR provides filings, annual and quarterly financials, exact-phrase matches, up to 200 insider trades, and quarterly 13F manager holdings; older filings appear when available.
- [CoinMarketCap API](https://fous.com/workflows/coinmarketcap.md): CoinMarketCap returns prices, rankings and current Fear and Greed readings; gainers and losers include up to 30 top-100 coins above $50,000 in 24-hour volume.
- [Twelve Data API](https://fous.com/workflows/twelve-data.md): Market data for stocks, ETFs, foreign exchange and cryptocurrencies.
- [Yahoo News API](https://fous.com/workflows/yahoo-news.md): Yahoo News provides section headlines and searchable articles, plus public article text and details; health has no public stories, and search covers a limited results window.
- [All Finance workflows](https://fous.com/workflows/category/finance)
