Skip to end of metadata
Go to start of metadata

What is an ad tag?

An ad tag is a snippet of code we generate for you in our publisher portal.

An ad tag serves two functions. First, it calls PulsePoint for content. When a page containing an ad tag loads, the ad tag reaches out to PulsePoint and tells our system that it needs a piece of content to display to the visitor.

Second, it's a unique label for a particular ad type in a particular domain with a particular ask price. When we receive a call from an ad tag, we check our system to see what type of ad it's associated with and what price you've set for it. This tells us the dimensions of the ad space assigned to the tag, the type of media you want to place in the tag's ad space, and the ask price by which we need to evaluate our first set of bids.

PulsePoint generates two types of display tags: standard (default) and SmartFile.

If you...You should use a...

Do not display ads via iFrames

Standard tag

Do display ads via iFrames

SmartFile tag

Creating and modifying ad tags

Create an Ad Tag

Modify an Ad Tag

Log into the publisher portal
Select the New Ad Tag Group tab
Enter a name for the new ad group
Set the name, size, and ask price of your new tag
Hit Next
Set a backup tag
Hit Next

Your ad tag will appear

Log into the publisher portal
Select the Manager tab
Expand an ad tag group
Click on an ad tag
Click on Get Ad Tag Code (at the bottom of the ad tag box)

Types of ad tags

Standard

Standard ad tags are what we generate by default. On their own, without modification, they're appropriate for publishers who do not display ads via iFrames.

Standard PulsePoint ad tags look something like this:

<script src="http://tag.contextweb.com/TagPublish/getjs.aspx?action=VIEWAD&cwrun=200&cwadformat=120X600&cwpid=553443&cwwidth=120&cwheight=600&cwpnet=1&cwtagid=225251">>
You'll notice that "PulsePoint" appears nowhere in the ad tag; instead, the tag points to something called "contextweb.com." This is normal. ContextWeb was an earlier incarnation of PulsePoint. PulsePoint's RTB platform is built on technology we developed when we did business as ContextWeb. As a result, some of our servers still operate in a ContextWeb domain, including our ad-tag servers.

SmartFile

SmartFile tags are slightly modified ad tags that point to a special piece of code we've written. You should use SmartFile tags if do display ads via iFrames. (Note that you'll need access to the site domain in order to implement SmartFile tags).

SmartFile tags are designed to solve the problem of contextualizing iFrame impressions. If PulsePoint is trapped or buried beneath too many iFrames in your ad-serving waterfall, we won’t be able to contextualize your impressions. If we can’t contextualize your impressions, they’ll be less valuable to buyers.

SmartFile tags make your iFrame impressions visible to our contextualization engine, no matter how deeply they're buried. How? They contain a few extra lines that point to a piece of code we've written - the code itself is the SmartFile. You download the SmartFile, save it in your domain directory, and edit the SmartFile tag to indicate the folder in which the code is saved.

Download a SmartFile. (Right-click and select Save Link As.)

 Implementing SmartFile Tags

Place the SmartFile in a publicly accessible folder under your root domain. For example, if your domain is mydomain.com, you'll place the SmartFile in mydomain.com/subfolder/. Note that if you call PulsePoint Ad Tags from more than one sub-domain, you'll need to place the SmartFile in a folder under each sub-domain.

Open a new tab or browser window and navigate to the page containing the SmartFile to make sure it doesn't throw an HTTP 404 error.

Once you've verified that the page loads without error, log into the publisher portal and either create a new ad tag or modify an existing ad tag.

When you create or modify an ad tag, you'll see a link that reads "Enhance." Click on the link. A dialog will open. In the dialog, you'll see two options: SmartFile and AutoPass. Select SmartFile. A handful of lines will be added to your tag, like so:

<script>
var cwfl = "http://[CW SmartFile location]";
</script>
<script  src="http://tag.contextweb.com/TagPublish/getjs.aspx?
...
</script>

Modify your new tag by adding the location where you saved your SmartFile. For example, if you saved the SmartFile in http://www.mydomain.com/ifrm/cwfl.htm, your tag should look like:

<script>
var cwfl = "http://www.mydomain.com/ifrm/cwfl.htm";
</script>
<script  src="http://tag.contextweb.com/TagPublish/getjs.aspx?
...
</script>

After you've modified your tag, use a test page to make sure ads are still being served on your site. Repeat the preceding steps for each domain and sub-domain (e.g., sub1.domain.com, sub2.domain.com) on which you're displaying ads.

Video

VAST video requests are done via a traditional HTTP request with several request parameter values representing data required to find an ad and construct a VAST response.

The VAST video endpoint is at:

A sample VAST video request (non-functional):

http://tag.contextweb.com/TagPublish/getvideo.aspx?rq=1&vxt=14|219|224&dw=1233&vdur=15&vmbr=3000&cads=0&vpaid=0&ct=112373&tagver=1&epid=55&cxy=-1%2C-1&vasp=4:3&esid=8&cp=500000&cwu=http%253A%252F%252Freddit.net%252Fr%252Fprogramming%252Ftop&if=6&dxy=-1%2C-1&cwtagid=101925&vmt=video/x-flv&pxy=-1%2C-1&vid=12345.123&cf=120X600

