# Stock Quant AI — API Documentation

Free public JSON API for published equity research reports. No auth.

- HTML docs: https://stockquantai.com/docs
- This file: https://stockquantai.com/docs.md
- Site overview for LLMs: https://stockquantai.com/llms.txt
- Full report catalog (Markdown): https://stockquantai.com/research.md

Please credit https://stockquantai.com when using the data.

## Rate limits

60 requests / 60 seconds per IP. Over that: `429 Too Many Requests`.

## Catalog paging

`GET /api/recent` returns at most 100 reports per call.

- `limit` (optional): default 20, max 100
- `offset` (optional): default 0. Page with `offset=0`, `100`, `200`, …
- Response includes `count` (this page) and `total` (full catalog)

Do not stop at the first page. Keep requesting until you have `total` reports.

`current_price` is the price at analysis time, not live. Subsequent / live prices are not in this API.

Report HTML URLs are `/research/{ticker}/{YYYY-MM-DD}`. API slugs are `{ticker}-{YYYY-MM-DD}` (lowercase ticker). Markdown: append `.md` to the HTML URL.

## GET /api/recent

Paginated catalog, newest first.

```
curl "https://stockquantai.com/api/recent?limit=100&offset=0"
curl "https://stockquantai.com/api/recent?limit=100&offset=100"
```

```json
{
  "reports": [
    {
      "slug": "aapl-2026-02-07",
      "ticker": "AAPL",
      "company_name": "Apple Inc.",
      "analysis_date": "2026-02-07",
      "current_price": "278.12",
      "summary": "...",
      "content": { "verdict": "bull" }
    }
  ],
  "count": 100,
  "total": 204
}
```

Verdict values: `hyper_bull` | `bull` | `neutral` | `bear` | `hyper_bear`.

## GET /api/ticker

All published reports for one ticker.

- `ticker` (required): e.g. `AAPL`

```
curl "https://stockquantai.com/api/ticker?ticker=AAPL"
```

## GET /api/research

Full report for one slug. Get slugs from `/api/recent` or `/api/ticker`.

- `slug` (required): e.g. `aapl-2026-02-07`

```
curl "https://stockquantai.com/api/research?slug=aapl-2026-02-07"
```

The `content` object includes `verdict`, `executive_summary`, `price_targets`, `cases`, `key_metrics`, `micro_analysis`, `macro_analysis`, `revenue_opportunities`, `headwinds`, `tailwinds`, and `technical_snapshot`.

`content._historical_prices`, when present, are daily bars **ending on the analysis date**, not subsequent prices.

## Errors

| Status | Meaning |
|---|---|
| 400 | Missing or invalid parameters |
| 404 | Report not found for the given slug |
| 429 | Rate limit exceeded |
| 500 | Server error |

## Help

https://stockquantai.com/support
