The FunnelEnvy snippet sends audience information, campaign events, data and configured content attributes to the data layer. These can be used in Google Tag Manager as Variables and Triggers and in programatic Javascript code.
Events are documented in the sections below. All events sent by FunnelEnvy are prefixed with backstage
to avoid naming conflicts.
Campaign & Variation Events
Event | Description |
backstage.activeCampaign | Fires when a campaign is activated |
backstage.activeVariation | Fires when a variation activates |
backstage.campaignState | Includes the state of all activate campaigns |
Audience Events
backstage.updatedAudiences | Fires when audience classification is complete |
Other Events
backstage.updatedContentAttributes | Fires with any content attributes that have been sent to the browser |
backstage.completed | Fires after all snippet processing has been completed. |
Campaign and Variation Events - Details
backstage.activeCampaign
This event is sent when a campaign is activated (URL and audience conditions have been met) and includes the following data structure.
{
event: "backstage.activeCampaign",
backstage: {
activeCampaign: {
id: "{{Campaign Id}}",
name: "{{Campaign Name}}",
organization: "{{Organization Id}}",
slug: "{{Campaign Short Id}}",
isInHoldback: {{true || false}}
}
}
}
backstage.activeVariation
The event that's sent when a variation is activated for a visitor with the following data:
{
event: "backstage.activeVariation",
backstage: {
activeVariation: {
source: "{{Source Id}}",
name: "{{Variation Name}}",
recommended: {{true || false}},
holdback: {{true || false}},
campaignId: "{{Campaign Id}}",
variationId: "{{Variation Id}}"
}
}
}
backstage.campaignState
- The state of all active campaigns in the organization
{
event: "backstage.campaignState",
backstage: {
campaignState: [
{
campaignId: {{Campaign Id}},
name: "{{Campaign}}",
source: "custom",
status: "running",
isInHoldback: {{true || false}},
recommendation: {
"variationId: {{Variation Id}}
}
},
...
Audience Events - Details
backstage.updatedAudiences - An event that fires with any audiences that the visitor has been classified (assigned) to.
{
event: "backstage.updatedAudiences",
backstage: {
audiences: {
{{Audience Slug}}: {
id: {{Audience Id}},
name: {{Audience Name}},
slug: {{Audience Slug}},
provider: {{Audience Type}},
organization: {{Organization Id}},
member: true
},
...
Other Events - Details
backstage.updatedContentAttributes
- An array of content attributes that have been authorized to send to the data layer.backstage.completed
- Fires after all processing (audience classification, campaign decisioning) has been completed. Synchronous variation rendering is guaranteed to occur before this event fires, however if variations include asynchronous code they may not have completely rendered prior to this event.