Predefined stock screeners

GET https://api.api.sh/yahoo-finance/v1/screener
1 credit / call finance & crypto try it in the playground →

Yahoo Finance's predefined screeners with full quotes: day_gainers, day_losers, most_actives, most_shorted_stocks, small_cap_gainers, undervalued_growth_stocks, undervalued_large_caps, aggressive_small_caps, growth_technology_stocks, top_mutual_funds, conservative_foreign_funds, high_yield_bond, portfolio_anchors, solid_large_growth_funds, solid_midcap_growth_funds, all_cryptocurrencies_us and more (known_screeners). Or screen stocks with your own criteria (any of sector, industry, exchange, region, market_cap_min, market_cap_max, price_min, price_max, volume_min, sort, sort_order; not together with id): the response has id custom and echoes the applied criteria. Pages with offset/count; pass next_offset (null on the last page).

Every response includes credits_used: the credits this call cost.

Parameters

nametypedescription
id string Screener id (default day_gainers). Example: day_gainers
count integer Results per page (default 25, up to 250).
offset integer Result offset. Pass next_offset from the previous response.
sector string Custom screen: comma-separated sectors: Basic Materials, Communication Services, Consumer Cyclical, Consumer Defensive, Energy, Financial Services, Healthcare, Industrials, Real Estate, Technology, Utilities.
industry string Custom screen: comma-separated industry names, e.g. Semiconductors, Software - Infrastructure.
exchange string Custom screen: comma-separated exchange codes, e.g. NMS (Nasdaq), NYQ (NYSE), ASE (NYSE American).
region string Custom screen: market, two-letter country code (default us), e.g. gb, de, in.
market_cap_min number Custom screen: minimum market cap in the listing currency, e.g. 10000000000.
market_cap_max number Custom screen: maximum market cap.
price_min number Custom screen: minimum share price.
price_max number Custom screen: maximum share price.
volume_min number Custom screen: minimum volume today.
sort market_cap | percent_change | volume | price | avg_volume | pe Custom screen: order by (default market_cap).
sort_order desc | asc Custom screen: desc (default) or asc.

Every endpoint also takes fresh, raw, fields (see lean responses and caching).

Example

curl "https://api.api.sh/yahoo-finance/v1/screener?id=day_gainers" \
  -H "x-api-key: $APISH_KEY"

Response

A JSON object with the fields described above, plus raw (the source's own data), cached, fetched_at and credits_used. Errors return {"success": false, "error": "…"} with the HTTP status (see errors). A lookup that ran but found nothing (404) costs the price above; refused calls and errors on our side are free (what's charged).

The fastest way to see the full response is the playground: it runs this endpoint with your account and shows the exact JSON.