experiment_populate Event
Definition
This document provides a detailed walkthrough of the fireing experiment_populate built-in event
Triggers and Dispatch Conditions of the experiment_populate Event
The Pulse Settings SDK triggers the experiment_populate event in the following scenarios:
- The response to the settings GET call includes experiments that the client has not previously received in the browser.
Cases when the experiment_populate event should not be fired:
- The response to the settings GET call does not include an experiment that the client has not previously received in the browser.
The schema of a experiment_populate event
{
"data": {
"tab_id"?: string,
"url": string,
"experiment_id": string,
"variant": string
}
},
"event": "session_start",
"timestamp": number
}
experiment_populate event parameters
- The navigation happened before the
experiment_populateevent firing (it doesn't matter how long ago the navigation event occurred)
url
The url parameter is a mandatory parameter in the experiment_populate event.
The parameter is taken by "tracking SDK" from the Browser API window.location.href, this is the URL of the page where the experiment_populate event occurred.
tab_id
The tab_id parameter is an optional parameter.
The tracking SDK generates a new tab_id each time when a new tab opens and there is no preselected configuration for tracking SDK not to track tab_id.
Cases when the tab_id parameter should not be in the experiment_populate event:
- The tracking SDK has been initialized with configuration restricting tracking tab_id
experiment_id
The experiment_id parameter is mandatory. The settings SDK extracts the experiment_id from the response of the settings GET call, which provides the unique ID of the experiment.
variant
The variant parameter is required. The settings SDK retrieves the variant from the response of the settings GET call. This variant represents a specific variant of the experiment that has been retrieved.