Webhooks
Create and Update Event Registrations via Webhook
Learn to create event registrations through a Webhook, add contacts to existing events, use an event's Source Key, and update contact attendance statuses in Swivel.
Overview
Section titled “Overview”You can use a Webhook to send contacts to marketing events in Swivel.
When a contact is added to an event, Swivel automatically marks the contact as Registered. Your provider can also update the contact’s attendance status later.
There are two ways to create the event:
-
Create the event through the Webhook: recommended. You do not need to create the event in Swivel first.
-
Create the event in Swivel: supported. You must provide the event’s Source Key so contacts are added to the correct event.
This article explains how to create events, add contacts to existing events, and update attendance status.
Let the Webhook Create the Event
Section titled “Let the Webhook Create the Event”This is the preferred option.
When the first contact is sent to Swivel, the Webhook can create the event and add the contact to it. Swivel automatically marks the contact as Registered.
The Webhook can also provide the new event’s:
- Start date and time
- End date and time
- Time zone
- Venue
These details are used when the event is created.
After the event is created, the event has a Source Key. Use the Source Key when sending additional contacts to the same event or updating attendance.
Create the Event in Swivel
Section titled “Create the Event in Swivel”You can also create the event yourself in Swivel before contacts are sent through the Webhook.
If you create the event in Swivel, give your lead provider the event’s Source Key. The Source Key tells the Webhook which existing event to use.
To find and copy the Source Key:
- Open the event in Swivel.
- Under Campaign, find Source Key.
- Click the Source Key to copy it.
- Give the Source Key to your lead provider.
When your provider sends a contact with the Source Key, Swivel adds the contact to that existing event.
Update Attendance Status
Section titled “Update Attendance Status”Contacts added to an event through a Webhook are automatically marked Registered.
As a contact’s attendance changes, your lead provider can send an updated attendance status.
Swivel supports these attendance statuses:
- Pending
- Attended
- Canceled
- No Show
- Rescheduled
- Waitlisted
To update a contact’s attendance status, your provider must send:
- The event’s Source Key
- The new Attendance Status
If the Source Key is not provided, Swivel ignores the attendance status, but still applies the other contact updates.
Provider Attendance Values
Section titled “Provider Attendance Values”Some providers use different terms for attendance statuses. Swivel maps these provider values to the corresponding Swivel status:
| Provider Value | Swivel Attendance Status |
|---|---|
| Reserved | Pending |
| Cancelled | Canceled |
| Checked In | Attended |
Values are not case-sensitive. Unrecognized values are ignored.
Add Event Details
Section titled “Add Event Details”When a Webhook submission creates a new event, your provider can also send:
- Event start date and time
- Event end date and time
- Event time zone
- Event venue
These details are used only when the submission creates a new event. They do not change an existing event.
Webhook Setup
Section titled “Webhook Setup”If you are setting up a Webhook to send event or attendance information to Swivel, use the following fields.
| Field | Webhook Field | Description |
|---|---|---|
| Marketing Event Source Key | marketing_event_source_key | Identifies the event. Recommended on every submission and required to update a contact’s attendance status later. |
| Attendance Status | attendance_status | The contact’s registration or attendance status. |
| Event Start | event_start_on | The date and time the event starts. Used only when creating a new event. |
| Event End | event_end_on | The date and time the event ends. Used only when creating a new event. |
| Event Time Zone | event_time_zone | The time zone for the event. Used only when creating a new event. |
| Event Venue | event_venue | The venue for the event. Used only when creating a new event. |
Attendance Status Values
Section titled “Attendance Status Values”The attendance_status field accepts these Swivel statuses:
- pending
- attended
- canceled
- no_show
- rescheduled
- waitlisted
It also accepts these provider values:
- Reserved: saved as Pending
- Cancelled: saved as Canceled
- Checked In: saved as Attended
Values are not case-sensitive. Unrecognized values are ignored.
Event Start and End
Section titled “Event Start and End”Use this format for the event start and end:
Date and time: YYYY-MM-DD HH:MM
Example: 2026-10-03 18:00
- Use 24-hour time.
- For an all-day event, send only YYYY-MM-DD.
- The event end time must be after the event start time.
Event Time Zone
Section titled “Event Time Zone”Use an IANA time zone name.
Example: America/Chicago
If no time zone is provided, Swivel uses your account’s time zone.
Event Venue
Section titled “Event Venue”Enter the venue name.
If the venue matches an existing vendor, Swivel uses that vendor. Otherwise, Swivel creates the venue under the Unspecified vendor type.

