invitee.scheduled, invitee.cancelled, invitee.withdrawn or invitee.no_show event occurs. All four event types share the same structure — cancellation, withdrawal, no-show and rescheduling fields are only populated when relevant.
Event Info
string
required
Event type that triggered this webhook. One of
invitee.scheduled, invitee.cancelled, invitee.withdrawn or invitee.no_show.string
required
Full API URI for the scheduled event. Example:
https://api.zeeg.me/v2/scheduled-events/zg-O69bac566950c6.string
required
Zeeg event ID in
zg-XXX format (e.g., zg-O69bac566950c6). Use this to uniquely identify the event.string
required
Title of the scheduling page / event type (e.g., “30-Minute Discovery Call”).
string
required
Event type category. One of
ONE_ON_ONE, GROUP, COLLECTIVE, ROUND_ROBIN, or FLEXI.integer
required
Event duration in minutes.
string
required
Human-readable duration (e.g.,
"30 mins", "1 hr 30 mins").Invitee Info
string | null
Invitee’s salutation (e.g.,
"Ms.", "Mr."). null if not provided.string | null
Invitee’s first name.
null if not provided.string | null
Invitee’s last name.
null if not provided.string
required
Invitee’s full display name.
string
required
Invitee’s email address.
string | null
Invitee’s phone number.
null if not collected.string
required
Invitee’s IANA timezone (e.g.,
"Europe/Paris").integer
required
Number of seats booked.
1 for standard bookings, higher for Group events.string
required
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
string
required
Event start time in UTC (ISO 8601).
string
required
Event end time in UTC (ISO 8601).
string
required
Event start time in the invitee’s local timezone (ISO 8601 with offset).
string
required
Event end time in the invitee’s local timezone (ISO 8601 with offset).
string
required
Human-readable start time in the invitee’s timezone. Format:
HH:mm - Day, Month DD, YYYY (e.g., "11:00 - Wednesday, April 15, 2026").string
required
Human-readable end time in the invitee’s timezone. Same format as
inviteeStartAtPretty.Host Info
object
required
Map of 1-based host positions to host full names (e.g.,
{"1": "Lena Meier"}).array
required
Array of host detail objects.
string | null
Team name if the event belongs to a team, otherwise
null.Location
string | null
Location type or name (e.g.,
"Google Meet", "Zoom", a physical address). null if no location is set.string | null
Join URL for virtual meetings.
null for non-virtual locations or if not applicable.Questions
array
required
Array of question/answer objects from the invitee’s booking form.
object
required
Flat key-value map of questions to answers (question text as key). Convenient for quick lookups.
Scheduling Page
string
required
API URI for the event type. Example:
https://api.zeeg.me/v2/event-types/80f46bf5-eb01-4c07-960e-a9a3e18aae5e.string | null
Single-use scheduling link used for this booking.
null if a standard scheduling page was used.Guests
array
required
Array of additional guest email addresses added by the invitee. Empty array if no guests were added.
Payment
number | null
Total price charged for the booking.
null if the event is free.number | null
Price per seat. Equal to
price for single-seat bookings. For multi-seat bookings, this is price / inviteeNumberOfSeats. null if the event is free.string | null
Currency code (e.g.,
"EUR", "USD"). null if the event is free.string | null
Payment provider used (e.g.,
"stripe", "paypal"). null if the event is free.string | null
Payment provider’s transaction ID.
null if the event is free.Links
string | null
URL the invitee can use to cancel the event.
null if the event is already cancelled.string | null
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.
boolean
required
true if the event has been cancelled, false otherwise.string | null
Cancellation timestamp in UTC (ISO 8601).
null if not cancelled.string | null
Name of the person who cancelled the event.
null if not cancelled.string | null
Reason provided for the cancellation.
null if not cancelled or no reason was given.No-show
boolean
required
true once a host has marked the invitee as a no-show, false otherwise. Present on every delivery.string | null
Timestamp the invitee was marked as a no-show, in UTC (ISO 8601).
null when they were not marked.Withdrawal
Present on every delivery for a booking whose event type grants a statutory right of withdrawal (§ 356a BGB), so an ordinary cancellation can be told apart from a withdrawal without subscribing toinvitee.withdrawn. null for every other booking.
object | null
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).
boolean
required
true if this event was rescheduled (i.e., a newer event replaced it), false otherwise.string | null
Rescheduling timestamp in UTC (ISO 8601).
string | null
Name of the person who initiated the reschedule.
string | null
Reason provided for rescheduling.
string | null
API URI of the previous (old) event before rescheduling.
string | null
UUID of the previous (old) event.
string | null
Invitee UUID from the previous (old) event.
string | null
Start time (UTC, ISO 8601) of the previous event.
string | null
Start time of the previous event in the invitee’s timezone (human-readable format).
string | null
API URI of the replacement (new) event after rescheduling.
string | null
UUID of the replacement (new) event.
string | null
Invitee UUID for the replacement (new) event.
string | null
Start time (UTC, ISO 8601) of the replacement event.
string | null
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.string | null
The
utm_campaign value.string | null
The
utm_source value.string | null
The
utm_medium value.string | null
The
utm_term value.string | null
The
utm_content value.object | null
Ad click identifiers captured at booking, or
null when none were present. Keys: gclid, gbraid, wbraid, fbclid, fbp, fbc, landingUrl (all string, only the captured keys are present).Metadata
string
required
Timestamp (UTC, ISO 8601) of when the booking was created.