invitee.scheduled or invitee.cancelled event occurs. Both event types share the same structure — cancellation and rescheduling fields are only populated when relevant.
Event Info
Event type that triggered this webhook. Either
invitee.scheduled or invitee.cancelled.Full API URI for the scheduled event. Example:
https://api.zeeg.me/v2/scheduled-events/zg-O69bac566950c6.Zeeg event ID in
zg-XXX format (e.g., zg-O69bac566950c6). Use this to uniquely identify the event.Title of the scheduling page / event type (e.g., “30-Minute Discovery Call”).
Event type category. One of
ONE_ON_ONE, GROUP, COLLECTIVE, ROUND_ROBIN, or FLEXI.Event duration in minutes.
Human-readable duration (e.g.,
"30 mins", "1 hr 30 mins").Invitee Info
Invitee’s salutation (e.g.,
"Ms.", "Mr."). null if not provided.Invitee’s first name.
null if not provided.Invitee’s last name.
null if not provided.Invitee’s full display name.
Invitee’s email address.
Invitee’s phone number.
null if not collected.Invitee’s IANA timezone (e.g.,
"Europe/Paris").Number of seats booked.
1 for standard bookings, higher for Group events.Zeeg invitee ID in
zg-XXX format. Use this to track a specific booking across schedule, cancel, and reschedule events. Recommended for storage and correlation.Timing
Event start time in UTC (ISO 8601).
Event end time in UTC (ISO 8601).
Event start time in the invitee’s local timezone (ISO 8601 with offset).
Event end time in the invitee’s local timezone (ISO 8601 with offset).
Human-readable start time in the invitee’s timezone. Format:
HH:mm - Day, Month DD, YYYY (e.g., "11:00 - Wednesday, April 15, 2026").Human-readable end time in the invitee’s timezone. Same format as
inviteeStartAtPretty.Host Info
Map of 1-based host positions to host full names (e.g.,
{"1": "Lena Meier"}).Array of host detail objects.
Team name if the event belongs to a team, otherwise
null.Location
Location type or name (e.g.,
"Google Meet", "Zoom", a physical address). null if no location is set.Join URL for virtual meetings.
null for non-virtual locations or if not applicable.Questions
Array of question/answer objects from the invitee’s booking form.
Flat key-value map of questions to answers (question text as key). Convenient for quick lookups.
Scheduling Page
API URI for the event type. Example:
https://api.zeeg.me/v2/event-types/80f46bf5-eb01-4c07-960e-a9a3e18aae5e.Single-use scheduling link used for this booking.
null if a standard scheduling page was used.Guests
Array of additional guest email addresses added by the invitee. Empty array if no guests were added.
Payment
Total price charged for the booking.
null if the event is free.Price per seat. Equal to
price for single-seat bookings. For multi-seat bookings, this is price / inviteeNumberOfSeats. null if the event is free.Currency code (e.g.,
"EUR", "USD"). null if the event is free.Payment provider used (e.g.,
"stripe", "paypal"). null if the event is free.Payment provider’s transaction ID.
null if the event is free.Links
URL the invitee can use to cancel the event.
null if the event is already cancelled.URL the invitee can use to reschedule the event.
null if the event is already cancelled.Cancellation
These fields are populated when the event isinvitee.cancelled.
true if the event has been cancelled, false otherwise.Cancellation timestamp in UTC (ISO 8601).
null if not cancelled.Name of the person who cancelled the event.
null if not cancelled.Reason provided for the cancellation.
null if not cancelled or no reason was given.Rescheduling
These fields are populated when a booking has been rescheduled. On a reschedule, the old event receivesinvitee.cancelled and the new event receives invitee.scheduled, both with rescheduling context.
The old* fields appear on the new event’s payload (referencing the event it replaced). The new* fields appear on the old event’s payload (referencing the event that replaced it).
true if this event was rescheduled (i.e., a newer event replaced it), false otherwise.Rescheduling timestamp in UTC (ISO 8601).
Name of the person who initiated the reschedule.
Reason provided for rescheduling.
API URI of the previous (old) event before rescheduling.
UUID of the previous (old) event.
Invitee UUID from the previous (old) event.
Start time (UTC, ISO 8601) of the previous event.
Start time of the previous event in the invitee’s timezone (human-readable format).
API URI of the replacement (new) event after rescheduling.
UUID of the replacement (new) event.
Invitee UUID for the replacement (new) event.
Start time (UTC, ISO 8601) of the replacement event.
Start time of the replacement event in the invitee’s timezone (human-readable format).
UTM Parameters
These fields capture UTM tracking parameters if they were present on the scheduling page URL when the invitee booked.The
utm_campaign value.The
utm_source value.The
utm_medium value.The
utm_term value.The
utm_content value.Metadata
Timestamp (UTC, ISO 8601) of when the booking was created.