Обновляет трансляцию. Например, вы можете изменить настройки трансляции, заданные в объекте 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 в этой операции служит двум целям. Он определяет свойства, которые будут заданы операцией записи, а также свойства, которые будут включены в ответ API.Свойства part, которые можно включить в значение параметра: id, snippet, contentDetails, monetizationDetails и status.Обратите внимание, что этот метод переопределит существующие значения для всех изменяемых свойств, содержащихся в любых частях, указанных в значении параметра. Например, статус конфиденциальности трансляции определяется в части status. Таким образом, если ваш запрос обновляет трансляцию с ограниченным доступом или доступом по ссылке и значение параметра part включает часть status, то настройки конфиденциальности трансляции будут изменены на те, которые заданы в теле запроса. Если в теле запроса не указано значение, существующие настройки конфиденциальности будут удалены, а для трансляции будут восстановлены настройки по умолчанию. |
|
| Необязательные параметры | ||
onBehalfOfContentOwner |
stringЭтот параметр можно использовать только в авторизованном запросе. Примечание. Этот параметр предназначен исключительно для партнеров YouTube по контенту. Параметр onBehalfOfContentOwner указывает, что учетные данные авторизации запроса идентифицируют пользователя системы управления контентом (CMS) YouTube, который действует от имени владельца контента, указанного в значении параметра. Этот параметр предназначен для партнеров YouTube, которые владеют несколькими каналами и управляют ими. Владельцы контента могут пройти аутентификацию один раз и получить доступ к данным всех своих видео и каналов. Аккаунт CMS, с помощью которого пользователь проходит аутентификацию, должен быть связан с указанным владельцем контента YouTube. |
|
onBehalfOfContentOwnerChannel |
stringЭтот параметр можно использовать только в авторизованном запросе. Примечание. Этот параметр предназначен исключительно для партнеров YouTube. Параметр onBehalfOfContentOwnerChannel указывает идентификатор канала YouTube, на который добавляется видео. Этот параметр обязателен, если в запросе указано значение параметра onBehalfOfContentOwner, и может использоваться только вместе с ним. Кроме того, запрос должен быть авторизован с помощью аккаунта CMS, связанного с владельцем контента, который указан в параметре 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 в теле ответа.
Ошибки
В таблице ниже перечислены сообщения об ошибках, которые API может возвращать в ответ на вызов этого метода. Подробнее о сообщениях об ошибках…
| Тип ошибки | Сведения об ошибке | Описание | |
|---|---|---|---|
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. Подробнее о функциях 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.
Эта ошибка может возникнуть по следующим причинам:
|
Если параметр ads_monetization_status отключен, параметр cuepoint_schedule задать нельзя. |
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 должно содержать от 1 до 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, чтобы вызвать этот API и посмотреть запрос к API и ответ.