تعديلات على بث على سبيل المثال، يمكنك تعديل إعدادات البث المحدّدة في الكائن contentDetails لمورد liveBroadcast.
حالات الاستخدام الشائعة
طلب
طلب 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 غرضَين في هذه العملية. فهي تحدّد السمات التي ستضبطها عملية الكتابة، بالإضافة إلى ردّ من واجهة برمجة التطبيقات الذي ستتضمّنه.سمات part التي يمكنك تضمينها في قيمة المَعلمة هي id وsnippet وcontentDetails وmonetizationDetails وstatus.يُرجى العِلم أنّ هذه الطريقة ستتجاهل القيم الحالية لجميع السمات القابلة للتغيير والمضمّنة في أي أجزاء تحدّدها قيمة المَعلمة. على سبيل المثال، يتم تحديد حالة خصوصية البث في جزء status. وبالتالي، إذا كان طلبك يعدّل بثًا خاصًا أو غير مُدرَج، وكانت قيمة المَعلمة part في الطلب تتضمّن جزء status، سيتم تعديل إعدادات خصوصية البث إلى أي قيمة يحدّدها نص الطلب. وإذا لم يحدّد نص الطلب قيمة، ستتم إزالة إعدادات الخصوصية الحالية وسيعود البث إلى إعدادات الخصوصية التلقائية. |
|
| المعلمات الاختيارية | ||
onBehalfOfContentOwner |
stringلا يمكن استخدام هذه المَعلمة إلا في طلب مُفوَّض بشكل صحيح. ملاحظة: هذه المَعلمة مخصّصة حصريًا لشركاء المحتوى على YouTube. تشير مَعلمة onBehalfOfContentOwner إلى أنّ بيانات اعتماد التفويض في الطلب تحدّد مستخدمًا في نظام إدارة المحتوى (CMS) على 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.categoryIdsnippet.scheduledStartTimesnippet.scheduledEndTimestatus.privacyStatuscontentDetails.monitorStream.enableMonitorStreamcontentDetails.monitorStream.broadcastStreamDelayMscontentDetails.enableAutoStartcontentDetails.enableAutoStopcontentDetails.enableClosedCaptionscontentDetails.enableDvrcontentDetails.enableEmbedcontentDetails.recordFromStartcontentDetails.availabilityConfigmonetizationDetails.adsMonetizationStatusmonetizationDetails.cuepointSchedule.enabledmonetizationDetails.cuepointSchedule.pauseAdsUntilmonetizationDetails.cuepointSchedule.ytOptimizedCuepointConfigmonetizationDetails.cuepointSchedule.creatorCuepointConfig.scheduleStrategymonetizationDetails.cuepointSchedule.creatorCuepointConfig.repeatIntervalSecs
إذا كنت تُرسِل طلب تعديل ولم يحدّد طلبك قيمة لسمة لها قيمة حالية، سيتم حذف القيمة الحالية للسمة.
الردّ
إذا نجحت هذه الطريقة، ستعرض مورد liveBroadcast في نص الردّ.
الأخطاء
يحدّد الجدول التالي رسائل الخطأ التي يمكن أن تعرضها واجهة برمجة التطبيقات ردًا على طلب هذه الطريقة. لمزيد من التفاصيل، يُرجى الاطّلاع على رسالة الخطأ.
| نوع الخطأ | تفاصيل الخطأ | الوصف | |
|---|---|---|---|
backendError (503) |
backendError |
لا يمكن تطبيق بعض الإعدادات بعد. من المرجّح أنّ ذلك يعود إلى أنّ البث تم إنشاؤه للتو. يُرجى إعادة المحاولة بعد بضع ثوانٍ. | |
forbidden (403) |
closedCaptionsTypeModificationNotAllowed |
لا يمكن تعديل قيمة contentDetails.closedCaptionsType إلا عندما تكون حالة البث created أو ready. |
|
forbidden (403) |
monetizationDetailsModificationNotAllowed |
لا يمكن للقنوات التي ليست جزءًا من "برنامج شركاء YouTube" تعديل monetizationDetails لفيديو. |
|
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. | |
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 على ما يصل إلى 5000 حرف. |
|
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.
يمكن أن يحدث هذا الخطأ للأسباب التالية:
|
لا يمكن تحديد cuepoint_schedule إذا كانت ads_monetization_status هي OFF. |
invalidValue (400) |
invalidEnabled |
يحتوي مورد liveBroadcast على قيمة غير صالحة أو متعارضة للسمة monetizationDetails.cuepointSchedule.enabled.
يمكن أن يحدث هذا الخطأ للأسباب التالية:
|
|
invalidValue (400) |
invalidCreatorCuepointConfig |
يجب تحديد كل من schedule_strategy وrepeat_interval_secs. |
|
invalidValue (400) |
invalidRepeatIntervalSecs |
يجب أن تكون قيمة السمة repeat_interval_secs ضمن النطاق [360, 3600]. |
|
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 بين حرف واحد و100 حرف. |
|
notFound (404) |
liveBroadcastNotFound |
لم تحدّد السمة id المحدّدة في مورد liveBroadcast بثًا. |
|
preconditionFailed (412) |
videoNotEligibleForAdsMonetization |
الفيديو غير مؤهّل لتحقيق الربح من الإعلانات. يمكن أن يحدث ذلك إذا لم تكن القناة مؤهّلة لتحقيق الربح. | |
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 لاستدعاء واجهة برمجة التطبيقات هذه والاطّلاع على طلب بيانات من واجهة برمجة التطبيقات واستجابتها.