API แบบสดสำหรับพ็อดการแทรกโฆษณาแบบไดนามิก

Dynamic Ad Insertion API ช่วยให้คุณขอและติดตามไลฟ์สด DAI ได้

บริการ: dai.google.com

URI ทั้งหมดจะเกี่ยวข้องกับ https://dai.google.com

วิธีการ: สตรีม

เมธอด
stream POST /ssai/pods/api/v1/network/{network_code}/custom_asset/{custom_asset_key}/stream

ลงทะเบียนเซสชันไลฟ์สด DAI Pod Serving ของ DAI

คำขอ HTTP

POST https://dai.google.com/ssai/pods/api/v1/network/{network_code}/custom_asset/{custom_asset_key}/stream

พารามิเตอร์เส้นทาง

พารามิเตอร์
network_code string

รหัสเครือข่าย Google Ad Manager ของผู้เผยแพร่โฆษณา

custom_asset_key string

ตัวระบุที่กําหนดเองที่เชื่อมโยงกับเหตุการณ์นี้ใน Google Ad Manager

เนื้อความของคำขอ

เนื้อความของคำขอมีประเภท application/x-www-form-urlencoded และมีพารามิเตอร์ต่อไปนี้

พารามิเตอร์
พารามิเตอร์การกำหนดเป้าหมายของ DFP ไม่บังคับ พารามิเตอร์การกำหนดเป้าหมายเพิ่มเติม
ลบล้างพารามิเตอร์ของสตรีม ไม่บังคับ ลบล้างค่าเริ่มต้นของพารามิเตอร์การสร้างสตรีม
การตรวจสอบสิทธิ์ HMAC ไม่บังคับ ตรวจสอบสิทธิ์โดยใช้โทเค็นที่ใช้ HMAC

เนื้อหาการตอบกลับ

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีออบเจ็กต์ Stream ใหม่

การวัดผลแบบเปิด

DAI API มีข้อมูลสำหรับการยืนยัน Open Measurement ในฟิลด์ Verifications ฟิลด์นี้มีองค์ประกอบ Verification อย่างน้อย 1 รายการที่แสดงรายการทรัพยากรและข้อมูลเมตาที่จำเป็นต่อการเรียกใช้โค้ดการวัดผลของบุคคลที่สามเพื่อยืนยันการเล่นครีเอทีฟโฆษณา รองรับเฉพาะ JavaScriptResource ดูข้อมูลเพิ่มเติมได้ที่ IAB Tech Lab และ ข้อกำหนด VAST 4.1

วิธีการ: พ็อด

เมธอด
pod segment GET /linear/pods/v1/seg/network/{network_code}/custom_asset/{custom_asset_key}/{pod_identifier}/profile/{profile_name}/{segment_number}.{segment_format}

สร้างสตรีม DAI สำหรับรหัสเหตุการณ์ที่ระบุ

คำขอ HTTP

GET https://dai.google.com/linear/pods/v1/seg/network/{network_code}/custom_asset/{custom_asset_key}/{pod_identifier}/profile/{profile_name}/{segment_number}.{segment_format}

พารามิเตอร์เส้นทาง

พารามิเตอร์
network_code string

รหัสเครือข่าย Google Ad Manager ของผู้เผยแพร่โฆษณา

custom_asset_key string

ตัวระบุที่กําหนดเองที่เชื่อมโยงกับเหตุการณ์นี้ใน Google Ad Manager

pod_identifier

ระบบรองรับรูปแบบต่อไปนี้

pod/{integer}

ตัวระบุที่เป็นตัวเลขสำหรับช่วงพักโฆษณาปัจจุบัน ระบบจะกำหนดรหัสพ็อดโฆษณา โดยเพิ่มขึ้นทีละรายการสำหรับเหตุการณ์ช่วงพักโฆษณาแต่ละรายการ โดยเริ่มที่ 1

ad_break_id/{string}

ตัวระบุสตริงสำหรับช่วงพักโฆษณาปัจจุบัน รหัสช่วงพักโฆษณาที่ผู้เผยแพร่โฆษณาระบุ ไม่มีข้อจํากัดเหมือนกับรหัสพ็อดโฆษณา รหัสช่วงพักโฆษณาที่ไม่รู้จักซึ่งระบุไว้ในปลายทางนั้นจะสร้างช่วงพักโฆษณาใหม่สำหรับเหตุการณ์ไลฟ์สด

profile_name string

ชื่อ ของโปรไฟล์การเข้ารหัส DAI ของ Google Ad Manager ที่ขอ โปรไฟล์การเข้ารหัสต้องเป็นหนึ่งในโปรไฟล์การเข้ารหัสที่กำหนดค่าไว้สำหรับ กิจกรรมที่เลือก

segment_number integer

ดัชนีของกลุ่มที่ขอภายในพ็อดโฆษณาปัจจุบัน โดยเริ่มต้นที่ 0

segment_format string

นามสกุลไฟล์ที่เชื่อมโยงกับรูปแบบกลุ่มที่ขอ นามสกุลที่ยอมรับ ได้แก่ ts, mp4, vtt, aac, ac3 หรือ eac3

พารามิเตอร์การค้นหา

พารามิเตอร์
stream_id ต้องระบุ string

รหัสสตรีมสำหรับเซสชันของผู้ใช้ปัจจุบัน ค่านี้จะแสดงโดยคำขอที่สำเร็จไปยังปลายทาง stream

sd required1 integer

