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

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

सेवा: dai.google.com

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

तरीका: स्ट्रीम

तरीके
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 होती है. डिफ़ॉल्ट स्ट्रीम की ट्रैकिंग, क्लाइंट की ओर से शुरू की जाती है और सर्वर साइड पर पिंग की जाती है.

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

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

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

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

डीएआई एपीआई के 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)

विज्ञापन मीडिया आइडेंटिफ़ायर को 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

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

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

(रोका गया) HLS मास्टर प्लेलिस्ट का यूआरएल. इसके बजाय, "stream_manifest" का इस्तेमाल करें.
media_verification_url string

मीडिया की पुष्टि करने वाला यूआरएल.
metadata_url string

विज्ञापन मीडिया के मेटाडेटा का यूआरएल.
session_update_url string

सेशन अपडेट करने का यूआरएल.
polling_frequency number

सेकंड में, मेटाडेटा के लिए यूआरएल की पोलिंग के लिए सुझाई गई फ़्रीक्वेंसी.

PodMetadata

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

Tagसेगमेंट में किसी विज्ञापन, उसके विज्ञापन ब्रेक, और इवेंट टाइप का रेफ़रंस होता है. type="progress" वाले Tagसेगमेंट को विज्ञापन मीडिया पुष्टि एंडपॉइंट पर पिंग नहीं किया जाना चाहिए.
जेएसओएन के काेड में दिखाना
{
  "ad": string,
  "ad_break_id": string,
  "type": string,
}
फ़ील्ड
ad string

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

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

इस टैग का इवेंट टाइप.

AdBreak

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

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

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

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

आइकॉन

आइकॉन में किसी 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> नोड की वैल्यू.