Early ad break notification

Early Ad Break Notification API の使用

注: この API はまだベータ版です。EABN プログラムへのアクセスをご希望の場合は、アカウント マネージャーにお問い合わせください。

Early Ad Break Notification(EABN)API を使用すると、広告ブレークの開始前に、今後の広告ブレークをメタデータとともに Google アド マネージャーに通知できます。通知リクエストは、ミッドロール挿入点の 1 時間前まで送信できます。このガイドでは、EABN API を有効にして使用する方法と、リクエストとレスポンスのサンプルについて説明します。

注意: EABN リクエストは不変であるため、ブレークが作成されると変更できません。同じイベントに対して後続のミッドロール挿入点作成リクエストは、その挿入点がイベントのマニフェストに表示されるまで拒否されます。

EABN API の呼び出しには次の情報を含める必要があります。

  • ミッドロール挿入点が作成される、対応するライブ ストリームの識別子。この識別子は次のいずれかになります。
  • ライブ配信の「アセットキー」
  • ライブ配信の「カスタム アセットキー」。独自の識別子文字列を指定して独自のキースペースを管理できます。
  • ライブ配信の「コンテンツ ソース ID」と「Content ID」。

注: この識別子タイプを使用するには、有効にする必要があります。詳しくは、アカウント マネージャーにお問い合わせください。

  • 次のミッドロール挿入点の予想時間。再生時間は、実際のミッドロール挿入点の長さにできるだけ近くする必要があります。

これらの必須フィールドに加えて、カスタム ターゲティング パラメータ、適用する連続配信広告テンプレートの名前、SCTE35 キューアウト データ(利用可能な場合)を送信することもできます。

前提条件

EABN API を使用するには、サービス アカウントを作成し、そのアカウントを Google アド マネージャー ネットワークに追加する必要があります。

サービス アカウントの作成

EABN API を呼び出すためのサービス アカウントを作成するには、次の操作を行います。- Google Cloud アカウントがある場合は、IAM モジュールを使用してサービス アカウントを作成します。詳細については、サービス アカウントの作成と管理をご覧ください。- Google Cloud アカウントをお持ちでない場合は、次の手順で Google API Console からアカウントを作成します。

  1. 新しいプロジェクトを作成するか、既存のプロジェクトを選択します。
  2. [認証情報] ページで、[サービス アカウントの管理] をクリックします。
  3. [サービス アカウント] ページで、[サービス アカウントを作成] をクリックします。
  4. [サービス アカウントの作成] ページで、アカウントの詳細を入力します。次に、[作成] をクリックします。

サービス アカウントを作成したら、認証に使用するアカウントの JSON キーをコピーします。

Google アド マネージャー ネットワークにサービス アカウントを追加する

サービス アカウントをネットワークに追加するには、API アクセス用のサービス アカウント ユーザーを追加するの手順を行います。

API の有効化

サービス アカウントを作成したら、アカウント マネージャーに次の情報を提供し、そのアカウントで API を有効にします。

  • Google Cloud アカウントのメールアドレス
  • サービス アカウント
  • Google アド マネージャー ネットワークのネットワーク コード。

アカウント マネージャーが API を有効にしたら、次の手順で API を有効にします。

  1. Google API ライブラリで「Google Ad Manager Video API」を検索します。
  2. [有効にする] をクリックします。

注: 検索結果に API が表示されない場合は、アカウント マネージャーに連絡して、アカウントで DAI API が有効になっていることを確認してください。

API の使用

JSON/REST リクエストを使用して EABN API を呼び出すことができます。

承認

EABN API に対して承認された呼び出しを行うには、サービス アカウントの JSON キーとスコープ https://www.googleapis.com/auth/video-ads を使用して、OAuth2 サービス アカウントの認証情報を生成する必要があります。詳しくは、サーバー間アプリケーションに OAuth 2.0 を使用するをご覧ください。

EABN API を呼び出すたびに、生成された認証トークンを Auth ヘッダーとして含める必要があります。

早期広告ブレーク通知の送信

早期広告ブレーク通知を送信するには、ライブ配信の指定方法に応じて、3 つの有効な EABN URL のいずれかに POST リクエストを送信します。以降のセクションでは、これらの URL の違いについて説明し、リクエストとレスポンスの例を示します。

URL

早期広告ブレーク通知には 3 つの有効な URL があります。これら 3 つのタイプすべてを使用して、ミッドロール挿入点を作成するか(POST)、割り当てられたミッドロール挿入点のリストを取得(GET)できます。

