LiveBroadcasts: update

ব্রডকাস্ট আপডেট করে। যেমন, আপনি liveBroadcast রিসোর্সের contentDetails অবজেক্টে উল্লেখ করা ব্রডকাস্ট সেটিংস পরিবর্তন করতে পারেন।

সাধারণ ব্যবহারিক প্রয়োগ

অনুরোধ করুন

HTTP অনুরোধ

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 প্যারামিটার দুটি উদ্দেশ্যে কাজ করে। এটি রাইট অপারেশন সেট করবে এমন প্রপার্টি এবং API রেসপন্সে অন্তর্ভুক্ত থাকবে এমন প্রপার্টি শনাক্ত করে।

প্যারামিটারের ভ্যালুতে আপনি যেসব part প্রপার্টি অন্তর্ভুক্ত করতে পারবেন সেগুলি হল id, snippet, contentDetails, monetizationDetails এবং status।

মনে রাখবেন যে এই পদ্ধতিটি প্যারামিটারের ভ্যালু নির্দিষ্ট করে এমন যেকোনও অংশে থাকা সমস্ত পরিবর্তনযোগ্য প্রপার্টির জন্য আগে থেকে থাকা ভ্যালু ওভাররাইড করবে। যেমন, status অংশে ব্রডকাস্টের গোপনীয়তা স্ট্যাটাস সংজ্ঞায়িত করা হয়। যেমন, আপনার অনুরোধ যদি কোনও ব্যক্তিগত বা তালিকাভুক্ত নয় এমন ব্রডকাস্ট আপডেট করে এবং অনুরোধের part প্যারামিটার ভ্যালুতে status অংশটি অন্তর্ভুক্ত থাকে, তাহলে ব্রডকাস্টের গোপনীয়তা সেটিং অনুরোধের বডিতে নির্দিষ্ট করা ভ্যালুতে আপডেট করা হবে। অনুরোধের বডিতে কোনও ভ্যালু উল্লেখ করা না থাকলে, আগেকার গোপনীয়তা সেটিং সরিয়ে দেওয়া হবে এবং ব্রডকাস্ট ডিফল্ট গোপনীয়তা সেটিংয়ে ফিরে যাবে।
ঐচ্ছিক প্যারামিটার
onBehalfOfContentOwner string
এই প্যারামিটার শুধুমাত্র যথাযথভাবে অনুমোদিত অনুরোধে ব্যবহার করা যেতে পারে।
মনে রাখবেন: এই প্যারামিটারটি শুধুমাত্র YouTube কন্টেন্ট পার্টনারদের জন্য।

onBehalfOfContentOwner প্যারামিটারটি দেখায় যে অনুরোধের অনুমোদনের ক্রেডেনশিয়াল একজন YouTube কন্টেন্ট ম্যানেজমেন্ট সিস্টেম (CMS) ব্যবহারকারীকে শনাক্ত করে যিনি প্যারামিটার ভ্যালুতে নির্দিষ্ট করা কন্টেন্ট মালিকের হয়ে কাজ করছেন। এই প্যারামিটারটি YouTube কন্টেন্ট পার্টনারদের জন্য তৈরি করা হয়েছে যারা বিভিন্ন YouTube চ্যানেল ম্যানেজ করেন। এটি কন্টেন্টের মালিকদের একবার যাচাই করিয়ে নিয়ে তাদের সব ভিডিও ও চ্যানেল ডেটা অ্যাক্সেস করতে দেয়। এর জন্য প্রতিটি আলাদা আলাদা চ্যানেলের জন্য যাচাইকরণের ক্রেডেনশিয়াল দিতে হয় না। ব্যবহারকারী যে CMS অ্যাকাউন্ট দিয়ে যাচাই করেন সেটি নির্দিষ্ট YouTube কন্টেন্ট মালিকের সাথে লিঙ্ক করা থাকতে হবে।
onBehalfOfContentOwnerChannel string
এই প্যারামিটার শুধুমাত্র সঠিকভাবে অনুমোদিত অনুরোধে ব্যবহার করা যেতে পারে।
মনে রাখবেন: এই প্যারামিটারটি শুধুমাত্র YouTube কন্টেন্ট পার্টনারদের জন্য।

