DIYgod/RSSHub · error · ConfigNotFoundError

This RSS feed is disabled due to its incorrect configuration

Error message

This RSS feed is disabled due to its incorrect configuration: the token is missing.

What it means

Same ConfigNotFoundError as the entries route, thrown by the Miniflux subscriptions route when config.miniflux.token is falsy. The subscriptions feed aggregates the user's subscription list from the self-hosted Miniflux instance and, like all Miniflux routes, is disabled unless the API token is configured.

Source

Thrown at lib/routes/miniflux/subscription.ts:45

            },
        ],
        requirePuppeteer: false,
        antiCrawler: false,
        supportBT: false,
        supportPodcast: false,
        supportScihub: false,
    },
    name: 'Subscriptions',
    maintainers: ['emdoe', 'DIYgod'],
    handler,
};

async function handler(ctx) {
    const instance = config.miniflux.instance;
    const token = config.miniflux.token;

    if (!token) {
        throw new ConfigNotFoundError('This RSS feed is disabled due to its incorrect configuration: the token is missing.');
    }

    function set(item) {
        if (item.search('=') === -1) {
            return '';
        }
        const filter = item.slice(0, item.indexOf('='));
        const option = item.slice(item.lastIndexOf('=') + 1);
        if (filter.search('categor') !== -1) {
            categories.push(...option.split(',').map((item) => item.toString().toLowerCase()));
            return filter;
        }
        if (filter.search('feed') === -1) {
            return '';
        }
        feeds.push(...option.split(',').map((item) => item.toString().toLowerCase()));
        return filter;
    }

View on GitHub (pinned to bed535e087)

Solutions

  1. Set MINIFLUX_TOKEN (the Miniflux API key) in RSSHub's environment and restart.
  2. Set MINIFLUX_INSTANCE alongside it and verify both are visible to the process.
  3. Validate the token against the instance: `curl -H "X-Auth-Token: <token>" <instance>/api/v1/me`.
  4. If running behind a reverse proxy, make sure the instance URL is reachable from the RSSHub container (not just from your browser).
Defensive patterns

Strategy: validation

Validate before calling

const token = config.miniflux.token;
if (!token) {
    throw new ConfigNotFoundError('Set MINIFLUX_TOKEN (Miniflux API key) to enable subscriptions.');
}

Type guard

function hasMinifluxToken(c: any): boolean {
    return typeof c?.miniflux?.token === 'string' && c.miniflux.token.length > 0;
}

Prevention

When it happens

Trigger: The handler reads config.miniflux.token and throws before any network call. Identical trigger to entry.ts: any request to /miniflux/subscription(...) while MINIFLUX_TOKEN is unset.

Common situations: Same as the entries route: MINIFLUX_TOKEN missing from env, wrong casing in compose, secret not mounted, or a fresh deploy that only set the instance URL.

Related errors


AI-assisted analysis of DIYgod/RSSHub@bed535e087 (2026-08-12). Data as JSON: /api/errors/29df6e0f61ca1263. Report an issue: GitHub.