Как включить монетизацию для видео, загруженных с помощью YouTube Data API v3?
У меня есть подтвержденный партнерский канал на YouTube, и я пытаюсь включить монетизацию для видео, загруженных через API данных YouTube (v3).
Канал уже включен для монетизации, и я включил монетизацию в Настройки канала → Настройки по умолчанию (хотя у меня есть ощущение, что эта страница предназначена только для установки настроек по умолчанию на стандартной странице ручной загрузки). Я посмотрел в справочнике API, но не могу найти ничего, связанного с монетизацией вообще.
Есть ли какой-либо другой способ автоматически загружать новые видео любыми способами, или каким-то образом я могу включить его в API?
2 ответа
Ссылка, предоставленная Tareq, является правильной, но, к сожалению, она показывает только некоторый код Python вместо того, что происходит с использованием HTTP. Так как я хотел сделать то же самое, вот что я понял и что работает для меня. Еще раз обратите внимание, что вам нужен доступ к ContentID API (проголосуйте за этот билет, чтобы исправить это), что означает, что вам нужен доступ к владельцам учетной записи CMS. Забавно, что существует партнерская программа YouTube, которая не имеет ничего общего с тем, чтобы быть "партнером YouTube". Вам необходим доступ к учетной записи CMS, например, если вы работаете в многоканальной сети (MCN). Кроме того, у меня создается впечатление, что документация на самом деле довольно хорошо спрятана, потому что даже если я точно знаю, что я ищу, мне всегда трудно снова найти страницы документации.
Во всяком случае: вот материал:
1. Создать актив
Сначала вам нужно создать ресурс ( документы):
POST https://www.googleapis.com/youtube/partner/v1/assets?onBehalfOfContentOwner=CONTENT_OWNER_ID
Authorization: Bearer ...
{
"type": "web",
"metadata": {
"title": "some title, typically the same as the video title",
"customId": "optional, but typically the same as the videoId"
}
}
В теле ответа вы найдете:
{
...
"id": "ASSET_ID"
...
}
Сохраните ASSET_ID для дальнейшего использования.
2. Установите право собственности
Теперь мы сообщаем YouTube, что мы владеем исключительно всем, что связано с активом, на 100% исключительно и по всему миру ( документы):
PUT https://www.googleapis.com/youtube/partner/v1/assets/ASSET_ID/ownership?onBehalfOfContentOwner=CONTENT_OWNER_ID
Authorization: Bearer ...
{
"general": {
"owner": "CONTENT_OWNER_ID",
"ratio": 100,
"type": "exclude"
}
}
Обратите внимание, что это запрос PUT, а не POST!
3. Закажите видео с политикой монетизации
Теперь мы соединяем видео, ресурс и политику друг с другом ( документы)
POST https://www.googleapis.com/youtube/partner/v1/claims?onBehalfOfContentOwner=CONTENT_OWNER_ID
Authorization: Bearer ...
{
"assetId": "ASSET_ID",
"videoId": "VIDEO_ID",
"policy": {
"id": "POLICY_ID"
},
"contentType": "audiovisual"
}
Теперь ваше видео должно быть монетизировано в соответствии с определенной политикой.
Что тебе нужно знать
В моих примерах вам, конечно, нужно заменить переменные, которые я там оставил, заглавными буквами:
- CONTENT_OWNER_ID: узнайте свой идентификатор, используя аутентифицированный звонок
GET https://www.googleapis.com/youtube/partner/v1/contentOwners?fetchMine=true
( документы) - ASSET_ID: возвращается в responseBody вызова create asset
- POLICY_ID: Узнайте, какие политики с какими идентификаторами у вас есть для аутентифицированного вызова
GET https://www.googleapis.com/youtube/partner/v1/policies?onBehalfOfContentOwner=CONTENT_OWNER_ID
( документы)
Для всех запросов вам необходимо пройти проверку подлинности в объеме https://www.googleapis.com/auth/youtubepartner
Это всего лишь один из способов и вариантов применения монетизации. Конечные точки API, которые я показал, имеют больше и разные варианты. Обратитесь к документации.
Смотрите также
- Проголосуйте за этот билет, чтобы политики монетизации по умолчанию также применялись к видео, загруженным через API.
- Проголосуйте за этот билет, чтобы у нас была возможность указать настройки монетизации во время загрузки без необходимости иметь доступ к учетной записи CMS
Похоже, что в настоящее время Data API не учитывает настройки канала по умолчанию при загрузке новых видео, тем не менее вы можете включить монетизацию (право владения) с помощью API Content ID. Смотрите этот пример
https://developers.google.com/youtube/partner/upload_claim_sample