LiveBroadcasts: update

Обновляет трансляцию. Например, вы можете изменить настройки трансляции, определенные в объекте contentDetails ресурса liveBroadcast .

Распространенные случаи использования

Запрос

HTTP-запрос

PUT https://www.googleapis.com/youtube/v3/liveBroadcasts

Авторизация

Этот запрос требует авторизации хотя бы в одной из следующих областей ( подробнее об аутентификации и авторизации читайте здесь ).

Объем
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 , и его можно использовать только вместе с этим параметром. Кроме того, запрос должен быть авторизован с использованием учетной записи CMS, связанной с владельцем контента, указанным в параметре 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 в теле ответа.

Ошибки

В следующей таблице указаны сообщения об ошибках, которые API может вернуть в ответ на вызов этого метода. Более подробную информацию см. в документации по сообщениям об ошибках .

Тип ошибки Детализация ошибки Описание
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 Значение contentDetails. enableDvr можно изменить только тогда, когда статус трансляции created или ready .
forbidden (403) enableMonitorStreamModificationNotAllowed contentDetails. monitorStream.enableMonitorStream Значение contentDetails. monitorStream.enableMonitorStream можно изменить только тогда, когда статус трансляции created или ready .
forbidden (403) recordFromStartModificationNotAllowed contentDetails. recordFromStart Значение 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 может содержать до 5000 символов.
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 (ГГГГ-ММ-ДДТчч:мм:сс.сЗ).
  • Значение 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 Свойство id , указанное в ресурсе liveBroadcast, не идентифицировало трансляцию.
required (400) broadcastStreamDelayMsRequired Ресурс liveBroadcast не указал contentDetails. monitorStream.broadcastStreamDelayMs Свойство contentDetails. monitorStream.broadcastStreamDelayMs .
required (400) enableMonitorStreamRequired Ресурс liveBroadcast не указал contentDetails. monitorStream.enableMonitorStream Свойство contentDetails. monitorStream.enableMonitorStream .
required (400) idRequired Ресурс liveBroadcast должен включать и указывать значение свойства id .
required (400) scheduledEndTimeRequired Ресурс liveBroadcast не указал свойство snippet.scheduledEndTime .
required (400) scheduledStartTimeRequired Ресурс liveBroadcast не указал свойство snippet.scheduledStartTime .

Попробуй это!

Используйте APIs Explorer для вызова этого API и просмотра запроса и ответа API.