# Webinar Integration

This guide is aimed at integrators who want to connect webinar tools such as WebinarJam, EverWebinar, Zoom, or another webinar platform with KlickTipp.

Webinar integrations are commonly used to create contacts from registrations, send reminder campaigns, update attendance status, segment no-shows, and trigger follow-up automations after the webinar.

## Register Webinar Contacts

The registration step creates or updates the KlickTipp contact and stores the webinar context that is needed for reminders, follow-up emails, and segmentation.

For very simple registration flows with one fixed tag, the Listbuilding API can be enough. For most webinar tools, use the Management API because attendance, no-show, replay, buyer, and engagement events usually require dynamic tag updates after registration.

Before creating or updating a contact with the Management API, load the required opt-in processes, tags, and data fields from KlickTipp.

| Action | Description |
|  --- | --- |
| [Listbuilding Signin](/listbuilding-api#operation/api.subscriber.signin) | Subscribes a contact through a fixed Listbuilding API key. Use this only for simple registration flows. |
| [Add or Update Contact](/management-api#operation/api.subscriber.create) | Adds a new contact. If a contact with the same email already exists, it will be updated. |
| [List Opt-in Processes](/management-api#operation/api.optin.index) | Lists the IDs and names of all opt-in processes. |
| [List Tags](/management-api#operation/api.tag.index) | Lists the IDs and names of all tags. |
| [List Data Fields](/management-api#operation/api.customfield.index) | Lists the IDs and names of all data fields. |


### Step-By-Step Integration Flow

1. Receive the webinar registration event.
2. Validate the contact email address and required webinar data.
3. For a simple fixed registration flow, call [Listbuilding Signin](/listbuilding-api#operation/api.subscriber.signin).
4. For configurable webinar flows, load setup data with [List Opt-in Processes](/management-api#operation/api.optin.index), [List Tags](/management-api#operation/api.tag.index), and [List Data Fields](/management-api#operation/api.customfield.index).
5. Create webinar-specific tags with [Create Tag](/management-api#operation/api.tag.create) if the integration should generate tags dynamically.
6. Create or update the contact with [Add or Update Contact](/management-api#operation/api.subscriber.create).
7. Assign the registration tag with [Tag Contact](/management-api#operation/api.subscriber.tag).
8. Store webinar details such as webinar name, date, time, join URL, reschedule URL, or cancel URL if needed.
9. Receive attendance, replay, purchase, or engagement events.
10. Add the current event tag with [Tag Contact](/management-api#operation/api.subscriber.tag).
11. Remove obsolete state tags with [Untag Contact](/management-api#operation/api.subscriber.untag), for example when `Attended` replaces `Did Not Attend`.


### Add or Update Contact

The Add or Update Contact function is the recommended Management API action for webinar registrations. It creates the contact if needed and updates existing contacts with current webinar data.

[View full API reference](/management-api#operation/api.subscriber.create)

#### Data Field Types and Input Formats

When storing webinar data, all submitted field values must match the field types and field keys configured in the KlickTipp account.

Typical webinar fields include webinar name, webinar date, join URL, reschedule URL, cancel URL, attendance duration, and purchase or offer interaction data.

For a complete overview of supported field types, required formats, and common pitfalls, see:
[Data Field Types and Input Formats](/guides/data-field-types)

#### Error Handling

Webinar tools can send duplicate or delayed events. Your integration should validate events before applying tags and should handle business-level validation errors explicitly.

For a complete explanation of the error model, validation errors, and subscription-related error codes, see:
[Error Handling and Validation](/guides/error-handling)

## Start Webinar Campaigns for Contacts

Tags control webinar reminders, attendance follow-up, replay campaigns, and buyer segmentation in KlickTipp.

| Action | Description |
|  --- | --- |
| [Tag Contact](/management-api#operation/api.subscriber.tag) | Adds one or more tags to a contact. |
| [Untag Contact](/management-api#operation/api.subscriber.untag) | Removes a tag from a contact. |


Recommended tag patterns:

- `[Tool] [Webinar] Registered`
- `[Tool] [Webinar] Did Not Attend`
- `[Tool] [Webinar] Attended`
- `[Tool] [Webinar] Fully Attended`
- `[Tool] [Webinar] Replay Watched`
- `[Tool] [Webinar] Buyer`


Use tag removal when a newer event replaces an older state. For example, if a contact receives `Attended`, remove `Did Not Attend` if it was assigned earlier by a delayed or conflicting event.

## Manage Segmentation for Webinars

So that users do not have to manually create tags in KlickTipp, your integration can manage webinar-specific tags through the API.

[View full API reference](/management-api#operation/api.tag.create)

**Recommendation**

- Use static tag prefixes for the webinar tool.
- Use dynamic tags for specific webinars, attendance states, replay behavior, and purchase events.
- Provide dropdowns for existing tags and an optional "Create Tag" action.


| Action | Description |
|  --- | --- |
| [Create Tag](/management-api#operation/api.tag.create) | Creates a new manual tag. |
| [List Tags](/management-api#operation/api.tag.index) | Lists the IDs and names of all tags. |


## Contact Mapping and Idempotency

For webinar integrations, the email address is the unique identifier for subscription, update, tag, and untag actions.

Repeated [Add or Update Contact](/management-api#operation/api.subscriber.create) calls with the same email address should update the existing contact instead of creating duplicates.

Repeated [Tag Contact](/management-api#operation/api.subscriber.tag) and [Untag Contact](/management-api#operation/api.subscriber.untag) calls should be treated as idempotent from the integration perspective. This is important because registration, attendance, replay, and purchase events may arrive more than once or in a delayed order.

## Essential API Functions

Here you will find the essential calls that you need for robust webinar integrations.

| Action | Description |
|  --- | --- |
| [Listbuilding Signin](/listbuilding-api#operation/api.subscriber.signin) | Subscribes a contact through a fixed Listbuilding API key. |
| [Add or Update Contact](/management-api#operation/api.subscriber.create) | Adds a new contact. If a contact with the same email already exists, it will be updated. |
| [List Opt-in Processes](/management-api#operation/api.optin.index) | Lists the IDs and names of all opt-in processes. |
| [List Tags](/management-api#operation/api.tag.index) | Lists the IDs and names of all tags. |
| [List Data Fields](/management-api#operation/api.customfield.index) | Lists the IDs and names of all data fields. |
| [Tag Contact](/management-api#operation/api.subscriber.tag) | Adds one or more tags to a contact. |
| [Untag Contact](/management-api#operation/api.subscriber.untag) | Removes a tag from a contact. |
| [Create Tag](/management-api#operation/api.tag.create) | Creates a new manual tag. |


## Best Practices

Good webinar integrations handle the full lifecycle from registration to post-webinar follow-up.

- **Use the Management API for event-based flows**: Registration, attendance, replay, and purchase events usually require dynamic tag updates.
- **Store only useful webinar data**: Map join URLs, reschedule URLs, cancel URLs, and webinar dates only when KlickTipp needs them for emails or segmentation.
- **Handle delayed events safely**: Webinar platforms may send events late or more than once, so apply the final desired tag state.
- **Use clear event tags**: Tags should make the current webinar state visible and automation-friendly.
- **Show actionable errors**: For validation or subscription errors, show the reason in the integration UI instead of silently retrying.


## Summary

Webinar integrations connect registration and attendance behavior with KlickTipp automation.

Use the Management API for most webinar tools because webinar workflows usually require multiple events, dynamic tags, and follow-up logic after registration.

Reliable webinar integrations map the important webinar fields, use clear attendance tags, handle delayed events safely, and let KlickTipp automations send the right message to each participant segment.