Appointments
Appointments handles scheduling and syncs booked meetings to your CRM. When a prospect books a meeting, graph8 automatically creates or updates the contact, syncs the meeting to your CRM, and assigns the correct owner.
Appointments vs Meetings
These two areas work together, but they are not the same feature:
| Feature | Primary Purpose |
|---|---|
| Appointments | Booking workflow, scheduling events, and CRM sync |
| Meetings | Reviewing calendar meetings in the Inbox with transcript and follow-up context |
Use Appointments when you need to control how meetings are booked and synced. Use Meetings when you want to review what happened in the meeting and what should happen next.
How It Works
The flow:
- A prospect books a meeting through your scheduling page
- The scheduling system sends an event to graph8
- graph8 processes the event — creates/updates contacts and syncs to your CRM
- The meeting appears in your CRM with the correct contact associations
This runs automatically in the background for every booking.
Appointment Events
graph8 processes four types of scheduling events:
| Event | What Happens |
|---|---|
| Booking created | New meeting booked — contact created/updated, meeting synced to CRM |
| Booking updated | Meeting details changed — CRM meeting updated |
| Booking canceled | Meeting canceled — CRM meeting marked as canceled |
| Booking rescheduled | Meeting moved — original marked as rescheduled, new meeting created in CRM |
Reschedule Handling
Reschedules are handled differently by CRM:
- HubSpot / Pipedrive — the original meeting is updated to “rescheduled” status and a new meeting is created
- Salesforce — a new meeting is created (Salesforce doesn’t reliably support finding and updating the original)
Contact Creation
When a booking comes in, graph8 automatically processes the attendees:
- Creates new contacts if they don’t exist in your database
- Updates existing contacts with any new fields (phone number, name)
- Processes guests from the booking response (additional attendees)
- Skips the host — the meeting host is treated as the owner, not a contact
- Deduplication — prevents creating duplicate contacts
CRM Sync
Meetings are synced to your connected CRM:
| CRM | Capabilities |
|---|---|
| HubSpot | Create meetings, update on reschedule/cancel, associate with contacts |
| Salesforce | Create meetings, associate with contacts |
| Pipedrive | Create meetings, update on reschedule/cancel, associate with contacts and attendees |
Each synced meeting includes:
- Title and description
- Start and end times
- Location and meeting URL
- Contact associations
- Owner assignment
- Booking UID for tracking reschedules and cancellations
Owner Assignment
Control how meeting owners are assigned in your CRM:
| Mode | Behavior |
|---|---|
| Use host as owner | The meeting host becomes the CRM owner — no fallback if host isn’t found |
| Use default owner | Try the host first, fall back to a configured default owner |
Configure owner assignment per CRM integration in Settings → Integrations.
Settings
Appointment settings are configured per CRM integration:
| Setting | What It Controls |
|---|---|
| Entity type | Whether to create contacts, leads, companies, or deals from bookings |
| Field mappings | Map booking fields to CRM fields |
| Owner assignment mode | How meeting owners are determined |
| Default owner | Fallback owner when host can’t be matched |
Next Steps
- Connections → — Set up your CRM integration
- Meetings → — Review meetings and transcript context in the Inbox
- Web Chat → — Let visitors book meetings from chat
- Sequencer → — Link sequences to appointment outcomes