- Resource: DaiSession
- CreationContext
- LinearInfo
- VodInfo
- HttpRequest
- StitchingType
- ReportingType
- Creative
- CreativeIdType
- VastInfo
- AdSelection
- AdResponseType
- AdRequest
- AdPod
- BreakType
- PrefetchStageType
- AdBreak
- LinearBreak
- VodBreak
- TrackingPing
- Finding
- PodFinding
- PodFindingType
- SlateFinding
- SlateFindingType
- AdBreakFinding
- AdBreakFindingType
- TrackingPingFinding
- TrackingPingFindingType
- CreativeFinding
- CreativeFindingType
- AdRequestFinding
- AdRequestFindingType
- SessionFindingSeverity
- Methods
Resource: DaiSession
Representation of an individual Dynamic Ad Insertion (DAI) session watching a LiveStream resource or VOD Content resource. Use the Stream Activity Monitor (SAM) on the Google Ad Manager UI to look up this session. For details, see Locate a DAI session ID or debug key.
| JSON representation |
|---|
{ "name": string, "creationContext": { object ( |
| Fields | |
|---|---|
name |
Identifier. The resource name of the |
creationContext |
Output only. Context data to create the DAI session. |
slate |
Output only. Slate creative to use in the DAI session for unfilled ad durations. |
adSelections |
Output only. The ad requests, ad responses and nested ads in the DAI session. |
adPods |
Output only. All decisioned ad pods for this session, disregarding serving status. Keyed by a unique ID to reference an ad pod from a different submessage. |
adBreaks |
Output only. All DAI ad breaks for this session. Contains information such as ad duration, slate duration, and various ad statuses. Keyed by a unique ID to reference an ad break from a different submessage. |
findings[] |
Output only. Information about errors or notable discoveries that occurred during a session. |
sessionDuration |
Output only. The duration of the DAI session, calculated as the difference between the timestamp of DAI's latest recorded event and the timestamp of the session create request. A duration in seconds with up to nine fractional digits, ending with ' |
CreationContext
Context data to create the DAI session.
| JSON representation |
|---|
{ "streamCreateRequest": { object ( |
| Fields | |
|---|---|
streamCreateRequest |
Output only. The HTTP request creating the DAI session. For details, see Linear API, VOD API, pod serving live API and pod serving VOD API. |
Information about the LiveStream resource or VOD Content resource creating the DAI session. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response: |
|
linearInfo |
Output only. The |
vodInfo |
Output only. The |
| End of mutually exclusive fields. | |
debugKey |
Output only. The string the |
contentTitle |
Output only. The |
sessionTitle |
Output only. The string the |
stitchingType |
Output only. Whether the stream request is for Full-service DAI or Pod serving. |
reportingType |
Output only. Whether ad tracking URLs are pinged on the client side or server side. If IMA SDK is used to make the stream requests, IMA SDK pings the ad tracking URLs on the client side. For server-side beaconing, see Integrate with DAI using server-side beaconing (SSB). |
interstitialEnabled |
Output only. Whether the parameter |
LinearInfo
The LiveStream resource in the stream request that creates the DAI session.
| JSON representation |
|---|
{ "eventStartTime": string, "eventEndTime": string, "liveStream": string, "assetKey": string, "customAssetKey": string, "prefetchEnabled": boolean, "podTrimmingEnabled": boolean, "podTrimTolerance": string } |
| Fields | |
|---|---|
eventStartTime |
The Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
eventEndTime |
Output only. The Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
liveStream |
Output only. The |
assetKey |
Output only. The |
customAssetKey |
Output only. The |
prefetchEnabled |
Output only. Whether the |
podTrimmingEnabled |
Output only. Whether ad pod trimming is enabled for the DAI session. |
podTrimTolerance |
Optional. The maximum duration allowed to be trimmed from an ad pod before whole ads are dropped. This field is only populated when pod trimming is enabled. A duration in seconds with up to nine fractional digits, ending with ' |
VodInfo
The VOD Content resource in the stream request that creates the DAI session.
| JSON representation |
|---|
{ "cuePoints": [ string ], "contentDuration": string, "content": string, "cmsId": string, "vid": string } |
| Fields | |
|---|---|
cuePoints[] |
Output only. The cue points detected in the ingested VOD content manifest. Stored in milliseconds starting from the beginning of the content. |
contentDuration |
Output only. The VOD A duration in seconds with up to nine fractional digits, ending with ' |
content |
|
cmsId |
Output only. The identifier of the content source from which Google Ad Manager ingested the |
vid |
Output only. The video ID of the |
HttpRequest
An HTTP request made by DAI.
| JSON representation |
|---|
{ "requestTime": string, "latency": string, "url": string, "userAgent": string, "responseCode": integer, "responseBody": string } |
| Fields | |
|---|---|
requestTime |
Output only. The time when the request was made. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
latency |
Output only. How long the request took to complete. A duration in seconds with up to nine fractional digits, ending with ' |
url |
Output only. The URL sent in the request. |
userAgent |
Output only. The user agent sent with the request. |
responseCode |
Output only. The HTTP response code. |
responseBody |
Output only. The full response body. |
StitchingType
Indicates how ads are stitched into the session.
| Enums | |
|---|---|
STITCHING_TYPE_UNSPECIFIED |
Default value. |
STITCHED |
DAI stitches ad pods into the session. |
POD_SERVING |
Ready to stitch ad pods are provided by DAI and stitched by the publisher. |
ReportingType
Indicates how ad tracking URLs are reported for the session.
| Enums | |
|---|---|
REPORTING_TYPE_UNSPECIFIED |
Default value. |
CLIENT |
Tracking URLs are pinged on client side. |
SERVER |
Tracking URLs are pinged on server side. |
CLIENT_INITIATED_SERVER_TRIGGERED |
Tracking URLs are pinged on server side upon receiving ad media verification requests from client. |
Creative
Information about a single creative.
| JSON representation |
|---|
{ "duration": string, "vastInfos": [ { object ( |
| Fields | |
|---|---|
duration |
Output only. Duration of the creative. A duration in seconds with up to nine fractional digits, ending with ' |
vastInfos[] |
Output only. The VAST infos that resulted in this creative. |
idType |
Output only. The type of ID that is used to identify this creative. |
idValue |
Output only. The value for the given ID type. |
adSystem |
Output only. The ad system that provided this creative. |
podSequence |
Output only. The index at which this creative appeared in the ad pod. |
adBuffet |
Output only. Whether this creative was from ad buffet. |
CreativeIdType
The ID types in a VAST response to uniquely identify a creative.
| Enums | |
|---|---|
CREATIVE_ID_TYPE_UNSPECIFIED |
Default value. |
AD_ID |
An ad server-defined ID string for the ad. |
CREATIVE_ID |
An ad server-defined ID for the creative. |
CREATIVE_AD_ID |
Identifies the ad with which the creative is served. This is an optional attribute of Creative element in the VAST specification. |
MEDIA_URI_HASH |
A media URI was used to generate a hash value, hopefully unique to this creative. |
UNIVERSAL_AD_ID |
Universal Ad ID of the creative as defined in the VAST 4.0 spec: http://www.iab.com/wp-content/uploads/2016/04/VAST4.0_Updated_April_2016.pdf Section 3.7.1 The ID string format is " |
MEDIA_URI_PATH |
ID value is the path of the URL of the highest bitrate mediafile found in the response. |
CREATIVE_AD_ID_WITH_FALLBACK |
ID value is the VAST/Ad/Inline/Creative adId attribute. If absent, the value will fallback to the VAST/Ad/Inline/Creative id attribute. If that is also absent, the value will again fallback to the VAST/Ad id attribute. |
MEDIA_URI |
ID value is the URL of the highest bitrate mediafile found in the response. |
CANONICALIZED_MEDIA_URI |
ID value is a projection of the URL of the highest bitrate mediafile found in the response. |
GOOGLE_VIDEO_REGISTRY_ID |
ID value is the Google Video Registry ID. |
VastInfo
Details about a single VAST info.
| JSON representation |
|---|
{ "adSystem": string, "adSystemVersion": string, "adTitle": string, "description": string, "creativeId": string } |
| Fields | |
|---|---|
adSystem |
Output only. Value of VAST/Ad/InLine/AdSystem. |
adSystemVersion |
Output only. Version attribute from VAST/Ad/InLine/AdSystem. |
adTitle |
Output only. Value of VAST/Ad/InLine/AdTitle. |
description |
Output only. Value of VAST/Ad/InLine/Description. |
creativeId |
Output only. The |
AdSelection
The ad requests, ad response, and nested ads in the DAI session.
| JSON representation |
|---|
{ "adRequest": { object ( |
| Fields | |
|---|---|
adRequest |
Output only. Top-level ad request. |
type |
Output only. Response type of the parent ad request. |
AdResponseType
The type of the ad response.
| Enums | |
|---|---|
AD_RESPONSE_TYPE_UNSPECIFIED |
Default value. |
VAST |
The ad response is VAST (Video Ad Serving Template). |
VMAP |
The ad response is VMAP (Video Multiple Ad Playlist). |
AdRequest
Top-level ad request.
| JSON representation |
|---|
{ "httpRequest": { object ( |
| Fields | |
|---|---|
httpRequest |
Output only. The HTTP request of the ad request. |
childRequests[] |
Output only. Ad requests made to follow redirects or unwrap a previous VMAP or VAST wrapper ad response. |
adRequestKey |
Output only. Ad request ID. |
adTag |
Output only. The ad request URL. |
effectiveAdRequestUrl |
Output only. The effective ad request URL header value on the ad response. This value is only populated for VMAP ad requests when video playlist internal redirects are enabled. For details, see Internal redirect to Google Campaign Manager 360. |
AdPod
Information about a single decisioned ad pod in this session. This message pertains to the smallest unit of ads to insert in a session, and might be a pod fragment.
| JSON representation |
|---|
{ "creatives": { string: { object ( |
| Fields | |
|---|---|
creatives |
Output only. The creatives in this ad pod. Keyed by a unique ID used to reference this creative from a different submessage. |
requestedBreakType |
Output only. Type of ad break this ad pod was decisioned for. |
adRequestKey |
Output only. Ad request ID that links to the ad request that resulted in this ad pod. |
prefetchStage |
Output only. Indicates the prefetch stage for this ad pod. If prefetch is not enabled this stage is set to the |
adBreakId |
Output only. Publisher-provided or DAI-generated break ID for the Ad break API or pod serving API. |
label |
Output only. Descriptive label for this ad pod, used to distinguish ad pods from one another in this session. e.g. "midroll-1", "2". |
BreakType
Different break types that DAI supports for ad insertion.
| Enums | |
|---|---|
BREAK_TYPE_UNSPECIFIED |
Default value. |
PREROLL |
Before content. |
MIDROLL |
In the middle of content. |
POSTROLL |
After content. |
AUXILIARY |
Non-linear auxiliary ads run concurrently with the content (e.g., Pause Ads). |
PrefetchStageType
Indicates the prefetch stage for an ad pod.
| Enums | |
|---|---|
PREFETCH_STAGE_TYPE_UNSPECIFIED |
Default value. |
ONE |
Prefetch stage 1. |
TWO |
Prefetch stage 2. |
DISABLED |
Prefetch is disabled for this ad pod. |
AdBreak
Information about an ad break in this session. Includes statuses such as ad and slate durations.
| JSON representation |
|---|
{ "podKeys": [ string ], "servedAdsDuration": string, "executedBreakDuration": string, "trackingPings": { string: { object ( |
| Fields | |
|---|---|
podKeys[] |
Output only. Ad pod ID that links to one or more decisioned ad pods for this break. Most types of sessions will have a single pod key, but in the case of prefetched pods there will be two pod keys. |
servedAdsDuration |
Output only. The duration of ads that were inserted for this break. A duration in seconds with up to nine fractional digits, ending with ' |
executedBreakDuration |
Output only. The total duration of the break as it was served by DAI. In VOD, this value is the duration of ads inserted in between content. In linear, this value is the duration between cue out and cue in. A duration in seconds with up to nine fractional digits, ending with ' |
trackingPings |
Output only. Tracking pings that were issued for this break. Keyed by a unique ID to reference this tracking ping from a different submessage. |
| Information about this ad break relevant to the session type. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response: | |
linear |
Output only. Information on the break for a linear session. |
vod |
Output only. Information on the break for a VOD session. |
| End of mutually exclusive fields. | |
adBreakId |
Output only. Publisher-provided or DAI-generated break ID for the Ad break API or pod serving API. |
breakType |
Output only. Type of break this represents. |
breakSequence |
Output only. The index of this ad break in the session. |
LinearBreak
Represents linear session related break information.
| JSON representation |
|---|
{ "breakStartTime": string, "expectedBreakDuration": string, "slateDuration": string, "underlyingDuration": string } |
| Fields | |
|---|---|
breakStartTime |
Output only. The timestamp of when the break started. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
expectedBreakDuration |
Output only. The duration of the placement opportunity associated with the break. A duration in seconds with up to nine fractional digits, ending with ' |
slateDuration |
Output only. The duration of slate that was inserted for this break. A duration in seconds with up to nine fractional digits, ending with ' |
underlyingDuration |
Output only. The duration of underlying content that was inserted for this break. A duration in seconds with up to nine fractional digits, ending with ' |
VodBreak
Represents Video on Demand related break information.
| JSON representation |
|---|
{ "timeOffset": string } |
| Fields | |
|---|---|
timeOffset |
Output only. The time difference between the start of this break and the start of the session. Includes the time for any preceding ad breaks. A duration in seconds with up to nine fractional digits, ending with ' |
TrackingPing
Information about a tracking ping issued for a break.
| JSON representation |
|---|
{
"request": {
object ( |
| Fields | |
|---|---|
request |
Output only. The HTTP request made to the ad server for this tracking ping. |
originalTrackingEventId |
Output only. A unique ID for this tracking event, which is the ID3 tag in client-side reporting. |
Finding
Information about errors or notable discoveries that occurred during a session.
| JSON representation |
|---|
{ // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "podFinding": { object ( |
| Fields | |
|---|---|
| Which session entity this finding is relevant to. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response: | |
podFinding |
Output only. A finding related to building an ad pod. |
slateFinding |
Output only. A finding related to the slate creative. |
adBreakFinding |
Output only. A finding related to an ad break. |
trackingFinding |
Output only. A finding related to a tracking ping. |
creativeFinding |
Output only. A finding related to a creative. |
adRequestFinding |
Output only. A finding related to an ad request within ad selection. |
| End of mutually exclusive fields. | |
severity |
Output only. The severity of the finding to the session. |
description |
Output only. A description of the finding. |
PodFinding
A finding that occurred while decisioning an ad pod.
| JSON representation |
|---|
{
"type": enum ( |
| Fields | |
|---|---|
type |
Output only. The finding's type. |
podKey |
Output only. ID that links to the relevant ad pod. |
PodFindingType
Types of findings that can occur while decisioning an ad pod.
| Enums | |
|---|---|
POD_FINDING_TYPE_UNSPECIFIED |
Default value. |
INTERNAL_ERROR |
Internal DAI error. |
AD_POD_DROPPED_EMPTY_ADS |
Ad pod doesn't contain ad(s) available for insertion. |
AD_POD_DROPPED_INCOMPATIBLE_TIMEOFFSET |
Ad pod was dropped because the request is incompatible with the time offset returned by the VMAP. |
AD_POD_DROPPED_UNSUPPORTED_TYPE |
Ad pod was dropped because it was an unsupported type for this session. |
SlateFinding
A finding that occurred regarding the slate creative, which can be found at the DaiSession.slate field.
| JSON representation |
|---|
{
"type": enum ( |
| Fields | |
|---|---|
type |
Output only. The finding's type. |
SlateFindingType
A finding that occurred regarding the slate creative.
| Enums | |
|---|---|
SLATE_FINDING_TYPE_UNSPECIFIED |
Default value. |
INTERNAL_ERROR |
Internal DAI error. |
SLATE_STATUS_SKIPPED |
Slate was skipped for this ad break and underlying content was stitched instead because slate was disabled for underfill or empty break. |
SLATE_STATUS_DROPPED_UNKNOWN |
Slate was not inserted into this ad break due to an unknown reason. |
SLATE_STATUS_MINIMUM_INSERTED |
The minimum amount of slate was inserted into an underfilled ad break to cover the gap between the end of the ads and the next segment start of the trimmed underlying linear content. |
AdBreakFinding
A finding that occurred while serving ads for a session.
| JSON representation |
|---|
{
"type": enum ( |
| Fields | |
|---|---|
type |
Output only. The finding's type. |
breakKey |
Output only. The ID that links to the relevant ad break. |
AdBreakFindingType
A finding that occurred while serving an ad break for a session.
| Enums | |
|---|---|
AD_BREAK_FINDING_TYPE_UNSPECIFIED |
Default value. |
INTERNAL_ERROR |
Internal DAI error. |
AD_POD_DROPPED_TOO_MANY_AD_PODS |
Ad pod was dropped, the number of ad breaks is less than the number of decisioned ad pods. |
EXCEEDS_MAX_FILLER |
Ad pod doesn't contain enough ads - requires more filler than specified. |
ADS_STATUS_DROPPED_FOR_PREROLL |
The midroll ad break was skipped due to overlapping with preroll. |
ADS_STATUS_ALL_ADS_MISSING_ASSETS |
Ad pod was dropped due to all of the ads in the pod missing their assets, probably due to the assets not yet being transcoded. |
ADS_STATUS_OUT_OF_WINDOW |
Ad pod is outside of the window at session creation time so ad pod was skipped and underlying content was stitched instead. |
ADS_STATUS_DISABLED |
Ads are disabled for this session. |
ADS_STATUS_STORAGE_ERROR |
Decisioned ad pod couldn't be fetched from storage. |
ADS_STATUS_EXPIRED |
Ad pod expired because the ad request couldn't finish before the deadline. |
ADS_STATUS_HOLIDAY |
Ad pod occurred within the configured ad holiday. |
ADS_STATUS_DROPPED_SLATE_UNAVAILABLE |
Ad pod was dropped because slate was unavailable and underlying content was stitched instead. |
ADS_STATUS_NO_ADS_AVAILABLE_BEFORE_DEADLINE |
Ad pod was dropped because there were no ads available before the deadline. |
ADS_STATUS_INVALID_POD_REQUEST |
Ad pod was dropped due to an invalid pod request. |
ADS_STATUS_DROPPED_FOR_MIDROLL |
The requested pre-roll break would overlap with a mid-roll ad break. |
ADS_STATUS_DROPPED_BREAK_DURATION_TOO_SHORT |
The duration of the ad break was too short to request ads. |
ADS_STATUS_DROPPED_STREAM_CREATED_AFTER_BREAK |
Session created after the ad break ended. |
ADS_STATUS_DROPPED_MEDIA_ANALYSIS_UNAVAILABLE |
Information about the content stream that is required to stitch the ads is missing or unavailable. |
ADS_STATUS_UNKNOWN |
The serving or insertion status of the ad break is unknown. |
UNSERVED_BREAK |
Ad break was not served. |
PREROLL_AUDIO_VIDEO_MISALIGNMENT |
The content segment boundary at the end of the preroll has misaligned video and audio segments. |
TrackingPingFinding
A finding that occurred while pinging tracking URLs for a session.
| JSON representation |
|---|
{
"type": enum ( |
| Fields | |
|---|---|
type |
Output only. The finding's type. |
trackingPingKey |
Output only. The ID that links to the relevant tracking ping. |
TrackingPingFindingType
A finding that occurred while pinging tracking URLs for a session.
| Enums | |
|---|---|
TRACKING_PING_FINDING_TYPE_UNSPECIFIED |
Default value. |
INTERNAL_ERROR |
Internal DAI error. |
FAILED_PING |
Failed to ping a URL. |
CreativeFinding
A finding that occurred while looking up creative information.
| JSON representation |
|---|
{
"type": enum ( |
| Fields | |
|---|---|
type |
Output only. The finding's type. |
creativeKey |
Output only. The ID that links to the relevant creative. |
CreativeFindingType
A finding that occurred while looking up creative information.
| Enums | |
|---|---|
CREATIVE_FINDING_TYPE_UNSPECIFIED |
Default value. |
UNIDENTIFIED_AD_CREATIVE |
Ad was dropped because the VAST document returned did not contain enough information to successfully identify the creative media. |
UNKNOWN_AD_CREATIVE |
Ad was dropped because the system has no knowledge of the creative media to insert into the DAI session. Creative will be reactively loaded into the system for subsequent use. |
AD_CREATIVE_LOOKUP_FAILED |
Error occurred when performing lookup on the ad creative for insertion into the DAI session. |
DISABLED_AD_CREATIVE |
Creative has been disabled from serving. |
FAILED_AD_CREATIVE |
Ad creative is known but failed to acquire / transcode for serving. |
AD_CREATIVE_ENCODING_MATCH_FAILURE |
Ad creative does not have suitable encodings available to be successfully stitched into a DAI session. |
MISMATCHED_FRAME_COUNT |
Incorrect number of frames available for creative when exact frame count is required for a specific duration. |
MISSING_TRANSCODES |
Ad creative doesn't have any encodings available. |
AD_DROPPED_TO_FIT_BREAK |
Ad creative is dropped due to pod trimming to fit the break. |
AdRequestFinding
A finding that occurred while making an ad request.
| JSON representation |
|---|
{
"type": enum ( |
| Fields | |
|---|---|
type |
Output only. The finding's type. |
adSelectionKey |
Output only. The ID that links to the relevant ad selection. |
adRequestKey |
Output only. The ID that links to the relevant ad request. |
AdRequestFindingType
A finding that occurred while making an ad request.
| Enums | |
|---|---|
AD_REQUEST_FINDING_TYPE_UNSPECIFIED |
Default value. |
INTERNAL_ERROR |
Internal DAI error. |
AD_REQUEST_ERROR |
An error while making an ad request. |
VAST_PARSE_ERROR |
Generic VAST parsing error. |
UNSUPPORTED_AD_SYSTEM |
AdSystem reported in VAST is not supported. |
CANNOT_FIND_UNIQUE_TRANSCODE_ID |
Ad element does not contain enough information to generate a unique transcode ID. |
MISSING_INLINE_ELEMENTS |
No InLine elements found in the Ad. |
MAX_WRAPPER_DEPTH_REACHED |
Reached the maximum number of VAST redirects. |
AD_TAG_PARSE_ERROR |
Error while parsing ad tag. |
VMAP_PARSE_ERROR |
Generic VMAP parsing error. |
INVALID_VMAP_RESPONSE |
Invalid VMAP data (Able to parse VMAP but XML attributes have invalid data). |
NO_AD_BREAKS_IN_VMAP |
VMAP response contains no ad breaks. |
CUSTOM_AD_SOURCE_IN_VMAP |
VMAP contains custom ad source which is not supported. |
AD_BREAK_TYPE_NOT_SUPPORTED |
VMAP contains an adbreak that is not supported. |
NEITHER_AD_SOURCE_NOR_TRACKING |
VMAP contains an adbreak that has neither ad source nor tracking events. |
SKIPPABLE_AD_NOT_SUPPORTED |
Client doesn't support skippable ads. The ad was a skippable ad. |
AD_REQUEST_TIMEOUT |
The request has timed out. |
DUPLICATE_AD_TAG |
The same ad tag was already used in the same pod. |
FOLLOW_REDIRECTS_IS_FALSE |
VMAP AdSource followRedirects is set as false. |
UNSUPPORTED_VAST_VERSION |
VAST version is not supported. |
NO_VALID_MEDIAFILES_FOUND |
No media files were found in the VAST ad. |
SessionFindingSeverity
Severity levels for a finding.
| Enums | |
|---|---|
SESSION_FINDING_SEVERITY_UNSPECIFIED |
Default value. |
INFO |
The finding is informational. |
WARNING |
The finding is a warning. |
ERROR |
The finding is an error. |
Methods |
|
|---|---|
|
Retrieves a DaiSession object. |