The moment it happens
Post new bookings to Slack
Each new appointment shows up in your channel with the client, the appointment type and the time.
- Runs
- The moment it happens
- Apps
- Acuity Scheduling
- AI
- Not needed
- Access
- API key
Send this to your assistant
Create a ClickRuntime automation: when someone books in Acuity Scheduling, post the client's name, the appointment type and the date and time to #bookings in Slack.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
If you run a clinic, a studio or a consulting practice on Acuity Scheduling, new bookings arrive at all hours. The default email from Acuity is easy to miss next to everything else in the inbox, and your staff learn about a Saturday booking on Monday morning. Then there is a scramble to prepare the room, find the intake form or make sure the right practitioner is free, and clients arrive to find nothing ready.
When a new appointment is booked, Acuity sends the appointment ID by webhook. The automation fetches the appointment and posts a Slack message with the client name, service, date, time and calendar. Everyone in the channel sees the booking the moment it is made.
It works well for teams of two to twenty people who share the schedule, and for owners who want to follow bookings from their phone.
What you get out of it
The team knows who is coming
Staff see each new appointment in the channel, so the person who will see the client is aware days ahead. Greeting someone by name and knowing the service is a visible mark of professionalism.
Prep starts earlier
A booking for a longer service or a first visit gives you time to prepare supplies, paperwork or the room. Surprises on the day are what cause delays and rushed appointments.
Double-booking problems surface fast
If two staff members seem to have the same client or room at the same time, someone reading the channel can catch it right away, well before the client turns up.
Marketing effect is visible
Run a promotion or post on social media and you can watch bookings arrive in real time. It is a quick check on whether the campaign is bringing in clients.
No one needs a login to see the schedule growing
Front desk staff, assistants and partners can follow new business in Slack without access to Acuity or the owner's inbox, which keeps permissions simple. It also means fewer questions to the owner.
How it works
What happens, step by step
When a client books an appointment in Acuity Scheduling, Acuity tells ClickRuntime straight away.
ClickRuntime looks up the appointment to get the client's name, the appointment type, the date and the time.
A message appears in your #bookings Slack channel, such as "Robin Diaz booked 60-min Consultation on October 24 at 2:30pm".
Before it runs live
- Connect Acuity Scheduling
- Paste your automation's link into the other app's webhook settings
What you get
Build your own
Need it to work differently?
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
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other Acuity Scheduling steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_event, credentials, http, notify
@on_event
def handle(event):
body = event.json or {}
if body.get("action") != "scheduled":
return {"skipped": body.get("action")}
appt = http.get(f"https://acuityscheduling.com/api/v1/appointments/{body['id']}",
auth=(credentials.secret("ACUITY_USER_ID"), credentials.secret("ACUITY_API_KEY"))).json()
notify.slack(f"📅 {appt['firstName']} {appt['lastName']} booked {appt['type']} on {appt['date']} at {appt['time']}",
channel="#bookings")
return {"appointment": appt["id"]}FAQ
Common questions
Can bookings for different calendars go to different channels?
Does the Slack message contain intake form answers?
Why does the automation fetch the appointment instead of using the webhook alone?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Get an email when a client cancels or reschedules
You hear about freed-up or moved slots as soon as the client makes the change.
See how it worksGet tomorrow's appointments each evening
Every evening you get the next day's bookings in time order, ready to plan around.
See how it worksPost new orders and sign-ups to Slack
When something happens in your shop, app or form, the details land in the right channel straight away.
See how it worksKeep exploring
Set up “Post new bookings to Slack” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.