ระยะเวลาของกลุ่มที่ขอเป็นมิลลิวินาที

so ไม่บังคับ

ออฟเซ็ตของกลุ่มที่ขอภายในพ็อดโฆษณาเป็นมิลลิวินาที หากคุณละเว้นพารามิเตอร์ so ระบบจะคํานวณโดย คูณระยะเวลาของกลุ่มด้วยหมายเลขกลุ่ม

pd ต้องระบุ2 integer

ระยะเวลาของพ็อดโฆษณาเป็นมิลลิวินาที

auth-token ต้องระบุ string

โทเค็น HMAC ที่ลงนามและเข้ารหัส URL สำหรับพ็อดโฆษณาปัจจุบัน

last ไม่บังคับ boolean

ระบุกลุ่มสุดท้ายในช่วงพักโฆษณา ละเว้นพารามิเตอร์นี้สำหรับกลุ่มอื่นๆ ทั้งหมด

scte35 ไม่บังคับ string

สัญญาณ SCTE-35 ที่เข้ารหัส Base64 สำหรับช่วงพักโฆษณานี้

cust_params ไม่บังคับ string

ชุดคู่คีย์-ค่าที่ใช้สำหรับการกำหนดเป้าหมายแคมเปญ Ad Manager คู่ เหล่านี้ต้องแสดงเป็นสตริงการค้นหาที่เข้ารหัส URL

ตัวอย่างเช่น
พารามิเตอร์
  • section = sports
  • page = golf,tennis
Request URL ...&cust_params=section%3Dsports%26page%3Dgolf%2Ctennis...

เชิงอรรถ

  1. sd ไม่จำเป็นสำหรับกลุ่มเป้าหมายเริ่มต้น
  2. pd ไม่จำเป็นสำหรับเหตุการณ์ที่เปิดใช้ช่วงพักโฆษณาแบบไม่มีระยะเวลา

ตัวอย่าง

GET https://dai.google.com/linear/pods/v1/seg/network/sandbox_dev/custom_asset/podserving-segredirect-custom-key/ad_break_id/adbreak-2/profile/8b8888cf79ad43f0800482ffc035a1ac_ts_a/1.ts?so=0&sd=10000&pd=30000&stream_id=8e19cbc6-850b-404c-99d7-860aa4a674cb:TEST

GET https://dai.google.com/linear/pods/v1/seg/network/sandbox_dev/custom_asset/podserving-segredirect-custom-key/pod/2/profile/8b8888cf79ad43f0800482ffc035a1ac_ts_a/1.ts?so=0&sd=10000&pd=30000&stream_id=8e19cbc6-850b-404c-99d7-860aa4a674cb:TEST

เนื้อหาการตอบกลับ

หากทำสำเร็จ เนื้อหาการตอบกลับจะเป็นสตรีมที่เล่นได้ซึ่งตรงกับ รูปแบบและพารามิเตอร์ที่ระบุในคำขอ

วิธีการ: ไฟล์ Manifest ของพ็อด HLS

เรียกไฟล์ Manifest ของพ็อดโฆษณา HLS ของไลฟ์สดที่พร้อมให้โปรแกรมเล่นวิดีโอของไคลเอ็นต์โหลดและเล่น

เมธอด
GET GET /linear/pods/v1/hls/network/{network_code}/custom_asset/{custom_asset}/{pod_identifier}.m3u8;

API สำหรับดึงข้อมูลเพลย์ลิสต์เวอร์ชันหลายตัวแปรของ HLS สำหรับพ็อดโฆษณา

คำขอ HTTP

GET https://dai.google.com/linear/pods/v1/hls/network/{network_code}/custom_asset/{custom_asset_key}/{pod_identifier}.m3u8?stream_id={stream_id}&pd={pod_duration}

พารามิเตอร์เส้นทาง

พารามิเตอร์
network_code string

รหัสเครือข่าย Google Ad Manager ของผู้เผยแพร่โฆษณา

custom_asset_key string

ตัวระบุที่กําหนดเองซึ่งเชื่อมโยงเหตุการณ์นี้ใน Google Ad Manager

pod_identifier

ระบบรองรับรูปแบบต่อไปนี้

pod/{integer}

ตัวระบุที่เป็นตัวเลขสำหรับช่วงพักโฆษณาปัจจุบัน ระบบจะกำหนดรหัสพ็อดโฆษณา โดยเพิ่มขึ้นทีละรายการสำหรับเหตุการณ์ช่วงพักโฆษณาแต่ละรายการ โดยเริ่มที่ 1

ad_break_id/{string}

ตัวระบุสตริงสำหรับช่วงพักโฆษณาปัจจุบัน รหัสช่วงพักโฆษณาที่ผู้เผยแพร่โฆษณาระบุ ไม่มีข้อจํากัดเหมือนกับรหัสพ็อดโฆษณา รหัสช่วงพักโฆษณาที่ไม่รู้จักซึ่งระบุไว้ในปลายทางนั้นจะสร้างช่วงพักโฆษณาใหม่สำหรับเหตุการณ์ไลฟ์สด

พารามิเตอร์การค้นหา

พารามิเตอร์
stream_id จำเป็น string

รหัสสตรีมสำหรับเซสชันของผู้ใช้ปัจจุบัน ค่านี้จะแสดงผลโดยคำขอที่สำเร็จไปยังปลายทาง stream

pd จำเป็น integer

ระยะเวลาของพ็อดโฆษณาเป็นมิลลิวินาที

scte35 ไม่บังคับ string

