डाइनैमिक ऐड इंसर्शन एपीआई की मदद से, डीएआई मांग पर वीडियो (वीओडी) स्ट्रीम का अनुरोध और उन्हें ट्रैक किया जा सकता है. HLS और DASH स्ट्रीम इस्तेमाल की जा सकती हैं.
सेवा: dai.google.com
stream
तरीके का पाथ, https://dai.google.com
से मिलता-जुलता है
तरीका: स्ट्रीम
तरीके | |
---|---|
stream |
POST /ondemand/v1/hls/content/{content-source}/vid/{video-id}/stream
दिए गए कॉन्टेंट सोर्स और वीडियो आईडी के लिए, HLS डीएआई स्ट्रीम बनाता है.
दिए गए कॉन्टेंट सोर्स और वीडियो आईडी के लिए, DASH डीएआई स्ट्रीम बनाता है. |
एचटीटीपी अनुरोध
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 स्ट्रीम बनाते समय दी गई एपीआई पासकोड, पब्लिशर के नेटवर्क के लिए मान्य होना चाहिए. अनुरोध के मुख्य हिस्से में इसे देने के बजाय, एपीआई पासकोड को इस फ़ॉर्मैट में, एचटीटीपी ऑथराइज़ेशन हेडर में पास किया जा सकता है: Authorization: DCLKDAI key="<api-key>" |
पाथ के पैरामीटर
पैरामीटर | |
---|---|
content-source |
string स्ट्रीम का कॉन्टेंट मैनेजमेंट सिस्टम आईडी. |
video-id |
string स्ट्रीम का वीडियो आईडी. |
अनुरोध का मुख्य भाग
अनुरोध का मुख्य हिस्सा application/x-www-form-urlencoded
का है और इसमें नीचे दिए गए पैरामीटर
शामिल हैं:
पैरामीटर | ||
---|---|---|
dai-ssb |
ज़रूरी नहीं | सर्वर-साइड-बीकनिंग स्ट्रीम बनाने के लिए, |
GDN टारगेटिंग पैरामीटर | ज़रूरी नहीं | टारगेटिंग के अन्य पैरामीटर. |
स्ट्रीम के पैरामीटर बदलना | ज़रूरी नहीं | स्ट्रीम बनाने वाले पैरामीटर की डिफ़ॉल्ट वैल्यू बदलें. |
एचएमएसी से पुष्टि करना | ज़रूरी नहीं | एचएमएसी पर आधारित टोकन का इस्तेमाल करके पुष्टि करें. |
जवाब का मुख्य भाग
कामयाब रहने पर, जवाब के मुख्य हिस्से में एक नया Stream
शामिल किया जाता है. सर्वर-साइड-बीकनिंग स्ट्रीम के लिए, इस Stream
में सिर्फ़ stream_id
और stream_manifest
फ़ील्ड शामिल हैं.
मेज़रमेंट खोलें
Verifications
फ़ील्ड में, नॉन-सर्वर-साइड-बीकनिंग स्ट्रीम के लिए ओपन मेज़रमेंट
पुष्टि की जानकारी होती है.
Verifications
में एक या ज़्यादा Verification
एलिमेंट होते हैं. इनमें उन संसाधनों और मेटाडेटा की सूची होती है जो तीसरे पक्ष के मेज़रमेंट कोड की मदद से, क्रिएटिव प्लेबैक की पुष्टि करने के लिए ज़रूरी होते हैं.
वैल्यू के तौर पर, सिर्फ़ JavaScriptResource
को इस्तेमाल किया जा सकता है. ज़्यादा जानकारी के लिए,
कृपया IAB Tech Lab
और VAST 4.1 की खास जानकारी देखें.
तरीका: मीडिया की पुष्टि करना
वीडियो चलाने के दौरान विज्ञापन मीडिया आइडेंटिफ़ायर मिलने पर, stream
एंडपॉइंट से media_verification_url
का इस्तेमाल करके तुरंत अनुरोध करें. media_verification_url
एक ऐब्सलूट पाथ है.
मीडिया की पुष्टि के अनुरोध सर्वर-साइड-बीकनिंग स्ट्रीम के लिए ज़रूरी नहीं हैं, जहां सर्वर मीडिया की पुष्टि शुरू करता है.
media verification
एंडपॉइंट के अनुरोध बिना किसी पहचान के होते हैं.
तरीके | |
---|---|
media verification |
GET {media_verification_url}/{ad_media_id}
मीडिया की पुष्टि करने वाले इवेंट के एपीआई को सूचना देता है. |
एचटीटीपी अनुरोध
GET {media-verification-url}/{ad-media-id}
जवाब का मुख्य भाग
media verification
इन जवाबों को दिखाता है:
HTTP/1.1 204 No Content
, अगर मीडिया की पुष्टि हो जाती है और सभी पिंग भेजे जाते हैं.HTTP/1.1 404 Not Found
, अगर यूआरएल की गलत फ़ॉर्मैटिंग या समयसीमा खत्म होने की वजह से, अनुरोध किया गया मीडिया की पुष्टि नहीं हो सकी.HTTP/1.1 404 Not Found
, अगर इस आईडी के लिए पुष्टि करने का पिछला अनुरोध पूरा हो गया था.- अगर कोई दूसरा अनुरोध पहले से ही इस समय पिंग भेज रहा है, तो
HTTP/1.1 409 Conflict
.
विज्ञापन मीडिया आईडी (HLS)
विज्ञापन मीडिया आइडेंटिफ़ायर को HLS टाइम्ड मेटाडेटा में कोड में बदलने के लिए, TXXX
कुंजी का इस्तेमाल किया जाएगा. यह कुंजी, "उपयोगकर्ता की तय की गई टेक्स्ट की जानकारी" वाले फ़्रेम के लिए सुरक्षित होती है. फ़्रेम का कॉन्टेंट एन्क्रिप्ट नहीं किया जाएगा और इसकी शुरुआत हमेशा "google_"
टेक्स्ट से होगी.
विज्ञापन की पुष्टि के हर अनुरोध के लिए, फ़्रेम का पूरा टेक्स्ट कॉन्टेंट media_verification_url में जोड़ा जाना चाहिए.
विज्ञापन मीडिया आईडी (DASH)
विज्ञापन मीडिया आइडेंटिफ़ायर को DASH के EventStream
एलिमेंट का इस्तेमाल करके
मेनिफ़ेस्ट में डाला जाएगा.
हर EventStream
का स्कीम आईडी यूआरआई, urn:google:dai:2018
होगा.
इनमें messageData
एट्रिब्यूट वाले इवेंट शामिल होंगे, जिनमें
“google_”
से शुरू होने वाला विज्ञापन मीडिया आईडी होगा. विज्ञापन की पुष्टि के हर अनुरोध के लिए, messageData
एट्रिब्यूट का पूरा कॉन्टेंट media_verification_url में जोड़ा जाना चाहिए.
जवाब का डेटा
स्ट्रीम
स्ट्रीम का इस्तेमाल, 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 वह तारीख जब तक स्ट्रीम आरएफ़सी 3339 फ़ॉर्मैट में मान्य है. |
subtitles |
[object(Subtitle)] सबटाइटल की सूची. खाली होने पर हटा दिया जाएगा. यह सिर्फ़ HLS के लिए है. |
hls_master_playlist |
string (रोका गया) HLS मास्टर प्लेलिस्ट का यूआरएल. Stream_manifest का इस्तेमाल करें. यह सिर्फ़ HLS के लिए है. |
stream_manifest |
string स्ट्रीम का मेनिफ़ेस्ट. HLS की मास्टर प्लेलिस्ट और डैश में एमपीडी से मेल खाता है. "stream_id" के अलावा, सिर्फ़ यही फ़ील्ड है, जो सर्वर-साइड-बीकनिंग स्ट्रीम बनाते समय रिस्पॉन्स में मौजूद होता है. |
media_verification_url |
string मीडिया की पुष्टि करने वाला यूआरएल. |
apple_tv |
object(AppleTV) AppleTV डिवाइसों के लिए खास जानकारी. हालांकि, यह जानकारी देना ज़रूरी नहीं है. यह सिर्फ़ HLS के लिए है. |
ad_breaks |
[object(AdBreak)] Adब्रेक की सूची. खाली होने पर, इसे हटा दिया जाएगा. |
AppleTV
AppleTV में, Apple TV डिवाइसों के बारे में खास जानकारी होती है.जेएसओएन के काेड में दिखाना |
---|
{ "interstitials_url": string, } |
फ़ील्ड | |
---|---|
interstitials_url |
string पेज पर अचानक दिखने वाले विज्ञापनों का यूआरएल. |
AdBreak
Adब्रेक, स्ट्रीम में दिखाए जाने वाले किसी एक विज्ञापन के लिए ब्रेक की जानकारी देता है. इसमें क्रम, कुल समय, टाइप (बीच/पहले/पोस्ट) और विज्ञापनों की सूची शामिल होती है.जेएसओएन के काेड में दिखाना |
---|
{ "type": string, "start": number, "duration": number, "ads": [object(Ad)], } |
फ़ील्ड | |
---|---|
type |
string मान्य ब्रेक टाइप हैं: मिड, प्री, और पोस्ट. |
start |
number स्ट्रीम में ब्रेक शुरू होने की जगह (सेकंड में). |
duration |
number विज्ञापन के लिए ब्रेक की अवधि (सेकंड में). |
ads |
[object(Ad)] विज्ञापनों की सूची. खाली होने पर, इसे हटा दिया जाएगा. |
विज्ञापन
विज्ञापन, स्ट्रीम में मौजूद विज्ञापन की जानकारी देता है. इसमें ब्रेक में विज्ञापन की स्थिति, विज्ञापन की अवधि, और कुछ वैकल्पिक मेटाडेटा शामिल होता है.जेएसओएन के काेड में दिखाना |
---|
{ "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), } |
फ़ील्ड | |
---|---|
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) वैकल्पिक इंटरैक्टिव क्रिएटिव (सिमआईडी) जिसे विज्ञापन चलाने के दौरान दिखाया जाना चाहिए. |
इवेंट
इवेंट में इवेंट का टाइप और उसके प्रज़ेंटेशन का समय शामिल होता है.जेएसओएन के काेड में दिखाना |
---|
{ "time": number, "type": string, } |
फ़ील्ड | |
---|---|
time |
number इस इवेंट को प्रज़ेंटेशन का समय. |
type |
string इस इवेंट का टाइप. |
सबटाइटल
सबटाइटल से वीडियो स्ट्रीम के साइडकार के सबटाइटल ट्रैक की जानकारी मिलती है. इसमें दो सबटाइटल फ़ॉर्मैट सेव किए जाते हैं: TTML और WebVTT. TTMLPath एट्रिब्यूट में, TTML साइडकार फ़ाइल का यूआरएल होता है और WebVTTPath एट्रिब्यूट में, इसी तरह WebVTT साइडकार फ़ाइल का यूआरएल शामिल होता है.जेएसओएन के काेड में दिखाना |
---|
{ "language": string, "language_name": string, "ttml": string, "webvtt": string, } |
फ़ील्ड | |
---|---|
language |
string भाषा कोड, जैसे कि 'en' या 'de'. |
language_name |
string भाषा का पूरा नाम. अगर एक ही भाषा के लिए कई सेट मौजूद हैं, तो यह सबटाइटल के खास सेट में अंतर करता है |
ttml |
string TTML की साइडकार फ़ाइल का यूआरएल. |
webvtt |
string WebVTT साइडकार फ़ाइल का वैकल्पिक यूआरएल. |
आइकॉन
आइकॉन में किसी VAST आइकॉन के बारे में जानकारी होती है.जेएसओएन के काेड में दिखाना |
---|
{ "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 में आइकॉन क्लिकथ्रू के बारे में जानकारी शामिल होती है.जेएसओएन के काेड में दिखाना |
---|
{ "url": string, } |
फ़ील्ड | |
---|---|
url |
string |
FallbackImage
फ़ॉलबैक इमेज में किसी VAST फ़ॉलबैक इमेज के बारे में जानकारी होती है.जेएसओएन के काेड में दिखाना |
---|
{ "creative_type": string, "height": int32, "width": int32, "resource": string, "alt_text": string, } |
फ़ील्ड | |
---|---|
creative_type |
string |
height |
int32 |
width |
int32 |
resource |
string |
alt_text |
string |
रैपर
रैपर में रैपर विज्ञापन के बारे में जानकारी होती है. मौजूद न होने पर, इसमें डील आईडी शामिल नहीं होता है.जेएसओएन के काेड में दिखाना |
---|
{ "system": string, "ad_id": string, "creative_id": string, "creative_ad_id": string, "deal_id": string, } |
फ़ील्ड | |
---|---|
system |
string विज्ञापन सिस्टम आइडेंटिफ़ायर. |
ad_id |
string रैपर विज्ञापन के लिए इस्तेमाल किया जाने वाला विज्ञापन आईडी. |
creative_id |
string रैपर विज्ञापन के लिए इस्तेमाल किया जाने वाला क्रिएटिव आईडी. |
creative_ad_id |
string रैपर विज्ञापन के लिए इस्तेमाल किया जाने वाला क्रिएटिव विज्ञापन आईडी. |
deal_id |
string रैपर विज्ञापन के लिए डील का आईडी ज़रूरी नहीं है. |
पुष्टि करने का तरीका
पुष्टि में, ओपन मेज़रमेंट की जानकारी होती है. इससे तीसरे पक्ष के विज्ञापन दिखने से जुड़े आंकड़े और पुष्टि के मेज़रमेंट की सुविधा मिलती है. फ़िलहाल, सिर्फ़ JavaScript संसाधन ही काम करते हैं. https://iabtechlab.com/standards/open-measurement-sdk/जेएसओएन के काेड में दिखाना |
---|
{ "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 के ज़रिए पुष्टि करने की जानकारी शामिल है.जेएसओएन के काेड में दिखाना |
---|
{ "script_url": string, "api_framework": string, "browser_optional": boolean, } |
फ़ील्ड | |
---|---|
script_url |
string JavaScript पेलोड में यूआरआई. |
api_framework |
string APIFramework उस वीडियो फ़्रेमवर्क का नाम है जिसमें पुष्टि करने के कोड का इस्तेमाल किया जाता है. |
browser_optional |
boolean इस स्क्रिप्ट को ब्राउज़र के बाहर चलाया जा सकता है या नहीं. |
TrackingEvent
ट्रैकिंग इवेंट में ऐसे यूआरएल शामिल हैं जिन्हें कुछ खास स्थितियों में क्लाइंट को पिंग करना चाहिए.जेएसओएन के काेड में दिखाना |
---|
{ "event": string, "uri": string, } |
फ़ील्ड | |
---|---|
event |
string ट्रैकिंग इवेंट का टाइप, फ़िलहाल सिर्फ़ "verificationNotExecuted" है, जैसा कि VAST 4.1 स्पेसिफ़िकेशन में बताया गया है. |
uri |
string पिंग किया जाने वाला ट्रैकिंग इवेंट. |
UniversalAdID
UniversalAdID का इस्तेमाल एक यूनीक क्रिएटिव आइडेंटिफ़ायर देने के लिए किया जाता है. इसे कई विज्ञापन सिस्टम में मैनेज किया जाता है.जेएसओएन के काेड में दिखाना |
---|
{ "id_value": string, "id_registry": string, } |
फ़ील्ड | |
---|---|
id_value |
string विज्ञापन के लिए चुने गए क्रिएटिव का यूनिवर्सल विज्ञापन आईडी. |
id_registry |
string इस स्ट्रिंग का इस्तेमाल उस रजिस्ट्री वेबसाइट के यूआरएल की पहचान करने के लिए किया जाता है जहां चुने गए क्रिएटिव के यूनिवर्सल विज्ञापन आईडी को कैटलॉग किया जाता है. |
सहयोगी
कंपैनियन मोड में, विज्ञापन के साथ दिखाए जाने वाले विज्ञापन के साथ दिखने वाले विज्ञापनों की जानकारी होती है.जेएसओएन के काेड में दिखाना |
---|
{ "click_data": object(ClickData), "creative_type": string, "height": int32, "width": int32, "resource": string, "type": string, } |
फ़ील्ड | |
---|---|
click_data |
object(ClickData) इस कंपैनियन के लिए क्लिक डेटा. |
creative_type |
string अगर यह स्टैटिक टाइप का कंपैनियन है, तो VAST में <StaticResource> नोड पर CreativeType एट्रिब्यूट. |
height |
int32 इस कंपैनियन की पिक्सल में ऊंचाई. |
width |
int32 इस कंपैनियन मोड की चौड़ाई, पिक्सल में. |
resource |
string स्टैटिक और iframe कंपैनियन के लिए, यह यूआरएल लोड होगा और दिखाया जाएगा. एचटीएमएल कंपैनियन के लिए, यह एचटीएमएल स्निपेट होगा जिसे कंपैनियन के तौर पर दिखाया जाना चाहिए. |
type |
string इस कंपैनियन का टाइप. यह स्टैटिक, iframe या एचटीएमएल हो सकता है. |
InteractiveFile
InteractiveFile में इंटरैक्टिव क्रिएटिव (जैसे कि सिमआईडी) की जानकारी होती है, जो विज्ञापन चलाने के दौरान दिखाई जानी चाहिए.जेएसओएन के काेड में दिखाना |
---|
{ "resource": string, "type": string, "variable_duration": boolean, "ad_parameters": string, } |
फ़ील्ड | |
---|---|
resource |
string इंटरैक्टिव क्रिएटिव का यूआरएल. |
type |
string संसाधन के तौर पर दी गई फ़ाइल का MIME टाइप. |
variable_duration |
boolean क्या यह क्रिएटिव, अवधि बढ़ाने की मांग कर सकता है. |
ad_parameters |
string VAS में <Adparameters> नोड की वैल्यू. |