NewsBlur feeds API

Feed subscription, search and metadata.

OpenAPI Specification

newsblur-feeds-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: NewsBlur authentication feeds API
  description: NewsBlur is a personal news reader (RSS/Atom aggregator) that brings people together to talk about the world. The HTTP API exposes account, feed, story, social ("blurblog"), intelligence-classifier, and OPML import/export operations. This OpenAPI description was generated by API Evangelist from the publicly documented endpoint reference at https://www.newsblur.com/api and the open-source NewsBlur codebase (github.com/samuelclay/NewsBlur). It is a faithful structuring of the documented surface, not a provider-published spec.
  version: '2026.07'
  contact:
    name: NewsBlur
    url: https://www.newsblur.com/api
    email: samuel@newsblur.com
  license:
    name: MIT
    url: https://github.com/samuelclay/NewsBlur/blob/master/LICENSE
  x-source: https://www.newsblur.com/api
servers:
- url: https://www.newsblur.com
  description: Production
security:
- cookieAuth: []
- oauth2Bearer: []
tags:
- name: feeds
  description: Feed subscription, search and metadata.
paths:
  /rss_feeds/search_feed:
    get:
      operationId: searchFeed
      tags:
      - feeds
      summary: Find a feed by its address
      parameters:
      - name: address
        in: query
        schema:
          type: string
        required: true
      responses:
        '200':
          $ref: '#/components/responses/Ok'
  /rss_feeds/feed_autocomplete:
    get:
      operationId: feedAutocomplete
      tags:
      - feeds
      summary: Search feeds by term
      parameters:
      - name: term
        in: query
        schema:
          type: string
        required: true
      responses:
        '200':
          $ref: '#/components/responses/Ok'
  /reader/feeds:
    get:
      operationId: getFeeds
      tags:
      - feeds
      summary: List the user's subscriptions with unread counts
      responses:
        '200':
          $ref: '#/components/responses/Ok'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /reader/favicons:
    get:
      operationId: getFavicons
      tags:
      - feeds
      summary: Retrieve feed favicons
      responses:
        '200':
          $ref: '#/components/responses/Ok'
  /reader/refresh_feeds:
    get:
      operationId: refreshFeeds
      tags:
      - feeds
      summary: Get current unread counts
      responses:
        '200':
          $ref: '#/components/responses/Ok'
  /reader/page/{id}:
    get:
      operationId: getFeedPage
      tags:
      - feeds
      summary: Original page from a feed
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          $ref: '#/components/responses/Ok'
        '404':
          $ref: '#/components/responses/NotFound'
  /rss_feeds/statistics/{id}:
    get:
      operationId: getFeedStatistics
      tags:
      - feeds
      summary: Feed statistics and history
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          $ref: '#/components/responses/Ok'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  responses:
    Unauthorized:
      description: Authentication required or invalid credentials.
      content:
        application/json:
          schema:
            type: object
    NotFound:
      description: Resource not found.
      content:
        application/json:
          schema:
            type: object
    Ok:
      description: Success. NewsBlur returns a JSON object; most responses include a `result` field ("ok" or "error").
      content:
        application/json:
          schema:
            type: object
  securitySchemes:
    cookieAuth:
      type: apiKey
      in: cookie
      name: newsblur_sessionid
      description: Session cookie set by POST /api/login.
    oauth2Bearer:
      type: http
      scheme: bearer
      description: OAuth 2.0 access token passed as a Bearer token in the Authorization header. Client credentials are issued by NewsBlur (contact samuel@newsblur.com).