# Complete appointment system with Supabase: n8n workflow

> Started by another system calling it. It calls services over plain HTTP rather than through connectors. It hands the judgement calls to a local model.

Source: https://millionrounds.com/workflow/complete-appointment-system-with-supabase (Millionrounds; every figure on the page links to its filing or article)

[Automation library](https://millionrounds.com/workflows) · [Scheduling](https://millionrounds.com/workflows?category=Scheduling#library)

# Complete appointment system with Supabase

Started by another system calling it. It calls services over plain HTTP rather than through connectors. It hands the judgement calls to a local model. 40 steps, 4 branches: large, and worth reading before you trust it with anything live.

Large Calls a model: a local model

[Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fcomplete-appointment-system-with-supabase)

**40 steps** Large: read it before trusting it with anything live

**4** Branches: places the flow splits

**0** Loops or waits

**0** Services by connector: it calls them over plain HTTP

## The flow

Starts it 6 Model 10 Logic 11 Service 13

The steps in the order they run, from what starts it.

- 1 **Webhook** Webhook *Starts it*
- 2 **Ollama Chat Model** Lm Chat Ollama *Model*
- 3 **Ollama Chat Model1** Lm Chat Ollama *Model*
- 4 **Ollama Chat Model2** Lm Chat Ollama *Model*
- 5 **Ollama Chat Model3** Lm Chat Ollama *Model*
- 6 **Ollama Chat Model4** Lm Chat Ollama *Model*
- 7 **Load Interviewers Table** Supabase Tool *Service*
- 8 **Delete Interviewer Record** Supabase Tool *Service*
- 9 **Create Interview Record** Supabase Tool *Service*
- 10 **Load Interviewers Table1** Supabase Tool *Service*
- 11 **Reinsert Previous Interview Slot** Supabase Tool *Service*
- 12 **Update Enroller Record** Supabase Tool *Service*
- 13 **Load Enroller Record** Supabase Tool *Service*
- 14 **Delete New Interview Slot** Supabase Tool *Service*
- 15 **Fetch Enroller Profile** Supabase Tool *Service*
- 16 **Insert Available Interviewer** Supabase Tool *Service*
- 17 **Delete Enroller Record** Supabase Tool *Service*
- 18 **Fetch Enroller Classes** Supabase Tool *Service*
- 19 **Fetch Enroller Record** Supabase Tool *Service*
- 20 **Appointment Actions** Set *Logic*
- 21 **Assign Interviewer & Schedule** Agent *Model*
- 22 **AI Rescheduling Agent** Agent *Model*
- 23 **AI Cancellation Agent** Agent *Model*
- 24 **AI Class List Agent** Agent *Model*
- 25 **AI Enroller Info Agent** Agent *Model*
- 26 **Switch** Switch *Logic*
- 27 **Respond Appointment Booking** Respond To Webhook *Starts it*
- 28 **Respond Appointment Reschedule** Respond To Webhook *Starts it*
- 29 **Respond Appointment Cancellation** Respond To Webhook *Starts it*
- 30 **Respond Class List Request** Respond To Webhook *Starts it*
- 31 **Respond Enroller Info Request** Respond To Webhook *Starts it*
- 32 **Appointment Email** If *Logic*
- 33 **Reschedule Email** If *Logic*
- 34 **Cancel Email** If *Logic*
- 35 **Skip If Email Exists** No Op *Logic*
- 36 **Skip If No Email** No Op *Logic*
- 37 **Skip Reschedule If No Email** No Op *Logic*
- 38 **Skip Reschedule If Email Exists** No Op *Logic*
- 39 **Skip Cancellation If No Email** No Op *Logic*
- 40 **Skip Cancellation If Email Exists** No Op *Logic*

## How it's built

- **Starts on:** Another system calling it
- **Steps:** 40, with 4 branches
- **Size:** Large: read it before trusting it with anything live
- **Connects to:** Nothing by connector; it calls services over plain HTTP
- **Model:** a local model

## Questions

What does it need to run?

An n8n account, and a key for a local model. You connect your own accounts after importing it; none are included.

What starts it?

It starts on another system calling it.

Does it use AI?

Yes. It calls a local model. Model calls are billed by the provider, not by n8n.

How long does it take to set up?

Take your time. At 40 steps it is large: read it before trusting it with anything live.

How do I import it?

Copy the workflow, open a new workflow in n8n and paste. The steps appear on the canvas, ready for your own accounts.

**Before you run it**

Nothing here has been tested by us. It is somebody's working automation, read and described from its own steps. Treat the connections it wants as a list of accounts it will touch, and read the 40 steps before you point it at anything that matters.

## Run it in n8n

- **Create your n8n account** Free to start. n8n is where the workflow runs. [Create an n8n account ↗](https://millionrounds.com/n8n)
- **Download the workflow** Free with a Millionrounds account. [Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fcomplete-appointment-system-with-supabase)
- **Paste it into n8n** Open a new workflow in n8n and paste. Then connect your own accounts.

Stored with the author's traces removed: canvas notes, instance identifiers, saved credential names and any live document they had left behind.

## Workflows like it

Also scheduling, with the same services where possible, closest in size first.

- [**Priya AI Virtual Assisstant Version 2 with Gemini and OpenAI** 40 steps · calls a model · Gmail, Google Calendar](https://millionrounds.com/workflow/priya-ai-virtual-assisstant-version-2-with-gemini-and-openai)
- [**Automated marketing campaign email system with HubSpot** 39 steps · calls a model · Gmail, Google Calendar](https://millionrounds.com/workflow/automated-marketing-campaign-email-system-with-hubspot)
- [**Automated customer reservations with Postgres and WhatsApp** 39 steps · Postgres, WhatsApp](https://millionrounds.com/workflow/automated-customer-reservations-with-postgres-and-whatsapp)
- [**Integrate Google Workspace with OpenAI** 39 steps · Gmail, Google Calendar](https://millionrounds.com/workflow/integrate-google-workspace-with-openai)
- [**Manage HR offboarding and archival with Odoo** 39 steps · Gmail, Google Calendar](https://millionrounds.com/workflow/manage-hr-offboarding-and-archival-with-odoo)
- [**Scheduled YouTube transcription with Transcript.io** 39 steps · RSS, Supabase](https://millionrounds.com/workflow/scheduled-youtube-transcription-with-transcript-io)
