Depois de configurar tudo, você pode enviar solicitações à API Google Play Developer Reporting para recuperar metadados sobre conjuntos de métricas e consultar as métricas deles.
Os exemplos de código a seguir demonstram como enviar algumas solicitações simples. Por exemplo, os métodos abaixo mostram como recuperar várias métricas do seu app. Há alguns parâmetros de consulta diferentes que podem ser usados para restringir a consulta.
Como recuperar metadados do conjunto de métricas
O exemplo a seguir recupera os metadados do conjunto de métricas de taxa de falhas de um aplicativo
fictício, com.example.app
.
Solicitação simples:
Esta solicitação HTTP GET
especifica o parâmetro de nome do aplicativo e retorna o recurso de métrica completo associado ao aplicativo.
GET https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet
Resposta de informações da métrica:
A resposta inclui os seguintes campos relacionados ao conjunto de métricas:
{ "freshness_info": { "freshness": [ "aggregation_period": "DAILY" "latest_end_time": { year: "2021" month: "7" day: "22" time_zone: "America/Los_Angeles" } ] } }
Como usar o recurso de consulta
A solicitação HTTP POST
a seguir para esse mesmo recurso usa o endpoint query
para recuperar dados específicos do conjunto de métricas.
POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query
No corpo da solicitação, transmita opções de consulta para recuperar métricas com base em critérios 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" }
Veja alguns exemplos do nível de coleção:
Campos | |
---|---|
timelineSpec |
Especificação dos parâmetros de agregação da linha do tempo. Confira a documentação de cada conjunto de métricas para ver uma lista dos períodos de agregação disponíveis. |
dimensions[] |
Dimensões para segmentar as métricas. Confira a documentação de cada conjunto de métricas para ver uma lista das dimensões compatíveis. |
metrics[] |
Métricas a serem agregadas. |
pageSize |
Tamanho máximo dos dados retornados. Se não for especificado, no máximo 1.000 linhas serão retornadas. O valor máximo é 100.000. Valores maiores serão revertidos para 100.000. |
Como processar respostas
Depois que um servidor processa uma solicitação válida com campos válidos, ele envia de volta um código de status HTTP
200 OK
, além dos dados solicitados. Se o parâmetro de consulta fields
tiver um erro ou for inválido, o servidor retornará um código de status HTTP 400 Bad Request
com uma mensagem informando ao usuário o que havia de errado com a seleção de campos (por exemplo, "Invalid field timeline_spec"
).
Confira o exemplo de resposta mostrado na seção introdutória acima.
POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query
A resposta será assim:
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" }
Observação:em APIs compatíveis com parâmetros de consulta para paginação de dados (por exemplo, maxResults
e nextPageToken
), use esses parâmetros para reduzir os resultados de cada consulta a um tamanho administrável.