1 · What it is — one object, many uses
The renamed Appointments object gives you the one field custom properties can't: a real date + time. A type property lets the same object cover everything.
| Built-in field | Holds |
|---|---|
hs_appointment_start / hs_appointment_end | Real datetime — date and time of day (e.g. Apr 22, 9:00 AM → 4:00 PM) |
hs_appointment_name | "Q1 Intensive", "Module 2 Kickoff", "Office Hours – June" |
hs_duration | Auto-calculated |
add: type (dropdown) | Class · Webinar · Office Hours · Other — filter & report by type |
add (optional): location, topic | City/venue, session topic |
2 · When to create Sessions
The test is the same regardless of use case: are there multiple occurrences separated in time?
No Sessions Single / consecutive
A 1-day course, a 2-day Mon–Tue workshop, a one-off webinar. Handle it on the parent record (the Course's own dates, or a single Campaign asset). Nothing to add here.
Add Sessions Spread over time
Multiple dated occurrences across weeks/months — MToP's quarterly intensives, a monthly office-hours series, a multi-part workshop. Each occurrence = one Session, so you can remind, track attendance, and show "what's next."
The same decision as a flow, when you set up a class (e.g. MToP):
flowchart TD A(["Create Course
e.g. MToP 2026 cohort"]):::course --> B{"Multiple days,
spread over time?"}:::dec B -- "No — consecutive days
(most courses)" --> C["No Sessions —
Course start/end date + schedule field"]:::no B -- "Yes (e.g. MToP: quarterly)" --> E["Create a Session record per meeting
(entered by hand for now)"]:::session E --> S1["Session · Q1
start + end datetime · Type: Class"]:::session E --> S2["Session · Q2 …"]:::session S1 --> F["Each Session associates → the Course
(enrolled contacts already on the Course)"]:::step S2 --> F F --> G["fa:fa-gear Workflow: remind attendees
before each Session's start date"]:::wf classDef course fill:#FDEBE8,stroke:#EF4C32,color:#a3301c; classDef session fill:#fff,stroke:#EF4C32,color:#a3301c; classDef dec fill:#fff5ee,stroke:#EB5825,color:#8a3d1e; classDef no fill:#eef0f2,stroke:#6b7682,color:#3f4852; classDef step fill:#fff,stroke:#cdd3d9,color:#232b33; classDef wf fill:#eef0f2,stroke:#6b7682,color:#3f4852;
3 · Use cases & what they hang off
Same Sessions object; the only thing that changes is the parent it associates to.
| Use case | Session type | Parent (group under) | Who's associated |
|---|---|---|---|
| Multi-session class (MToP) | Class | the Course | Enrolled contacts |
| Webinar series | Webinar | a Campaign | Registrants |
| Recurring office hours | Office Hours | a Campaign or none | Attendees |
4 · For classes specifically — only MToP needs it
Checked against the full hue.life catalog: every workshop is consecutive-day, so they stay a single Course record. Only spread-over-time programs get Sessions.
| Course | Cadence | Sessions? |
|---|---|---|
| HUE Conversation Strategies · HUE Collaboration Methods · AES (Environmental Scanning) | 1 day | No |
| ToP Facilitation Methods · ToP Strategic Planning · HUE Implementation Journey · HUE Strategy Formation | 2 days, consecutive | No |
| HUE Leadership Retreat | 3 days, consecutive | No |
| Mastering ToP (MToP) | Year-long — quarterly intensives | Yes |
| Community of Practice (CoP) | Recurring meetings | If scheduled |
Only a handful of classes need this — create them manually
In practice only MToP (and possibly CoP) needs Sessions, and just a few per cohort — so for now you'll create those records by hand. Because the cadence is fixed per course type, this can be automated later (a workflow or import template), but it's not needed to get started.
5 · What it unlocks (only where you turn it on)
| Capability | Needs Sessions because… |
|---|---|
| Per-occurrence reminders ("Chicago stop is tomorrow") | each occurrence has its own date to trigger off |
| "What's next" / progress tracking | the initiative moves through dated milestones |
| Per-occurrence attendance & reporting | contacts associate to individual Sessions |
| Calendar / ICS per occurrence | real start/end datetimes |
6 · Setup (once, when the first spread initiative needs it)
| # | Step | Where |
|---|---|---|
| 1 | Activate Appointments and rename it "Sessions" | Settings → Data Management → Data Model |
| 2 | Add the type dropdown (Class / Webinar / Office Hours / …) | Settings → Properties → Sessions |
| 3 | Confirm associations: Session → Course, Session → Campaign, Session → Contacts | Settings → Objects → Sessions |
| 4 | Create the Session records by hand per meeting (automate later if volume grows) | Sessions object |
| 5 | Build the reminder/follow-up workflow (fires off each Session's start) | Automation → Workflows |