Digital Measurement Ads Audit Beacon: Difference between revisions

From Engineering Client Portal

No edit summary
No edit summary
 
Line 5: Line 5:
The Nielsen Server-to-Server (S2S) solution needs audit pings for audience validation. The audit pings are https requests that are fired at least once per session. It primarily contains URL parameters with a randomly generated Session Identifier, Integration Identifier, and a timestamp that is matched to the server-side traffic.
The Nielsen Server-to-Server (S2S) solution needs audit pings for audience validation. The audit pings are https requests that are fired at least once per session. It primarily contains URL parameters with a randomly generated Session Identifier, Integration Identifier, and a timestamp that is matched to the server-side traffic.


The end user device makes a request to Nielsen Collections servers at least once per Session. Sessions are defined as continuous interaction with the application, with gaps that do not exceed contiguous content consumption of 30 minutes or greater. The Audit pings are required to fire only once per Session, ideally at the beginning of the Session or upon first ad exposure. Audit Pings may optionally fire more often, for example: fired upon each ad exposure if preferred.
The end user device makes a request to Nielsen Collections servers at least once per Session. Sessions are defined as continuous interaction with the application, as defined by the Publisher. The Audit pings are executed ideally at the beginning of the Session or upon first ad exposure. Audit Pings may optionally fire more often, for example: fired upon each ad exposure if preferred.


Audit Pings are intended to be as light-weight, generic as possible, and contain no personal identifiers, campaign information, or advertisement metadata. The following two primary technical purposes of the audit ping are:
Audit Pings are intended to be as light-weight, generic as possible, and contain no personal identifiers, campaign information, or advertisement metadata.
 
# to enable Nielsen to make a connection between metered Nielsen panelists and the Census data received via the Nielsen One Ads S2S integration. This ping provides a signal that Nielsen streaming meters and mobile meter devices can intercept the Session IDs
# as a secondary mechanism to monitor the health of the S2S Nielsen One Ads measurement. If Nielsen One Ads S2S measurement fails in some way, Nielsen can detect a disparity between the trends in volume from the Audit pings and Census data. Anomalous detected behavior will prompt Nielsen to investigate. For example: Audit Pings without corresponding Nielsen One Ads S2S measurement or the converse.


== Ping Structure ==
== Ping Structure ==
Line 26: Line 23:
== Audit Ping Implementation Details ==
== Audit Ping Implementation Details ==


* SessionIDs Ideally when the application is initiated, a SessionID is also created, optionally upon first ad exposure
* SessionID is ideally generated when the application is initiated, optionally upon first ad exposure
* Audit Pings will be fired at least every time a SessionID is created
* Audit Pings should be executed at least every time a SessionID is created
* It is permissible for Audit Pings to fire more frequently than once per session (for example, upon each ad exposure, or page change, etc.)
* It is permissible for Audit Pings to fire more frequently than once per session (for example, upon each ad exposure, or page change, etc.)
* It is permissible for SessionIDs to change within a session, so long as the Audit Ping is fired again ensuring that the Nielsen One Ads S2S ImpID parameter reflects the same new SessionID
* It is permissible for SessionIDs to change within a session, so long as the Audit Ping is fired again ensuring that the ImpID parameter reflects the same new SessionID
* For security reasons, downstream servers reject cross-origin HTTP requests with preflight. To ensure that audit ping requests are accepted, allowable Content-Types like "text/plain" in simple GET requests ensure that preflight requests are not invoked, which is the preferred behavior.
* For security reasons, downstream servers reject cross-origin HTTP requests with preflight. To ensure that audit ping requests are accepted, allowable Content-Types like "text/plain" in simple GET requests ensure that preflight requests are not invoked, which is the preferred behavior.


Line 83: Line 80:
</syntaxhighlight>
</syntaxhighlight>


== Nielsen One Ads Ping Implementation Details ==
== Nielsen One Ads Impression Implementation Details ==


For S2S Nielsen One Ads Tags, a new Impression ID parameter specified as "&impid" that exactly matches the SessionID included in the Audit Pings.
A new Impression ID parameter specified as "&impid" that exactly matches the SessionID included in the Audit Pings.


'''Example Nielsen One Ads Ping:'''
'''Example Nielsen One Ads Ping:'''

Latest revision as of 04:47, 20 May 2025

Engineering Portal / Digital / Digital Measurement Ads Audit Beacon


The Nielsen Server-to-Server (S2S) solution needs audit pings for audience validation. The audit pings are https requests that are fired at least once per session. It primarily contains URL parameters with a randomly generated Session Identifier, Integration Identifier, and a timestamp that is matched to the server-side traffic.

The end user device makes a request to Nielsen Collections servers at least once per Session. Sessions are defined as continuous interaction with the application, as defined by the Publisher. The Audit pings are executed ideally at the beginning of the Session or upon first ad exposure. Audit Pings may optionally fire more often, for example: fired upon each ad exposure if preferred.

Audit Pings are intended to be as light-weight, generic as possible, and contain no personal identifiers, campaign information, or advertisement metadata.

Ping Structure

Requests should be executed with the following convention structure:

https://audit.imrworldwide.com/cgi-bin/gn?prd=audit&

(Please note that this URL may require updates in response to changes in the market.)

The Audit Ping will carry all parameters in the matrix later in this document. Under normal operating circumstances, the Nielsen collection system will return the following response codes:

  • 302: A redirect to another Nielsen domain, used for the purpose of generating a URL compatible with Nielsen streaming meters
  • 200: The ping was successfully received, inspect traffic to ensure no CORS error

Audit Ping Implementation Details

  • SessionID is ideally generated when the application is initiated, optionally upon first ad exposure
  • Audit Pings should be executed at least every time a SessionID is created
  • It is permissible for Audit Pings to fire more frequently than once per session (for example, upon each ad exposure, or page change, etc.)
  • It is permissible for SessionIDs to change within a session, so long as the Audit Ping is fired again ensuring that the ImpID parameter reflects the same new SessionID
  • For security reasons, downstream servers reject cross-origin HTTP requests with preflight. To ensure that audit ping requests are accepted, allowable Content-Types like "text/plain" in simple GET requests ensure that preflight requests are not invoked, which is the preferred behavior.
Parameter Description Mandatory? Specified By Format Example
intid Single ID assigned per integration for all audit pings across platforms Yes Nielsen a9ddf15ea054ea415718767ea6
apid Server App ID assigned by Nielsen Only required for content measurement Nielsen Alphanumeric application identifier assigned by Nielsen by platform
sessionid Unique id generated when video player is instantiated Yes Client Format: alphanumeric, Example: 16 char guid
product Indicates which product audit ping content corresponds to Yes Client Format: alphanumeric, Example: “dar”, “dcr”, “dtvr”
createtm Time the ping was fired Yes Client Format: UnixTime “1643858542”

Generic Ping Format:

https://audit.imrworldwide.com/cgi-bin/gn?prd=audit
&intid=<Integration id>&apid=<App id>&sessionid=<Session Id>&product=<dar>&createtm=<>


Audit Ping Example:

https://audit.imrworldwide.com/cgi-bin/gn?prd=audit&intid=a9ddf15ea054ea415718767ea6&apid=FC984EC1-E044-B465-E040-070AAD3173A1&sessionid=2576459933726989&product=dar&createtm=1643858542

Nielsen One Ads Impression Implementation Details

A new Impression ID parameter specified as "&impid" that exactly matches the SessionID included in the Audit Pings.

Example Nielsen One Ads Ping:

https://secure-us.imrworldwide.com/cgi-bin/m?ci=us-201234h&cg=0[...]&impid=2576459933726989&rnd=164403011