DAI Ad Break API का इस्तेमाल करना

DAI Ad Break API की मदद से, लाइव स्ट्रीम में विज्ञापन ब्रेक बनाए जा सकते हैं. साथ ही, विज्ञापन ब्रेक के समय और विज्ञापन टारगेटिंग डेटा को मैनेज किया जा सकता है.

इस गाइड में, Google के डाइनैमिक ऐड इंसर्शन (डीएआई) वाले लाइवस्ट्रीम इवेंट के लिए, विज्ञापन ब्रेक बनाने, अपडेट करने, और मिटाने के लिए, DAI Ad Break API का इस्तेमाल करने के बारे में बताया गया है.

ज़रूरी शर्तें

DAI Ad Break API का इस्तेमाल करने के लिए, आपके पास ये चीज़ें होनी चाहिए:

एपीआई ऐक्सेस सेट अप करना

एपीआई चालू करने के लिए, यह तरीका अपनाएं:

  1. कोई सेवा खाता बनाएं. ज़्यादा जानकारी के लिए, सेवा खाता बनाना लेख पढ़ें.
  2. सेवा खाते को अपने Google Ad Manager नेटवर्क में जोड़ें. ज़्यादा जानकारी के लिए, एपीआई ऐक्सेस करने के लिए सेवा खाते का उपयोगकर्ता जोड़ना लेख पढ़ें.
  3. अपने Google खाता मैनेजर को सेवा खाते का ईमेल पता और Google Ad Manager नेटवर्क कोड दें.
  4. अपने Google Cloud प्रोजेक्ट में, Google Ad Manager Video API चालू करें. ज़्यादा जानकारी के लिए, अपने ऐप्लिकेशन के लिए "एपीआई और सेवाएं" चालू करना लेख पढ़ें.

OAuth2 की मदद से पुष्टि करना

अपने एपीआई अनुरोधों को अनुमति देने के लिए, यह तरीका अपनाएं:

  1. https://www.googleapis.com/auth/video-ads स्कोप के साथ ऐक्सेस टोकन जनरेट करें.
  2. हर अनुरोध में, एपीआई के ऐक्सेस टोकन को Authorization एचटीटीपी हेडर Bearer वैल्यू के तौर पर शामिल करें. ज़्यादा जानकारी के लिए, Google API को कॉल करना लेख पढ़ें.

यहां दिए गए उदाहरण में, DAI Ad Break API के स्कोप के साथ एक OAuth टोकन जनरेट किया गया है:

gcloud auth print-access-token --scopes='https://www.googleapis.com/auth/video-ads'

अगर यह प्रोसेस पूरी हो जाती है, तो आपको यह ऐक्सेस टोकन दिखेगा:

ya29.c.c0ASRK0GYUYU0...

पहला अनुरोध करना

लाइव स्ट्रीम इवेंट के लिए विज्ञापन ब्रेक वापस पाने के लिए, GET तरीके का इस्तेमाल करके, इवेंट के सिस्टम से जनरेट किए गए ऐसेट कुंजी या आपके कस्टम ऐसेट कुंजी के हिसाब से सभी AdBreak इकाइयां लिस्ट करें.

DAI Ad Break API सिर्फ़ उन AdBreak इकाइयों को दिखाता है जिन्हें एपीआई के ज़रिए बनाया गया है. इसमें मेनिफ़ेस्ट, पॉड सेगमेंट के अनुरोध या पॉड मेनिफ़ेस्ट के अनुरोध से बनाए गए विज्ञापन ब्रेक शामिल नहीं होते.

यहां दिए गए अनुरोध के उदाहरण में, AdBreak वैल्यू के हिसाब से AdBreak इकाइयों की सूची दी गई है:assetKey

curl -X GET "https://admanagervideo.googleapis.com/v1/adBreak/networks/NETWORK_CODE/assets/ASSET_KEY/adBreaks" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer OAUTH_TOKEN"

अगर अनुरोध सही से काम करता है, तो आपको यह JSON रिस्पॉन्स दिखेगा:

{
 "adBreaks": []
}

एपीआई के ज़रिए अतिरिक्त AdBreak इकाइयां बनाने और सूची का अनुरोध करने पर, आपको यह JSON रिस्पॉन्स दिखेगा:

{
 "adBreaks": [
    {
      "name": "networks/.../assets/.../adBreaks/bcc402a6-9880-4b8b-8e4a-a8cd3688f854",
      "expectedDuration": "30s",
      "expectedStartTime": "2025-06-03T15:00:00Z",
      "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
      "customParams": "param1=value1&param2=value2",
      "podTemplateName": "podtemplate"
      "breakState": "BREAK_STATE_SCHEDULED",
    },
    {
      "name": "networks/.../assets/.../adBreaks/cc68b0df-0257-46e7-8193-254060b6256c",
      "breakSequence": "1",
      "expectedDuration": "30s",
      "expectedStartTime": "2025-06-03T14:30:00Z",
      "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
      "customParams": "param1=value1&param2=value2",
      "podTemplateName": "podtemplate"
      "breakState": "BREAK_STATE_COMPLETE",
    },
    
  ],
  "nextPageToken": "ChAIARIMCNDn97IGEJbhhYUC"
}

AdBreak इकाई बनाना

