Вставляет рекламную паузу в прямую трансляцию. Временная точка может запустить рекламную паузу.
Примечание. Этот метод заменяет метод liveCuepoints.insert, для которого требовалась авторизация запросов с помощью аккаунта, связанного с владельцем контента на YouTube. Для этого метода не требуется авторизация.
Запрос
HTTP-запрос
POST https://www.googleapis.com/youtube/v3/liveBroadcasts/cuepoint
Авторизация
Для этого запроса требуется авторизация по крайней мере с одной из следующих областей действия. Подробнее об аутентификации и авторизации читайте в статье Реализация аутентификации OAuth 2.0.
| Область действия |
|---|
https://www.googleapis.com/auth/youtube |
https://www.googleapis.com/auth/youtube.force-ssl |
https://www.googleapis.com/auth/youtubepartner |
Параметры
В таблице ниже перечислены параметры, которые поддерживает этот запрос. Все перечисленные параметры являются параметрами запроса.
| Параметры | ||
|---|---|---|
| Обязательные параметры | ||
id |
stringПараметр id определяет трансляцию, в которую вставляется маркер. В момент вставки метки трансляция должна быть активна. |
|
| Необязательные параметры | ||
onBehalfOfContentOwner |
stringЭтот параметр можно использовать только в авторизованном запросе. Примечание. Этот параметр предназначен исключительно для партнеров YouTube, которые владеют и управляют множеством разных каналов YouTube. Он позволяет владельцам контента пройти аутентификацию один раз и выполнять действия от имени канала, указанного в значении параметра, без необходимости предоставлять разные учетные данные для каждого отдельного канала. Аккаунт, с помощью которого пользователь проходит аутентификацию, должен быть связан с указанным владельцем контента YouTube.
Параметр onBehalfOfContentOwner указывает, что учетные данные для авторизации запроса идентифицируют пользователя YouTube, действующего от имени владельца контента YouTube, указанного в значении параметра. Этот параметр предназначен для партнеров YouTube, которые владеют большим количеством каналов и управляют ими.
|
|
onBehalfOfContentOwnerChannel |
stringЭтот параметр можно использовать только в авторизованном запросе. Примечание. Этот параметр предназначен исключительно для партнеров YouTube, которые владеют большим количеством каналов и управляют ими. Он позволяет владельцам контента пройти аутентификацию один раз и выполнять действия от имени канала, указанного в значении параметра, без необходимости предоставлять учетные данные для каждого отдельного канала.
Параметр onBehalfOfContentOwnerChannel указывает идентификатор канала YouTube, связанного с трансляцией, в которую вставляется рекламная пауза. Этот параметр обязателен, если в запросе указано значение параметра onBehalfOfContentOwner, и может использоваться только вместе с ним. Также действуют следующие требования:
|
|
Тело запроса
Укажите ресурс cuepoint в теле запроса. Ниже показана структура JSON для ресурса cuepoint.
{
"id": string,
"insertionOffsetTimeMs": long,
"walltimeMs": datetime,
"durationSecs": unsigned integer,
"cueType": string
}cueType является обязательным и должно иметь значение cueTypeAd.
Вы также можете задать значения для следующих свойств:
durationSecsinsertionOffsetTimeMs(не должен быть задан, если задан параметрwalltimeMs)walltimeMs(не должно быть задано, если заданоinsertionOffsetTimeMs)
Свойства
В таблице ниже описаны свойства, которые появляются в этом ресурсе.
| Свойства | |
|---|---|
id |
stringЗначение, которое YouTube присваивает для уникальной идентификации точки вставки. Обратите внимание, что это значение отличается от обязательного параметра id, который идентифицирует трансляцию. Это значение можно опустить при отправке запроса на вставку рекламной паузы. Значение будет указано в ответе API.
|
insertionOffsetTimeMs |
longЗначение свойства определяет смещение по времени в миллисекундах, когда должна быть вставлена временная метка. Значение отсчитывается от начала потока монитора. По умолчанию оно равно 0, что означает, что маркер должен быть вставлен как можно скорее. Не указывайте значение для этого параметра, если у вашей трансляции нет контрольного потока.
Хотя значение указывается в миллисекундах, оно является приблизительным. YouTube вставит рекламную паузу как можно ближе к указанному времени. Ненулевые значения для этого поля поддерживаются, только если трансляция задерживается. Если трансляция не задерживается, то единственным допустимым значением будет 0.
Подробнее о начале работы…
Примечание. Если у трансляции был этап тестирования, смещение отсчитывается от его начала. Если в запросе на вставку временной метки указаны значения и для этого свойства, и для свойства walltimeMs, API возвращает ошибку.
|
walltimeMs |
integerЗначение свойства указывает время, в которое должна быть вставлена временная метка. Значение представляет собой целое число, обозначающее временную метку в миллисекундах. Если в запросе на добавление рекламной паузы указаны значения и этого свойства, и свойства insertionOffsetTimeMs, API возвращает ошибку. |
durationSecs |
unsigned integerПродолжительность временной метки в секундах. Значение должно быть положительным целым числом. Значение по умолчанию – 30. |
cueType |
stringТип точки перехода. Значение свойства должно быть равно cueTypeAd.
|
Ответ
В случае успеха этот метод возвращает в теле ответа добавленный ресурс cuepoint.
Ошибки
В таблице ниже перечислены сообщения об ошибках, которые API может возвращать в ответ на вызов этого метода. Подробную информацию можно найти в статье YouTube Live Streaming API – Errors.
| Тип ошибки | Сведения об ошибке | Описание |
|---|---|---|
insufficientPermissions (403) |
insufficientLivePermissions |
Запрос не авторизован для вставки рекламной паузы в прямую трансляцию. |
insufficientPermissions (403) |
liveStreamingNotEnabled |
У пользователя, авторизовавшего запрос, нет разрешения на проведение прямых трансляций на YouTube. Дополнительную информацию можно найти на страницах Как начать работу с прямыми трансляциями и Требования к каналам. |
rateLimitExceeded (403) |
userRequestsExceedRateLimit |
Пользователь отправил слишком много запросов за определенный период времени. |
required (400) |
idRequired |
Обязательный параметр id должен определять трансляцию, в которую вы хотите вставить точку вставки. |
required (400) |
cueTypeRequired |
Обязательное поле cueType должно быть указано в теле запроса к API. |
notFound (404) |
liveBroadcastNotFound |
Трансляция, указанная в параметре id, не существует. |
invalidValue (400) |
conflictingTimeFields |
Можно указать только одно значение: insertionOffsetTimeMs или walltimeMs. Если задать оба значения, возникнет ошибка. Если вы не укажете ни одно из значений, YouTube будет использовать время insertionOffsetTimeMs по умолчанию (0), то есть рекламная пауза будет вставлена как можно скорее. |
invalidValue (400) |
invalidInsertionOffsetTimeMs |
В ресурсе cuepoint указано недопустимое значение свойства insertionOffsetTimeMs. Значение должно быть 0 или положительным целым числом. |
invalidValue (400) |
invalidWalltimeMs |
В ресурсе cuepoint указано недопустимое значение для свойства walltimeMs. Значение должно быть целым числом, представляющим временную метку в миллисекундах. |
backendError (5xx) |
serviceUnavailable |
Сервис недоступен. Повторите попытку через несколько минут. |
Попробовать
Используйте APIs Explorer, чтобы вызвать этот API и посмотреть запрос к API и ответ.