---
title: "Get feed health"
method: POST
path: "/get_feed_health"
---

# Get feed health

`POST /get_feed_health`

## Request

- Base URL: `https://newsmind.app/api/v1`
- URL: `https://newsmind.app/api/v1/get_feed_health`
- Auth: OAuth 2 (authorization code, authorization URL `https://newsmind.app/oauth/authorize`, token URL `https://newsmind.app/oauth/token`, scopes: `mcp`)

One row per subscribed feed: last poll, errors, last article date, weekly counts, newest date in the fetched document, and status, worst first: failing, empty (never held anything readable), no_items (empty since last_nonempty_at), outside_window, idle, stale, healthy.

## Request body

- object
  - `feed_id` integer: Limit to a specific feed; omit for all subscriptions.
  - `status` 'healthy' | 'stale' | 'failing' | 'empty' | 'no_items' | 'outside_window' | 'idle': Only return feeds matching this status (useful for 'show me broken feeds' style queries).

## Response `200`

Success

- object
  - `feeds` object[], required
    - `id` integer
    - `title` string, nullable
    - `url` string
    - `site_url` string, nullable
    - `folder` string, nullable
    - `last_polled_at` string, date-time, nullable
    - `error_count` integer
    - `last_error` string, nullable
    - `last_published_at` string, date-time, nullable
    - `last_item_published_at` string, date-time, nullable
    - `last_nonempty_at` string, date-time, nullable
    - `articles_7d` integer
    - `articles_30d` integer
    - `status` 'healthy' | 'stale' | 'failing' | 'empty' | 'no_items' | 'outside_window' | 'idle'

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `402`: Subscription required (trial expired or cancelled)
- `429`: Too many calls. Either the per-account rate limit ({error: "rate_limited", message}) or the account's in-flight work ({error: <sentence>, code: "busy"}). Wait Retry-After seconds.
- `500`: Server error on our side (error: internal_error). The team has been notified.
- `503`: Temporarily unable to answer. error: timeout (the request ran too long; narrow it), server_busy or tier_unavailable (retry after Retry-After seconds when sent).

---

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