डाइनैमिक ऐड इंसर्शन वीओडी एपीआई

डाइनैमिक ऐड इंसर्शन एपीआई की मदद से, डीएआई का अनुरोध किया जा सकता है और उसे ट्रैक किया जा सकता है मांग पर वीडियो (वीओडी) स्ट्रीम. एचएलएस और डैश स्ट्रीम का इस्तेमाल किया जा सकता है.

सेवा: dai.google.com

stream तरीके का पाथ, https://dai.google.com के हिसाब से है

तरीका: Stream

तरीके
stream POST /ondemand/v1/hls/content/{content-source}/vid/{video-id}/stream

यह दिए गए कॉन्टेंट सोर्स और वीडियो आईडी के लिए, एचएलएस डीएआई स्ट्रीम बनाता है.

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

दिए गए कॉन्टेंट सोर्स और वीडियो आईडी के लिए, DASH DAI स्ट्रीम बनाता है.

एचटीटीपी अनुरोध

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 वैकल्पिक

सर्वर साइड-बीकनिंग स्ट्रीम बनाने के लिए, true पर सेट करें. डिफ़ॉल्ट तौर पर, यह false पर सेट होता है. डिफ़ॉल्ट स्ट्रीम की ट्रैकिंग क्लाइंट-इनीशिएटेड होता है और सर्वर साइड पर पिंग किया जाता है.

DFP टारगेटिंग पैरामीटर वैकल्पिक टारगेटिंग के अन्य पैरामीटर.
स्ट्रीम पैरामीटर को बदलना वैकल्पिक स्ट्रीम बनाने के पैरामीटर की डिफ़ॉल्ट वैल्यू बदलें.
एचएमएसी की पुष्टि करना वैकल्पिक एचएमएसी पर आधारित टोकन का इस्तेमाल करके पुष्टि करें.

जवाब का मुख्य भाग

कामयाब होने पर, जवाब के मुख्य हिस्से में 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)

विज्ञापन मीडिया आइडेंटिफ़ायर को एचएलएस के टाइम्ड मेटाडेटा में एन्कोड किया जाएगा. इसके लिए, TXXX कुंजी का इस्तेमाल किया जाएगा, "उपयोगकर्ता की ओर से तय किए गए टेक्स्ट की जानकारी" के लिए रिज़र्व रखा गया है फ़्रेम. फ़्रेम का कॉन्टेंट एन्क्रिप्ट नहीं होगा और हमेशा "google_" टेक्स्ट से शुरू होगा.

फ़्रेम का पूरा टेक्स्ट कॉन्टेंट media_verification_url को सबमिट करना होगा.

विज्ञापन मीडिया आईडी (DASH)

विज्ञापन मीडिया आइडेंटिफ़ायर, मेनिफ़ेस्ट में इन चीज़ों का इस्तेमाल करके डाले जाएंगे DASH का EventStream एलिमेंट.

हर EventStream में urn:google:dai:2018 का स्कीम आईडी यूआरआई होगा. उनमें messageData एट्रिब्यूट वाले इवेंट शामिल होंगे “google_” से शुरू होने वाली विज्ञापन मीडिया आईडी. messageData का पूरा कॉन्टेंट हर विज्ञापन के लिए, एट्रिब्यूट को media_verification_url में जोड़ना चाहिए पुष्टि करने का अनुरोध.

जवाब का डेटा

स्ट्रीम

स्ट्रीम का इस्तेमाल, किसी नए बनाए गए संसाधन के सभी संसाधनों की सूची दिखाने के लिए किया जाता है 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

आरएफ़सी 3339 फ़ॉर्मैट में, स्ट्रीम के मान्य रहने की तारीख.
subtitles [object(Subtitle)]

सबटाइटल की सूची. खाली होने पर निकाल दिया जाता है. सिर्फ़ एचएलएस से कनेक्ट किया जाता है.
hls_master_playlist string

(अब सेवा में नहीं है) HLS मास्टर प्लेलिस्ट का यूआरएल. Stream_manifest का इस्तेमाल करें. सिर्फ़ एचएलएस से कनेक्ट किया जाता है.
stream_manifest string

स्ट्रीम का मेनिफ़ेस्ट. HLS में मास्टर प्लेलिस्ट और DASH में MPD से मेल खाती है. "stream_id" के अलावा सिर्फ़ यह फ़ील्ड है जो रिस्पॉन्स में तब मौजूद होता है, जब जिससे सर्वर साइड-बीकनिंग स्ट्रीम बनाई जा सकती है.
media_verification_url string