VAST responses either contain a VAST wrapper document or an empty VAST document when no ad could be found.

The table below summarizes the request parameters a VAST-compliant player is expected to pass to the VAST video endpoint to receive an ad.

Parameter

DescriptionNotes

ct

Required

Sample Value(s): 55555

Numeric publisher tag id. Can be obtained from list of tags on publisher portal

cp

Required

Sample Value(s): 101045

Numeric publisher id. Can be obtained from publisher portal

cf

Required

Sample Value(s): 120X600,160X600,300X250,728X90

The format of the publisher tag id referenced by the "ct" parameter above. This must match the publisher tag id parameter above

dxy

Not Required

Sample Value(s): 1024,768

Comma separated page size

cxy

Not Required

Sample Value(s): 1024,768

Comma separated client window size

pxy

Not Required

Sample Value(s): 12,33

Comma separated position of ad on page. When making a request for an in-video overlay or linear ad, this should be the position of the player. When making a request for a companion ad, this should be the position of the companion

cwu

Required

Sample Value(s): http://www.cnn.com/news/video

URL the player is embedded in (not the URL of the media being played)

cwr

Required*

Sample Value(s): http://google.com/video?q=turtles

Referrer URL for the page that the video player is embedded in

rq

Not Required

Sample Value(s): 0

number identifying the number of times that this specific URL has been requested by the player on the page - used to avoid looping in case of passback loops. VAST players should often handle this issue internally so this parameter should seldom be used.

cn

Not Required

Sample Value(s): 1

the ID of the network used to serve the ad - for the foreseeable future should always be set to 1. At the moment supported networks are 1 for contextweb/pulsepoint 3 for DRTS

if

Required

Sample Value(s): 6,7,8,9

Numeric ID of the corresponding video ad type - 6=vpl,7=vplnw,8=vpo,9=vponw -
  • "vpl" indicates the request was made for a linear video ad, by a VAST 2.0 compliant video player, and expects a VAST response. VAST-wrappers are allowed
  • "vplnw" indicates the request was made for a linear video ad, by a VAST 2.0 compliant video player, and expects a VAST response. VAST-wrappers are *not* allowed
  • "vpo indicates the request was made for a overlay video ad, by a VAST 2.0 compliant video player, and expects a VAST response. VAST-wrappers are allowed
  • "vponw" indicates the request was made for a overlay video ad, by a VAST 2.0 compliant video player, and expects a VAST response. VAST-wrappers are *not* allowed

cw

Not Required

Sample Value(s): 300

If applicable, width of the companion ad. Note this must be specified with 'ch'.

ch

Not Required

Sample Value(s): 250

If applicable, height of the companion ad. Note this must be specified with 'cw'.

cwod

Not Required

Sample Value(s): XYZ

optional debug data

dw

Required

Sample Value(s): 1024

width of the player (normal state) in pixels

tl

Not Required

Sample Value(s): 2

The index of the player on a page that contains multiple players; players that appear first (or above) should have lower indicies

ln

Required*

Sample Value(s): en-us

Language code for the language of the page that the player is embedded in. This must conform to the IETF's BCP 47, "Tags for Identifying Languages." For example, "en-US".

tz

Not Required

Sample Value(s): 230

User's Time Zone offset from GMT in minutes

esid

Not Required

Sample Value(s): 12345

Third party tag id - used for Private Exchanges

epid

Not Required

Sample Value(s): 12345

Third party publisher id - used for Private Exchanges

vid

Required*

Sample Value(s): 12345.1

Video asset id

vxt

Not Required

Sample Value(s): 14|219|224, 6|0|0, 25|315|0, 0|0|0

IAB contextual category-compliant ID Path (hierarchical) for in-stream video content (not page)

vdur

Required

Sample Value(s): 45

Integer representing the maximum duration in seconds of linear video ads that can be served for this impression

vpaid

Required*

Sample Value(s): 0,1

Flag indicating whether video player supports VPAID 0 for no, 1 for yes

vmbr

Not Required

Defaults to 3000

Sample Value(s): 256

Integer representing the maximum allowed bitrate of linear video ads that can be served for this impression

vmt

Required*

Sample Value(s): video/x-flv,video/mp4

Comma separated list of MIME types supported by the player for linear video ads

vasp

Required*

Sample Value(s): 4:3,16:9

Comma separated list of "A:B" format aspect ratios supported by the player for linear video ads

vsdelay

Required*

Sample Value(s): -1,-2,120

An integer value representing the start time of the ad in seconds. Use 0 for pre-roll ads, -1 for generic mid-roll ads (if start time in seconds can not be computed or is not available) and -2 for generic post-roll ads

These parameters have historically been required by demand partners in purchasing inventory. Failing to implement will result in zero or very low fill.