onBehalfOfContentOwnerChannel প্যারামিটারটি সেই চ্যানেলের YouTube চ্যানেল আইডি নির্দিষ্ট করে যেখানে একটি ভিডিও যোগ করা হচ্ছে। কোনও অনুরোধে onBehalfOfContentOwner প্যারামিটারের জন্য কোনও ভ্যালু নির্দিষ্ট করা থাকলে এই প্যারামিটারটি প্রয়োজন এবং এটি শুধুমাত্র সেই প্যারামিটারের সাথে ব্যবহার করা যেতে পারে। এছাড়াও, onBehalfOfContentOwner প্যারামিটার যে কন্টেন্টের মালিককে নির্দিষ্ট করে, তার সাথে লিঙ্ক করা CMS অ্যাকাউন্ট ব্যবহার করে অনুরোধটি অবশ্যই অনুমোদিত হতে হবে। সবশেষে, onBehalfOfContentOwnerChannel প্যারামিটার ভ্যালু যে চ্যানেলকে নির্দিষ্ট করে, সেটি অবশ্যই onBehalfOfContentOwner প্যারামিটার দ্বারা নির্দিষ্ট করা কন্টেন্ট মালিকের সাথে লিঙ্ক করা থাকতে হবে।

এই প্যারামিটারটি সেইসব YouTube কন্টেন্ট পার্টনারদের জন্য তৈরি করা হয়েছে যারা একাধিক YouTube চ্যানেলের মালিকানা ও ম্যানেজমেন্ট করেন। এটি কন্টেন্টের মালিককে একবার যাচাইকরণ করার এবং প্রতিটি আলাদা চ্যানেলের জন্য যাচাইকরণ সংক্রান্ত ক্রেডেনশিয়াল প্রদান না করেই প্যারামিটারের মানে নির্দিষ্ট করা চ্যানেলের হয়ে অ্যাকশন নেওয়ার অনুমতি দেয়।

অনুরোধের বডি

অনুরোধের বডিতে liveBroadcast রিসোর্স প্রদান করুন। সেই রিসোর্সের জন্য:

  • এইসব প্রপার্টির জন্য আপনাকে অবশ্যই একটি মান উল্লেখ করতে হবে:

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

  • আপনি এইসব প্রপার্টির জন্য ভ্যালু সেট করতে পারবেন:

    • snippet.title
    • snippet.description
    • snippet.categoryId
    • snippet.scheduledStartTime
    • snippet.scheduledEndTime
    • status.privacyStatus
    • contentDetails.monitorStream.enableMonitorStream
    • contentDetails.monitorStream.broadcastStreamDelayMs
    • contentDetails.enableAutoStart
    • contentDetails.enableAutoStop
    • contentDetails.enableClosedCaptions
    • contentDetails.enableDvr
    • contentDetails.enableEmbed
    • contentDetails.recordFromStart
    • contentDetails.availabilityConfig
    • monetizationDetails.adsMonetizationStatus
    • monetizationDetails.cuepointSchedule.enabled
    • monetizationDetails.cuepointSchedule.pauseAdsUntil
    • monetizationDetails.cuepointSchedule.ytOptimizedCuepointConfig
    • monetizationDetails.cuepointSchedule.creatorCuepointConfig.scheduleStrategy
    • monetizationDetails.cuepointSchedule.creatorCuepointConfig.repeatIntervalSecs

    আপনি যদি কোনও আপডেট অনুরোধ জমা দেন এবং আপনার অনুরোধে এমন কোনও প্রপার্টির জন্য ভ্যালু নির্দিষ্ট না করা থাকে যার আগে থেকেই একটি ভ্যালু আছে, তাহলে প্রপার্টির আগে থেকে থাকা ভ্যালু মুছে ফেলা হবে।

রেসপন্স

সফল হলে, এই পদ্ধতি রেসপন্স বডিতে liveBroadcast রিসোর্স ফিরিয়ে দেয়।

সমস্যা

এই পদ্ধতিতে কল করার উত্তরে API যেসব সমস্যার মেসেজ পাঠাতে পারে, তা নিম্নলিখিত টেবিলে শনাক্ত করা হয়েছে। আরও বিবরণের জন্য, সমস্যার মেসেজ দেখুন।

সমস্যার ধরন সমস্যার বিবরণ বিবরণ
backendError (503) backendError কিছু সেটিংস এখনও প্রয়োগ করা যাবে না। সম্ভবত এটি হয়েছে কারণ ব্রডকাস্টটি এইমাত্র তৈরি করা হয়েছে। কয়েক সেকেন্ড পরে আবার চেষ্টা করুন।
forbidden (403) closedCaptionsTypeModificationNotAllowed ব্রডকাস্ট created বা ready স্ট্যাটাসে থাকলে তবেই contentDetails.closedCaptionsType ভ্যালু পরিবর্তন করা যাবে।
forbidden (403) monetizationDetailsModificationNotAllowed যেসব চ্যানেল YouTube পার্টনার প্রোগ্রাম (YPP)-এর অংশ নয়, সেগুলি কোনও ভিডিওর জন্য monetizationDetails পরিবর্তন করতে পারবে না।
forbidden (403) pauseAdsUntilModificationNotAllowed pauseAdsUntil ফিল্ড পরিবর্তন করা যাবে না। নিম্নলিখিত কারণে এই সমস্যা হতে পারে:
  • monetizationDetails.cuepointSchedule.enabled ফিল্ড true-এ সেট করা নেই। এই ফিল্ডটি শুধুমাত্র YouTube Studio ব্যবহার করে সেট করা যাবে।
  • ব্রডকাস্ট লাইভ নেই।
