LiveBroadcasts: update

ब्रॉडकास्ट को अपडेट करता है. उदाहरण के लिए, 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
string इस कार्रवाई में, part पैरामीटर दो मकसद पूरे करता है. इससे उन प्रॉपर्टी की पहचान होती है जिन्हें राइट ऑपरेशन सेट करता है. साथ ही, एपीआई के रिस्पॉन्स में शामिल की जाने वाली प्रॉपर्टी की पहचान करता है.

पैरामीटर वैल्यू में id, snippet, contentDetails, monetizationDetails, और status part प्रॉपर्टी शामिल की जा सकती हैं.

ध्यान दें कि यह तरीका, पैरामीटर की वैल्यू के किसी भी हिस्से में मौजूद बदली जा सकने वाली प्रॉपर्टी की मौजूदा वैल्यू को बदल देगा. उदाहरण के लिए, किसी ब्रॉडकास्ट की निजता स्थिति status वाले हिस्से में तय होती है. इसलिए, अगर आपका अनुरोध किसी निजी या ऐसे ब्रॉडकास्ट को अपडेट करता है जो सबके लिए मौजूद नहीं है और अनुरोध के part पैरामीटर की वैल्यू में status का हिस्सा शामिल है, तो ब्रॉडकास्ट की निजता सेटिंग, अनुरोध के मुख्य हिस्से में तय की गई वैल्यू पर अपडेट कर दी जाएगी. अगर अनुरोध के मुख्य हिस्से में कोई वैल्यू नहीं बताई गई है, तो मौजूदा निजता सेटिंग हटा दी जाएगी और ब्रॉडकास्ट वापस डिफ़ॉल्ट निजता सेटिंग पर सेट हो जाएगा.
वैकल्पिक पैरामीटर
onBehalfOfContentOwner
string इस पैरामीटर का इस्तेमाल, सिर्फ़ अनुमति वाले अनुरोध में किया जा सकता है.
ध्यान दें: यह पैरामीटर खास तौर पर YouTube के कॉन्टेंट पार्टनर के लिए है.

onBehalfOfContentOwner पैरामीटर से पता चलता है कि अनुरोध की अनुमति के क्रेडेंशियल से, YouTube कॉन्टेंट मैनेजमेंट सिस्टम (सीएमएस) के ऐसे उपयोगकर्ता की पहचान होती है जो पैरामीटर की वैल्यू में कॉन्टेंट के मालिक की ओर से कार्रवाई कर रहा है. यह पैरामीटर उन YouTube कॉन्टेंट पार्टनर के लिए है जो कई अलग-अलग YouTube चैनलों के मालिक हैं और उन्हें मैनेज करते हैं. इससे कॉन्टेंट के मालिकों को अपने चैनल की पुष्टि करने के साथ-साथ, अपने सभी वीडियो और चैनल का डेटा ऐक्सेस करने की सुविधा मिलती है. इसके लिए, उन्हें हर चैनल की पुष्टि करने से जुड़े क्रेडेंशियल देने की ज़रूरत नहीं होती. उपयोगकर्ता जिस कॉन्टेंट मैनेजमेंट सिस्टम खाते से पुष्टि करता है उसे YouTube कॉन्टेंट के बताए गए मालिक से लिंक होना चाहिए.
onBehalfOfContentOwnerChannel
string इस पैरामीटर का इस्तेमाल, सिर्फ़ अनुमति वाले अनुरोध में किया जा सकता है.
ध्यान दें: यह पैरामीटर खास तौर पर YouTube के कॉन्टेंट पार्टनर के लिए है.

onBehalfOfContentOwnerChannel पैरामीटर से उस चैनल के YouTube चैनल आईडी की जानकारी मिलती है जिसमें वीडियो जोड़ा जा रहा है. यह पैरामीटर तब ज़रूरी होता है, जब किसी अनुरोध में onBehalfOfContentOwner पैरामीटर के लिए वैल्यू तय की जाती है और इसका इस्तेमाल सिर्फ़ उस पैरामीटर के साथ किया जा सकता है. इसके अलावा, अनुरोध को ऐसे कॉन्टेंट मैनेजमेंट सिस्टम खाते का इस्तेमाल करने की अनुमति दी जानी चाहिए जो onBehalfOfContentOwner पैरामीटर से तय किए गए कॉन्टेंट के मालिक से जुड़ा हो. आखिर में, onBehalfOfContentOwnerChannel पैरामीटर मान से तय किया गया चैनल, onBehalfOfContentOwner पैरामीटर के ज़रिए बताए गए कॉन्टेंट के मालिक से जुड़ा होना चाहिए.

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

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

