---
title: "List feeds"
method: GET
path: "/v1/feeds"
tags: ["Feeds"]
---

# List feeds

`GET /v1/feeds`

## Request

- Base URL: `https://api.mentio.dev`
- URL: `https://api.mentio.dev/v1/feeds`
- Auth: HTTP bearer

The RSS and Atom feeds the workspace reads (forums, communities, blogs), newest connection first, each with how its hourly poll goes. Every keyword of the workspace with readsWorkspaceFeeds (the default) reads these feeds: an item holding its term is one of its mentions, with its matching rules, billed like any mention. Each feed is read every hour; reading it is free. At most 500 a workspace.

## Query parameters

- `q` string: Only feeds whose address or title contains this text, case-insensitive.
- `limit` integer: Feeds per page, at most 500; default 100.
- `offset` integer, nullable: Feeds to skip, for the next page.

## Response `200`

A page of feeds

- object
  - `data` object[], required: The page, newest connection first.
    - `id` string, required: Feed id (fd_...).
    - `url` string, required: The feed itself (after redirects, or the one the page advertised): what is polled.
    - `title` string, nullable, required: The feed's own title, when it has one.
    - `connectedAt` string, required: When the workspace connected it.
    - `readingSince` string, required: Nothing published before this is a live mention: the connection, or the last time its sign-in was added or removed (signed in and signed out, a post is read as two different posts, so the switch starts over rather than bill one twice).
    - `auth` object, nullable, required: The sign-in the feed is read with, or null for a public feed. PATCH { auth } replaces it, { auth: null } removes it.
      - `type` 'cookie' | 'header', required: cookie or header. The value is never shown.
    - `health` object, required: Whether the hourly read works.
      - `status` 'ok' | 'failing', required: failing: the last 3 hourly reads or more failed (a feed.failing event went out); ok otherwise.
      - `reason` 'login_required' | 'login_expired' | 'blocked' | 'not_found' | 'not_a_feed' | 'unreachable', nullable, required: Why the last read failed; null when it read well.
      - `detail` string, nullable, required: What the last failed read saw.
      - `failures` integer, required: Failed hourly reads in a row.
      - `since` string, nullable, required: While failing: since when.
    - `stats` object, required: How the hourly poll of this feed is going.
      - `lastPolledAt` string, nullable, required: When the feed was last read; null until its first poll (within the hour).
      - `emptyPolls` integer, required: Polls in a row that brought nothing new; a feed that keeps reading empty may have moved.
  - `total` integer, required: Feeds matching the query, across pages.

## Other responses

- `401`: Missing or invalid API key

---

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