forbidden (403) enableAutoStartModificationNotAllowed স্ট্রিম বন্ধ থাকলে এবং ব্রডকাস্ট created বা ready স্ট্যাটাসে থাকলে তবেই contentDetails.enableAutoStart ভ্যালু পরিবর্তন করা যাবে।
forbidden (403) enableClosedCaptionsModificationNotAllowed ব্রডকাস্টের স্ট্যাটাস created বা ready হলে তবেই contentDetails.enableClosedCaptions ভ্যালু পরিবর্তন করা যাবে।
forbidden (403) enableDvrModificationNotAllowed ব্রডকাস্টের স্ট্যাটাস created বা ready হলে তবেই contentDetails.enableDvr ভ্যালু পরিবর্তন করা যাবে।
forbidden (403) enableMonitorStreamModificationNotAllowed ব্রডকাস্টের স্ট্যাটাস created বা ready হলে তবেই contentDetails.monitorStream.enableMonitorStream ভ্যালু পরিবর্তন করা যাবে।
forbidden (403) recordFromStartModificationNotAllowed ব্রডকাস্টের স্ট্যাটাস created বা ready হলে তবেই contentDetails.recordFromStart ভ্যালু পরিবর্তন করা যাবে।
insufficientPermissions insufficientLivePermissions নির্দিষ্ট লাইভ ব্রডকাস্ট আপডেট করার জন্য অনুরোধটি অনুমোদিত নয়। আরও তথ্যের জন্য, OAuth2 যাচাইকরণ প্রয়োগ করা দেখুন।
insufficientPermissions liveStreamingNotEnabled যে ব্যবহারকারী অনুরোধ অনুমোদন করেছেন, তিনি YouTube-এ লাইভ ভিডিও স্ট্রিম করার জন্য অনুমোদিত নন। ব্যবহারকারী https://www.youtube.com/features থেকে আরও তথ্য পেতে পারেন।
invalidArgument missingAdsMonetizationStatus ads_monetization_status অবশ্যই ON বা OFF হিসেবে উল্লেখ করতে হবে।
invalidValue (400) invalidAutoStart liveBroadcast রিসোর্সে contentDetails.enableAutoStart প্রপার্টির জন্য ভুল ভ্যালু আছে। আপনি পারসিস্টেন্ট ব্রডকাস্টের জন্য enableAutoStart সেটিং পরিবর্তন করতে পারবেন না।
invalidValue (400) invalidAutoStop liveBroadcast রিসোর্সে contentDetails.enableAutoStop প্রপার্টির জন্য ভুল মান রয়েছে। আপনি পারসিস্টেন্ট ব্রডকাস্টের জন্য enableAutoStop সেটিং পরিবর্তন করতে পারবেন না।
invalidValue (400) invalidDescription liveBroadcast রিসোর্স-এ snippet.description প্রপার্টির জন্য কোনও সঠিক ভ্যালু নির্দিষ্ট করা হয়নি। snippet.description-এ সর্বাধিক ৫০০০ অক্ষর থাকতে পারে।
invalidValue (400) invalidEmbedSetting liveBroadcast রিসোর্সে contentDetails.enable_embed প্রপার্টির জন্য ভুল ভ্যালু আছে। আপনি এই ব্রডকাস্ট এম্বেড করতে পারবেন না।
invalidValue (400) invalidEnableClosedCaptions liveBroadcast রিসোর্সে, contentDetails.enableClosedCaptions প্রপার্টির ভ্যালু contentDetails.closedCaptionType সেটিংসের ভ্যালুর সাথে মানানসই নয়। দুটি প্রপার্টির মধ্যে একটি রেখে রিসোর্স পরিবর্তন করুন এবং তারপর আবার অনুরোধ জমা দিন।
invalidValue (400) invalidLatencyPreferenceOptions liveBroadcast রিসোর্সে contentDetails.latencyPreference প্রপার্টির জন্য ভুল ভ্যালু আছে। এই লেটেন্সি সংক্রান্ত পছন্দের সাথে সব সেটিংস কাজ করে না।
invalidValue (400) invalidEligibleForAdsMonetization eligible_for_ads_monetization শুধু পড়ার জন্য উপলভ্য এবং monetization_details ফিল্ডে এটি নির্দিষ্ট করা যাবে না।
invalidValue (400) invalidCuepointSchedule liveBroadcast রিসোর্সে monetizationDetails.cuepointSchedule প্রপার্টির জন্য ভুল ভ্যালু আছে। এইসব কারণে এই সমস্যা হতে পারে:
  • ads_monetization_status-এর মান OFF হলে cuepoint_schedule নির্দিষ্ট করা যাবে না।
  • ads_monetization_status-এর মান ON হলে cuepoint_schedule অবশ্যই উল্লেখ করতে হবে।
