ダイナミック広告挿入の VOD API

Dynamic Ad Insertion API を使用すると、DAI のリクエストとトラッキングが可能 ビデオ オンデマンド(VOD)ストリーム。HLS ストリームと DASH ストリームがサポートされています。

サービス: dai.google.com

stream メソッドのパスは https://dai.google.com からの相対パスです。

メソッド: stream

メソッド
stream POST /ondemand/v1/hls/content/{content-source}/vid/{video-id}/stream

指定されたコンテンツ ソースと動画 ID の HLS DAI ストリームを作成します。

POST /ondemand/v1/dash/content/{content-source}/vid/{video-id}/stream

指定されたコンテンツ ソースと動画 ID の DASH DAI ストリームを作成します。

HTTP リクエスト

POST https://dai.google.com/ondemand/v1/hls/content/{content-source}/vid/{video-id}/stream

POST https://dai.google.com/ondemand/v1/dash/content/{content-source}/vid/{video-id}/stream

リクエスト ヘッダー

パラメータ
api‑key string

API キー(ストリームの作成時に指定) パブリッシャーのネットワークに対して有効である必要があります

API キーは、リクエスト本文ではなく、 次の形式の HTTP Authorization ヘッダー:

Authorization: DCLKDAI key="<api-key>"

パスパラメータ

パラメータ
content-source string

ストリームの CMS ID。

video-id string

ストリームの動画 ID。

リクエスト本文

リクエスト本文は application/x-www-form-urlencoded 型で、次の内容が含まれます。 次のパラメータがあります。

パラメータ
dai-ssb 省略可

サーバーサイド ビーコン ストリームを作成するには、true に設定します。 デフォルトは false です。デフォルト ストリームのトラッキング クライアント側で開始され、サーバー側で ping されます。

アド マネージャーのターゲティング パラメータ 省略可 <ph type="x-smartling-placeholder"></ph> 追加のターゲティング パラメータ。
ストリーム パラメータをオーバーライドする 省略可 <ph type="x-smartling-placeholder"></ph> ストリーム作成パラメータのデフォルト値をオーバーライドします。
HMAC 認証 省略可 <ph type="x-smartling-placeholder"></ph> HMAC ベースのトークンを使用して認証する。

レスポンスの本文

成功した場合、レスポンスの本文には新しい Stream。サーバーサイド ビーコン ストリームの場合は、この Stream stream_id フィールドと stream_manifest フィールドのみが含まれている。

Open Measurement

Verifications フィールドには、[Open] ビューに関する情報が含まれます。 サーバーサイド ビーコン以外のストリームの測定検証。 Verifications には、リソースをリストする 1 つ以上の Verification 要素が含まれます。 とメタデータの両方が必要です。 JavaScriptResource のみがサポートされています。詳しくは IAB Tech LabVAST 4.1 仕様をご覧ください。

方法: メディアによるオーナー確認

再生中に広告メディア ID を見つけたら、すぐに streammedia_verification_url を使用したリクエスト 提供しますmedia_verification_url は絶対パスです。 サーバーサイド ビーコン送信ストリームではメディア検証リクエストは不要です。 サーバーがメディア検証を開始します。

media verification エンドポイントへのリクエストはべき等です。

メソッド
media verification GET {media_verification_url}/{ad_media_id}

メディア検証イベントを API に通知します。

HTTP リクエスト

GET {media-verification-url}/{ad-media-id}

レスポンスの本文

media verification 次のレスポンスが返されます。

  • メディアの検証が成功し、すべての ping が送信された場合は HTTP/1.1 204 No Content
  • HTTP/1.1 404 Not Found: URL の形式や有効期限が正しくないためにリクエストでメディアを確認できない場合。
  • この ID の前回の確認リクエストが成功した場合は HTTP/1.1 404 Not Found
  • HTTP/1.1 409 Conflict(別のリクエストがすでに ping を送信している場合)。

広告メディア ID(HLS)

広告メディア ID は、キー TXXX を使用して HLS タイミング メタデータでエンコードされます。 「ユーザー定義のテキスト情報」用に予約されています。使用できます。フレームの内容 暗号化されず、常にテキスト "google_" で始まります。