สัญญาณ SCTE-35 ที่เข้ารหัส Base64 สำหรับช่วงพักโฆษณานี้

cust_params ไม่บังคับ string

ชุดคู่คีย์-ค่าที่ใช้สำหรับการกำหนดเป้าหมายแคมเปญ Ad Manager คู่ เหล่านี้ต้องแสดงเป็นสตริงการค้นหาที่เข้ารหัส URL

ตัวอย่างเช่น
พารามิเตอร์
  • section = sports
  • page = golf,tennis
Request URL ...&cust_params=section%3Dsports%26page%3Dgolf%2Ctennis...

เนื้อหาการตอบกลับ

หากทำสำเร็จ เนื้อหาการตอบกลับจะเป็นเพลย์ลิสต์เวอร์ชันหลายตัวแปรของ HLS

วิธีการ: ไฟล์ Manifest ของพ็อด DASH

เรียกไฟล์ Manifest ของพ็อดโฆษณา MPEG-DASH ของไลฟ์สดที่พร้อมให้ วิดีโอเพลเยอร์ฝั่งไคลเอ็นต์โหลดและเล่น

เมธอด
GET GET /linear/pods/v1/dash/network/{network_code}/custom_asset/{custom_asset}/stream/{stream_id}/pod/{pod_id}/manifest.mpd

API สำหรับดึงข้อมูลเพลย์ลิสต์ MPEG-DASH mpd สำหรับพ็อดโฆษณา

คำขอ HTTP

GET https://dai.google.com/linear/pods/v1/dash/network/{network_code}/custom_asset/{custom_asset_key}/stream/{stream_id}/pod/{pod_id}/manifest.mpd?pd={pod_duration}

พารามิเตอร์เส้นทาง

พารามิเตอร์
network_code string

รหัสเครือข่าย Google Ad Manager ของผู้เผยแพร่โฆษณา

custom_asset_key string

ตัวระบุที่กําหนดเองซึ่งเชื่อมโยงเหตุการณ์นี้ใน Google Ad Manager

stream_id string

รหัสสตรีมสำหรับเซสชันของผู้ใช้ปัจจุบัน ค่านี้จะแสดงผลโดยคำขอที่สำเร็จไปยังปลายทาง stream

pod_id integer

ตัวระบุที่เป็นตัวเลขสำหรับช่วงพักโฆษณาปัจจุบัน ระบบจะกำหนดรหัสพ็อดโฆษณา โดยเพิ่มขึ้นทีละรายการสำหรับเหตุการณ์ช่วงพักโฆษณาแต่ละรายการ โดยเริ่มที่ 1

พารามิเตอร์การค้นหา

พารามิเตอร์
pd จำเป็น integer

ระยะเวลาของพ็อดโฆษณาเป็นมิลลิวินาที

scte35 ไม่บังคับ string

สัญญาณ SCTE-35 ที่เข้ารหัส Base64 สำหรับช่วงพักโฆษณานี้

cust_params ไม่บังคับ string

ชุดคู่คีย์-ค่าที่ใช้สำหรับการกำหนดเป้าหมายแคมเปญ Ad Manager คู่ เหล่านี้ต้องแสดงเป็นสตริงการค้นหาที่เข้ารหัส URL

ตัวอย่างเช่น
พารามิเตอร์
  • section = sports
  • page = golf,tennis
Request URL ...&cust_params=section%3Dsports%26page%3Dgolf%2Ctennis...

เนื้อหาการตอบกลับ

หากทำสำเร็จ เนื้อหาการตอบกลับจะเป็นเพลย์ลิสต์ MPEG-DASH mpd

วิธีการ: เทมเพลตระยะเวลาพ็อด DASH

เมธอด
pods GET /linear/pods/v1/dash/network/{network_code}/custom_asset/{custom_asset_key}/pods.json

ขอเทมเพลตช่วง DASH จาก Google Ad Manager เทมเพลตนี้ มีมาโครที่คุณต้องป้อนพารามิเตอร์สตรีม เมื่อ ระบบป้อนข้อมูลมาโครเหล่านี้แล้ว เทมเพลตจะกลายเป็นช่วงพักโฆษณา และ สามารถเย็บรวมเข้ากับไฟล์ Manifest ของ DASH ได้

คำขอ HTTP

GET https://dai.google.com/linear/pods/v1/dash/network/{network_code}/custom_asset/{custom_asset_key}/pods.json

พารามิเตอร์เส้นทาง

พารามิเตอร์
network_code string

รหัสเครือข่าย Google Ad Manager ของผู้เผยแพร่โฆษณา

custom_asset_key string

ตัวระบุที่กําหนดเองที่เชื่อมโยงกับเหตุการณ์นี้ใน Google Ad Manager

พารามิเตอร์การค้นหา

พารามิเตอร์
stream_id ต้องระบุ string

รหัสสตรีมสำหรับเซสชันของผู้ใช้ปัจจุบัน ค่านี้จะแสดงโดยคำขอที่สำเร็จไปยังปลายทาง stream

เนื้อหาการตอบกลับ

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีออบเจ็กต์ PodTemplateResponse ใหม่

วิธี: ข้อมูลเมตาของเวลาพ็อดโฆษณา

เมธอด
ad pod timing metadata GET /linear/pods/v1/adv/network/{network_code}/custom_asset/{custom_asset_key}/pod.json

ดึงข้อมูลเมตาเวลาของพ็อดโฆษณา

คำขอ HTTP

