# Base Event Structure

Learn about the common structure of all Komo events.

At a high level, all Komo Events are structured as follows:

```jsonc
{
  "eventName": "page-view", // the event name
  "eventData": {
    // ... the event payload
  },
  "extensionData": {
    // ... the optional extension data
  },
  "trackedData": {
    // ... the optional admin-defined contact properties
  }
}
```

> **Note**
>
> When we push events to GTM or Adobe Launch, the `eventName` and `eventData`
> properties will be mapped to the appropriate properties in the data layer. See
> the specific details [here](/user-interaction-events).

## Base Event Payload Data

All Komo Event `eventData` payloads include the following fields, providing context about the webpage, host, and browser.

| Field | Type | Description | Required |
| --- | --- | --- | --- |
| timestamp | String (TimeStamp) | The timestamp of the event | Yes |
| pageTitle | String | The title of the page where the event occurred | Yes |
| hostName | String | The hostname of the page where the event occurred | Yes |
| pathName | String | The path of the page where the event occurred | Yes |
| queryString | String | The query string of the page where the event occurred | Yes |
| url | String | The URL of the page where the event occurred | Yes |
| referrer | String | The URL that linked to the page where the event occurred | Yes |
| languages | Array | The languages of the browser that made the request | Yes |
| userAgent | String | The user agent of the browser that made the request | Yes |

---

## Standard Event Fields

Depending on the Event category, the following fields are always included.

### Hub Events

- All events raised on hub pages (including individual cards and embedded card pages) and surveys will include these fields.
- Coupon events _do not_ include these fields.

| Field | Type | Description | Required |
| --- | --- | --- | --- |
| siteId | String (GUID) | The ID of the hub where the event occurred | Yes |
| siteName | String | The name of the hub where the event occurred | Yes |
| userId | String (GUID) | The ID of the user that performed the action | Yes |
| contactId | String (GUID) | The ID of the contact that performed the action | Yes |

### Card Events

- All events raised from cards will include these fields.

| Field | Type | Description | Required |
| --- | --- | --- | --- |
| siteId | String (GUID) | The ID of the hub where the event occurred | Yes |
| siteName | String | The name of the hub where the event occurred | Yes |
| userId | String (GUID) | The ID of the user that performed the action | Yes |
| contactId | String (GUID) | The ID of the contact that performed the action | Yes |
| pageId | String (GUID) | The ID of the page where the event occurred | No |
| pageSlug | String | The slug of the page where the event occurred | No |
| cardId | String (GUID) | The ID of the card | Yes |
| cardType | String | The type of the card | Yes |
| cardSubType | String | The sub-type of the card | Yes |
| cardName | String | The name of the card | Yes |

### Survey Events

- All events raised from surveys will include these fields.

| Field | Type | Description | Required |
| --- | --- | --- | --- |
| siteId | String (GUID) | The ID of the hub where the event occurred | Yes |
| siteName | String | The name of the hub where the event occurred | Yes |
| userId | String (GUID) | The ID of the user that performed the action | Yes |
| contactId | String (GUID) | The ID of the contact that performed the action | Yes |
| surveyId | String (GUID) | The ID of the survey that the form field is on | Yes |
| surveyName | String | The name of the survey that the form field is on | Yes |
| recipientId | String (GUID) | The ID of the survey recipient that touched the form field | Yes |

---

## Tracked Data

- Events may optionally include `trackedData` containing admin-defined contact properties.
- These properties are configured by site administrators and automatically resolved from user data when events are emitted.
- This data is used for analytics tracking in systems like GTM and Adobe Launch.
- For detailed information, see [Tracked Data (Advanced)](/user-interaction-events/tracked-data).

> **Note**
>
> Event-specific fields are documented on each event's page. All events always
> include the Base Event Data and the relevant Core Context Fields above
