Consulta conjuntos de métricas

Una vez que hayas configurado todo, puedes enviar solicitudes a la API de Google Play Developer Reporting para recuperar metadatos sobre conjuntos de métricas y consultar sus métricas.

En los siguientes ejemplos de código, se demuestra cómo enviar algunas solicitudes simples. Por ejemplo, los siguientes métodos muestran cómo recuperar varias métricas para la app. Existen algunos parámetros de consulta diferentes que se pueden usar para limitar la consulta.

Recupera metadatos del conjunto de métricas

En el siguiente ejemplo, se recuperan los metadatos para la métrica de tasa de fallas establecida para una aplicación ficticia, com.example.app.

Solicitud simple:

Esta solicitud GET HTTP especifica el parámetro del nombre de la aplicación y muestra el recurso de métrica completo asociado con tu aplicación.

GET https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet

Respuesta de información de métricas:

La respuesta incluye los siguientes campos relacionados con el conjunto de métricas:

{
  "freshness_info": {
    "freshness": [
      "aggregation_period": "DAILY"
      "latest_end_time": { year: "2021" month: "7" day: "22" time_zone: "America/Los_Angeles" }
    ]
  }
}

Usa la función de consulta

La siguiente solicitud POST HTTP para este mismo recurso usa el extremo query a fin de recuperar datos específicos desde el conjunto de métricas.

POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query

En el cuerpo de la solicitud, pasa opciones de consulta para recuperar métricas según criterios específicos.

{
  "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"
}

A continuación, se presentan algunos ejemplos a nivel de la colección:

Campos
timelineSpec

object (TimelineSpec)

Especificación de los parámetros de agregación de la línea de tiempo Consulta la documentación de cada conjunto de métricas para obtener una lista de los períodos de agregación admitidos.

dimensions[]

string

Dimensiones para segmentar las métricas. Consulta la documentación de cada conjunto de métricas para obtener una lista de las dimensiones compatibles.

metrics[]

string

Métricas que se agregarán.

pageSize

integer

Tamaño máximo de los datos que se muestran.

Si no se especifica, se mostrarán, como máximo, 1,000 filas. El valor máximo es de 100,000; los valores superiores a 100,000 se forzarán a 100,000.

Cómo manejar respuestas

Después de que un servidor procesa una solicitud válida que incluye campos válidos, envía un código de estado HTTP 200 OK, junto con los datos solicitados. Si el parámetro de consulta fields tiene un error o no es válido, el servidor muestra un código de estado HTTP 400 Bad Request, junto con un mensaje de error que le indica al usuario cuál fue el problema con su selección de campos (por ejemplo, "Invalid field timeline_spec").

Este es el ejemplo de respuesta que se muestra en la sección de introducción anterior.

POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query

La respuesta es similar a la que se muestra a continuación:

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"
}

Nota:En el caso de las API que admiten parámetros de búsqueda para la paginación de datos (maxResults y nextPageToken, por ejemplo), usa esos parámetros a fin de reducir los resultados de cada consulta a un tamaño administrable.