liveBroadcast
теперь содержит свойство, которое определяет статус этой прямой трансляции «сделано для детей». Условия обслуживания API-сервисов YouTube и Правила для разработчиков также были обновлены 10 января 2020 года. Для получения дополнительной информации см. историю изменений API-сервиса YouTube Live Streaming и Условия использования API-сервисов YouTube .Создает трансляцию.
Распространенные случаи использования
Запрос
HTTP-запрос
POST 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 и status . | |
Дополнительные параметры | ||
onBehalfOfContentOwner | string Этот параметр можно использовать только в должным образом авторизованном запросе . Примечание. Этот параметр предназначен исключительно для контент-партнеров YouTube. Параметр onBehalfOfContentOwner указывает, что учетные данные авторизации запроса идентифицируют пользователя YouTube CMS, который действует от имени владельца контента, указанного в значении параметра. Этот параметр предназначен для контент-партнеров YouTube, которые владеют и управляют множеством различных каналов YouTube. Это позволяет владельцам контента один раз пройти аутентификацию и получить доступ ко всем своим видео и данным каналов без необходимости предоставления учетных данных аутентификации для каждого отдельного канала. Учетная запись CMS, с помощью которой пользователь проходит аутентификацию, должна быть связана с указанным владельцем контента YouTube. | |
onBehalfOfContentOwnerChannel | string Этот параметр можно использовать только в должным образом авторизованном запросе . Этот параметр можно использовать только в должным образом авторизованном запросе . Примечание. Этот параметр предназначен исключительно для контент-партнеров YouTube. Параметр onBehalfOfContentOwnerChannel указывает идентификатор канала YouTube, на который добавляется видео. Этот параметр является обязательным, если в запросе указано значение параметра onBehalfOfContentOwner , и его можно использовать только вместе с этим параметром. Кроме того, запрос должен быть авторизован с использованием учетной записи CMS, связанной с владельцем контента, указанным в параметре onBehalfOfContentOwner . Наконец, канал, указанный в значении параметра onBehalfOfContentOwnerChannel , должен быть связан с владельцем контента, указанным в параметре onBehalfOfContentOwner .Этот параметр предназначен для контент-партнеров YouTube, которые владеют и управляют множеством различных каналов YouTube. Он позволяет владельцам контента один раз пройти аутентификацию и выполнять действия от имени канала, указанного в значении параметра, без необходимости предоставления учетных данных аутентификации для каждого отдельного канала. |
Тело запроса
Укажите ресурс liveBroadcast в теле запроса. Для этого ресурса:
Вы должны указать значение для этих свойств:
-
snippet.title
-
snippet.scheduledStartTime
-
status.privacyStatus
-
Вы можете установить значения для этих свойств:
-
snippet.title
-
snippet.description
-
snippet.scheduledStartTime
-
snippet.scheduledEndTime
-
status.privacyStatus
-
status.selfDeclaredMadeForKids
-
contentDetails.monitorStream.enableMonitorStream
-
contentDetails.monitorStream.broadcastStreamDelayMs
-
contentDetails.enableAutoStart
-
contentDetails.enableAutoStop
-
contentDetails.enableClosedCaptions
-
contentDetails.enableDvr
-
contentDetails.enableEmbed
-
contentDetails.recordFromStart
Примечание. В таблице свойств документированы все значения по умолчанию, установленные для свойств, перечисленных выше. Значения по умолчанию будут присвоены в любом из следующих случаев:- Вы не указываете значения для этих свойств.
- Значение параметра
part
в вашем запросе не указывает часть, содержащую эти свойства.
-
Ответ
В случае успеха этот метод возвращает ресурс liveBroadcast в теле ответа.
Ошибки
В следующей таблице указаны сообщения об ошибках, которые API может вернуть в ответ на вызов этого метода. Более подробную информацию см. в документации по сообщениям об ошибках .
Тип ошибки | Детализация ошибки | Описание |
---|---|---|
insufficientPermissions | insufficientLivePermissions | Запрос не авторизован для создания прямой трансляции. |
insufficientPermissions | livePermissionBlocked | Пользователь, авторизовавший запрос, в настоящее время не может транслировать видео в реальном времени на YouTube. Подробности, объясняющие, почему пользователь не может транслировать видео в реальном времени, можно найти в настройках канала пользователя по адресу https://www.youtube.com/features . |
insufficientPermissions | liveStreamingNotEnabled | Пользователь, авторизовавший запрос, не имеет права транслировать видео в реальном времени на YouTube. Пользователь может найти дополнительную информацию по адресу https://www.youtube.com/features . |
invalidValue (400) | invalidAutoStart | Ресурс liveBroadcast содержал недопустимое значение свойства contentDetails.enableAutoStart . Не все трансляции поддерживают эту настройку. |
invalidValue (400) | invalidAutoStop | Ресурс liveBroadcast содержал недопустимое значение свойства contentDetails.enableAutoStop . Вы не можете изменить настройку enableAutoStop для постоянной трансляции. |
invalidValue (400) | invalidDescription | Ресурс liveBroadcast не указал допустимое значение для свойства snippet.description . Значение свойства может содержать до 5000 символов. |
invalidValue (400) | invalidEmbedSetting | Ресурс liveBroadcast содержал недопустимое значение свойства contentDetails.enable_embed . Вы не можете встроить эту трансляцию. |
invalidValue (400) | invalidLatencyPreferenceOptions | Ресурс liveBroadcast содержал недопустимое значение свойства contentDetails.latencyPreference . Не все настройки поддерживаются с этим предпочтением задержки. |
invalidValue (400) | invalidPrivacyStatus | Ресурс liveBroadcast содержал недопустимое значение свойства status.privacy_status . |
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 . Значение свойства должно иметь длину от 1 до 100 символов. |
limitExceeded | userBroadcastsExceedLimit | Пользователь создал слишком много прямых или запланированных трансляций и должен остановить или удалить некоторые из них. |
rateLimitExceeded | userRequestsExceedRateLimit | Пользователь отправил слишком много запросов за определенный период времени. |
required (400) | privacyStatusRequired | Ресурс liveBroadcast должен указать статус конфиденциальности. См. действительные значения privacyStatus . |
required (400) | scheduledEndTimeRequired | Ресурс liveBroadcast должен указать свойство snippet.scheduledEndTime . |
required (400) | scheduledStartTimeRequired | Ресурс liveBroadcast должен указать свойство snippet.scheduledStartTime . |
required (400) | titleRequired | Ресурс liveBroadcast должен указать свойство snippet.title . |
Попробуй это!
Используйте APIs Explorer для вызова этого API и просмотра запроса и ответа API.