मीडिया की पुष्टि करने वाला यूआरएल.
apple_tv object(AppleTV)

AppleTV डिवाइसों के लिए ज़रूरी जानकारी. सिर्फ़ एचएलएस से कनेक्ट किया जाता है.
ad_breaks [object(AdBreak)]

AdBreak की सूची. खाली होने पर, इसे शामिल नहीं किया जाता.

AppleTV

AppleTV में खास तौर पर Apple TV डिवाइसों से जुड़ी जानकारी मौजूद होती है.
JSON के काेड में दिखाना
{
  "interstitials_url": string,
}
फ़ील्ड
interstitials_url string

अचानक दिखने वाले विज्ञापनों का यूआरएल.

AdBreak

AdBreak, स्ट्रीम में विज्ञापन के लिए एक ब्रेक की जानकारी देता है. इसमें पोज़िशन, एक अवधि, एक टाइप (मिड/प्री/पोस्ट), और विज्ञापनों की एक सूची.
JSON के काेड में दिखाना
{
  "type": string,
  "start": number,
  "duration": number,
  "ads": [object(Ad)],
}
फ़ील्ड
type string

मान्य ब्रेक टाइप हैं: मिड, प्री, और पोस्ट.
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

विज्ञापन देने वाले का वैकल्पिक आइडेंटिफ़ायर.
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)

Universal विज्ञापन आईडी ज़रूरी नहीं है.
companions [object(Companion)]

इस विज्ञापन के साथ दिखाए जा सकने वाले वैकल्पिक सहयोगी.
interactive_file object(InteractiveFile)

ज़रूरी नहीं इंटरैक्टिव क्रिएटिव (सिमआईडी), जो विज्ञापन चलने के दौरान दिखाया जाना चाहिए.
skip_metadata object(SkipMetadata)

स्किप किए जा सकने वाले विज्ञापनों के लिए वैकल्पिक मेटाडेटा. अगर यह नीति सेट की जाती है, तो इससे पता चलता है कि इसे स्किप किया जा सकता है. साथ ही, इसमें स्किप यूज़र इंटरफ़ेस (यूआई) को मैनेज करने के तरीके के बारे में निर्देश दिए गए हैं और ट्रैकिंग इवेंट शामिल हैं.

इवेंट

इवेंट में एक इवेंट टाइप और इवेंट के प्रज़ेंटेशन का समय शामिल होता है.
JSON के काेड में दिखाना
{
  "time": number,
  "type": string,
}
फ़ील्ड
time number

इस इवेंट को दिखाने का समय.
type string

यह इवेंट किस तरह का है.

सबटाइटल

सबटाइटल, वीडियो स्ट्रीम के लिए साइडकार सबटाइटल ट्रैक के बारे में बताता है. यह सेव करता है सबटाइटल के लिए दो फ़ॉर्मैट हैं: TTML और WebVTT. TTMLPath एट्रिब्यूट में यूआरएल शामिल होता है को जोड़ दिया है और WebVTTPath एट्रिब्यूट में भी ऐसा ही एक यूआरएल है को WebVTT साइडकार फ़ाइल में अपलोड कर सकता है.
JSON के काेड में दिखाना
{
  "language": string,
  "language_name": string,
  "ttml": string,
  "webvtt": string,
}
फ़ील्ड
language string

कोई भाषा कोड, जैसे कि 'en' या 'de'.
language_name string

भाषा का पूरा नाम. यह अलग-अलग सबटाइटल, अगर एक ही भाषा के लिए कई सेट हों
ttml string

टीटीएमएल साइडकार फ़ाइल का वैकल्पिक यूआरएल.
webvtt string

WebVTT साइडकार फ़ाइल का वैकल्पिक यूआरएल.

SkipMetadata

स्किप मेटाडेटा से क्लाइंट को ज़रूरी जानकारी मिलती है, ताकि स्किप किए जा सकने वाले विज्ञापनों के लिए स्किप इवेंट मैनेज किए जा सकें.
JSON के काेड में दिखाना
{
  "offset": number,
  "tracking_url": string,
}
फ़ील्ड
offset number