GET https://dai.google.com/linear/pods/v1/adv/network/{network_code}/custom_asset/{custom_asset_key}/pod.json

พารามิเตอร์เส้นทาง

พารามิเตอร์
network_code string

รหัสเครือข่าย Google Ad Manager ของผู้เผยแพร่โฆษณา

custom_asset_key string

ตัวระบุที่กำหนดเองซึ่งเชื่อมโยงกับไลฟ์สดนี้ใน Google Ad Manager

พารามิเตอร์การค้นหา

พารามิเตอร์
stream_id จำเป็น string

รหัสสตรีม Ad Manager จากแอปวิดีโอเพลเยอร์ของไคลเอ็นต์

ad_break_id ต้องระบุ string

รหัสช่วงพักโฆษณาที่กำลังจะมาถึง

เซิร์ฟเวอร์การเย็บหรือ VTP จะเป็นผู้ระบุรหัสช่วงพักโฆษณา และรหัสจะต้องตรงกัน ในการแจ้งเตือนก่อนเข้าช่วงพักโฆษณา คำขอข้อมูลเมตาเกี่ยวกับเวลาของพ็อดโฆษณา และคำขอเปลี่ยนเส้นทางของกลุ่มสำหรับช่วงพักโฆษณาเดียวกัน

รหัสช่วงพักโฆษณาที่กำหนดเองมีข้อจำกัดดังนี้

  • ต้องมีความยาวระหว่าง 1 ถึง 63 อักขระ
  • ต้องประกอบด้วยตัวอักษรพิมพ์เล็ก ตัวเลข และขีดกลางเท่านั้น
  • ระบบสงวนรหัสช่วงพักโฆษณา preroll ไว้เพื่อดึงข้อมูล พ็อดโฆษณาตอนต้น และใช้เพื่อระบุพ็อดโฆษณาอื่นๆ ไม่ได้
auth-token ต้องระบุ string

auth-token ประกอบด้วย โทเค็น HMAC ที่มีพารามิเตอร์ต่อไปนี้

  • ad_break_id
  • custom_asset_key
  • exp
  • network_code
  • custom_params
  • pd
  • scte35
timeout ไม่บังคับ integer

จำนวนมิลลิวินาทีที่ DAI สามารถบล็อกคำขอนี้เพื่อรอการตัดสินใจเกี่ยวกับโฆษณา ใช้พารามิเตอร์นี้ในคำขอที่ต้องแสดงโฆษณาที่ป้อนข้อมูลในคำขอแรก เช่น ช่วงพักโฆษณาก่อนวิดีโอ

หากหมดเวลา คำขอจะแสดงสถานะเป็น "รอดำเนินการ"

หากรวมไว้ ค่าหมดเวลาต้องอยู่ระหว่าง 1,000 ถึง 15,000 มิลลิวินาที หากไม่ระบุ ระบบจะไม่หน่วงเวลาการตอบกลับเพื่อรอการตัดสินใจเกี่ยวกับโฆษณา

final ไม่บังคับ boolean

ตั้งค่าเป็น true เพื่อระบุให้ DAI ทราบว่านี่คือคำขอสุดท้าย ที่ VTP ยินดีที่จะส่งสำหรับพ็อดโฆษณานี้ หากยังไม่มีการตัดสินใจเกี่ยวกับโฆษณา (ตามการหมดเวลาที่ไม่บังคับ) DAI จะแสดงสเลต อย่างถาวรสำหรับคำขอนี้

ค่าเริ่มต้นคือ false

พารามิเตอร์การตัดสินใจเกี่ยวกับโฆษณา

pd ไม่บังคับ integer

ระยะเวลาของช่วงพักโฆษณา (เป็นมิลลิวินาที) หรือที่เรียกว่าระยะเวลาของพ็อดโฆษณา

หากใช้ EABN ค่า pd ต้องตรงกับระยะเวลาที่ระบุในการแจ้งเตือนช่วงพักโฆษณา หากระยะเวลาไม่ตรงกัน ระบบจะให้ความสำคัญกับค่า EABN

cust_params ไม่บังคับ string

พารามิเตอร์ที่กำหนดเองสำหรับการกำหนดเป้าหมายช่วงพักโฆษณาตามที่อธิบายไว้ในศูนย์ช่วยเหลือของ Ad Manager

scte35 ไม่บังคับ string

สัญญาณ SCTE-35 ที่เข้ารหัส Base64

หากสัญญาณไม่ถูกต้อง ระบบจะส่งข้อความใน ส่วนหัว HTTP X-Ad-Manager-Dai-Warning ของการตอบกลับ และ จะส่งคำขอโดยไม่มีค่า scte35 ที่ไม่ถูกต้อง

เนื้อหาการตอบกลับ

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีออบเจ็กต์ AdPodTimingMetadataResponse ใหม่

วิธีการ: การยืนยันสื่อ

หลังจากพบตัวระบุสื่อโฆษณาระหว่างการเล่น ให้ส่งคำขอทันทีโดยใช้ media_verification_url ที่ได้จากปลายทาง stream ด้านบน คำขอเหล่านี้ไม่จำเป็นสำหรับสตรีมที่ใช้การรายงานบีคอนฝั่งเซิร์ฟเวอร์ ซึ่งเซิร์ฟเวอร์เป็นผู้เริ่มการยืนยันสื่อ

คำขอไปยังปลายทาง media verification เป็นแบบ Idempotent

เมธอด
media verification GET /{media_verification_url}/{ad_media_id}

