Back to Admin Events

Admin Guide

How the Events feature works end-to-end — the member lifecycle, registration & waitlist, the full email roster with triggers and timing, manual invites, and the automations behind reminders and follow-ups.

Events Feature Guide for Admins

This guide explains how the Events feature works end-to-end and every email the platform sends, with exactly when each one fires. It is for administrators only.

Event lifecycle

  1. Create — On Manage Events, click New Event (or edit an existing one). Drafts (with Published off) are invisible to members.
  2. Publish — Turn Published on in the event form. Only published events appear in Events, My Events, and the dashboard Upcoming Events widget, and only published events accept registrations.
  3. Invite (optional) — Use the Invite button on the event row, or the Invite members now prompt that appears right after you save a new event. Target all members, a plan tier, or an institution, with an optional personal note.
  4. Registrations — Members register from the event page. Capacity is tracked via active_count / waitlisted_count on the event. A capacity of 0 means unlimited.
  5. Reminders — Sent automatically (see below).
  6. Hold the event — Mark attendance on the Roster page (/admin/events/:eventId/roster). Each attendee becomes attended; no-shows stay registered.
  7. Follow-ups — Sent automatically after the event ends.
  8. Replay — Add a replay_url to the event so follow-ups link to it; it also appears on My Events.

Every email, and when it sends

| Email | When it sends | Sent to | Suppressed for opt-outs? | |---|---|---|---| | Registration confirmation ("You're registered" / "You're on the waitlist") | Instantly, when a member registers | The registrant | No (transactional) | | Waitlist promotion ("A spot opened up") | Instantly, when a registered member cancels and the earliest waitlisted member is promoted | The promoted member | No (transactional) | | Cancellation confirmation ("Your registration was cancelled") | Instantly, when a member cancels | The cancelling member | No (transactional) | | 24-hour reminder | Automated job notifyEventStarting (runs hourly): event starts within 24h but more than 1h away, once per registration | Each registered member | Yes | | 1-hour reminder | Same hourly job: event starts within 1h but has not started, once per registration | Each registered member | Yes | | Post-event — attended ("Thanks for attending" + replay + review prompt) | Automated job eventFollowUp (runs daily): after the event ends, for attended rows, once | Each attendee | Yes | | Post-event — no-show ("We missed you" + replay) | Same daily job, for registered rows that never became attended | Each no-show | Yes | | Manual event invite ("You're invited" + optional note) | On demand, when you click Invite and send | Your chosen audience | Yes |

Manual invite — how to use it

  • Entry points: the Invite (mail) button on any event row in Manage Events, and the Invite members now prompt shown immediately after you create or save an event.
  • Targeting (pick one or more):
    • All members — every member with an email.
    • By plan tier — select Basic / Pro / Premium (useful for plan-gated or premium events).
    • By institution — pick an active institutional package; defaults to the event's bound cohort when one is set.
  • Note: an optional short message inserted in a highlighted block above the event details.
  • A live recipient count is shown before you send.
  • On send, each recipient is emailed individually and the function returns a sent / failed count (shown as a toast). Opted-out members are excluded; emails are de-duplicated.

The two automations behind the reminders and follow-ups

  • notifyEventStarting — runs hourly, admin-only. It walks every registered EventRegistration, checks time-to-start, and sends the 24h then 1h reminder, stamping reminder_24h_sent / reminder_1h_sent so each fires exactly once. Requires BASE44_PUBLIC_APP_URL to be set (it is).
  • eventFollowUp — runs daily, admin-only. For events whose end time has passed, it sends the attended or no-show follow-up and stamps followup_sent once per registration. Waitlisted and cancelled rows are ignored.

Settings that gate delivery

  • receive_weekly_summary on the member's profile — when off, the member gets no 24h/1h reminders, no post-event follow-ups, and no manual invites. Transactional confirmation, cancellation, and waitlist-promotion emails still send because they confirm an action the member initiated.
  • Access mode — free (any member) or plan_gated (member's plan must meet required_plan). paid is reserved for a later pass.
  • Institutional cohort — when set, only members of that package can see and register the event; the invite dialog defaults to that cohort.
  • Capacity — 0 means unlimited; any positive number triggers waitlisting once active_count ≥ capacity.

To edit this guide, open the article in the Admin Events category from the Knowledge Base article manager.