Skip to main content

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_populate event 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.