AI booking agent · Our own build · 2026

From an Instagram enquiry to a calendar booking.

Our own working system, running on real Instagram, Google Calendar and Slack accounts and demoed on a fictional med spa. Customers ask prices and book inside the DM, and the team supervises everything from Slack. It's the same approach we use for the chat agents we add to client websites.

From an Instagram enquiry to a calendar booking.
Demo reply time10–20sIn-house demonstration using a fictional med spa.
  • n8n (self-hosted)
  • Claude Haiku 4.5
  • Instagram API
  • Google Calendar API
  • Slack API
  • PostgreSQL
  • Docker Compose
— 01 The approach

How we framed it.

Appointment businesses get most of their leads in DMs, usually at night or while the team is busy, and a lead who waits books somewhere else. We built an AI assistant that answers and books inside the conversation while the team watches and replies from Slack. The rule behind the design: the AI only decides what to say. Prices, available times, bookings and security are plain code, so the parts that cost money when they go wrong can't be made up.

— 02 How it works

Inside the build.

One AI agent inside fixed workflows

11 n8n workflows and 165 nodes, with one Claude Haiku 4.5 agent and 6 tools: services and prices, FAQs, save lead, check availability, create booking and hand-off. Everything around the agent is deterministic.

Prices and times come from data

Prices and FAQs are read from Postgres, open slots are computed from opening hours, treatment length and the live calendar, and the time buttons are attached by code from real tool output.

Real calendar booking

The exact slot is re-checked right before booking, so there are no double bookings. The event is created with the customer as a guest, so Google emails the invite and reminders.

Two-way Slack team inbox

Each Instagram chat is a live Slack thread. Team replies typed in Slack arrive on Instagram, and buttons let staff take over, hand back to the bot or cancel a booking in one click.

Hand-off that never talks over staff

Medical questions, complaints, photos or a request for a person pause the bot and alert the team. If staff reply from the Instagram app, the bot notices and steps back.

Tested like software

Signed webhooks, duplicate deliveries dropped, message bursts merged into one reply, and a local harness that runs 57 automated regression checks against mocked Instagram, Google, Slack and Claude.

— 03 Outcomes

What shipped.

  • Answers every DM in about 10 to 20 seconds, day or night
  • Quotes only real prices from the business's own price list
  • Books into Google Calendar with no double bookings
  • The team runs the whole inbox from Slack
  • 57 automated regression checks across 11 workflows

Have a similar workflow to improve?

Discuss your project →