MakePlans
SchedulingConnect AI agents to MakePlans, an online appointment, class, and event booking platform. Agents create and confirm bookings, check available slots, and manage services, people, and resources so schedules update without manual entry.
What This Integration Enables
MakePlans covers more than appointments. A service in this platform can be an appointment, an attendance such as a class or a sign-up with fixed capacity, a product, or a gift card, and the booking model has to handle all four. Resources are equally broad: a resource is a staff member, a room, or a piece of equipment, and services are linked to the resources that provide them, so availability is resolved against people and things at the same time. Agents read services and resources, ask for available slots inside a date range or for the next free date within a thirty day horizon, create bookings against a service and time window, manage the customers behind them, and create the events that classes are booked onto.
The part that shapes every workflow here is the booking state machine. A booking can be created confirmed, or created and left awaiting confirmation. List Bookings filters explicitly by that state, alongside active, upcoming, recent, and visible. Cancel Booking frees the slot while keeping the record; Delete Booking removes it permanently. That is an unusual amount of deliberate structure around what happens after a request arrives, and it maps directly onto how FlowRunner builds human-in-the-loop automation: the pause is a state the system understands, not a side channel. Every action is built and verified against the MakePlans API.
Without FlowRunner
With FlowRunner
Use Case Scenarios
The Soonest Appointment Somebody Will Actually Take
A customer messages asking for the earliest available appointment. Rather than scanning a calendar, the agent runs Get Next Available Date for the service, which finds the next date within thirty days that has a free slot, then Get Available Slots on that date to read the exact times and which resources can cover them. It matches the customer against List People by email, creates them with Create Person if they are new, and places the booking with Create Booking. The reply goes out through Gmail with the time, the provider, and what to bring. One exchange instead of four.
Running a Class Without Overselling It
A studio publishes a term of classes. The agent creates each session with Create Event against the attendance service, supplying the resource, capacity, and start and end times, then keeps a live view of remaining spaces by running List Events and writing capacity and current availability into Google Sheets. When a session drops below a threshold of remaining spaces it posts to Slack so marketing can push it, and when a session fills it stops promoting it. Bookings onto the class arrive through Create Booking against the same service, so the capacity that the marketing view reads is the capacity the booking system enforces.
Keeping Customers Attached to Records You Already Have
The business already has customer records in HubSpot, and a booking system that invents its own copy of every person is a reconciliation problem waiting to happen. So the agent creates people with Create Person carrying the CRM record's identifier as the external ID, and looks up List People before it creates anything. When contact details change on either side, Update Person and the CRM update are driven from the same flow rather than from two people editing two systems. Bookings pulled with List Bookings can then be attributed to the right customer record without fuzzy matching on an email address.
Human-in-Loop Highlight
MakePlans ships the pause, which means the honest gate here is not something FlowRunner bolts on top. Create Booking takes a Confirm flag, and with it left off the booking is placed but held awaiting confirmation, visible to List Bookings under the unconfirmed state and moved forward only by Confirm Booking. That is the vendor saying, in the shape of its own API, that some requests should reach a person before they become a commitment. The agent uses it exactly as intended: it resolves availability, creates or matches the customer, places the booking unconfirmed, and then routes it to the provider in Slack with everything needed to decide: "New request from [name] for [service] on [date] at [time], resource [name]. History: [n] previous bookings, [n] cancellations. Confirm, offer a different slot, or decline?" The provider answers, and the agent runs Confirm Booking, or Update Booking to move it, or Cancel Booking with the reason recorded. The same discipline covers Delete Booking, which permanently removes a booking where Cancel Booking would have kept the record and the history behind it, so the agent proposes a cancellation and never a deletion on its own. Availability lookups, customer matching, reminders, and reporting run unattended. Turning a request into a promise gets a person.
Agent Capabilities
20 actionsBookings
7- List Bookings Retrieves bookings by state, whether active, upcoming, unconfirmed, recent, all, or visible, with optional service, resource, person, and date range filters. The unconfirmed state is the queue a human works through.
- Get Booking Retrieves a single booking with its state, booked times, linked service and resource, and the associated person.
- Create Booking Creates a booking for a service and time window, optionally assigning a resource and linking an existing person or creating one inline. Leave Confirm off to place the booking as unconfirmed and hold it for approval.
- Update Booking Updates the time window or notes on a booking. Status changes go through Confirm Booking or Cancel Booking rather than through this operation.
- Confirm Booking Confirms an unconfirmed booking, moving it to the confirmed state. This is the operation a human approval unlocks, and the point at which a request becomes a commitment.
- Cancel Booking Cancels a booking and frees its time slot while keeping the record in the account with a canceled state, so the history survives.
- Delete Booking Permanently removes a booking. This cannot be undone and loses the record that Cancel Booking would have kept, so it is routed for human approval rather than run automatically.
Availability
2- Get Available Slots Returns bookable slots for a service within a date range, based on resource opening hours and service settings, with free capacity and the resources available for each slot.
- Get Next Available Date Finds the next date within thirty days that has a free slot for a service, returning that date and its slots. The fast answer to "when is your earliest opening" without scanning a calendar.
Services
3- List Services Retrieves the bookable services on the account, filterable by type: appointments, attendances such as classes, products, or gift cards. Each includes title, booking type, price, and interval.
- Get Service Retrieves a single service with its booking type, interval, price, capacity, and messaging settings.
- Create Service Creates a bookable service with a booking type, title, and optional price, slot interval, and description. Link it to resources afterward so bookings can be made against it.
People
4- List People Retrieves the customers stored on the account with name, email, phone, and external ID. The lookup that prevents a duplicate record per booking channel.
- Get Person Retrieves a single customer with contact details, address, and any custom data.
- Create Person Creates a customer with at least a name, plus optional email, phone, notes, and an external ID linking them to a record in your own systems.
- Update Person Updates a customer's contact details, changing only the fields supplied.
Resources
2- List Resources Retrieves the resources on the account, whether staff, rooms, or equipment, with title, capacity, and active status. Resources provide services and are assigned to bookings.
- Create Resource Creates a resource with a title and optional capacity and active flag. Link it to services afterward so it becomes bookable.
Events
2- List Events Retrieves scheduled events, the time bound offerings such as classes and sign-ups that carry a fixed capacity, with their start and end times, capacity, and current availability.
- Create Event Creates an event for an attendance service, requiring the service, resource, capacity, and start and end times. People book onto it through Create Booking against the same service.
Frequently Asked Questions
What can FlowRunner do with MakePlans?
FlowRunner agents can run List Bookings, Get Booking, and Create Booking in MakePlans, plus 17 more actions.
Does connecting MakePlans to FlowRunner require OAuth?
No. MakePlans connects to FlowRunner with an API key, no OAuth flow required.
Can MakePlans trigger a FlowRunner workflow automatically?
MakePlans doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.
Start building with MakePlans
$100 in credits. No card required. Connect in minutes.