Providers
Each platform Feeds can follow is a provider. A platform that needs setup on this bot shows a lock in the wizard with the reason; the bot's operator has to configure it.
| Platform | Posts | Source you enter | Needs operator setup |
|---|---|---|---|
| YouTube | New videos from a channel | Channel URL, @handle or channel ID | No |
| New posts in a subreddit | r/subreddit or the subreddit name | No | |
| RSS | New entries in an RSS or Atom feed | Feed URL | No |
| Podcast | New episodes | Feed URL or podcast URL | No |
| Bluesky | New posts from an account | @handle or DID | No |
| X (Twitter) | New posts from an account | @handle or profile URL | Yes: an RSSHub server or an X API token |
| New posts from an account | @handle or profile URL | Yes: an RSSHub server | |
| TikTok | New videos from an account | @handle or profile URL | Yes: an RSSHub server |
| Twitch | A channel going live, or its new clips | Channel name or URL | Yes: Twitch API credentials |
| Kick | A channel going live, or its new clips | Channel name or URL | No |
Going live and clips (Twitch and Kick)
In step 2 of the wizard, Notification type picks what a Twitch or Kick subscription posts. The subscription card shows a Going Live or Clips badge.
- Going Live: one post each time the channel starts a stream. The bot remembers the stream it announced, so a stream is announced once, and the next stream after the channel goes offline is announced again.
- New Clips: one post per new clip. Only clips published in the last hour are posted, each once. If more than 5 new clips arrive at once, the rest are posted on the next checks.
Each has its own default template (feeds.twitch and feeds.twitch.clips, feeds.kick and feeds.kick.clips).
How often sources are checked
| Interval | |
|---|---|
| Most sources | About every minute |
| About every 5 minutes |
Each interval varies by up to 10% so sources do not all check at the same moment. A source is checked only while at least one enabled subscription in a server with Feeds turned on follows it.
A check posts at most 5 new items per subscription. For most sources these are the 5 newest items since the last post, oldest first; older items beyond those 5 are skipped. Items are posted once: the bot remembers what it posted, also across restarts.
When a source fails
A source that cannot be fetched (the site is down, the account was renamed, the feed moved) shows a Source Error badge on its subscriptions. Hover over it to see the error. The bot keeps retrying with growing gaps: twice the normal interval after one failure, four times after two, and so on, up to one hour apart (5 minutes for a live check). The first successful check clears the error and returns to the normal interval.
After 10 failures in a row, a source that is not a live check is marked inactive and no longer offered as a suggestion, but the bot keeps retrying it on that schedule, so it recovers on its own.
18+ sources
A source Discord would treat as adult content (currently an NSFW subreddit) is marked 18+. It can only post into age-restricted channels:
- the wizard and the edit dialog only list age-restricted channels for it,
- the dashboard refuses a channel that is not age-restricted,
- if a channel loses its age restriction later, the bot skips posting there,
- 18+ sources are never suggested to other servers.