Невозможно получить метрики видео с помощью YouTube Analytics API
Согласно документации API YouTube Analytics ( https://developers.google.com/youtube/analytics/v1/available_reports), похоже, что вы должны иметь возможность извлекать метрики для определенных видео, используя измерение "видео". Я могу успешно получить все остальные показатели - либо указав такие измерения, как "день" и "страна", либо не указав никаких измерений вообще.
Но когда я изменяю значение измерений на "видео", я получаю код ошибки 400 с сообщением "Запрос не поддерживается. Проверьте документацию на наличие поддерживаемых запросов". Это отчет о канале, а не отчет владельца контента, но, согласно документации, это должен быть действительный запрос отчета. Я даже пытался ограничить набор результатов рядом дополнительных параметров, таких как start-index, max-results и sort.
РАБОТАЕТ
client.execute(:api_method => "youtubeAnalytics.reports.query",
:parameters => {'ids' => "channel==##USER_ID##",
"start-date" => "2012-01-01", "end-date" => "2012-02-01",
"metrics" => "views"})
client.execute(:api_method => "youtubeAnalytics.reports.query",
:parameters => {'ids' => "channel==##USER_ID##",
"start-date" => "2012-01-01", "end-date" => "2012-02-01",
"metrics" => "views",
"dimensions" => "day"})
НЕ РАБОТАЕТ - возвращает ошибку 400
client.execute(:api_method => "youtubeAnalytics.reports.query",
:parameters => {'ids' => "channel==##USER_ID##",
"start-date" => "2012-01-01", "end-date" => "2012-02-01",
"metrics" => "views",
"dimensions" => "video"})
client.execute(:api_method => "youtubeAnalytics.reports.query",
:parameters => {'ids' => "channel==##USER_ID##",
"start-date" => "2012-01-01", "end-date" => "2012-02-01",
"metrics" => "views",
"dimensions" => "video",
"start-index" => 1,
"max-results" => 5,
"sort" => "views"})
Кто-нибудь смог сделать успешный запрос на отчет о канале для деталей видео уровня?
2 ответа
Таким образом, следующее работает:
channel==USER_ID
start-date=YYYY-MM-DD
end-date=YYYY-MM-DD
metrics=views
dimensions=video
max-results=10
sort=-views
Важно то, что вам нужно сортировать по убыванию, если вы хотите запустить dimensions=video
отчет, и вы можете получить только 10 результатов. Это объясняется во второй таблице на
https://developers.google.com/youtube/analytics/v1/available_reports
10 максимальных результатов, упомянутых в их документах, упорядоченных по убыванию, очевидно, являются искусственным ограничением, налагаемым внутренним источником данных Google Analytics, но это все, что API мог поддерживать раньше. Google только что обновил его, чтобы вы могли получить до 200 результатов видео - https://developers.google.com/youtube/analytics/revision_history
Если вы находитесь в сценарии, в котором вы хотите получить данные Google Analytics для произвольных видео в заданной учетной записи, а не только для 10 с наибольшим числом просмотров, вам нужно установить измерение, отличное от видео, а затем запустить отчет с filter=
установите для каждого идентификатора видео в своей учетной записи, который вас интересует. Опять же, это может измениться в будущем, но сейчас Google Analytics API не подходит для получения огромного объема данных для каждого видео в учетной записи. в одном вызове API.
Обратите внимание, что недавнее изменение, внесенное в августе 2014 года в API YouTube, теперь позволяет получать метрики для 200 видео на вызов API.
См. https://developers.google.com/youtube/analytics/revision_history за 28 августа 2014 г.