แจ้ง API เกี่ยวกับเหตุการณ์การยืนยันสื่อ

คำขอ HTTP

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

เนื้อหาการตอบกลับ

media verification จะแสดงการตอบกลับต่อไปนี้

  • HTTP/1.1 204 No Content หากการยืนยันสื่อสำเร็จและส่งการ Ping ทั้งหมด แล้ว
  • HTTP/1.1 404 Not Found หากคำขอไม่สามารถยืนยันสื่อเนื่องจาก การจัดรูปแบบ URL ไม่ถูกต้องหรือหมดอายุ
  • HTTP/1.1 404 Not Found หากคำขอการยืนยันก่อนหน้านี้สำหรับรหัสนี้ สำเร็จ
  • HTTP/1.1 409 Conflict หากคำขออื่นส่งการ Ping อยู่แล้วในขณะนี้

รหัสสื่อโฆษณา

ระบบจะเข้ารหัสตัวระบุสื่อโฆษณาในแทร็กข้อมูลเมตาแยกต่างหาก ซึ่งก็คือ timed metadata สำหรับสตรีมการขนส่ง HLS หรือ emsg สำหรับไฟล์ mp4 ตัวระบุสื่อโฆษณา จะเริ่มต้นด้วยสตริง google_ เสมอ

ควรผนวกเนื้อหาข้อความทั้งหมดของรายการข้อมูลเมตาเข้ากับ URL การยืนยันโฆษณาก่อนที่จะส่งคำขอการยืนยันโฆษณาแต่ละรายการ

วิธีการ: ข้อมูลเมตา

ปลายทางข้อมูลเมตาที่ metadata_url จะแสดงข้อมูลที่ใช้สร้าง UI ของโฆษณา ปลายทางข้อมูลเมตาไม่พร้อมใช้งานสำหรับสตรีมที่ใช้บีคอนฝั่งเซิร์ฟเวอร์ ซึ่งเซิร์ฟเวอร์มีหน้าที่รับผิดชอบในการเริ่มต้นการยืนยันสื่อโฆษณา

เมธอด
metadata GET /{metadata_url}/{ad-media-id}

GET /{metadata_url}

เรียกข้อมูลเมตาของโฆษณา

คำขอ HTTP

GET https://{metadata_url}/{ad-media-id}

GET https://{metadata_url}

เนื้อหาการตอบกลับ

หากทำสำเร็จ การตอบกลับจะแสดงอินสแตนซ์ของ PodMetadata

การแยกวิเคราะห์ข้อมูลเมตา

ข้อมูลเมตามี 3 ส่วนที่แยกกัน ได้แก่ tags, ads และโฆษณา breaks จุดแรกเข้าสู่ข้อมูลคือส่วน tags จากนั้น ให้วนซ้ำผ่านแท็ก และค้นหารายการแรกที่มีชื่อเป็นคำนำหน้าของ รหัสสื่อโฆษณาที่พบในสตรีมวิดีโอ เช่น คุณอาจมีรหัสสื่อโฆษณาที่มีลักษณะดังนี้

google_1234567890

จากนั้นคุณจะเห็นออบเจ็กต์แท็กชื่อ google_12345 ในกรณีนี้ จะตรงกับ รหัสสื่อโฆษณา เมื่อพบออบเจ็กต์คำนำหน้าสื่อโฆษณาที่ถูกต้องแล้ว คุณจะค้นหา รหัสโฆษณา รหัสช่วงพักโฆษณา และประเภทเหตุการณ์ได้ จากนั้นระบบจะใช้รหัสโฆษณาเพื่อจัดทำดัชนีออบเจ็กต์ ads และใช้รหัสช่วงพักโฆษณาเพื่อจัดทำดัชนีออบเจ็กต์ breaks

ข้อมูลการตอบกลับ

สตรีม

Stream ใช้ในการแสดงรายการทรัพยากรสำหรับสตรีมที่สร้างขึ้นใหม่ในรูปแบบ JSON
การแสดง JSON
{
  "stream_id": string,
  "media_verification_url": string,
  "metadata_url": string,
  "session_update_url": string,
  "heartbeat_url": string,
  "polling_frequency": number,
  "pod_manifest_url": string,
  "manifest_format": string,
}
ช่อง
stream_id string

ตัวระบุสตรีม GAM
media_verification_url string

URL การยืนยันสื่อที่ใช้เป็นปลายทางฐานสําหรับติดตามเหตุการณ์การเล่น
metadata_url string

URL ข้อมูลเมตาที่ใช้ในการสำรวจข้อมูลเป็นระยะๆ เกี่ยวกับเหตุการณ์โฆษณาในสตรีมที่กำลังจะเกิดขึ้น
session_update_url string

URL การอัปเดตเซสชันที่ใช้เพื่ออัปเดตพารามิเตอร์การกำหนดเป้าหมายสำหรับสตรีมนี้ ระบบจะบันทึกค่าเดิมของพารามิเตอร์การกำหนดเป้าหมายในระหว่างคำขอสร้างสตรีมครั้งแรก
heartbeat_url string

URL ของ Heartbeat ซึ่งใช้เพื่อรักษาสตรีมการบีคอนฝั่งเซิร์ฟเวอร์ให้ทำงานอยู่ ต้องมีการ Ping ทุกๆ {PollingFrequency} วินาที ระบุสำหรับสตรีมบีคอนฝั่งเซิร์ฟเวอร์
polling_frequency number