フレームのテキスト コンテンツ全体を media_verification_url

広告メディア ID(DASH)

広告メディア ID は、以下を使用してマニフェストに挿入されます。 DASH の EventStream 要素。

EventStream には、urn:google:dai:2018 のスキーム ID URI が含まれます。 このオブジェクトには、messageData 属性に「 “google_” で始まる広告メディア ID。messageData のコンテンツ全体 属性を各広告の media_verification_url に追加してください 確認リクエスト。

Response data

ストリーム

ストリームは、新しく作成されたリソースのリストをレンダリングするために使用されます。 JSON 形式のストリームです。
JSON 表現
{
  "stream_id": string,
  "total_duration": number,
  "content_duration": number,
  "valid_for": string,
  "valid_until": string,
  "subtitles": [object(Subtitle)],
  "hls_master_playlist": string,
  "stream_manifest": string,
  "media_verification_url": string,
  "apple_tv": object(AppleTV),
  "ad_breaks": [object(AdBreak)],
}
フィールド
stream_id string

ストリーム識別子。
total_duration number

ストリーミング時間(秒)。
content_duration number

広告なしのコンテンツの再生時間(秒)。
valid_for string

ストリーミングの有効期間(「00h00m00s」単位)形式。
valid_until string

ストリームの有効期間(RFC 3339 形式)。
subtitles [object(Subtitle)]

字幕のリスト。空の場合は省略します。HLS のみ。
hls_master_playlist string

(サポート終了)HLS マスター再生リストの URL。Stream_manifest を使用します。HLS のみ。
stream_manifest string

ストリームのマニフェスト。HLS のマスター再生リストおよび DASH の MPD に対応します。 「stream_id」以外の唯一のフィールドです。レスポンスに含まれている単語の サーバーサイド ビーコン ストリームを作成します。
media_verification_url string

メディアの確認用 URL
apple_tv object(AppleTV)

AppleTV デバイス固有の情報です(省略可)。HLS のみ。
ad_breaks [object(AdBreak)]

ミッドロール挿入点のリスト。空の場合は省略します。

AppleTV

AppleTV には、Apple TV デバイスに固有の情報が含まれています。
JSON 表現
{
  "interstitials_url": string,
}
フィールド
interstitials_url string

インタースティシャルの URL。

AdBreak

AdBreak は、ストリーム内の 1 つのミッドロール挿入点を表します。位置情報、 再生時間、タイプ(途中、前、後)、広告のリストなどがあります。
JSON 表現
{
  "type": string,
  "start": number,
  "duration": number,
  "ads": [object(Ad)],
}
フィールド
type string

有効な区切りのタイプは、mid、pre、post です。
start number

中断が開始するストリーム内の位置(秒単位)。
duration number

ミッドロール挿入点の時間(秒単位)。
ads [object(Ad)]

広告のリスト。空の場合は省略します。
広告はストリーム内の広告について説明したものです。これには広告の位置と 広告再生時間、オプションのメタデータです。
JSON 表現
{
  "seq": number,
  "start": number,
  "duration": number,
  "title": string,
  "description": string,
  "advertiser": string,
  "ad_system": string,
  "ad_id": string,
  "creative_id": string,
  "creative_ad_id": string,
  "deal_id": string,
  "clickthrough_url": string,
  "icons": [object(Icon)],
  "wrappers": [object(Wrapper)],
  "events": [object(Event)],
  "verifications": [object(Verification)],
  "universal_ad_id": object(UniversalAdID),
  "companions": [object(Companion)],
  "interactive_file": object(InteractiveFile),
  "skip_metadata": object(SkipMetadata),
}
フィールド
seq number

広告ブレーク内の広告の位置。
start number

ストリーム内で広告が開始する位置(秒単位)。
duration number

広告の再生時間(秒単位)。
title string

広告のタイトル(省略可)。
description string

広告の説明(省略可)。
advertiser string

オプションの広告主 ID。
ad_system string