ads_monetization_status বন্ধ থাকলে cuepoint_schedule নির্দিষ্ট করা যাবে না।
invalidValue (400) invalidEnabled liveBroadcast রিসোর্স-এ monetizationDetails.cuepointSchedule.enabled প্রপার্টির জন্য ভুল বা পরস্পরবিরোধী ভ্যালু আছে। এইসব কারণে এই সমস্যা হতে পারে:
  • enabled অবশ্যই cuepoint_schedule ফিল্ডে উল্লেখ করতে হবে।
  • enabled মিথ্যা হলে pause_ads_until, yt_optimized_cuepoint_config অথবা creator_cuepoint_config উল্লেখ করা যাবে না।
  • enabled সত্য হলে, yt_optimized_cuepoint_config এবং creator_cuepoint_config-এর মধ্যে শুধুমাত্র একটি নির্দিষ্ট করা যেতে পারে।
invalidValue (400) invalidCreatorCuepointConfig schedule_strategy এবং repeat_interval_secs দুটিই উল্লেখ করতে হবে।
invalidValue (400) invalidRepeatIntervalSecs repeat_interval_secs প্রপার্টির ভ্যালু অবশ্যই [৩৬০, ৩৬০০] রেঞ্জের মধ্যে হতে হবে।
invalidValue (400) invalidPauseAdsUntil liveBroadcast রিসোর্সে monetizationDetails.cuepointSchedule.pauseAdsUntil প্রপার্টির জন্য ভুল ভ্যালু আছে। নিম্নলিখিত কারণে এই সমস্যা হতে পারে:
  • monetizationDetails.cuepointSchedule.pauseAdsUntil-এর মান ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) ফর্ম্যাটে উল্লেখ করা হয়নি।
  • monetizationDetails.cuepointSchedule.pauseAdsUntil-এর ভ্যালু ভবিষ্যতের নয়।
  • monetizationDetails.cuepointSchedule.pauseAdsUntil ভ্যালু বর্তমান সময়ের থেকে ১০ মিনিটের বেশি দূরে।
invalidValue (400) invalidPrivacyStatus liveBroadcast রিসোর্স সঠিক গোপনীয়তা স্ট্যাটাস উল্লেখ করেনি। সঠিক privacyStatus ভ্যালু দেখুন।
invalidValue (400) invalidProjection liveBroadcast রিসোর্সে contentDetails.projection প্রপার্টির জন্য ভুল মান রয়েছে। পারসিস্টেন্ট ব্রডকাস্টের প্রোজেকশন ৩৬০-এ সেট করা যাবে না।
invalidValue (400) invalidScheduledEndTime liveBroadcast রিসোর্সে snippet.scheduledEndTime প্রপার্টির জন্য ভুল ভ্যালু আছে। শিডিউল করা শেষ হওয়ার সময় অবশ্যই শিডিউল করা শুরুর সময়ের পরে হতে হবে।
invalidValue (400) invalidScheduledStartTime liveBroadcast রিসোর্সে snippet.scheduledStartTime প্রপার্টির জন্য ভুল ভ্যালু আছে। শিডিউল করা শুরুর সময় অবশ্যই ভবিষ্যতের হতে হবে।
invalidValue (400) invalidTitle liveBroadcast রিসোর্স-এ snippet.title প্রপার্টির জন্য কোনও সঠিক ভ্যালু নির্দিষ্ট করা হয়নি। snippet.title ১ থেকে ১০০টি অক্ষরের মধ্যে হতে হবে।
notFound (404) liveBroadcastNotFound liveBroadcast রিসোর্সে উল্লেখ করা id প্রপার্টি কোনও ব্রডকাস্ট শনাক্ত করতে পারেনি।
preconditionFailed (412) videoNotEligibleForAdsMonetization ভিডিওটি বিজ্ঞাপন মনিটাইজেশনের জন্য উপযুক্ত নয়। চ্যানেল মনিটাইজেশনের জন্য উপযুক্ত না হলে এটি হতে পারে।
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 প্রপার্টি নির্দিষ্ট করেনি।

এটি ব্যবহার করে দেখুন!

এই API কল করতে এবং API অনুরোধ ও উত্তর দেখতে APIs Explorer ব্যবহার করুন।