Skip to main content

Brightcove

Brightcove

DirectionBidirectional
Environment
Web
Capability
Event CollectionCohort Activation
SDK RequiredYes
Product(s) RequiredCore Platform

Brightcove allows publishers to manage and monetize video content with robust ad insertion and analytics tools.

Overview

Brightcove is a high-performance, cross-platform HTML5-first video player that loads quickly, delivers high-quality video across desktop and mobile platforms. Our integration with Brightcove enables video event collection and targeting. This integration is both a Source and Destination:
  • Source: Permutive is able to track video events from the Brightcove player.
  • Destination: Permutive is able to activate your cohorts for video ads served in the player.
Use cases include:
  • Track video events in Permutive, for insights, advanced segmentation or modeling.
  • Add Permutive cohorts to your Google Ad Manager (GAM) ad requests so that they can be used for decisioning and targeting in realtime.

Environment Compatibility

EnvironmentSupportedNotes
WebYesTargeting supported for ads served via GAM only
iOSNoNot supported
AndroidNoNot supported
CTVNoNot supported
API DirectNoNot supported

Prerequisites

  • Public API key: This can be found in the Permutive dashboard, in your project settings. We recommend provisioning a new one, by clicking Add Key and choosing Public.
  • Brightcove Video Player: You should already have a Brightcove video player installed on your site. You must also have access to the Brightcove Cloud Studio dashboard, where you can configure your player.

Setup

1

Enable in Permutive Dashboard

You must enable the Brightcove Video Player integration in the Permutive Dashboard, if this has not already be done. In the Permutive dashboard, navigate to your workspace’s integrations page. Click Add Integration and select Brightcove Video Player. There is nothing to configure in the Permutive Dashboard for this integration.
2

Install the Player Plugin

The Permutive plugin for Brightcove can be installed into your player using the Brightcove Cloud Studio dashboard. The following steps must be performed for every player where you want Permutive enabled:
3

Configure Video Ad Targeting

You can now configure the player to make Permutive cohorts available for targeting video ads served in your the player via the GAM ad server.
Targeting for pre-roll ads is only supported when using the “on play” Brightcove Request Ads setting. If “on load” is used, Permutive cohorts will not be included on the ad request.
4

Verify Setup

In the Permutive Dashboard, navigate to your events page. Having completed the above steps, plugin installation is now complete. You should start seeing video event data appear in the Permutive Dashboard.For your cohorts with a GAM activation configured, you should now see these cohorts available for targeting on video ad requests from the player.

Data Types