अनुरोध के मुख्य हिस्से में liveBroadcast संसाधन उपलब्ध कराएं. इस संसाधन के लिए:

  • आपको इन प्रॉपर्टी के लिए एक वैल्यू तय करनी होगी:

    • id
    • snippet.scheduledStartTime
    • contentDetails.monitorStream.enableMonitorStream
    • contentDetails.monitorStream.broadcastStreamDelayMs

  • इन प्रॉपर्टी के लिए वैल्यू सेट की जा सकती हैं:

    • snippet.title
    • snippet.description
    • snippet.scheduledStartTime
    • snippet.scheduledEndTime
    • status.privacyStatus
    • contentDetails.monitorStream.enableMonitorStream
    • contentDetails.monitorStream.broadcastStreamDelayMs
    • contentDetails.enableAutoStart
    • contentDetails.enableAutoStop
    • contentDetails.enableClosedCaptions
    • contentDetails.enableDvr
    • contentDetails.enableEmbed
    • contentDetails.recordFromStart
    • monetizationDetails.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 फ़ील्ड में बदलाव नहीं किया जा सकता. यह गड़बड़ी इन वजहों से हो सकती है:
  • monetizationDetails.cuepointSchedule.enabled फ़ील्ड को true पर सेट नहीं किया गया है. इस फ़ील्ड को सिर्फ़ YouTube Studio का इस्तेमाल करके सेट किया जा सकता है.
  • ब्रॉडकास्ट लाइव नहीं है.
forbidden (403) enableAutoStartModificationNotAllowed contentDetails.enableAutoStart की वैल्यू में सिर्फ़ तब बदलाव किया जा सकता है, जब स्ट्रीम बंद हो और ब्रॉडकास्ट की स्थिति created या ready हो.
forbidden (403) enableClosedCaptionsModificationNotAllowed contentDetails.enableClosedCaptions की वैल्यू में सिर्फ़ तब बदलाव किया जा सकता है, जब ब्रॉडकास्ट की स्थिति created या ready हो.
forbidden (403) enableDvrModificationNotAllowed contentDetails.enableDvr की वैल्यू में सिर्फ़ तब बदलाव किया जा सकता है, जब ब्रॉडकास्ट की स्थिति created या ready हो.
forbidden (403) enableMonitorStreamModificationNotAllowed contentDetails.monitorStream.enableMonitorStream की वैल्यू में सिर्फ़ तब बदलाव किया जा सकता है, जब ब्रॉडकास्ट की स्थिति created या ready हो.
forbidden (403) recordFromStartModificationNotAllowed contentDetails.recordFromStart की वैल्यू में सिर्फ़ तब बदलाव किया जा सकता है, जब ब्रॉडकास्ट की स्थिति 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 प्रॉपर्टी. यह गड़बड़ी इन वजहों से हो सकती है:
  • monetizationDetails.cuepointSchedule.pauseAdsUntil की वैल्यू, ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) फ़ॉर्मैट में नहीं बताई गई है.
  • monetizationDetails.cuepointSchedule.pauseAdsUntil वैल्यू आने वाले समय की नहीं है.
  • monetizationDetails.cuepointSchedule.pauseAdsUntil की वैल्यू, मौजूदा समय से 10 मिनट से ज़्यादा दूर है.
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.monitorStream.broadcastStreamDelayMs प्रॉपर्टी के बारे में जानकारी नहीं दी गई थी.
required (400) enableMonitorStreamRequired liveBroadcast संसाधन में contentDetails.monitorStream.enableMonitorStream प्रॉपर्टी के बारे में जानकारी नहीं दी गई थी.
required (400) idRequired LiveBroadcast संसाधन में id प्रॉपर्टी का मान शामिल होना चाहिए और उसके लिए एक मान तय करना ज़रूरी है.
required (400) scheduledEndTimeRequired liveBroadcast संसाधन में snippet.scheduledEndTime प्रॉपर्टी के बारे में जानकारी नहीं दी गई थी.
required (400) scheduledStartTimeRequired liveBroadcast संसाधन में snippet.scheduledStartTime प्रॉपर्टी के बारे में जानकारी नहीं दी गई थी.

इसे आज़माएं!

इस एपीआई को कॉल करने के लिए, APIs Explorer का इस्तेमाल करें. साथ ही, एपीआई का अनुरोध और रिस्पॉन्स देखें.