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

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

सेवा: dai.google.com

ये सभी यूआरआई https://dai.google.com से जुड़े हुए हैं

तरीका: Stream

तरीके
stream POST /linear/v1/hls/event/{assetKey}/stream

दिए गए इवेंट आईडी के लिए डीएआई स्ट्रीम बनाता है.

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

POST https://dai.google.com/linear/v1/hls/event/{assetKey}/stream

अनुरोध का हेडर

पैरामीटर
api‑key string

स्ट्रीम बनाते समय दी गई एपीआई कुंजी, प्रकाशक के नेटवर्क के लिए मान्य होनी चाहिए.

एपीआई पासकोड को अनुरोध के मुख्य हिस्से में देने के बजाय, उसे एचटीटीपी की अनुमति वाले हेडर में इस फ़ॉर्मैट में पास किया जा सकता है:

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

पाथ पैरामीटर

पैरामीटर
assetKey string

स्ट्रीम का इवेंट आईडी.
ध्यान दें: स्ट्रीम ऐसेट कुंजी एक आइडेंटिफ़ायर है, जो Ad Manager यूज़र इंटरफ़ेस (यूआई) में भी मिल सकती है.

अनुरोध का मुख्य भाग

अनुरोध का मुख्य हिस्सा application/x-www-form-urlencoded टाइप का है और इसमें ये पैरामीटर शामिल होते हैं:

पैरामीटर
dai-ssb ज़रूरी नहीं है

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

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

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

कामयाब होने पर, जवाब के मुख्य हिस्से में एक नया Stream शामिल किया जाता है. सर्वर साइड बीकनिंग स्ट्रीम के लिए, इसमें Stream सिर्फ़ stream_id और stream_manifest फ़ील्ड शामिल होते हैं.

'मेज़रमेंट' खोलें

DAI API के ज़रिए, Verifications फ़ील्ड में ओपन मेज़रमेंट की पुष्टि की जानकारी मिलती है. इस फ़ील्ड में एक या एक से ज़्यादा Verification एलिमेंट होते हैं. इनमें ऐसे संसाधन और मेटाडेटा शामिल होते हैं जो क्रिएटिव प्लेबैक की पुष्टि करने के लिए, तीसरे पक्ष के मेज़रमेंट कोड को एक्ज़ीक्यूट करने के लिए ज़रूरी होते हैं. सिर्फ़ JavaScriptResource का इस्तेमाल किया जा सकता है. ज़्यादा जानकारी के लिए, कृपया IAB Tech Lab और VAST 4.1 की खास बातें देखें.

तरीका: मीडिया से पुष्टि करना

वीडियो चलाते समय कोई विज्ञापन मीडिया आइडेंटिफ़ायर मिलने के बाद, ऊपर दिए गए स्ट्रीम एंडपॉइंट से मिले media_verification_url का इस्तेमाल करके तुरंत अनुरोध करें. ये अनुरोध, सर्वर-साइड-बीकनिंग स्ट्रीम के लिए ज़रूरी नहीं हैं, जहां सर्वर मीडिया की पुष्टि करने की प्रक्रिया शुरू करता है.

media verification एंडपॉइंट के लिए किए जाने वाले अनुरोध, एक तरह के अनुरोध होते हैं.

तरीके
media verification GET /{media_verification_url}/{ad_media_id}

मीडिया की पुष्टि वाले किसी इवेंट के एपीआई को सूचना देता है.

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

GET https://{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_" टेक्स्ट से शुरू होगा.

विज्ञापन की पुष्टि का हर अनुरोध करने से पहले, फ़्रेम का पूरा टेक्स्ट कॉन्टेंट, विज्ञापन की पुष्टि करने वाले यूआरएल में जोड़ना चाहिए.

तरीका: मेटाडेटा

metadata_url पर मौजूद मेटाडेटा एंडपॉइंट, विज्ञापन यूज़र इंटरफ़ेस (यूआई) बनाने के लिए इस्तेमाल की गई जानकारी दिखाता है. मेटाडेटा एंडपॉइंट, सर्वर-साइड-बीकनिंग स्ट्रीम के लिए उपलब्ध नहीं है. इसमें सर्वर, विज्ञापन की मदद से विज्ञापन की पुष्टि करता है.

तरीके
metadata GET /{metadata_url}/{ad-media-id}

GET /{metadata_url}

विज्ञापन के मेटाडेटा की जानकारी हासिल करता है.

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

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

GET https://{metadata_url}

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

कामयाब होने पर, रिस्पॉन्स PodMetadata का इंस्टेंस दिखाता है.

मेटाडेटा के साथ काम करना

मेटाडेटा में तीन अलग-अलग सेक्शन हैं: tags, ads, और विज्ञापन breaks. डेटा का एंट्री पॉइंट tags सेक्शन है. इसके बाद, टैग फिर से चलाएं और वह पहली एंट्री खोजें जिसका नाम वीडियो स्ट्रीम में दिखने वाले विज्ञापन मीडिया आईडी के प्रीफ़िक्स के तौर पर है. उदाहरण के लिए, आपके पास विज्ञापन मीडिया आईडी हो सकता है, जो ऐसा दिखता है:

google_1234567890

इसके बाद, आपको google_12345 नाम का टैग ऑब्जेक्ट मिलेगा. इस मामले में, यह आपके विज्ञापन मीडिया आईडी से मेल खाता है. सही विज्ञापन मीडिया प्रीफ़िक्स ऑब्जेक्ट ढूंढने के बाद, विज्ञापन आईडी, विज्ञापन के लिए ब्रेक के आईडी, और इवेंट टाइप को खोजा जा सकता है. इसके बाद, विज्ञापन आईडी का इस्तेमाल ads ऑब्जेक्ट को इंडेक्स करने के लिए किया जाता है. वहीं, विज्ञापन के लिए ब्रेक आईडी का इस्तेमाल breaks ऑब्जेक्ट को इंडेक्स करने के लिए किया जाता है.

