---
title: "Browse Screener"
method: GET
path: "/api/screener/browse"
tags: ["screener"]
---

# Browse Screener

`GET /api/screener/browse`

## Request

- Base URL: `https://api.equity-rank.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.equity-rank.com/api/screener/browse`
- Auth: HTTP bearer

Browse the full screener_cache with optional filtering.
Returns stocks matching filters, sorted by sort_by descending.
Used by the dashboard inline screener panel.
Filtering and limiting are pushed to Supabase to avoid full-table transfers.

## Query parameters

- `sector` string, nullable: Filter by sector (partial match)
- `min_score` number: Minimum Fundamentals Score (0-100)
- `sort_by` string: Column to sort by
- `limit` integer
- `full_data_only` boolean: When true, exclude rows where has_full_data is false
- `min_piotroski_score` integer, nullable: Minimum Piotroski F-Score (0–9)
- `graham_below_price` boolean: When true, only show stocks trading below their Graham Number
- `min_sue_score` number, nullable: Minimum SUE z-score (BST-01); winsorized to [-10, 10]
- `min_eps_revision_ratio` number, nullable: Minimum EPS revision ratio — upward share of past-30-day analyst revisions [0.0, 1.0] (BST-02)
- `max_short_ratio` number, nullable: Maximum days-to-cover short ratio (factual ceiling filter)
- `max_illiquidity_premium` number, nullable: Maximum Amihud illiquidity premium (0.0–0.05). Set to 0.01 to filter for liquid names only. Rows without illiquidity data are excluded when this filter is active.
- `min_roic` number, nullable: Minimum ROIC, decimal fraction (0.15 = 15%). Rows without ROIC data are excluded when active.
- `min_gross_margin` number, nullable: Minimum gross margin, PERCENT scale (35.0 = 35%). Rows without gross margin data are excluded when active.
- `min_net_margin` number, nullable: Minimum net margin, PERCENT scale (8.0 = 8%). Rows without net margin data are excluded when active.
- `min_revenue_growth` number, nullable: Minimum revenue growth YoY, PERCENT scale (8.0 = 8%). Rows without revenue growth data are excluded when active.
- `min_eps_growth` number, nullable: Minimum EPS growth YoY, PERCENT scale (12.0 = 12%). Rows without EPS growth data are excluded when active.
- `min_fcf_yield` number, nullable: Minimum FCF yield, decimal fraction (0.05 = 5%). Rows without FCF yield data are excluded when active.
- `max_net_debt_to_ebitda` number, nullable: Maximum net debt / EBITDA leverage ratio (e.g. 2.5 = 2.5x). Rows without leverage data are excluded when active.

## Response `200`

Successful Response

- BrowseResponse
  - `stocks` object[], required
  - `count` integer, required
  - `universe_size` integer, required
  - `show_activation_invite` boolean

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/equity-rank/apis/equity-rank-api.md) · [All operations](https://skmtc.dev/equity-rank/apis/equity-rank-api/llms.txt) · [OpenAPI document](https://skmtc.dev/equity-rank/apis/equity-rank-api/revisions/c2f2463fee33?raw)