With your Brightcove integration setup, you’ll see the following additional event types collected in Permutive:
Tracks each time a video is played.
play_id
UUID
Unique ID representing this video engagement.
auto_start
boolean
Indicates whether the player auto started.
video.video_id
string
Unique ID for this item of video content.
video.name
string
Name (title) of the video.
video.description
string
More detailed description of the video.
video.tags
list[string]
List of video tags (categories).
video.duration
number
The video duration, in seconds.
slot.watch_count
string
Number of times the user has watched this video.
video.published_date
datetime
Datetime for when the video content was first published.
Tracks progress of a video play, as a percentage watched.
play_id
UUID
Unique ID representing this video engagement.
progress
decimal
Percentage of the video content watched so far.
seeked
boolean
Indicates whether the user has seeked through the video content.
video.video_id
string
Unique ID for this item of video content.
video.name
string
Name (title) of the video.
video.description
string
More detailed description of the video.
video.tags
list[string]
List of video tags (categories).
video.duration
number
The video duration, in seconds.
slot.watch_count
string
Number of times the user has watched this video.
video.published_date
datetime
Datetime for when the video content was first published.
Tracks additional events emitted by the player, such as when a user enters full screen mode or presses pause.
play_id
UUID
Unique ID representing this video engagement.
event
string
Name of the additional event that was fired by the player (e.g. PressedPause, ResumedPlay)
video.video_id
string
Unique ID for this item of video content.
video.name
string
Name (title) of the video.
video.description
string
More detailed description of the video.
video.tags
list[string]
List of video tags (categories).
video.duration
number
The video duration, in seconds.
slot.watch_count
string
Number of times the user has watched this video.
video.published_date
datetime
Datetime for when the video content was first published.
Tracks the first time a video loads on the page.
play_id
UUID
Unique ID representing this video engagement.
auto_start
boolean
Indicates whether the player auto started.
video.video_id
string
Unique ID for this item of video content.
video.name
string
Name (title) of the video.
video.description
string
More detailed description of the video.
video.tags
list[string]
List of video tags (categories).
video.duration
number
The video duration, in seconds.
slot.watch_count
string
Number of times the user has watched this video.
video.published_date
datetime
Datetime for when the video content was first published.
Tracks when a video ad is played, includes all ad information available from IMA.
play_id
UUID
Unique ID representing this video engagement.
ad.ad_id
string
The ID of the ad, or the empty string if this information is unavailable.
ad.ad_system
string
The source ad server of the ad, or the empty string if this information is unavailable.
ad.creative_id
string
The ID of the selected creative for the ad, or the empty string if this information is unavailable.
ad.deal_id
string
Returns the first deal ID present in the wrapper chain for the current ad, starting from the top. Returns the empty string if unavailable.
ad.advertiser_name
string
The advertiser name, or the empty string if this information is unavailable.
ad.universal_ad_id_registry
string
The registry associated with cataloging the UniversalAdId of the selected creative for the ad.
ad.universal_ad_id
string
The UniversalAdId of the selected creative for the ad, or “unknown” if unavailable.
ad.title
string
Returns the title of this ad from the VAST response.
ad.description
string
Returns the description of this ad from the VAST response.
ad.duration
string
Returns the duration of the selected creative, or -1 for non-linear creatives.
ad.min_suggested_duration
string
Returns the minimum suggested duration in seconds that the nonlinear creative should be displayed. Returns -2 if the minimum suggested duration is unknown. For linear creative it returns the entire duration of the ad.
video.video_id
string
Unique ID for this item of video content.
video.name
string
Name (title) of the video.
video.description
string
More detailed description of the video.
video.tags
list[string]
List of video tags (categories).
video.duration
number
The video duration, in seconds.
slot.watch_count
string
Number of times the user has watched this video.
video.published_date
datetime
Datetime for when the video content was first published.
Tracks progress of a video ad play, as a percentage watched.
play_id
UUID
Unique ID representing this video engagement.
progress
decimal
Percentage of the video ad content watched so far.
ad.ad_id
string
The ID of the ad, or the empty string if this information is unavailable.
ad.ad_system
string
The source ad server of the ad, or the empty string if this information is unavailable.
ad.creative_id
string
The ID of the selected creative for the ad, or the empty string if this information is unavailable.
ad.deal_id
string
Returns the first deal ID present in the wrapper chain for the current ad, starting from the top. Returns the empty string if unavailable.
ad.advertiser_name
string
The advertiser name, or the empty string if this information is unavailable.
ad.universal_ad_id_registry
string
The registry associated with cataloging the UniversalAdId of the selected creative for the ad.
ad.universal_ad_id
string
The UniversalAdId of the selected creative for the ad, or “unknown” if unavailable.
ad.title
string
Returns the title of this ad from the VAST response.
ad.description
string
Returns the description of this ad from the VAST response.
ad.duration
string
Returns the duration of the selected creative, or -1 for non-linear creatives.
ad.min_suggested_duration
string
Returns the minimum suggested duration in seconds that the nonlinear creative should be displayed. Returns -2 if the minimum suggested duration is unknown. For linear creative it returns the entire duration of the ad.
video.video_id
string
Unique ID for this item of video content.
video.name
string
Name (title) of the video.
video.description
string
More detailed description of the video.
video.tags
list[string]
List of video tags (categories).
video.duration
number
The video duration, in seconds.
slot.watch_count
string
Number of times the user has watched this video.
video.published_date
datetime
Datetime for when the video content was first published.
Tracks additional events emitted by the player whilst an ad is being watched, such as when a user enters full screen mode, pressed pause or resumed play.
play_id
UUID
Unique ID representing this video engagement.
event
string
Name of the additional event that was fired by the player (e.g. PressedPause, ResumedPlay)
ad.ad_id
string
The ID of the ad, or the empty string if this information is unavailable.
ad.ad_system
string
The source ad server of the ad, or the empty string if this information is unavailable.
ad.creative_id
string
The ID of the selected creative for the ad, or the empty string if this information is unavailable.
ad.deal_id
string
Returns the first deal ID present in the wrapper chain for the current ad, starting from the top. Returns the empty string if unavailable.
ad.advertiser_name
string
The advertiser name, or the empty string if this information is unavailable.
ad.universal_ad_id_registry
string
The registry associated with cataloging the UniversalAdId of the selected creative for the ad.
ad.universal_ad_id
string
The UniversalAdId of the selected creative for the ad, or “unknown” if unavailable.
ad.title
string
Returns the title of this ad from the VAST response.
ad.description
string
Returns the description of this ad from the VAST response.
ad.duration
string
Returns the duration of the selected creative, or -1 for non-linear creatives.
ad.min_suggested_duration
string
Returns the minimum suggested duration in seconds that the nonlinear creative should be displayed. Returns -2 if the minimum suggested duration is unknown. For linear creative it returns the entire duration of the ad.
video.video_id
string
Unique ID for this item of video content.
video.name
string
Name (title) of the video.
video.description
string
More detailed description of the video.
video.tags
list[string]
List of video tags (categories).
video.duration
number
The video duration, in seconds.
slot.watch_count
string
Number of times the user has watched this video.
video.published_date
datetime
Datetime for when the video content was first published.
Tracks when a user clicks on a video ad.
play_id
UUID
Unique ID representing this video engagement.
ad.ad_id
string
The ID of the ad, or the empty string if this information is unavailable.
ad.ad_system
string
The source ad server of the ad, or the empty string if this information is unavailable.
ad.creative_id
string
The ID of the selected creative for the ad, or the empty string if this information is unavailable.
ad.deal_id
string
Returns the first deal ID present in the wrapper chain for the current ad, starting from the top. Returns the empty string if unavailable.
ad.advertiser_name
string
The advertiser name, or the empty string if this information is unavailable.
ad.universal_ad_id_registry
string
The registry associated with cataloging the UniversalAdId of the selected creative for the ad.
ad.universal_ad_id
string
The UniversalAdId of the selected creative for the ad, or “unknown” if unavailable.
ad.title
string
Returns the title of this ad from the VAST response.
ad.description
string
Returns the description of this ad from the VAST response.
ad.duration
string
Returns the duration of the selected creative, or -1 for non-linear creatives.
ad.min_suggested_duration
string
Returns the minimum suggested duration in seconds that the nonlinear creative should be displayed. Returns -2 if the minimum suggested duration is unknown. For linear creative it returns the entire duration of the ad.
video.video_id
string
Unique ID for this item of video content.
video.name
string
Name (title) of the video.
video.description
string
More detailed description of the video.
video.tags
list[string]
List of video tags (categories).
video.duration
number
The video duration, in seconds.
slot.watch_count
string
Number of times the user has watched this video.
video.published_date
datetime
Datetime for when the video content was first published.

Troubleshooting

Targeting for pre-roll ads is only supported when using the “on play” Brightcove Request Ads setting. If “on load” is used, Permutive targeting will not be included on the ad request. Check your settings in Brightcove Cloud Studio.

Changelog

November 2019

  • Improved tracking of VideoPlay, to include details of video duration and whether auto start was used.
For detailed changelog information, visit our Changelog.