Learn how to define the following FreeWheel ad configurations:
Upon setting the Server URL parameter, our service constructs the following GET request in order to request ads for your content:
The query string for the above request is constructed according to the parameters passed to our service as described below.
Ad placement is handled slightly different between live and on-demand streaming.
Toggle ad units by setting the Ad Units parameter (ad.slau) to a comma-separated list of ad unit types. Only ad unit types that are defined within this parameter will be requested.
Example:
The following value will only request mid-roll ads during this playback session of the live stream.
By default, ads will be requested for pre-roll, mid-roll, and post-roll ad units.
This section describes parameters that our service will insert into the GET request sent to the FreeWheel ad server.
Name |
Parameter |
Description |
---|---|---|
Server URL |
ad.serverurl Required |
Defines the base URL to the desired FreeWheel ad decision server. Example: ad.serverurl=http://g1.v.fwmrm.net/ad/p/1?
A default value for this parameter may be defined from within the CMS. Take advantage of this functionality to avoid exposing your FreeWheel custom ID. This parameter takes precedence over the Customer ID parameter (ad.customer_id). |
Location Description (Custom Site Section ID) |
ad.locationDesc Required |
Defines a description for the playback location. Example: ad.locationDesc=web
Learn how to set a default value for this parameter. This parameter takes precedence over the Custom Site Section ID parameter (ad.csid). |
Network ID |
ad.nw Required |
Sets the distributor’s FreeWheel network ID (adRequest@networkId). Example: ad.nw=14611
|
Player Profile |
ad.prof Required |
Sets the player's profile (adRequest@profile). Example: ad.prof=14611:Vod
|
Maximum Pre-Roll Ads |
ad.pre_maxads |
Sets the maximum number of pre-rolls ad units that may be returned by the ad server. |
Minimum Pre-Roll Duration |
ad.pre_mind |
Sets the minimum duration, in seconds, for pre-roll ad units within a live stream. This duration is only used when the duration of the ad unit is unknown. This parameter only supports integers. Example: ad.pre_mind=15
|
Maximum Pre-Roll Duration |
ad.pre_maxd |
Sets the maximum duration, in seconds, for pre-roll ad units within a live stream. This parameter only supports integers. Example: ad.pre_maxd=50
|
Pre-Roll Duration |
ad.predur Required for Live Streaming Only |
Sets the duration, in seconds, of a live stream's pre-roll ad unit. Example: ad.predur=45
|
Duration |
ad.rdur |
Defines a default duration. This duration is only applicable for ad breaks without an explicitly defined duration. Default Value: 240
Example: ad.rdur=120
|
Minimum Mid-Roll Duration |
ad.mind |
Sets the minimum duration, in seconds, for mid-roll ad units within a live stream. This duration is only used when the duration of the ad unit is unknown. This parameter only supports integers. Example: ad.mind=15
Default Value: The default minimum duration is set by the Duration parameter (ad.rdur). If it is not set, then the default duration is determined by the duration passed to the Live Slicer. |
Maximum Mid-Roll Duration |
ad.maxd |
Sets the maximum duration, in seconds, for mid-roll ad units within a live stream. This parameter only supports integers. Example: ad.maxd=50
Default Value: By default, the maximum duration is the duration passed to the Live Slicer. |
Use Live Break Duration |
ad.ulbd |
Sets ad unit duration for on-demand content to the duration defined when the source live stream was sliced. Set this parameter to 1. Example: ad.ulbd=1
|
Mode |
ad.mode |
Overrides the default request mode (adRequest@mode) for ad units. Valid values are: live | ondemand
View Live Streaming syntax.
Syntax: ad.mode=[Pre-Roll Ad Units],[Mid-Roll Ad Units]
If this parameter only defines a single mode, then that mode will be applied to all ad units. Default Value: live
Example: ad.mode=ondemand,live
View On-Demand Streaming syntax.
Syntax: ad.mode=[All Ad Units]
Default Value: ondemand
Example: ad.mode=live
|
Flags |
ad.flags |
Enables one or more flag(s) that define the player's capabilities. This value should be URL encoded. The set of flags that will be enabled varies by syntax.
Please refer to FreeWheel's documentation for more information (e.g., valid flag combinations). Default Value: +slcb+sltp+fbad+qtcb+vicb+emcr
|
Suppress supportsSlotTemplate |
ad.suppress_pre_sltp |
Removes supportsSlotTemplate from the pre-roll ad request. The supportsSlotTemplate sub-element allows the Freewheel ad server to generate slots and deliver ads according to the Commercial Break Pattern settings. |
Advanced Callbacks |
ad.ametr |
Allows FreeWheel to use impressions with advanced callbacks. Set this flag to 1. FreeWheel may not be configured to use impressions with both advanced and quartile callbacks. By default, the Flags parameter includes the Requires Quartile Callback URLs flag (qtcb). Override the default value to enable the Advanced Callback flag instead of the Requires Quartile Callback URLs flag. Example: ad.ametr=1
|
HyLDA |
ad.hylda |
Activates FreeWheel’s HyLDA feature. Set this flag to 1. Use this flag with the Acid flag. Upon enabling these flags, the system will automatically generate: aiid, abid, and abwct. Example: ad.hylda=1
|
Acid |
ad.acid |
Adds Acid as a value in the HyLDA keyword. This parameter is only applicable when the HyLDA flag has been enabled. Example: ad.acid=Acid
|
Default Ad Capabilities |
ad.metr |
Defines the default capabilities for all ads. Set this parameter to an integer that maps bits to capabilities. Please refer to FreeWheel's documentation on the metr parameter for more information. Example: ad.metr=8
Default Value: 7
|
Asset Network ID |
ad.asnw |
Adds a video asset network ID (videoAsset@videoAssetNetworkId) to the FreeWheel GET ad request. Learn how to set a default value for this parameter. Example: ad.asnw=14611k
|
Custom Asset ID |
ad.caid |
Sets the custom asset ID (videoAsset@customId) that will be included with the FreeWheel GET ad request. Syntax:
Default Value: By default, the custom asset ID sent to FreeWheel is determined by the first available value from the following list:
|
Key-Value Pairs |
ad.kv |
Passes or retrieves key-value pair(s) using the FreeWheel GET ad request. By default, use a comma to delimit:
Retrieve a field value by using the "$" macro. For example, ad.kv=genre,$genre will attempt to retrieve the value assigned to the "genre" field for the current asset. Use the Key-Value Separator parameter (ad.kvsep) to define a different delimiter. Example: ad.kv=key_1,value_1,key_2,value_2
|
Key-Value Separator |
ad.kvsep |
Determines the delimiter that must be used when defining key-value pairs through the Key-Value Pairs parameter. Example: ad.kvsep=/
Default Value: ,
|
Site Section Network ID |
ad.ssnw |
Sets the site section network ID (siteSection@siteSectionNetworkId) included with the FreeWheel GET ad request. Example: ad.ssnw=112233
|
Video Asset Fallback ID |
ad.afid |
Sets the video asset fallback ID (videoAsset@fallbackId) included with the FreeWheel GET ad request. This ID is used when an ad request's video asset ID is not recognized. Example: ad.afid=AssetFallBackId
|
Visitor Custom ID |
ad.vcid |
Sets the visitor's custom ID included with the FreeWheel GET ad request. This ID is the equivalent to the visitor/@customId attribute in the XML request. Example: ad.vcid=CustomVisitorID
Learn how to set a default value for this parameter. This parameter takes precedence over the End-User ID parameter (ad.euid). |
Site Section Fallback ID |
ad.sfid |
Sets the site section fallback ID included with the FreeWheel GET ad request. This ID is used when an ad request's site section ID is not recognized. Example: ad.sfid=global
|
Pre-Roll Ad Unit |
ad.preroll |
Requests a pre-roll ad unit. Set this parameter to 1. Example: ad.preroll=1
Default Value: 0
|
Ad Units |
ad.slau |
Determines whether pre-roll, mid-roll, and post-roll ad units will be requested from FreeWheel. Valid values are:
View Live Streaming usage information.
Set this parameter to a comma-separated list of the desired types of ad units. Syntax: ad.slau=[Pre-Roll Ad Units],[Mid-Roll Ad Units],[Post-Roll Ad Units]
Use this parameter to:
Default Value: By default, the type of ad unit that is requested is determined by its position within the live stream. View On-Demand Streaming usage information.
By default, pre-roll, mid-roll, and post-roll ad units are requested from FreeWheel. |
Asset Duration |
ad.vdur |
Overrides an asset's duration (videoAsset@duration). Example: ad.vdur=3600
Default Value: By default, this duration is determined by the CMS asset. |
Tag (FreeWheel Ad Request) |
ad.tag |
Sets a FreeWheel GET ad request URL that will be used instead of a POST Smart XML request. Example: ad.tag=http://demo.v.fwmrm.net/ad/g/1?flag=+emcr+slcb+sltp&nw=96749&prof=global-as3&csid=CBPTestSite.02&caid=[CUSTOM_ASSET_ID]&vdur=[VIDEO_DURATION]&resp=xml;module=DemoPlayer&feature=simpleAds;
|
Primary Content Type |
ad.prct |
Defines a global primary content type for all non-temporal, user-generated ad units. Override this global value for a specific ad unit by assigning it a primary content type. Example: ad.prct=text/html_lit_js_wc_nw
Default Value: text/html_lit_js_wc_nw
|
Client IP Address |
ad.vip |
Overrides the client's IP address that will be included with the FreeWheel GET ad request. This parameter is typically used for testing. Example: ad.vip=192.168.1.1
Default Value: The IP address of the device that requested the playback of your content. |
Client Referrer |
ad._fw_h_referer |
Overrides the Referer header value that will be included with the FreeWheel GET ad request. This value should be URL encoded. Example: ad._fw_h_referer=http://www.sampledomain.com
Default Value: By default, the value of the Referer header included with the playback request will be included with the FreeWheel GET ad request. |
Client User Agent |
ad._fw_h_user_agent |
Overrides the value of the User-Agent header that will be included with the FreeWheel GET ad request. This value should be URL encoded. Example: Default Value: By default, the playback request's User-Agent header value will be included with the FreeWheel GET ad request. |
Customer ID |
ad.customer_id Required when Server URL is undefined. |
The Server URL parameter (ad.serverurl) takes precedence over this parameter. This parameter should not be specified if you plan on passing the Server URL parameter. Sets the fourth-level domain, as indicated by [customerId] below, in the FreeWheel GET ad request. FreeWheel GET ad request: http://[customerId].v.fwmrm.net/ad/g/1
Example: ad.customer_id=demo
This example configures the FreeWheel GET ad request URL to: http://demo.v.fwmrm.net/ad/g/1. |
Custom Site Section ID |
ad.csid Required when Location Description is undefined. |
The Location Description parameter (ad.locationDesc) takes precedence over this parameter. This parameter should not be specified if you plan on passing the Location Description parameter. Defines a description for the playback location. Example: ad.csid=web
|
End-User ID |
ad.euid |
The Visitor Custom ID parameter (ad.vcid) takes precedence over this parameter. This parameter should not be specified if you plan on passing the Visitor Custom ID parameter. Sets the custom visitor ID included with the FreeWheel GET ad request. This ID is the equivalent to the visitor/@customId attribute in the XML request. Example: ad.euid=CustomVisitorID
|
Skip Preroll | skippreroll |
If the ad.preroll=1 URL parameter is specified in the Uplynk playback URL, the URL parameter skippreroll=1 forces Uplynk to look ahead in the stream and skip the pre-roll ad if the mid-roll is within 60 seconds of the stream start. skippreroll=1
|
The parameter to enable FreeWheel's Video View by Callback feature differs depending on which version of the ping API will be used. This feature requires that you use the Preplay and Ping APIs.
This feature also requires that you use the Smart XML response type as Video Views are not supported by VAST.
An ad response sent by FreeWheel may include creative parameters, such as the ones listed below:
Creative parameters provided with an ad response are automatically included in preplay and ping responses to the client. The client may then leverage these parameters for use with a custom integration (e.g., Integration of FreeWheel with Moat Analytics).
An ad configuration allows you to define default values for use with third-party ad servers (e.g., FreeWheel).
Define an ad configuration by performing the following steps: