ब्रॉडकास्ट को अपडेट करता है. उदाहरण के लिए, liveBroadcast रिसॉर्स के contentDetails ऑब्जेक्ट में तय की गई ब्रॉडकास्ट सेटिंग में बदलाव किया जा सकता है.
इस्तेमाल के सामान्य उदाहरण
अनुरोध
एचटीटीपी अनुरोध
PUT https://www.googleapis.com/youtube/v3/liveBroadcasts
अनुमति देना
इस अनुरोध के लिए, इनमें से कम से कम एक स्कोप के साथ अनुमति की ज़रूरत है. पुष्टि करने और अनुमति देने के बारे में ज़्यादा जानने के लिए, OAuth 2.0 की अनुमति को लागू करना लेख पढ़ें.
| दायरा |
|---|
https://www.googleapis.com/auth/youtube |
https://www.googleapis.com/auth/youtube.force-ssl |
पैरामीटर
नीचे दी गई टेबल में ऐसे पैरामीटर दिए गए हैं जो इस क्वेरी के साथ काम करते हैं. सूची में दिए गए सभी पैरामीटर, क्वेरी पैरामीटर हैं.
| पैरामीटर | ||
|---|---|---|
| ज़रूरी पैरामीटर | ||
part |
stringpart पैरामीटर, इस ऑपरेशन में दो काम करता है. यह उन प्रॉपर्टी की पहचान करता है जिन्हें लिखने की कार्रवाई से सेट किया जाएगा. साथ ही, यह उन प्रॉपर्टी की भी पहचान करता है जिन्हें एपीआई के जवाब में शामिल किया जाएगा.पैरामीटर वैल्यू में part प्रॉपर्टी को शामिल किया जा सकता है. जैसे, id, snippet, contentDetails, monetizationDetails, और status.ध्यान दें कि यह तरीका, पैरामीटर वैल्यू में बताए गए किसी भी हिस्से में मौजूद, बदली जा सकने वाली सभी प्रॉपर्टी की मौजूदा वैल्यू को बदल देगा. उदाहरण के लिए, किसी ब्रॉडकास्ट की निजता स्थिति status वाले हिस्से में दी जाती है. इसलिए, अगर आपका अनुरोध किसी निजी या'सब के लिए उपलब्ध नहीं' ब्रॉडकास्ट को अपडेट कर रहा है और अनुरोध के part पैरामीटर की वैल्यू में status हिस्सा शामिल है, तो ब्रॉडकास्ट की निजता सेटिंग को उस वैल्यू पर अपडेट कर दिया जाएगा जो अनुरोध के मुख्य हिस्से में दी गई है. अगर अनुरोध बॉडी में कोई वैल्यू नहीं दी गई है, तो मौजूदा निजता सेटिंग हटा दी जाएगी और ब्रॉडकास्ट की निजता सेटिंग, डिफ़ॉल्ट सेटिंग पर वापस सेट हो जाएगी. |
|
| वैकल्पिक पैरामीटर | ||
onBehalfOfContentOwner |
stringइस पैरामीटर का इस्तेमाल सिर्फ़ अनुमति वाले अनुरोध में किया जा सकता है. ध्यान दें: यह पैरामीटर सिर्फ़ YouTube के कॉन्टेंट पार्टनर के लिए है. onBehalfOfContentOwner पैरामीटर से पता चलता है कि अनुरोध के लिए दिए गए क्रेडेंशियल, YouTube के कॉन्टेंट मैनेजमेंट सिस्टम (सीएमएस) के उस उपयोगकर्ता की पहचान करते हैं जो पैरामीटर की वैल्यू में बताए गए कॉन्टेंट के मालिक की ओर से काम कर रहा है. यह पैरामीटर उन YouTube कॉन्टेंट पार्टनर के लिए है जो कई अलग-अलग YouTube चैनलों के मालिक हैं और उन्हें मैनेज करते हैं. इसकी मदद से, कॉन्टेंट के मालिक एक बार पुष्टि करके अपने सभी वीडियो और चैनल का डेटा ऐक्सेस कर सकते हैं. इसके लिए, उन्हें हर चैनल के लिए पुष्टि करने के क्रेडेंशियल देने की ज़रूरत नहीं होती. उपयोगकर्ता जिस सीएमएस खाते से पुष्टि करता है वह YouTube कॉन्टेंट के मालिक से लिंक होना चाहिए. |
|
onBehalfOfContentOwnerChannel |
stringइस पैरामीटर का इस्तेमाल, सिर्फ़ अनुमति वाले अनुरोध में ही किया जा सकता है. ध्यान दें: यह पैरामीटर सिर्फ़ YouTube कॉन्टेंट पार्टनर के लिए है. onBehalfOfContentOwnerChannel पैरामीटर से उस YouTube चैनल का आईडी पता चलता है जिस पर वीडियो जोड़ा जा रहा है. यह पैरामीटर तब ज़रूरी होता है, जब किसी अनुरोध में onBehalfOfContentOwner पैरामीटर के लिए कोई वैल्यू दी गई हो. साथ ही, इसका इस्तेमाल सिर्फ़ उस पैरामीटर के साथ किया जा सकता है. इसके अलावा, अनुरोध को ऐसे सीएमएस खाते का इस्तेमाल करके अनुमति दी जानी चाहिए जो onBehalfOfContentOwner पैरामीटर में बताए गए कॉन्टेंट के मालिक से जुड़ा हो. आखिर में, onBehalfOfContentOwnerChannel पैरामीटर की वैल्यू में बताए गए चैनल को, onBehalfOfContentOwner पैरामीटर में बताए गए कॉन्टेंट के मालिक से लिंक किया जाना चाहिए.यह पैरामीटर, YouTube कॉन्टेंट पार्टनर के लिए है जिनके पास कई अलग-अलग YouTube चैनलों का मालिकाना हक है और जिन्हें मैनेज किया जाता है. इसकी मदद से, कॉन्टेंट के मालिक एक बार पुष्टि कर सकते हैं और पैरामीटर वैल्यू में बताए गए चैनल की ओर से कार्रवाइयां कर सकते हैं. इसके लिए, उन्हें हर चैनल के लिए पुष्टि करने के क्रेडेंशियल देने की ज़रूरत नहीं होती. |
|
अनुरोध का मुख्य भाग
अनुरोध के मुख्य हिस्से में liveBroadcast रिसॉर्स दें. उस संसाधन के लिए:
-
आपको इन प्रॉपर्टी के लिए वैल्यू देनी होगी:
idsnippet.scheduledStartTimecontentDetails.monitorStream.enableMonitorStreamcontentDetails.monitorStream.broadcastStreamDelayMs
-
इन प्रॉपर्टी के लिए वैल्यू सेट की जा सकती हैं:
snippet.titlesnippet.descriptionsnippet.scheduledStartTimesnippet.scheduledEndTimestatus.privacyStatuscontentDetails.monitorStream.enableMonitorStreamcontentDetails.monitorStream.broadcastStreamDelayMscontentDetails.enableAutoStartcontentDetails.enableAutoStopcontentDetails.enableClosedCaptionscontentDetails.enableDvrcontentDetails.enableEmbedcontentDetails.recordFromStartmonetizationDetails.cuepointSchedule.pauseAdsUntil
अगर अपडेट का अनुरोध सबमिट किया जा रहा है और आपके अनुरोध में, किसी ऐसी प्रॉपर्टी की वैल्यू नहीं दी गई है जिसकी वैल्यू पहले से मौजूद है, तो प्रॉपर्टी की मौजूदा वैल्यू मिटा दी जाएगी.
जवाब
सही तरीके से काम करने पर, यह तरीका रिस्पॉन्स के मुख्य हिस्से में liveBroadcast संसाधन दिखाता है.
गड़बड़ियां
नीचे दी गई टेबल में, गड़बड़ी के उन मैसेज के बारे में बताया गया है जो इस तरीके को कॉल करने पर, एपीआई दिखा सकता है. ज़्यादा जानकारी के लिए, गड़बड़ी का मैसेज देखें.
| गड़बड़ी का टाइप | गड़बड़ी की जानकारी | ब्यौरा |
|---|---|---|
forbidden (403) |
closedCaptionsTypeModificationNotAllowed |
contentDetails.closedCaptionsType वैल्यू में सिर्फ़ तब बदलाव किया जा सकता है, जब ब्रॉडकास्ट created या ready स्टेटस में हो. |
forbidden (403) |
enabledModificationNotAllowed |
enabled फ़ील्ड, रीड-ओनली है. |
forbidden (403) |
scheduleStrategyModificationNotAllowed |
scheduleStrategy फ़ील्ड को सिर्फ़ पढ़ा जा सकता है. |
forbidden (403) |
repeatIntervalSecsModificationNotAllowed |
repeatIntervalSecs फ़ील्ड, रीड-ओनली है. |
forbidden (403) |
pauseAdsUntilModificationNotAllowed |
pauseAdsUntil फ़ील्ड में बदलाव नहीं किया जा सकता.
यह गड़बड़ी इन वजहों से हो सकती है:
|
forbidden (403) |
enableAutoStartModificationNotAllowed |
contentDetails.enableAutoStart वैल्यू में सिर्फ़ तब बदलाव किया जा सकता है, जब स्ट्रीम बंद हो और ब्रॉडकास्ट created या ready स्टेटस में हो. |
forbidden (403) |
enableClosedCaptionsModificationNotAllowed |
contentDetails.enableClosedCaptions की वैल्यू में सिर्फ़ तब बदलाव किया जा सकता है, जब ब्रॉडकास्ट की स्थिति created या ready हो. |
forbidden (403) |
enableDvrModificationNotAllowed |
contentDetails. वैल्यू में सिर्फ़ तब बदलाव किया जा सकता है, जब ब्रॉडकास्ट का स्टेटस created या ready हो. |
forbidden (403) |
enableMonitorStreamModificationNotAllowed |
contentDetails. वैल्यू में सिर्फ़ तब बदलाव किया जा सकता है, जब ब्रॉडकास्ट का स्टेटस created या ready हो. |
forbidden (403) |
recordFromStartModificationNotAllowed |
contentDetails. वैल्यू में सिर्फ़ तब बदलाव किया जा सकता है, जब ब्रॉडकास्ट का स्टेटस created या ready हो. |
insufficientPermissions |
insufficientLivePermissions |
इस अनुरोध को, बताए गए लाइव ब्रॉडकास्ट को अपडेट करने की अनुमति नहीं है. ज़्यादा जानकारी के लिए, OAuth2 की पुष्टि करने की सुविधा को लागू करना लेख पढ़ें. |
insufficientPermissions |
liveStreamingNotEnabled |
जिस उपयोगकर्ता ने अनुरोध को अनुमति दी है उसके पास YouTube पर लाइव वीडियो स्ट्रीम करने की सुविधा नहीं है. उपयोगकर्ता को ज़्यादा जानकारी https://www.youtube.com/features पर मिल सकती है. |
invalidValue (400) |
invalidAutoStart |
liveBroadcast रिसॉर्स में, contentDetails.enableAutoStart प्रॉपर्टी की अमान्य वैल्यू दी गई थी.
हमेशा चलने वाले ब्रॉडकास्ट के लिए, enableAutoStart सेटिंग में बदलाव नहीं किया जा सकता. |
invalidValue (400) |
invalidAutoStop |
liveBroadcast रिसॉर्स में, contentDetails.enableAutoStop प्रॉपर्टी की अमान्य वैल्यू दी गई थी. आपके पास
हमेशा चलने वाले ब्रॉडकास्ट के लिए, enableAutoStop सेटिंग में बदलाव करने का विकल्प नहीं है. |
invalidValue (400) |
invalidDescription |
liveBroadcast संसाधन में snippet.description प्रॉपर्टी के लिए मान्य मान नहीं बताया गया था. snippet.description में ज़्यादा से ज़्यादा 5,000 वर्ण हो सकते हैं. |
invalidValue (400) |
invalidEmbedSetting |
liveBroadcast रिसॉर्स में contentDetails.enable_embed प्रॉपर्टी के लिए अमान्य वैल्यू दी गई है. इस ब्रॉडकास्ट को एम्बेड नहीं किया जा सकता. |
invalidValue (400) |
invalidEnableClosedCaptions |
liveBroadcast रिसॉर्स में, contentDetails.enableClosedCaptions प्रॉपर्टी की वैल्यू, contentDetails.closedCaptionType सेटिंग की वैल्यू के साथ काम नहीं करती. रिसॉर्स में बदलाव करके, सिर्फ़ दो में से किसी एक प्रॉपर्टी को शामिल करें. इसके बाद, अनुरोध को फिर से सबमिट करें. |
invalidValue (400) |
invalidLatencyPreferenceOptions |
liveBroadcast रिसॉर्स में, contentDetails.latencyPreference प्रॉपर्टी की अमान्य वैल्यू दी गई थी.
इंतज़ार का समय तय करने की इस सेटिंग के साथ, सभी सेटिंग काम नहीं करती हैं.
|
invalidValue (400) |
invalidPauseAdsUntil |
liveBroadcast संसाधन में
monetizationDetails.cuepointSchedule.pauseAdsUntil प्रॉपर्टी के लिए एक अमान्य वैल्यू शामिल है.
यह गड़बड़ी इन वजहों से हो सकती है:
|
invalidValue (400) |
invalidPrivacyStatus |
liveBroadcast संसाधन ने मान्य निजता स्थिति के बारे में नहीं बताया था. privacyStatus की मान्य वैल्यू देखें. |
invalidValue (400) |
invalidProjection |
liveBroadcast संसाधन में contentDetails.projection प्रॉपर्टी के लिए एक अमान्य मान था. परसिस्टेंट ब्रॉडकास्ट का प्रोजेक्शन 360 पर सेट नहीं किया जा सकता. |
invalidValue (400) |
invalidScheduledEndTime |
liveBroadcast संसाधन में snippet.scheduledEndTime प्रॉपर्टी के लिए एक अमान्य मान था. शेड्यूल किए गए खत्म होने का समय, शेड्यूल किए गए शुरू होने के समय के बाद का होना चाहिए. |
invalidValue (400) |
invalidScheduledStartTime |
liveBroadcast रिसॉर्स में snippet.scheduledStartTime प्रॉपर्टी के लिए अमान्य वैल्यू दी गई है. शेड्यूल किया गया शुरू होने का समय, आने वाले समय का होना चाहिए. |
invalidValue (400) |
invalidTitle |
liveBroadcast संसाधन में snippet.title प्रॉपर्टी के लिए मान्य मान नहीं बताया गया था. snippet.title, 1 से 100 वर्णों का होना चाहिए. |
notFound (404) |
liveBroadcastNotFound |
liveBroadcast रिसॉर्स में बताई गई id प्रॉपर्टी से किसी ब्रॉडकास्ट की पहचान नहीं की गई. |
required (400) |
broadcastStreamDelayMsRequired |
liveBroadcast संसाधन में contentDetails. प्रॉपर्टी के बारे में जानकारी नहीं दी गई थी. |
required (400) |
enableMonitorStreamRequired |
liveBroadcast संसाधन में contentDetails. प्रॉपर्टी के बारे में जानकारी नहीं दी गई थी. |
required (400) |
idRequired |
liveBroadcast रिसॉर्स में id प्रॉपर्टी की वैल्यू शामिल होनी चाहिए. |
required (400) |
scheduledEndTimeRequired |
liveBroadcast रिसॉर्स में snippet.scheduledEndTime प्रॉपर्टी की जानकारी नहीं दी गई है. |
required (400) |
scheduledStartTimeRequired |
liveBroadcast रिसॉर्स में snippet.scheduledStartTime प्रॉपर्टी की जानकारी नहीं दी गई है. |
इसे आज़माएं!
इस एपीआई को कॉल करने और एपीआई अनुरोध और रिस्पॉन्स देखने के लिए, APIs Explorer का इस्तेमाल करें.