Запрос через reports.query () для YouTubeAnalytics v2 API выдает ошибку 400 - PullRequest
0 голосов
/ 30 ноября 2018

Я пытаюсь перейти с V1 на V2 API YouTubeAnalytics.Но я не могу понять, в каком формате я должен сформулировать запрос.

Code Iam пытается запустить:

return analytics.reports().query()
            .setIds(id)
            .setMetrics("views")
            .setDimensions("video")
            .execute();

Но я получаю код ошибки 400, как показано ниже:

IOException: 400 Bad Request
com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request
{
  "code" : 400,
  "errors" : [ {
    "domain" : "global",
    "message" : "Could not parse content (CNHFwpxMq_TDnbpX_3GdjueOg) of field ids.",
    "reason" : "badRequest"
  } ],
  "message" : "Could not parse content (CNHFwpxMq_TDnbpX_3GdjueOg) of field ids."
}

Есть предложения?

Ответы [ 2 ]

0 голосов
/ 01 декабря 2018

Я передавал идентификатор неверным образом.Также API (v2) не поддерживает этот запрос с заданным набором метрик и измерений.Правильный код:

return analytics.reports().query()
                .setIds("channel==" + id)
                .setStartDate("2018-11-29")
                .setEndDate("2018-12-01")
                .setMetrics("views")
                .setDimensions("day")
                .execute();

Список поддерживаемых запросов можно просмотреть здесь: https://developers.google.com/youtube/reporting/

0 голосов
/ 30 ноября 2018

Вы пробовали что-то вроде этого:

    return analytics.reports()
        .query() // Metrics.
        .setIds(id)
        .setStartDate("2012-01-01")
        .setEndDate("2012-08-14")
        .setMetrics("views,subscribersGained,subscribersLost")
        .setDimensions("video")
        .setSort("-views")
        .setMaxResults(10)
        .execute();

Вы можете проверить эти методы здесь: YouTube API v2

...