ライブ配信のアセットキーを使用するには、次のコマンドを使用します。

POST admanagervideo.googleapis.com/v1/networks/{network_code}/assets/{asset_key}/adBreaks
GET admanagervideo.googleapis.com/v1/networks/{network_code}/assets/{asset_key}/adBreaks

ライブ配信のカスタム アセットキーを使用するには、次のコマンドを使用します。

POST admanagervideo.googleapis.com/v1/networks/{network_code}/customAssets/{custom_asset_key}/adBreaks
GET admanagervideo.googleapis.com/v1/networks/{network_code}/customAssets/{custom_asset_key}/adBreaks

コンテンツ ソース ID と Content ID のアプローチを使用するには、以下を使用します。

POST admanagervideo.googleapis.com/v1/networks/{network_code}/sources/{content_source_id}/content/{content_id}/adBreaks
GET admanagervideo.googleapis.com/v1/networks/{network_code}/sources/{content_source_id}/content/{content_id}/adBreaks

すべてのパラメータについて、以下のように設定します。

  • network_code は、Google アド マネージャー ネットワークのネットワーク コードを表します。
  • asset_key は、ライブ配信の詳細ページに表示されるアセットキーを表します。
  • custom_asset_key は、ライブ配信のカスタム アセットキーを表します。
  • content_source_id は Google アド マネージャーのコンテンツ ソースの ID を表します。
  • content_id は Google アド マネージャーのコンテンツの ID を表します。

注: 指定した content_source_id/content_id のペアは、Google アド マネージャーのライブ ストリームに関連付けられている必要があります。

リクエストの本文 - ミッドロール挿入点(POST)の作成にのみ使用

オブジェクト

expectedDuration

必須 このミッドロール挿入点の再生時間。Google の標準の再生時間形式(xx.xxxs、xx.xxx は秒数)を使用

customParams

省略可 AM360 のカスタム条件ターゲティングで、この広告ブレークの広告リクエストに含まれる Key-Value ペア。

=

および結合

&

.
例:

key=value&key2=value2,value3


ターゲティングについて詳しくは、ストリームにターゲティング パラメータを指定するをご覧ください。

podTemplateName

省略可 連続配信広告テンプレート名

scte35CueOut

省略可 scte35 キューアウトからの Base-64 エンコード データ。以下を含めることができます。

splice_insert()

または

time_signal()

使用できます。
例:

  • time_signal():

    /DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==

  • splice_insert():

    /DAvAAAAAAAA///wFAVIAACPf+/+c2nALv4AUsz1AAAAAAAKAAhDVUVJAAABNWLbowo=

リクエストの例

ミッドロール挿入点を作成する
POST admanagervideo.googleapis.com/v1/networks/.../sources/.../content/.../adBreaks
Content-Type: application/json
Authorization: Bearer …
{
    "expectedDuration": "30s",
    "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
    "customParams": "param1=value1&param2=value2",
    "podTemplateName": "podtemplate"
}
レスポンスの本文

レスポンスの本文には、adBreak オブジェクトで送信されるすべてのパラメータと、作成されたミッドロール挿入点の Google 全体で使用される標準 ID を含む追加の name フィールドが含まれます。このフィールドは次の形式で返されます。

networks/{network_code}/assets/{asset_key}/adBreaks/{ad_break_id}
レスポンスの例
HTTP/1.1 200 OK
{
  "name": "networks/.../assets/.../adBreaks/1",
  "expectedDuration": "30s",
  "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
  "customParams": "param1=value1&param2=value2",
  "podTemplateName": "podtemplate"
}
割り当てられたミッドロール挿入点のリスト
GET admanagervideo.googleapis.com/v1/networks/.../sources/.../content/.../adBreaks
Content-Type: application/json
Authorization: Bearer …
レスポンスの本文

レスポンスの本文にはミッドロール挿入点と、ストリームに割り当てられた広告ブレークごとに追加の breakState フィールドが含まれます。breakState フィールドでは、次の値がサポートされます。

 // Ad break decisioning has started.
BREAK_STATE_DECISIONED

// Break has started to be delivered to end users.
BREAK_STATE_COMPLETE
レスポンスの例
HTTP/1.1 200 OK
{
  "name": "networks/.../assets/.../adBreaks/1",
  "expectedDuration": "30s",
  "breakState": "BREAK_STATE_COMPLETE"
}