ความถี่ในการตรวจสอบสถานะเป็นวินาทีเมื่อขอ metadata_url หรือ heartbeat_url
pod_manifest_url string

เทมเพลต URL ของไฟล์ Manifest ของพ็อดใช้เพื่อสร้าง URL สำหรับดึงไฟล์ Manifest ของพ็อดของสตรีม ซึ่งสอดคล้องกับ URL ของเพลย์ลิสต์เวอร์ชันหลายตัวแปรใน HLS หรือ MPD ใน DASH สร้างขึ้นสำหรับกิจกรรมการถ่ายทอดสดของประเภทการแทรกโฆษณาแบบไดนามิก POD_SERVING_MANIFEST https://developers.google.com/ad-manager/api/reference/v202305/LiveStreamEventService.DynamicAdInsertionType
manifest_format string

รูปแบบ Manifest คือรูปแบบของ Manifest ที่ดึงมาจาก pod_manifest_url ไม่ว่าจะเป็น DASH หรือ HLS

PodMetadata

PodMetadata มีข้อมูลเมตาเกี่ยวกับโฆษณา ช่วงพักโฆษณา และแท็กรหัสสื่อ
การแสดง JSON
{
  "tags": map[string, object(TagSegment)],
  "ads": map[string, object(Ad)],
  "ad_breaks": map[string, object(AdBreak)],
}
ช่อง
tags map[string, object(TagSegment)]

แผนที่ของกลุ่มแท็กที่จัดทำดัชนีตามคำนำหน้าแท็ก
ads map[string, object(Ad)]

แผนที่โฆษณาที่จัดทำดัชนีตามรหัสโฆษณา
ad_breaks map[string, object(AdBreak)]

แผนที่ของช่วงพักโฆษณาที่จัดทำดัชนีตามรหัสช่วงพักโฆษณา

TagSegment

TagSegment มีการอ้างอิงถึงโฆษณา ช่วงพักโฆษณา และประเภทเหตุการณ์ ไม่ควรปิง TagSegment ที่มี type="progress" ไปยังปลายทางการยืนยันสื่อโฆษณา
การแสดง JSON
{
  "ad": string,
  "ad_break_id": string,
  "type": string,
}
ช่อง
ad string

รหัสของโฆษณาของแท็กนี้
ad_break_id string

รหัสของช่วงพักโฆษณาของแท็กนี้
type string

ประเภทเหตุการณ์ของแท็กนี้

AdBreak

AdBreak อธิบายช่วงพักโฆษณาเดียวในสตรีม โดยมีระยะเวลา ประเภท (กลาง/ก่อน/หลัง) และจำนวนโฆษณา
การแสดง JSON
{
  "type": string,
  "duration": number,
  "expected_duration": number,
  "ads": number,
}
ช่อง
type string

ประเภทการหยุดพักที่ใช้ได้ ได้แก่ ก่อน ระหว่าง และหลัง
duration number

ระยะเวลาโฆษณาทั้งหมดสำหรับช่วงพักโฆษณานี้ หน่วยเป็นวินาที
expected_duration number

ระยะเวลาที่คาดไว้ของช่วงพักโฆษณา (เป็นวินาที) รวมถึงโฆษณาทั้งหมดและแถบสเลท
ads number

จำนวนโฆษณาในช่วงพักโฆษณา
Ad อธิบายโฆษณาในสตรีม
การแสดง JSON
{
  "ad_break_id": string,
  "position": 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,
  "click_tracking_urls": [],
  "verifications": [object(Verification)],
  "slate": boolean,
  "icons": [object(Icon)],
  "wrappers": [object(Wrapper)],
  "universal_ad_id": object(UniversalAdID),
  "extensions": [],
  "companions": [object(Companion)],
  "interactive_file": object(InteractiveFile),
}
ช่อง
ad_break_id string

รหัสของช่วงพักโฆษณาของโฆษณานี้
position number

ตำแหน่งของโฆษณานี้ในช่วงพักโฆษณา โดยเริ่มที่ 1
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

URL การคลิกผ่านที่ไม่บังคับ
click_tracking_urls string

URL การติดตามคลิกที่ไม่บังคับ
verifications [object(Verification)]

รายการการยืนยัน Open Measurement ที่ไม่บังคับซึ่งแสดงรายการทรัพยากร และข้อมูลเมตาที่จำเป็นในการเรียกใช้โค้ดการวัดผลของบุคคลที่สามเพื่อยืนยัน การเล่นครีเอทีฟโฆษณา
slate boolean

บูลีนที่ไม่บังคับซึ่งระบุว่ารายการปัจจุบันเป็นสเลต
icons [object(Icon)]

รายการไอคอน ซึ่งจะไม่มีหากว่างเปล่า
wrappers [object(Wrapper)]

รายการ Wrapper ซึ่งจะไม่มีหากว่างเปล่า
universal_ad_id object(UniversalAdID)

รหัสโฆษณาสากลที่ไม่บังคับ
extensions string

รายการโหนด <Extension> ทั้งหมดใน VAST (ไม่บังคับ)
companions [object(Companion)]

ครีเอทีฟโฆษณาที่แสดงร่วมที่ไม่บังคับซึ่งอาจแสดงพร้อมกับโฆษณานี้
interactive_file object(InteractiveFile)

ครีเอทีฟโฆษณาแบบอินเทอร์แอกทีฟที่ไม่บังคับ (SIMID) ซึ่งควรแสดงระหว่างการเล่นโฆษณา

PodTemplateResponse

