Skip to content

The moment it happens

Reply to every enquiry and tell your team

New website enquiries reach your team in Slack, and the sender gets a thank-you from your own email address.

Runs
The moment it happens
Apps
Gmail, Slack
AI
Optional
Access
Slack chat:write; Gmail gmail.send

Send this to your assistant

Create a ClickRuntime automation: give me a link my contact form can send to. Post each enquiry to #leads and email the sender a short thank-you saying we'll reply within a day.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

A website contact form is the front door of a small business, and it is often the least watched part. An enquiry lands in a shared inbox that nobody opens until the next morning, the visitor hears nothing, and a competitor that replied in ten minutes gets the job. On the sender's side, silence after pressing submit feels like the message went nowhere.

As soon as the form posts a submission, the enquiry appears in Slack for the team and the sender receives a confirmation email from Gmail. If you like, ClickRuntime's built-in AI scores the lead from the message text, such as budget mentions or urgency, so hot ones stand out at a glance.

Agencies, consultants, local service businesses and any team that depends on website enquiries can use it.

What you get out of it

  • The team sees leads immediately

    A new enquiry in a shared channel means someone picks it up in minutes, and fast first contact is one of the strongest predictors of winning the work. That speed often decides who wins the job.

  • Visitors know the form worked

    An instant confirmation reassures the sender that the message arrived and sets expectations on when to expect a reply, which cuts down on duplicate submissions and anxious follow-ups. It also builds a good first impression for your business.

  • Nothing hides in a forgotten inbox

    Because the submission is posted where the team already talks, an enquiry cannot sit unread behind a vacation autoresponder or a full mailbox. Missed messages are among the costliest and least visible leaks in a small business.

  • Hot leads are easy to spot

    With an optional score alongside the enquiry, the team can answer the likely big job first and handle general questions afterward, which makes limited time earn more. Attention goes where the money is likely to be.

  • Works with the form you already have

    Any form tool that can send a webhook can feed it, so you keep your design and avoid migrating to a new platform just to get notifications. Setup only needs the form's webhook setting.

How it works

What happens, step by step

  1. When someone submits the contact form on your website, the details reach ClickRuntime straight away.

  2. A message appears in your #leads Slack channel with their name, email and message.

  3. The sender gets a thank-you email from your own Gmail address saying you will reply within one working day.

Before it runs live

  • Connect Google through your own Google app (a one-time, 10-minute setup), so it works with your own Gmail
  • Connect Slack, then invite the app to the channel (type /invite @ClickRuntime there)
  • Paste your automation's link into the other app's webhook settings

What you get

RunsThe moment it happens
Reply to every enquiry and tell your teamjust nowSucceeded
Slack · #leadsNew enquiry from Marco Rossi <marco@example.com> > Do you offer a team plan for 12 people?

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Act only on the items that match your own rules, and skip the rest
  • Change what the AI looks for, or how it writes the result
  • Add another app, for example also send it to Google Sheets
  • Combine it with other Gmail and Slack steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
contact_form_to_slack_plus_confirmation_email.pyexample
import base64
from email.message import EmailMessage
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from clickruntime import on_event, credentials, notify

@on_event
def handle(event):
    form = event.json
    notify.slack(
        f"New enquiry from {form['name']} <{form['email']}>\n> {form.get('message', '')[:500]}",
        channel="#leads",
    )
    msg = EmailMessage()
    msg["To"] = form["email"]
    msg["Subject"] = "Thanks, we got your message"
    msg.set_content(
        f"Hi {form['name'].split()[0]},\n\n"
        "Thanks for getting in touch. We read every message and reply within one working day.\n\n"
        "The team"
    )
    token = credentials.connection("google", "work")
    gmail = build("gmail", "v1", credentials=Credentials(token), cache_discovery=False)
    raw = base64.urlsafe_b64encode(msg.as_bytes()).decode()
    gmail.users().messages().send(userId="me", body={"raw": raw}).execute()
    return {"confirmed": form["email"]}

FAQ

Common questions

Does the confirmation come from my own address?
Yes. It's sent through your connected Gmail or Google Workspace account, so it lands in the sender's inbox from you and their reply comes back to you.
Can the confirmation be personalised with AI?
Yes. Ask for a reply that answers their question briefly. It uses your plan's built-in AI allowance; the plain version above uses none.
What if the same person submits the form twice?
Both submissions appear in Slack, because each is a separate event, and two confirmations are sent. If duplicates are common, ask to skip a repeat from the same email address within an hour. That suppression rule is simple to add.
What information from the form is posted?
Whatever fields your form sends, typically name, email, phone and message. The Slack post lays them out clearly, and fields you consider private can be left out of the message. Sensitive fields can be left out.
Does it work if the form is not on my own domain?
Yes. The form only needs to send its data to the webhook URL when someone submits. Hosted form builders, website platforms and custom pages can all do that, so the location of the form does not matter.
What permissions does it need?
Slack chat:write; Gmail gmail.send. Nothing else in your accounts is used.
Does it need AI?
No, but you can ask for an AI step (for example a summary). It then uses ClickRuntime's built-in AI allowance.
How many runs does it use?
One run for each event the app sends.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Reply to every enquiry and tell your team” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.