Installs in ~2 min· 5 assets · 5 steps

Let students enrol themselves without overfilling a class

Students enrol themselves. Seats are counted for you. Nobody gets double-booked into a full class.

One form replaces the enrollment email thread. A student picks a course and submits; the recipe checks that course against your catalog's real capacity and either confirms the seat (incrementing the count and putting the schedule on the student's calendar) or waitlists them and tells the registrar the course is full. The right email goes out either way, without anyone in the office writing it.

Free · no credit card · you connect your own apps

The blueprint
Trigger
Course Enrollment Request
Fires the moment the form is submitted.
Transform
Look Up Course
Logic
Seats Available?
Branches on the outcome, so each path is handled.
Action
Confirm + Calendar + Email
Action
Waitlist + Notify Registrar
What gets built

5 things appear in your workspace.

Installing provisions each one, wired together and ready to run.

TableCourse Catalog

Your offered courses with their capacity. The workflow reads it to check availability and increments seats_taken on every confirmed enrollment.

FormCourse Enrollment Request

Where students sign up: name, email, student ID, course, and notes. Publishing it auto-creates the response sheet that holds every enrollment and its status.

EmailEnrollment Confirmation

Sent when a seat is secured, confirming the course, the schedule, and the calendar event.

EmailWaitlist Notice

Sent when the course is full, so the student knows they're waitlisted rather than being left guessing.

WorkflowProcess Enrollment

Looks up the chosen course, confirms when seats remain (records it, increments the count, adds the schedule to the student's calendar, emails confirmation), or waitlists the student and alerts the registrar when full.

What you connect

The apps this recipe needs.

You connect your own accounts. Swap any app that offers an alternative at install.

Student Email
Gmail *

Sends enrollment confirmations and waitlist notices to students. Swap for Brevo.

Class Scheduling
Google Calendar

Adds the course schedule to the student's calendar on confirmation.

Registrar Notification
Slack *

Alerts the registrar when a course fills up and students are being waitlisted. Swap for Telegram.

How it works

Step by step, once it is running.

  1. 01
    Student Requests Enrollment

    The student picks a course on the published Course Enrollment Request form and submits their name, email, student ID, and any notes. Submitting fires the workflow immediately, nobody in the registrar's office has to open anything.

  2. 02
    Seat Check

    The workflow looks the chosen course up in your Course Catalog table and compares seats_taken against capacity. This is the whole reason overbooking stops happening: the check runs against live numbers on every single request, not against a spreadsheet somebody updated last Tuesday.

  3. 03
    Confirmed or Waitlisted

    If a seat is free, the enrollment is recorded as confirmed, the seat count goes up by one, and (if you've turned it on) the class schedule is added to the student's Google Calendar. If the course is full, the enrollment is marked waitlisted instead. Same form, two clean outcomes, no manual triage.

  4. 04
    Student Is Emailed

    The matching email goes out automatically: an Enrollment Confirmation with the course, schedule, and calendar event, or a Waitlist Notice explaining where they stand. The student knows within seconds, not at the end of the week.

  5. 05
    Registrar Stays Informed

    When a course fills and students start being waitlisted, the registrar is notified in Slack. That's the trigger for a real decision (open another section, raise the cap, or leave it) made while there's still time to make it.

What you walk away with
FAQ

Questions about Course Enrollment.

How does the seat check work?
The Course Catalog table holds each course and its capacity. When a student requests enrollment, the workflow checks remaining seats before confirming, so a full class produces a waitlist notice instead of an overbooked room.
What do I need to connect?
Gmail and Slack. Gmail sends the confirmation and waitlist emails, and Slack keeps the registrar informed. Google Calendar is optional and adds each confirmed enrollment to a term calendar when you enable add_to_calendar.
What does a waitlisted student receive?
A dedicated Waitlist Notice email rather than silence or a confirmation they cannot use. The registrar is notified in the same run, which is the trigger for deciding whether to open another section or raise the cap.
Can I run this for multiple terms?
Yes. term_label is a configuration value and the Course Catalog is an ordinary table, so you update the catalog and the term label each intake rather than reinstalling the recipe.
Can I change the confirmation wording?
Both the Enrollment Confirmation and Waitlist Notice are real email assets in your workspace. Open them and edit the copy, the sender and the branding. The institution name and registrar contact are configuration values used across both.
More recipes

Install it, then make it yours.

Everything it creates is an ordinary form, table and workflow in your workspace. Edit any of it after install. Nothing is locked.