ऑफ़सेट से पता चलता है कि प्लेयर, विज्ञापन दिखने में कितना समय ले रहा है अभी नहीं. वीएएसटी में उपलब्ध न होने पर, फ़ाइल को हटा दिया जाता है.
tracking_url string

TrackingURL में एक यूआरएल होता है, जिसे स्किप इवेंट पर पिंग किया जाना चाहिए.

आइकॉन

आइकॉन में वीएएसटी (वीडियो विज्ञापन देने के लिए टेंप्लेट) आइकॉन के बारे में जानकारी होती है.
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

फ़ॉलबैक इमेज में, वीएएसटी (वीडियो विज्ञापन देने के लिए टेंप्लेट) फ़ॉलबैक इमेज की जानकारी होती है.
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

रैपर में किसी रैपर विज्ञापन की जानकारी होती है. इसमें डील आईडी मौजूद न होने पर.
JSON के काेड में दिखाना
{
  "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/ देखें
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 पेलोड के लिए यूआरआई.
api_framework string

APIFramework उस वीडियो फ़्रेमवर्क का नाम है जो पुष्टि करने के लिए भेजा गया कोड.
browser_optional boolean

इस स्क्रिप्ट को ब्राउज़र.

TrackingEvent

TrackingEvent में ऐसे यूआरएल शामिल हैं जिन्हें क्लाइंट को कुछ खास मामलों में पिंग किया जाना चाहिए स्थितियों के बारे में बताना.
JSON के काेड में दिखाना
{
  "event": string,
  "uri": string,
}
फ़ील्ड
event string

ट्रैकिंग इवेंट का टाइप.
uri string

ट्रैकिंग इवेंट को पिंग किया जाना है.

UniversalAdID

UniversalAdID का इस्तेमाल ऐसा यूनीक क्रिएटिव आइडेंटिफ़ायर देने के लिए किया जाता है जो मैनेज किया जा सकता है.
JSON के काेड में दिखाना
{
  "id_value": string,
  "id_registry": string,
}
फ़ील्ड
id_value string

विज्ञापन के लिए चुने गए क्रिएटिव का यूनिवर्सल विज्ञापन आईडी.
id_registry string

रजिस्ट्री वेबसाइट के यूआरएल की पहचान करने के लिए इस्तेमाल की जाने वाली स्ट्रिंग जहां चुने गए क्रिएटिव का यूनिवर्सल विज्ञापन आईडी कैटलॉग है.

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

<StaticResource> पर CreativeType एट्रिब्यूट वीएएसटी में नोड होना चाहिए, अगर यह स्टैटिक टाइप का कंपैनियन है.
height int32

इस कंपैनियन की लंबाई (पिक्सल में).
width int32

इस कंपैनियन की चौड़ाई (पिक्सल में).
resource string

स्टैटिक और iframe साथ काम करने वालों के लिए, यह लोड किया जाने वाला यूआरएल होगा और दिखाया जाएगा. एचटीएमएल कंपैनियन के लिए, यह एचटीएमएल स्निपेट होगा जिसे कंपैनियन मोड का इस्तेमाल कर रहे हैं.
type string

इस कंपैनियन का टाइप. यह स्टैटिक, iframe या एचटीएमएल हो सकता है.
ad_slot_id string

इस कंपैनियन के लिए स्लॉट आईडी.
api_framework string

इस कंपैनियन के लिए एपीआई फ़्रेमवर्क.
tracking_events [object(TrackingEvent)]

इस कंपैनियन के लिए ट्रैकिंग इवेंट की सूची.

InteractiveFile

InteractiveFile में इंटरैक्टिव क्रिएटिव की जानकारी शामिल है (जैसे SIMID) जिसे विज्ञापन प्लेबैक के दौरान दिखाया जाना चाहिए.
JSON के काेड में दिखाना
{
  "resource": string,
  "type": string,
  "variable_duration": boolean,
  "ad_parameters": string,
}
फ़ील्ड
resource string

इंटरैक्टिव क्रिएटिव का यूआरएल.
type string

संसाधन के तौर पर दी गई फ़ाइल का MIME टाइप.
variable_duration boolean

इस क्रिएटिव को चालू करने की अवधि को बढ़ाने के लिए कहा जा सकता है या नहीं.
ad_parameters string

<AdParameters> का मान नोड को वीएएसटी (वीडियो विज्ञापन देने के लिए टेम्प्लेट) में जोड़ना होगा.