オプションの広告システム。
ad_id string

広告 ID(省略可)。
creative_id string

クリエイティブ ID(省略可)。
creative_ad_id string

オプションのクリエイティブ広告 ID。
deal_id string

取引 ID(省略可)
clickthrough_url string

オプションのリンク先 URL。
icons [object(Icon)]

アイコンのリスト。空の場合は省略されます。
wrappers [object(Wrapper)]

ラッパーのリスト。空の場合は省略します。
events [object(Event)]

広告のイベントのリスト。
verifications [object(Verification)]

リソースのリスト(任意)の Open Measurement 検証エントリ サードパーティ測定コードを実行して検証するために クリエイティブな再生を可能にします。
universal_ad_id object(UniversalAdID)

オプションのユニバーサル広告 ID。
companions [object(Companion)]

この広告と一緒に表示できるオプションのコンパニオンです。
interactive_file object(InteractiveFile)

広告の再生中に表示されるオプションのインタラクティブ クリエイティブ(SIMID)。
skip_metadata object(SkipMetadata)

スキップ可能な広告のオプションのメタデータ。設定されている場合は スキップ可能で、スキップ UI の処理方法の説明が含まれています イベントのトラッキングが可能です。

イベント

Event には、イベントタイプとイベントのプレゼンテーション時間が含まれます。
JSON 表現
{
  "time": number,
  "type": string,
}
フィールド
time number

この予定の提示時間。
type string

このイベントのタイプ。

サブタイトル

サブタイトルは、動画ストリームのサイドカー 字幕トラックを表します。データの保存 TTML と WebVTT ですTTMLPath 属性には URL を含む TTML サイドカー ファイルに追加され、WebVTTPath 属性にも同様に URL が含まれます。 WebVTT サイドカー ファイルに追加します。
JSON 表現
{
  "language": string,
  "language_name": string,
  "ttml": string,
  "webvtt": string,
}
フィールド
language string

言語コード(「en」など)
language_name string

言語のわかりやすい名前。特定の業種や地域と 同じ言語に複数のセットがある場合は字幕
ttml string

(省略可)TTML サイドカー ファイルの URL。
webvtt string

(省略可)WebVTT サイドカー ファイルの URL。

SkipMetadata

SkipMetadata は、クライアントがスキップ可能な広告のスキップ イベントを処理するために必要な情報を提供します。
JSON 表現
{
  "offset": number,
  "tracking_url": string,
}
フィールド
offset number

オフセットは、プレーヤーから広告が表示されている時間(秒)を示します。 スキップボタンのレンダリングを 待機する必要がありますVAST で提供されていない場合は省略。
tracking_url string

TrackingURL にはスキップ イベント発生時に ping される URL が含まれます。

アイコン

アイコンには、VAST アイコンに関する情報が含まれています。
JSON 表現
{
  "click_data": object(ClickData),
  "creative_type": string,
  "click_fallback_images": [object(FallbackImage)],
  "height": int32,
  "width": int32,
  "resource": string,
  "type": string,
  "x_position": string,
  "y_position": string,
  "program": string,
  "alt_text": string,
}
フィールド
click_data object(ClickData)

creative_type string

click_fallback_images [object(FallbackImage)]

height int32

width int32

resource string

type string

x_position string

y_position string

program string

alt_text string

ClickData

ClickData には、アイコンのクリックスルーに関する情報が含まれます。
JSON 表現
{
  "url": string,
}
フィールド
url string

FallbackImage

FallbackImage には、VAST 代替画像に関する情報が含まれます。
JSON 表現
{
  "creative_type": string,
  "height": int32,
  "width": int32,
  "resource": string,
  "alt_text": string,
}
フィールド
creative_type string

height int32

width int32

resource string

alt_text string

ラッパー

ラッパーには、ラッパー広告に関する情報が含まれています。これに 取引 ID(存在しない場合)。
JSON 表現
{
  "system": string,
  "ad_id": string,
  "creative_id": string,
  "creative_ad_id": string,
  "deal_id": string,
}
フィールド
system string

広告システム ID。
ad_id string

