После того как вы все настроите, вы можете отправлять запросы в API отчетов разработчиков Google Play для получения метаданных о наборах показателей и запрашивать их показатели.
В следующих примерах кода показано, как отправить несколько простых запросов. Например, методы ниже показывают, как получить различные метрики для вашего приложения. Существует несколько различных параметров запроса, которые можно использовать для сужения запроса.
Получение метаданных набора метрик
В следующем примере извлекаются метаданные для набора показателей частоты сбоев для вымышленного приложения com.example.app
.
Простой запрос:
Этот HTTP-запрос GET
указывает параметр имени приложения и возвращает полный ресурс метрики, связанный с вашим приложением.
GET https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet
Ответ на метрическую информацию:
Ответ включает следующие поля, относящиеся к набору показателей:
{ "freshness_info": { "freshness": [ "aggregation_period": "DAILY" "latest_end_time": { year: "2021" month: "7" day: "22" time_zone: "America/Los_Angeles" } ] } }
Использование функции запроса
Следующий запрос HTTP POST
для этого же ресурса использует конечную точку query
для извлечения определенных данных из набора метрик.
POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query
В теле запроса передайте параметры запроса для получения показателей на основе определенных критериев.
{ "timeline_spec": { "aggregation_period": "DAILY" "start_time": { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" } "end_time": { year: "2021" month: "7" day: "3" time_zone: "America/Los_Angeles" } } "dimensions": ["apiLevel"] "metrics": ["errorReportCount", "distinctUsers"] "page_size": "10" }
Вот несколько примеров на уровне коллекций:
Поля | |
---|---|
timelineSpec | Спецификация параметров агрегации временной шкалы. Список поддерживаемых периодов агрегации см. в документации к каждому набору метрик. |
dimensions[] | Параметры для анализа метрик. Список поддерживаемых параметров см. в документации к каждому набору метрик. |
metrics[] | Показатели для агрегации. |
pageSize | Максимальный размер возвращаемых данных. Если не указано, будет возвращено не более 1000 строк. Максимальное значение — 100 000; значения выше 100 000 будут приведены к 100 000. |
Обработка ответов
После обработки допустимого запроса, включающего допустимые поля, сервер возвращает код статуса HTTP 200 OK
вместе с запрошенными данными. Если параметр запроса fields
содержит ошибку или недействителен по какой-либо другой причине, сервер возвращает код статуса HTTP 400 Bad Request
вместе с сообщением об ошибке, сообщающим пользователю о причине ошибки в выборе полей (например, "Invalid field timeline_spec"
).
Вот пример ответа, показанный во вводном разделе выше.
POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query
Ответ выглядит так:
200 OK
{ rows: [ { aggregation_period: "DAILY" start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" } dimensions: [{dimension: "apiLevel" int64_value: "20"}] metrics: [ {metric: "errorReportCount" decimal_value: "100"}, {metric: "distinctUsers" decimal_value: "57"}, ] }, { aggregation_period: "DAILY" start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" } dimensions: [{dimension: "apiLevel" int64_value: "21"}] metrics: [ {metric: "errorReportCount" decimal_value: "123"}, {metric: "distinctUsers" decimal_value: "65"}, ] }, ... ] next_page_token: "eW91IGhhdmUgdG9vIG11Y2ggZnJlZSB0aW1l" }
Примечание: для API, которые поддерживают параметры запросов для разбиения данных на страницы (например, maxResults
и nextPageToken
), используйте эти параметры, чтобы уменьшить результаты каждого запроса до управляемого размера.