Disclaimer: This website requires Please enable JavaScript in your browser settings for the best experience.

Dev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideLegal TermsGitHubDev CommunityOptimizely AcademySubmit a ticketLog In
Dev Guide

Events

This topic describes events in Optimizely Data Platform (ODP).

Events describe actions your customers perform or actions that result in an update to their customer record such as viewing your web page or visiting your store in New York.

Compose events

Events are composed using a two-tier connection including a type and action. You can set additional metadata with fields on the event.

  • The event type is a categorical name associated with the event.
  • The event action is the activity a user did within that event type.

For example:

  • order and product would be event types
  • purchase, return, or add_to_cart would be actions

At minimum, events require an event type and an identifier to associate the event with a customer. The event() method automatically passes the VUID (cookie ID) to ODP. You can include additional identifiers, like email or phone number which will associate that cookie ID with the other identifiers. Refer to Overview of customer identity and resolution to learn more.

🚧

Important

All ODP events are immutable, meaning you can not change them after you upload them to ODP.

Standard events

A standard event is an event that has a predefined event type and action. Using standard events makes using ODP simpler for common use cases.

Reference and examples:

Account event

Set the event type to account to track your users actions for login, logout, register and update.

typeaction
accountlogin
accountlogout
accountregister
accountupdate

Pageview event

Set the event type to pageview to track which pages your user visits.

typepage
pageview/products/12345

📘

Note

The Web SDK automatically populates the page field when event type is pageview.

Wishlist

Set the event type to product to track a user adding or removing an item from a wishlist.

typeaction
productadd_to_wishlist
productremove_from_wishlist

Navigation events

Set the event type to navigation to track what your user's search.

typeactionsearch_term
navigationsearchcameras
navigationsort
navigationfilter

Custom events

A custom event is where you create the event type and action and choose additional fields to use.

Custom events display on the customer profile (Customers > Profiles) in ODP.

📘

Note

See how to Create custom fields. You must select Events from the Object Containing New Field drop-down list.

Example

typeactionvenue_name
venuevisitedTD Garden

Reference:

Active events

❗️

Warning

Use this only for the rare case where you have an event that is not triggered by a customer. Abuse of this functionality may result in a loss of data.

An active event is helpful for events like campaign sends, subscription and support ticket events generated by an agent where the customer was not the direct source of the event.

This field lets ODP determine if an event was active or not. If it is set to true, then that is considered customer activity. This means that the event will impact the calculation of Monthly Active Users (MAUs). It also may exclude reporting from certain engagements, like Customer Lifecycle, when appropriate.

Automatic active events

🚧

Caution

If the field is left blank, the default value is true, meaning it is assumed that the event is active.

Field Display NameField NameField TypeField Description
Is Active Event?active_eventTrue / False booleanIndicates whether this event should contribute to Monthly Active User (MAU) calculations. Is false if the event is not triggered directly by the customer.
Examples include campaign sends and support tickets being closed. If not set, is set to “true”, making the event active.
typeaction
customer_discovered
campaign
consent
reachability
list
emailany action not open or click
pushany action not open or click

Some events are set to inactive by default (active_event = false).

📘

Note

If needed, a developer can override by including the field on the event payload.