जवाब का डेटा

स्ट्रीम

स्ट्रीम का इस्तेमाल, JSON फ़ॉर्मैट में बनाई गई नई स्ट्रीम के लिए संसाधनों की सूची रेंडर करने के लिए किया जाता है.
जेएसओएन के काेड में दिखाना
{
  "stream_id": string,
  "stream_manifest": string,
  "hls_master_playlist": string,
  "media_verification_url": string,
  "metadata_url": string,
  "session_update_url": string,
  "polling_frequency": number,
}
फ़ील्ड
stream_id string

GAM स्ट्रीम आइडेंटिफ़ायर.
stream_manifest string

स्ट्रीम के मेनिफ़ेस्ट यूआरएल का इस्तेमाल, एचएलएस में अलग-अलग वैरिएंट वाली प्लेलिस्ट या DASH में एमपीडी को वापस पाने के लिए किया जाता है.
hls_master_playlist string

(अब उपलब्ध नहीं है) एचएलएस के मल्टीवैरिएंट प्लेलिस्ट का यूआरएल. इसके बजाय, "stream_manifest" का इस्तेमाल करें.
media_verification_url string

मीडिया की पुष्टि करने वाला यूआरएल, जिसे प्लेबैक इवेंट ट्रैक करने के लिए बेस एंडपॉइंट के तौर पर इस्तेमाल किया जाता है.
metadata_url string

मेटाडेटा यूआरएल का इस्तेमाल, आने वाले समय में होने वाले विज्ञापन इवेंट के बारे में समय-समय पर जानकारी देने के लिए किया जाता है.
session_update_url string

इस स्ट्रीम के टारगेटिंग पैरामीटर को अपडेट करने के लिए, सेशन के अपडेट का यूआरएल इस्तेमाल किया जाता है. स्ट्रीम के लिए अनुरोध करते समय, टारगेटिंग पैरामीटर की ओरिजनल वैल्यू कैप्चर की जाती है.
polling_frequency number

मेटाडेटा_url से याअफ़िलिएट_url का अनुरोध करने पर, पोलिंग की फ़्रीक्वेंसी सेकंड में.

PodMetadata

PodMetadata में, विज्ञापनों, विज्ञापन के लिए ब्रेक, और मीडिया आईडी टैग के मेटाडेटा की जानकारी शामिल होती है.
जेएसओएन के काेड में दिखाना
{
  "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 में किसी विज्ञापन का रेफ़रंस, उसके विज्ञापन के लिए ब्रेक, और इवेंट टाइप शामिल होता है. type="progress" वाले Tagsegment को विज्ञापन मीडिया की पुष्टि वाले एंडपॉइंट पर पिंग नहीं किया जाना चाहिए.
जेएसओएन के काेड में दिखाना
{
  "ad": string,
  "ad_break_id": string,
  "type": string,
}
फ़ील्ड
ad string

इस टैग के विज्ञापन का आईडी.
ad_break_id string

इस टैग के विज्ञापन के लिए ब्रेक का आईडी.
type string

यह टैग का इवेंट टाइप है.

AdBreak

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

मान्य ब्रेक टाइप इस तरह हैं: प्री, मिड, और पोस्ट.
duration number

विज्ञापन के लिए इस ब्रेक के लिए विज्ञापन की कुल अवधि, सेकंड में.
expected_duration number

विज्ञापन के लिए ब्रेक का अनुमानित समय (सेकंड में), इसमें सभी विज्ञापन और सभी स्लेट शामिल हैं.
ads number

विज्ञापन के लिए ब्रेक में विज्ञापनों की संख्या.
विज्ञापन, स्ट्रीम में मौजूद किसी विज्ञापन के बारे में बताता है.
जेएसओएन के काेड में दिखाना
{
  "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

क्लिक मिलने का वैकल्पिक यूआरएल.
click_tracking_urls string

वैकल्पिक क्लिक ट्रैकिंग यूआरएल.
verifications [object(Verification)]

ओपन मेज़रमेंट की पुष्टि करने की प्रक्रिया के लिए ज़रूरी नहीं है. इसमें वे संसाधन और मेटाडेटा शामिल होते हैं जो तीसरे पक्ष के मेज़रमेंट कोड को एक्ज़ीक्यूट करने के लिए ज़रूरी होते हैं, ताकि क्रिएटिव वीडियो चलाने की पुष्टि की जा सके.
slate boolean

मौजूदा एंट्री को दिखाने वाला बूल स्लेट है. यह ज़रूरी नहीं है.
icons [object(Icon)]

आइकॉन की सूची खाली होने पर उसे हटा दिया जाता है.
wrappers [object(Wrapper)]

रैपर की सूची, अगर खाली हो तो छोड़ दी जाती है.
universal_ad_id object(UniversalAdID)

यूनिवर्सल विज्ञापन आईडी का इस्तेमाल करना ज़रूरी नहीं है.
extensions string

वीएएसटी में सभी <एक्सटेंशन> नोड की वैकल्पिक सूची.
companions [object(Companion)]

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

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

आइकॉन

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

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

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

ट्रैकिंग इवेंट का टाइप.
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,
  "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

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

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

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

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

वीएएसटी में <AdParameters> नोड की वैल्यू.