← All articles
IntegrationsWebhooksSlackDiscordTelegram

How to connect an HTML form to Slack, Discord, or Telegram

FormsFort Team ·

Getting instant notifications when someone submits your form is essential for sales teams, support desks, and anyone who needs to respond quickly. Slack, Discord, and Telegram all support incoming webhooks that make this possible.

This guide covers three approaches: native integrations through a form backend, direct webhook forwarding, and building a custom solution.

Form backend services like FormsFort offer built-in Slack, Discord, and Telegram integrations. No webhooks, no middleware, no code.

Slack integration

  1. In the FormsFort dashboard, open your form settings
  2. Navigate to the Notifications section
  3. Select Slack
  4. Authorize the FormsFort Slack app
  5. Choose the channel to receive notifications
  6. Save

Each form submission appears as a formatted message in the channel:

New form submission
Name: Ada Lovelace
Message: Need help with integration setup
Submitted: 2026-05-28 at 2:32 PM

Discord integration

  1. Open your form settings in the FormsFort dashboard
  2. Navigate to Notifications
  3. Select Discord
  4. Paste your Discord webhook URL (create one in Server Settings > Integrations > Webhooks)
  5. Save

Telegram integration

  1. Create a Telegram bot via @BotFather
  2. Add the bot to your group or start a direct chat
  3. Get the chat ID (use @userinfobot or the Telegram API)
  4. In FormsFort, enter the bot token and chat ID
  5. Save

Approach 2: Webhook forwarding

If your form backend supports webhooks but not native integrations, forward submissions to messaging platform webhooks directly.

Slack incoming webhook

  1. Create a Slack app at api.slack.com
  2. Enable Incoming Webhooks
  3. Create a webhook URL for your channel
  4. Configure your form backend to POST to the webhook URL

The webhook expects a JSON payload:

{
"text": "New form submission",
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*New form submission*\n*Name:* Ada Lovelace\n*Email:* [email protected]\n*Message:* Need help with integration"
}
}
]
}

Discord webhook

  1. Go to Server Settings > Integrations > Webhooks
  2. Create a new webhook for your channel
  3. Copy the webhook URL
  4. Configure your form backend to POST to the URL

Discord webhooks accept this JSON format:

{
"content": "New form submission",
"embeds": [
{
"title": "New Contact Form Submission",
"fields": [
{ "name": "Name", "value": "Ada Lovelace", "inline": true },
{ "name": "Email", "value": "[email protected]", "inline": true },
{ "name": "Message", "value": "Need help with integration" }
],
"color": 3066993
}
]
}

Telegram bot API

Send messages via the Telegram Bot API:

POST https://api.telegram.org/bot<TOKEN>/sendMessage
{
"chat_id": "-1001234567890",
"text": "New form submission\nName: Ada Lovelace\nEmail: [email protected]\nMessage: Need help"
}

Approach 3: Custom serverless function

If you need full control over the notification format, create a serverless function that receives the form webhook and forwards to messaging platforms.

// Example: Cloudflare Worker or Vercel Edge Function
export default {
async fetch(request) {
const data = await request.formData();
const name = data.get("name");
const email = data.get("email");
const message = data.get("message");
const slackWebhook = "https://hooks.slack.com/services/YOUR/WEBHOOK/URL";
await fetch(slackWebhook, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
text: `*New submission*\n*From:* ${name} (${email})\n*Message:* ${message}`,
}),
});
return new Response("OK");
},
};

Configure your form backend to forward submissions to this function’s URL.

Formatting notifications

Include submission metadata

Add context to notifications:

  • Timestamp
  • Page URL where the form was submitted
  • User agent or device type
  • Form identifier

Use conditional formatting

Highlight high-priority submissions:

🔴 URGENT: Enterprise lead from [email protected]
Company: BigCorp (500+ employees)
Budget: $50,000+
Message: Need immediate quote

In Slack, use message threading to group submissions from the same email address or session.

Filtering and routing

Route by form field value

Send submissions to different channels based on field values:

Field valueDestination
Topic: Sales#sales-leads
Topic: Support#support-tickets
Topic: Partnership#business-dev

Filter spam before notifying

Only send notifications for submissions that pass spam checks. This prevents your team channels from being flooded with bot submissions.

Summary

Connect HTML forms to Slack, Discord, or Telegram using native integrations in your form backend service for the simplest setup. For custom formatting, use webhook forwarding to post directly to platform webhook URLs. For full control, create a serverless function that receives form webhooks and forwards formatted messages to any platform. All approaches deliver notifications within seconds of submission.

Frequently asked questions

Can I send HTML form submissions to Slack?

Yes. Use a form backend service that supports native Slack integration or webhook forwarding. Each form submission is posted as a message in your chosen Slack channel.

How do I send form data to a Discord webhook?

Create an incoming webhook in your Discord server settings, then configure your form backend to forward submissions to that webhook URL. The message appears in the designated channel.

Can I send form submissions to a Telegram group?

Yes. Create a Telegram bot, add it to your group, and configure your form backend with the bot token and chat ID. Each submission is sent as a message in the group.

Do I need Zapier to connect forms to messaging platforms?

No. Many form backend services, including FormsFort, offer native Slack, Discord, and Telegram integrations without requiring Zapier or any middleware.

Are webhook notifications real-time?

Yes. Form submissions are forwarded to messaging platforms within 1-3 seconds of receipt.

Get started free

Ready to add forms to your static site?

No backend required. Point your HTML form at FormsFort and start receiving submissions in minutes.