Skip to content

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.

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.

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.

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:

  1. Open the event in Swivel.
  2. Under Campaign, find Source Key.
  3. Click the Source Key to copy it.
  4. 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.

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.

Some providers use different terms for attendance statuses. Swivel maps these provider values to the corresponding Swivel status:

Provider ValueSwivel Attendance Status
ReservedPending
CancelledCanceled
Checked InAttended

Values are not case-sensitive. Unrecognized values are ignored.

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.

If you are setting up a Webhook to send event or attendance information to Swivel, use the following fields.

FieldWebhook FieldDescription
Marketing Event Source Keymarketing_event_source_keyIdentifies the event. Recommended on every submission and required to update a contact’s attendance status later.
Attendance Statusattendance_statusThe contact’s registration or attendance status.
Event Startevent_start_onThe date and time the event starts. Used only when creating a new event.
Event Endevent_end_onThe date and time the event ends. Used only when creating a new event.
Event Time Zoneevent_time_zoneThe time zone for the event. Used only when creating a new event.
Event Venueevent_venueThe venue for the event. Used only when creating a new event.

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.

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.

Use an IANA time zone name.

Example: America/Chicago

If no time zone is provided, Swivel uses your account’s time zone.

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.