ラッパー広告に使用される広告 ID。
creative_id string

ラッパー広告に使用されるクリエイティブ ID。
creative_ad_id string

ラッパー広告に使用されるクリエイティブ広告 ID。
deal_id string

ラッパー広告の取引 ID(省略可)。

確認

ベリフィケーションでは Open Measurement に関する情報が含まれ、 第三者による視認性と検証の測定 現在サポートされているのは JavaScript リソースのみです。 https://iabtechlab.com/standards/open-measurement-sdk/ をご覧ください。
JSON 表現
{
  "vendor": string,
  "java_script_resources": [object(JavaScriptResource)],
  "tracking_events": [object(TrackingEvent)],
  "parameters": string,
}
フィールド
vendor string

検証ベンダー。
java_script_resources [object(JavaScriptResource)]

検証用の JavaScript リソースのリスト
tracking_events [object(TrackingEvent)]

オーナー確認のトラッキング イベントのリスト。
parameters string

ブートストラップ確認コードに渡される不透明な文字列。

JavaScriptResource

JavaScriptResource には、JavaScript で検証するための情報が含まれます。
JSON 表現
{
  "script_url": string,
  "api_framework": string,
  "browser_optional": boolean,
}
フィールド
script_url string

JavaScript ペイロードへの URI
api_framework string

APIFramework は、サービスを実行する動画フレームワークの名前です。 確認コードを入力します。
browser_optional boolean

このスクリプトを Google Compute Engine の

TrackingEvent

TrackingEvent には、特定の状況下でクライアントが ping する必要がある URL が含まれます。 対応できます。
JSON 表現
{
  "event": string,
  "uri": string,
}
フィールド
event string

トラッキング イベントのタイプ。
uri string

ping されるトラッキング イベント。

UniversalAdID

UniversalAdID は、対応するクリエイティブ ID を 複数の広告システムの間で維持します
JSON 表現
{
  "id_value": string,
  "id_registry": string,
}
フィールド
id_value string

広告で選択されたクリエイティブのユニバーサル広告 ID
id_registry string

レジストリのウェブサイトの URL を識別するために使用される文字列で、 選択したクリエイティブのユニバーサル広告 ID がカタログに登録されている。

コンパニオン

コンパニオンには、表示される可能性のあるコンパニオン広告の情報が含まれます。 広告とともに配信されます
JSON 表現
{
  "click_data": object(ClickData),
  "creative_type": string,
  "height": int32,
  "width": int32,
  "resource": string,
  "type": string,
  "ad_slot_id": string,
  "api_framework": string,
  "tracking_events": [object(TrackingEvent)],
}
フィールド
click_data object(ClickData)

このコンパニオンのクリックデータ。
creative_type string

<StaticResource> の CreativeType 属性VAST でノードが これは静的なタイプのコンパニオンです。
height int32

このコンパニオンの高さ(ピクセル単位)。
width int32

このコンパニオンの幅(ピクセル単位)。
resource string

静的コンパニオンと iframe コンパニオンの場合、これは読み込まれる URL です。 表示されます。HTML コンパニオンの場合は、このファイルをコンテンツとして表示する コンパニオンとして表示できます。
type string

このコンパニオンのタイプ。静的、iframe、HTML のいずれも使用できます。
ad_slot_id string

このコンパニオンのスロット ID。
api_framework string

このコンパニオンの API フレームワーク。
tracking_events [object(TrackingEvent)]

このコンパニオンのトラッキング イベントのリスト。

InteractiveFile

InteractiveFile には、インタラクティブ クリエイティブの情報(SIMID など)が含まれます。 広告再生中に表示される必要があります
JSON 表現
{
  "resource": string,
  "type": string,
  "variable_duration": boolean,
  "ad_parameters": string,
}
フィールド
resource string

インタラクティブ クリエイティブの URL。
type string

リソースとして提供されるファイルの MIME タイプ。
variable_duration boolean

このクリエイティブで再生時間の延長をリクエストできるかどうか。
ad_parameters string

<AdParameters> の値VAST でノードが使用されます。