LiveBroadcasts: transition

Изменяет статус прямой трансляции YouTube и инициирует любые процессы, связанные с новым статусом. Например, когда вы переводите статус трансляции на testing , YouTube начинает передавать видео в поток монитора этой трансляции. Прежде чем вызывать этот метод, вам следует подтвердить, что значение свойства status.streamStatus для потока, привязанного к вашей трансляции, active .

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

Запрос

HTTP-запрос

POST https://www.googleapis.com/youtube/v3/liveBroadcasts/transition

Авторизация

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

Объем
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

Параметры

В следующей таблице перечислены параметры, которые поддерживает этот запрос. Все перечисленные параметры являются параметрами запроса.

Параметры
Обязательные параметры
broadcastStatus string
Параметр broadcastStatus определяет состояние, в которое изменяется широковещательная рассылка. Обратите внимание: чтобы перевести широковещательную рассылку в состояние testing или live состояние, status.streamStatus должен быть active для потока, к которому привязана широковещательная рассылка.

Приемлемые значения:
  • complete – Трансляция окончена. Ютуб перестает передавать видео.
  • live — трансляция видна аудитории. YouTube передает видео в поток монитора трансляции и ее поток трансляции.
  • testing – начать тестирование трансляции. YouTube передает видео в поток монитора трансляции. Обратите внимание, что вы можете перевести широковещательную рассылку в состояние testing , только если для ее свойства contentDetails.monitorStream.enableMonitorStream установлено значение true .
id string
Параметр id указывает уникальный идентификатор широковещательной рассылки, которая переходит в другой статус.
part string
Параметр part указывает разделенный запятыми список одного или нескольких свойств ресурса liveBroadcast , которые будут включены в ответ API. Имена part , которые вы можете включить в значение параметра: id , snippet , contentDetails и status .
Дополнительные параметры
onBehalfOfContentOwner string
Этот параметр можно использовать только в должным образом авторизованном запросе . Примечание. Этот параметр предназначен исключительно для контент-партнеров YouTube.

Параметр onBehalfOfContentOwner указывает, что учетные данные авторизации запроса идентифицируют пользователя YouTube CMS, который действует от имени владельца контента, указанного в значении параметра. Этот параметр предназначен для контент-партнеров YouTube, которые владеют и управляют множеством различных каналов YouTube. Это позволяет владельцам контента один раз пройти аутентификацию и получить доступ ко всем своим видео и данным каналов без необходимости предоставлять учетные данные аутентификации для каждого отдельного канала. Учетная запись CMS, с помощью которой пользователь проходит аутентификацию, должна быть связана с указанным владельцем контента YouTube.
onBehalfOfContentOwnerChannel string
Этот параметр можно использовать только в должным образом авторизованном запросе . Этот параметр можно использовать только в должным образом авторизованном запросе . Примечание. Этот параметр предназначен исключительно для контент-партнеров YouTube.

Параметр onBehalfOfContentOwnerChannel указывает идентификатор канала YouTube, на который добавляется видео. Этот параметр является обязательным, если в запросе указано значение параметра onBehalfOfContentOwner , и его можно использовать только вместе с этим параметром. Кроме того, запрос должен быть авторизован с использованием учетной записи CMS, связанной с владельцем контента, указанным в параметре onBehalfOfContentOwner . Наконец, канал, указанный в значении параметра onBehalfOfContentOwnerChannel , должен быть связан с владельцем контента, указанным в параметре onBehalfOfContentOwner .

Этот параметр предназначен для контент-партнеров YouTube, которые владеют и управляют множеством различных каналов YouTube. Он позволяет владельцам контента один раз пройти аутентификацию и выполнять действия от имени канала, указанного в значении параметра, без необходимости предоставления учетных данных аутентификации для каждого отдельного канала.

Тело запроса

Не указывайте тело запроса при вызове этого метода.

Ответ

В случае успеха этот метод возвращает ресурс liveBroadcast в теле ответа.

Ошибки

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

Тип ошибки Детализация ошибки Описание
backendError errorExecutingTransition Произошла ошибка при изменении статуса трансляции.
forbidden (403) errorStreamInactive Запрошенный переход не разрешен, если поток, привязанный к широковещанию, неактивен.
forbidden (403) invalidTransition Прямая трансляция не может перейти из текущего статуса в запрошенный.
forbidden (403) redundantTransition Прямая трансляция уже находится в запрошенном статусе или обрабатывается до запрошенного статуса.
insufficientPermissions insufficientLivePermissions Запрос не авторизован для перехода в прямом эфире.
insufficientPermissions livePermissionBlocked Пользователь, авторизовавший запрос, в настоящее время не может транслировать видео в реальном времени на YouTube. Подробности, объясняющие, почему пользователь не может транслировать видео в реальном времени, можно найти в настройках канала пользователя по адресу https://www.youtube.com/features .
insufficientPermissions liveStreamingNotEnabled Пользователь, авторизовавший запрос, не имеет права транслировать видео в реальном времени на YouTube. Пользователь может найти дополнительную информацию по адресу https://www.youtube.com/features .
notFound (404) liveBroadcastNotFound Широковещательная рассылка, указанная параметром id , не существует.
rateLimitExceeded (403) userRequestsExceedRateLimit Пользователь отправил слишком много запросов за определенный период времени.
required (400) idRequired Обязательный параметр id должен идентифицировать трансляцию, статус которой вы хотите изменить.
required (400) statusRequired В запросе API должно быть указано значение параметра status .

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

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