PodTemplateResponse แสดงเพย์โหลด JSON ที่ส่งคืนไปยัง VTP สำหรับการเย็บพ็อด
การแสดง JSON
{
  "dash_period_template": string,
  "segment_duration_ms": int64,
}
ช่อง
dash_period_template string

DashPeriodTemplate คือเทมเพลต XML สำหรับช่วงที่จะกรอกข้อมูลที่เหมาะสมก่อนการเย็บ
segment_duration_ms int64

SegmentDurationMS คือระยะเวลาของกลุ่มช่วงเวลาเป็นมิลลิวินาที

AdpodTimingMetadataResponse

AdpodTimingMetadataResponse มีข้อมูลเกี่ยวกับ Ad Pod และวิธีสร้าง URL ของกลุ่ม สำหรับ Ad Pod
การแสดง JSON
{
  "status": string,
  "ads": [object(AdRendering)],
  "slate": object(SlateRendering),
  "dash_representations": map[string, object(DASHRepresentation)],
  "dash_adaptation_sets": map[string, object(DASHAdaptationSet)],
}
ช่อง
status string

สถานะการตัดสินใจสำหรับพ็อดโฆษณา
ads [object(AdRendering)]

อาร์เรย์ของออบเจ็กต์โฆษณาที่อธิบายวิธีแสดงผล URL ของกลุ่มโฆษณา โดยจัดทำดัชนีเริ่มต้นที่ 0
slate object(SlateRendering)

Slate ที่อธิบายวิธีแสดงผล URL ของส่วน Slate
dash_representations map[string, object(DASHRepresentation)]

รายการการแสดง DASH สำหรับพ็อดโฆษณานั้นที่จะแสดงในไฟล์ Manifest ของ DASH
dash_adaptation_sets map[string, object(DASHAdaptationSet)]

รายการชุดการปรับ DASH สำหรับพ็อดโฆษณานั้นที่จะแสดงในไฟล์ Manifest ของ DASH

AdRendering

AdRendering อธิบายวิธีแสดงโฆษณาที่ตัดสินแล้ว
การแสดง JSON
{
  "duration_ms": number,
  "variants": map[string, object(VariantRendering)],
}
ช่อง
duration_ms number

ระยะเวลาของโฆษณา หน่วยเป็นมิลลิวินาที (int)
variants map[string, object(VariantRendering)]

พจนานุกรมของออบเจ็กต์ตัวแปร (ดูด้านล่าง) ซึ่งจัดทำดัชนีตามรหัสตัวแปร/โปรไฟล์ตามที่กำหนดค่าจาก UI

SlateRendering

SlateRendering อธิบายวิธีแสดงเนื้อหา Slate
การแสดง JSON
{
  "duration_ms": number,
  "variants": map[string, object(VariantRendering)],
}
ช่อง
duration_ms number

ระยะเวลาของสเลตเป็นมิลลิวินาที (int)
variants map[string, object(VariantRendering)]

พจนานุกรมของออบเจ็กต์ตัวแปรที่จัดทำดัชนีตามรหัสตัวแปร/โปรไฟล์ ต้องวนซ้ำระยะเวลาของสเลตจนกว่าจะถึงความยาวของสเลตที่ต้องการ โดยการแทรกการหยุดชะงักของ HLS ระหว่างการวนซ้ำ หรือวนซ้ำช่วงใหม่สำหรับ MPEG-DASH

VariantRendering

VariantRendering อธิบายผลิตภัณฑ์ย่อย/โปรไฟล์ 1 รายการภายในโฆษณา/สเลต
การแสดง JSON
{
  "segment_extension": string,
  "segment_durations": object(SegmentDurations),
}
ช่อง
segment_extension string

สตริง ซึ่งเป็นหนึ่งในค่าต่อไปนี้ ts, mp4, aac, ac3, ec3, m4a, m4v ส่วนนามสกุลไฟล์ของ URL กลุ่ม
segment_durations object(SegmentDurations)

ออบเจ็กต์ SegmentDurations ระยะเวลาของแต่ละกลุ่มจะแปลงเป็น URL ของกลุ่มได้

SegmentDurations

SegmentDurations อธิบายระยะเวลาของลำดับของกลุ่มในหน่วยเวลาที่ระบุ
การแสดง JSON
{
  "timescale": number,
  "values": [],
}
ช่อง
timescale number

Timescale คือจำนวนหน่วยต่อวินาที (int) คาดว่าจะเป็น 1000 สำหรับ HLS (มิลลิวินาที) 90000 สำหรับวิดีโอ DASH (PTS) อัตราการสุ่มตัวอย่างเสียงสำหรับเสียง DASH
values number

อาร์เรย์ของระยะเวลาของกลุ่ม int ในหน่วยไทม์สเกล

DASHRepresentation

DASHRepresentation อธิบายโหนด Representation ที่จะแสดงในไฟล์ Manifest ของ DASH
การแสดง JSON
{
  "codecs": string,
  "bandwidth": number,
  "width": number,
  "height": number,
  "frame_rate": string,
  "audio_sampling_rate": number,
  "audio_channel_config": object(SchemeIDURIAndValue),
}
ช่อง
codecs string

ตัวแปลงรหัสของภาพ
bandwidth number

แบนด์วิดท์ของเวอร์ชัน
width number

ความกว้างของภาพ
height number

ความสูงของภาพ
frame_rate string

อัตราเฟรมของภาพ
audio_sampling_rate number