लाइव स्ट्रीम इवेंट के लिए, आने वाले विज्ञापन ब्रेक की जानकारी Google DAI को देने के लिए, POST तरीके का इस्तेमाल करें.

  • नई AdBreak इकाई बनाने के लिए, आपको पिछली इकाई के BREAK_STATE_COMPLETE स्थिति में आने का इंतज़ार करना होगा.
  • इसके अलावा, नई AdBreak इकाई बनाने के लिए, आपको मंज़ूरी के लिए सबमिट की गई इकाई को मिटाना होगा.
  • किसी एक लाइव स्ट्रीम इवेंट के लिए एक से ज़्यादा AdBreak इकाइयां बनाने के लिए, बेहतर कॉन्फ़िगरेशन के लिए अपने खाता मैनेजर से संपर्क करें.

यहां दिए गए अनुरोध के उदाहरण में, एक ऐसा विज्ञापन ब्रेक बनाया गया है जो 3 जून, 2025 को शाम 3 बजे यूटीसी पर शुरू होगा:

curl -X POST "https://admanagervideo.googleapis.com/v1/adBreak/networks/{NETWORK_CODE}/assets/ASSET_KEY/adBreaks" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer OAUTH_TOKEN" \
  -d '{
    "expectedDuration": "30s",
    "expectedStartTime": "2025-06-03T15:00:00Z",
    "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
    "customParams": "param1=value1&param2=value2",
    "podTemplateName": "podtemplate"
  }'

अगर अनुरोध सही से काम करता है, तो आपको यह JSON रिस्पॉन्स दिखेगा:

{
  "name": "networks/.../assets/.../adBreaks/bcc402a6-9880-4b8b-8e4a-a8cd3688f854",
  "expectedDuration": "30s",  "expectedStartTime": "2025-06-03T15:00:00Z",
  "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
  "customParams": "param1=value1&param2=value2",
  "podTemplateName": "podtemplate"
  "breakState": "BREAK_STATE_SCHEDULED",
}

नतीजे में, विज्ञापन ब्रेक का आईडी होता है. विज्ञापन ब्रेक को वापस पाने, उसमें बदलाव करने या उसे मिटाने के लिए, इस आईडी की ज़रूरत होती है. जवाब के इस उदाहरण में, बनाए गए विज्ञापन ब्रेक का आईडी bcc402a6-9880-4b8b-8e4a-a8cd3688f854 है.

AdBreak इकाई वापस पाना

किसी AdBreak इकाई की जानकारी वापस पाने के लिए, GET तरीके का इस्तेमाल करें. इसमें विज्ञापन के लिए ब्रेक की स्थिति और समय का मेटाडेटा शामिल है.

curl -X GET \
'https://admanagervideo.googleapis.com/v1/adBreak/networks/NETWORK_CODE/assets/ASSET_KEY/adBreaks/AD_BREAK_ID' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer OAUTH_TOKEN'

अगर अनुरोध सही से काम करता है, तो आपको यह JSON रिस्पॉन्स दिखेगा:

{
  "name": "networks/.../assets/.../adBreaks/bcc402a6-9880-4b8b-8e4a-a8cd3688f854",
  "expectedDuration": "30s",
  "expectedStartTime": "2025-06-03T15:10:00Z",
  "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
  "customParams": "param1=value1&param2=value2",
  "podTemplateName": "podtemplate"
  "breakState": "BREAK_STATE_SCHEDULED",
}

AdBreak इकाई को अपडेट करना

विज्ञापन दिखाने का फ़ैसला लेने से पहले, विज्ञापन के लिए शेड्यूल किए गए ब्रेक में बदलाव करने के लिए, PATCH मेथड का इस्तेमाल करें:

curl -X PATCH 'https://admanagervideo.googleapis.com/v1/adBreak/networks/NETWORK_CODE/assets/ASSET_KEY/adBreaks/AD_BREAK_ID' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer OAUTH_TOKEN' \
  -d '{"expectedStartTime": "2025-06-03T15:10:00Z"}'

अगर अनुरोध सही से काम करता है, तो आपको यह JSON रिस्पॉन्स दिखेगा:

{
  "name": "networks/.../assets/.../adBreaks/bcc402a6-9880-4b8b-8e4a-a8cd3688f854",
  "expectedDuration": "30s",
  "expectedStartTime": "2025-06-03T15:10:00Z",
  "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
  "customParams": "param1=value1&param2=value2",
  "podTemplateName": "podtemplate"
  "breakState": "BREAK_STATE_SCHEDULED",
}

AdBreak इकाई मिटाना

विज्ञापन दिखाने के लिए बनाए गए ब्रेक के लिए, विज्ञापन दिखाने का फ़ैसला रद्द करने के लिए DELETE तरीके का इस्तेमाल करें. ऐसा विज्ञापन दिखाने का ब्रेक शुरू होने से पहले करें.

अनुरोध के इस उदाहरण में, विज्ञापन के लिए ब्रेक को मिटाया गया है:

curl -X DELETE 'https://admanagervideo.googleapis.com/v1/adBreak/networks/NETWORK_CODE/assets/ASSET_KEY/adBreaks/AD_BREAK_ID' \
  -H 'Authorization: Bearer OAUTH_TOKEN'

अगर अनुरोध पूरा हो जाता है, तो आपको जवाब दिखेगा.HTTP/1.1 200 OK

विज्ञापन ब्रेक की बेहतर सुविधाओं के बारे में जानें

विज्ञापन ब्रेक बनाने और उन्हें मैनेज करने के बाद, DAI Ad Break API की इन सुविधाओं का इस्तेमाल करें: