← Back to Help

Bots & Webhooks

Send feed updates to messaging and social platforms automatically whenever new items are found.

Quick-Connect Platforms

These platforms accept a direct webhook URL — no third-party service needed.

Discord

1. Open your Discord server settings → Integrations → Webhooks

2. Click Create Webhook, name it, choose a channel

3. Copy the webhook URL

4. In RSSFlux, go to Bots & Alerts → Add Bot → select Discord

5. Paste the URL and save

RSSFlux sends a rich embed with the article title, description, thumbnail, and a link.

Telegram (Outgoing — Bots)

1. Open Telegram and search for @BotFather

2. Send /newbot and follow the prompts to create a bot

3. Copy the API token (looks like 123456:ABC-DEF1234...)

4. Find your chat ID (send a message to your bot, then visit https://api.telegram.org/bot/getUpdates)

5. Construct the URL: https://api.telegram.org/bot/sendMessage?chat_id=

6. In RSSFlux, go to Bots & Alerts → Add Bot → select Telegram

7. Paste the URL and save

Telegram (Incoming — Link Drop)

You can forward URLs from a Telegram bot to your Link Drop lists:

1. Create a bot via @BotFather

2. Copy the token

3. Set the webhook (replace TOKEN, USER_ID, and LIST):

`

https://api.telegram.org/bot/setWebhook?url=https://rssflux.io/api/incoming/telegram?uid=USER_ID&list=LD

`

4. Send any URL to the bot — it will be saved to the specified Link Drop list

5. The list parameter is the 2-letter code (LD, MS, TR, etc.)

Feed Creation: Prefix a URL with feed: or rss: to create a new feed instead of saving a link:

`

feed:https://example.com/rss

rss:https://example.com/feed.xml

`

Slack (Incoming — Slash Command)

After connecting Slack via OAuth (Bots & Alerts → Connect Slack):

Slash Commands:

| Command | Syntax | Action |

|---------|--------|--------|

| /linkdrop | /linkdrop https://example.com | Saves URL to your Link Drop list |

| /linkdrop | /linkdrop MS https://example.com | Saves URL to a specific list code |

| /addfeed | /addfeed https://example.com/rss | Creates a new RSS feed |

| /addfeed | /addfeed https://example.com/rss My Feed | Creates a feed with a custom name |

Slack (Outgoing — Bots)

RSSFlux supports posting to Slack via OAuth (recommended, replaces deprecated webhooks):

1. Create a Slack app at https://api.slack.com/apps

2. Add Bot Token Scopes: chat:write, channels:read, channels:join

3. Install the app to your workspace

4. Copy the Client ID and Client Secret from Basic Information

5. In RSSFlux, go to Admin Panel → Settings → Slack and paste both values

6. Go to Bots & Alerts → Add Bot → select Slack

7. Click Connect to Slack to authorize

8. Select a channel from the dropdown and save

The bot will post new feed items to the selected channel using Slack's chat.postMessage API with rich formatting.

Discord (Outgoing — Bots)

1. Open your Discord server settings → Integrations → Webhooks

2. Click Create Webhook, name it, choose a channel

3. Copy the webhook URL

4. In RSSFlux, go to Bots & Alerts → Add Bot → select Discord

5. Paste the URL and save

RSSFlux sends a rich embed with the article title, description, thumbnail, and a link.

Discord (Incoming — Slash Commands)

You can save links and add feeds directly from Discord using slash commands:

1. Create a Discord Application at https://discord.com/developers/applications

2. Add a bot with the applications.commands scope

3. Copy the Public Key from General Information and the Bot Token from the Bot page

4. In RSSFlux Admin → Settings → Discord, paste both values

5. Set the Interactions Endpoint URL to https://rssflux.io/api/incoming/discord

6. Register slash commands (see below)

Slash Commands:

| Command | Syntax | Action |

|---------|--------|--------|

| /linkdrop | /linkdrop url:https://example.com | Saves URL to your Link Drop list |

| /linkdrop | /linkdrop url:https://example.com list:MS | Saves URL to a specific list |

| /addfeed | /addfeed url:https://example.com/rss | Creates a new RSS feed |

| /addfeed | /addfeed url:https://example.com/rss name:My Feed | Creates a feed with a custom name |

Register Slash Commands:

`bash

curl -X POST https://discord.com/api/v10/applications/{APP_ID}/commands \

-H "Authorization: Bot {BOT_TOKEN}" \

-H "Content-Type: application/json" \

-d '{"name":"linkdrop","description":"Save a URL to your Link Drop","options":[{"name":"url","description":"The URL to save","type":3,"required":true},{"name":"list","description":"List code (e.g. LD, MS)","type":3,"required":false}]}'

`

Signal

Signal does not have an official bot API. To send Signal messages, run signal-cli as a Docker container on your server:

`yaml

Add to your docker-compose.yml

signal-cli:

image: bbernhard/signal-cli-rest-api:latest

restart: unless-stopped

environment:

- MODE=normal

volumes:

- signal-cli-data:/home/.local/share/signal-cli

ports:

- "8080:8080"

`

Then link it to your phone number:

`bash

curl -X POST http://localhost:8080/v1/register/\{phone_number\}

Check for SMS code, then verify:

curl -X POST http://localhost:8080/v1/register/\{phone_number\}/verify/\{code\}

`

The resulting webhook URL is: http://signal-cli:8080/v2/send

In RSSFlux, go to Bots & Alerts → Add Bot → select Signal. Paste the URL and save.

> Security: signal-cli links to your Signal account as a device (just like Signal Desktop). Your messages remain end-to-end encrypted. The encryption keys are stored in the Docker volume on your server.

---

Bridge Platforms (Make.com)

For Facebook, LinkedIn, Instagram, Reddit, Mastodon, and Threads, RSSFlux sends a webhook payload to Make.com (formerly Integromat), which then posts to the platform on your behalf.

Setup (one time per platform)

1. Create a free account at [make.com](https://make.com)

2. Click Create a new scenario

3. Click the + button and add a Webhook → Custom Webhook module

4. Click Create a webhook and copy the URL that appears

5. Click the + again and search for your platform (e.g., "Facebook Pages")

6. Select an action like Create a Post or Create a Share

7. Click Add next to Connection to authorize your account

8. Map the fields from the webhook data:

- Message / Caption → {{1.text}}

- Link → {{1.link}}

- Description → {{1.description}} (if the module has it)

9. Save the scenario and set the toggle at the bottom to Auto (green)

10. Copy the webhook URL

11. In RSSFlux, go to Bots & Alerts → Add Bot → select your platform

12. Paste the Make webhook URL and save

What RSSFlux Sends

All bridge platforms receive the same JSON payload:

`json

{

"platform": "facebook",

"platform_label": "Facebook",

"source": "rssflux",

"feed_title": "My Feed Name",

"title": "Article Headline",

"link": "https://example.com/article",

"description": "Article summary text...",

"thumbnail": "https://example.com/image.jpg",

"text": "Article Headline\n\nArticle summary text...\n\nhttps://example.com/article",

"message": "Article Headline\n\nArticle summary text...\n\nhttps://example.com/article"

}

`

The platform field changes per platform (facebook, linkedin, instagram, reddit, mastodon, threads).

Per-Platform Notes

| Platform | Make module | Notes |

|---|---|---|

| Facebook | Facebook Pages → Create a Post | Requires a Facebook Page (not a personal profile). Set Published to Yes. |

| LinkedIn | LinkedIn → Create Share | Requires a LinkedIn Company Page or personal profile. |

| Instagram | Instagram Business → Create Media Container | Requires an Instagram Business or Creator account linked to a Facebook Page. Two-step flow: create container, then publish. |

| Reddit | Reddit → Create a Post | Requires a Reddit account and a target subreddit. |

| Mastodon | Mastodon → Post a Status | Requires a Mastodon instance and account. |

| Threads | Threads → Create Thread | Requires a Meta Business account. Module availability depends on Make's Threads support. |

Tips

  • Each platform can have its own Make scenario with a separate webhook URL. This lets you control which feeds go to which platforms.
  • Alternatively, add multiple platform modules to a single Make scenario to post to all platforms from one RSSFlux bot.
  • Use {{1.text}} for the main content field — it combines the title, description, and link into one string.
  • Make's free tier allows 1,000 operations per month.

---

Custom Webhooks

Any HTTP endpoint can receive RSSFlux notifications. The payload is always:

`json

{

"platform": "custom",

"feed_title": "My Feed",

"title": "Article Title",

"link": "https://...",

"description": "Article summary",

"text": "Article Title\n\nArticle summary...\n\nhttps://...",

"thumbnail": "https://..."

}

`

Use this for n8n, Zapier, custom scripts, or any other automation platform.

---

Rate Limits & Reliability

  • Bot delivery is handled by the same Celery worker that scrapes feeds
  • Failed deliveries are retried up to 3 times with exponential backoff
  • Delivery logs are visible on the Bots page and are pruned after 30 days
  • Each attempt shows HTTP status code, error message, and timestamp