อัตราการสุ่มตัวอย่างเสียงของตัวแทน
audio_channel_config object(SchemeIDURIAndValue)

การกำหนดค่าช่องเสียงของ Representation

DASHAdaptationSet

DASHAdaptationSet อธิบายโหนด AdaptationSet ที่จะแสดงในไฟล์ Manifest ของ DASH
การแสดง JSON
{
  "content_type": string,
  "mime_type": string,
  "role": object(SchemeIDURIAndValue),
  "inband_event_stream": object(SchemeIDURIAndValue),
  "min_frame_rate": string,
  "max_frame_rate": string,
  "scan_type": string,
  "start_with_sap": string,
  "segment_alignment": boolean,
  "representations": [],
}
ช่อง
content_type string

ประเภทเนื้อหาของชุดการดัดแปลง
mime_type string

ประเภท MIME ของชุดการดัดแปลง
role object(SchemeIDURIAndValue)

บทบาทของชุดการปรับเปลี่ยน
inband_event_stream object(SchemeIDURIAndValue)

สตรีมเหตุการณ์ในแบนด์ของชุดการปรับ
min_frame_rate string

อัตราเฟรมขั้นต่ำของชุดการดัดแปลง
max_frame_rate string

อัตราเฟรมสูงสุดของชุดการดัดแปลง
scan_type string

ประเภทการสแกนของชุดการดัดแปลง
start_with_sap string

เริ่มต้นด้วย SAP ของชุดการดัดแปลง
segment_alignment boolean

การจัดแนวกลุ่มของชุดการปรับเปลี่ยน
representations string

การแสดงชุดการปรับเปลี่ยน

SchemeIDURIAndValue

SchemeIDURIAndValue คือคู่ของรหัสสคีมาและค่าของรหัส
การแสดง JSON
{
  "scheme_id_uri": string,
  "value": string,
}
ช่อง
scheme_id_uri string

URI ของรหัสรูปแบบของค่า
value string

ค่าของ URI รหัสรูปแบบ

Icon

ไอคอนมีข้อมูลเกี่ยวกับไอคอน 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

Wrapper

Wrapper มีข้อมูลเกี่ยวกับโฆษณา Wrapper โดยจะไม่รวมรหัสข้อตกลงหากไม่มี
การแสดง JSON
{
  "system": string,
  "ad_id": string,
  "creative_id": string,
  "creative_ad_id": string,
  "deal_id": string,
}
ช่อง
system string

ตัวระบุระบบโฆษณา
ad_id string

รหัสโฆษณาที่ใช้สำหรับโฆษณา Wrapper
creative_id string

รหัสครีเอทีฟโฆษณาที่ใช้สำหรับโฆษณา Wrapper
creative_ad_id string

รหัสโฆษณาของครีเอทีฟโฆษณาที่ใช้สำหรับโฆษณา Wrapper
deal_id string

รหัสดีลที่ไม่บังคับสำหรับโฆษณา Wrapper

การยืนยัน

การยืนยันมีข้อมูลสำหรับ 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

URI ไปยังเพย์โหลด JavaScript
api_framework string

APIFramework คือชื่อของเฟรมเวิร์กวิดีโอที่ใช้รหัสยืนยัน
browser_optional boolean

สคริปต์นี้เรียกใช้ภายนอกเบราว์เซอร์ได้ไหม

TrackingEvent

TrackingEvent มี URL ที่ไคลเอ็นต์ควรปิงในบางสถานการณ์
การแสดง JSON
{
  "event": string,
  "uri": string,
}
ช่อง
event string

ประเภทของเหตุการณ์การติดตาม
uri string

เหตุการณ์การติดตามที่จะปิง

UniversalAdID

UniversalAdID ใช้เพื่อระบุตัวระบุครีเอทีฟโฆษณาที่ไม่ซ้ำกันซึ่ง ได้รับการดูแลในระบบโฆษณา
การแสดง JSON
{
  "id_value": string,
  "id_registry": string,
}
ช่อง
id_value string

รหัสโฆษณาสากลของครีเอทีฟโฆษณาที่เลือกสำหรับโฆษณา
id_registry string

สตริงที่ใช้ระบุ URL สำหรับเว็บไซต์รีจิสทรีที่ระบบจัดทำแคตตาล็อก รหัสโฆษณาสากลของครีเอทีฟโฆษณาที่เลือก

Companion

Companion มีข้อมูลสำหรับโฆษณาที่แสดงร่วมซึ่งอาจแสดง พร้อมกับโฆษณา
การแสดง 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

แอตทริบิวต์ CreativeType ในโหนด <StaticResource> ใน VAST หากเป็น โฆษณาที่แสดงร่วมประเภทคงที่
height int32

ความสูงเป็นพิกเซลของโฆษณาที่แสดงร่วมนี้
width int32

ความกว้างเป็นพิกเซลของโฆษณาที่แสดงร่วมนี้
resource string

สำหรับโฆษณาที่แสดงร่วมแบบคงที่และแบบ iframe นี่จะเป็น URL ที่จะโหลดและ แสดง สำหรับโฆษณาที่แสดงร่วม HTML นี่จะเป็นข้อมูลโค้ด HTML ที่ควร แสดงเป็นโฆษณาที่แสดงร่วม
type string

ประเภทของวิดีโอที่แสดงร่วมนี้ โดยอาจเป็นแบบคงที่, iframe หรือ HTML ก็ได้
ad_slot_id string

รหัสช่องสำหรับโฆษณาที่แสดงร่วมนี้
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