Esecuzione di query sui set di metriche

Dopo aver configurato tutto, puoi inviare richieste all'API Google Play Developer Reporting per recuperare i metadati sui set di metriche ed eseguire query sulle metriche.

I seguenti esempi di codice mostrano come inviare alcune semplici richieste. Ad esempio, i metodi riportati di seguito mostrano come recuperare varie metriche per la tua app. Esistono diversi parametri di query che possono essere utilizzati per restringere la query.

Recupero dei metadati del set di metriche

L'esempio seguente recupera i metadati per il set di metriche del tasso di arresto anomalo per un'applicazione fittizia, com.example.app.

Richiesta semplice:

Questa richiesta HTTP GET specifica il parametro del nome dell'applicazione e restituisce la risorsa metrica completa associata alla tua applicazione.

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

Risposta alle informazioni sulle metriche:

La risposta include i seguenti campi relativi al set di metriche:

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

Utilizzo della funzionalità di query

La seguente richiesta HTTP POST per la stessa risorsa utilizza l'endpoint query per recuperare dati specifici dal set di metriche.

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

Nel corpo della richiesta, trasmetti le opzioni di query per recuperare le metriche in base a criteri specifici.

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

Ecco alcuni esempi a livello di raccolta:

Campi
timelineSpec

object (TimelineSpec)

Specifica dei parametri di aggregazione della cronologia. Consulta la documentazione di ogni insieme di metriche per un elenco dei periodi di aggregazione supportati.

dimensions[]

string

Dimensioni in base alle quali suddividere le metriche. Consulta la documentazione di ogni set di metriche per un elenco delle dimensioni supportate.

metrics[]

string

Metriche da aggregare.

pageSize

integer

Dimensione massima dei dati restituiti.

Se non specificato, verranno restituite al massimo 1000 righe. Il valore massimo è 100.000; i valori superiori a 100.000 verranno forzati a 100.000.

Gestione delle risposte

Dopo che un server elabora una richiesta valida che include campi validi, restituisce un codice di stato HTTP 200 OK, insieme ai dati richiesti. Se il parametro di query fields contiene un errore o non è valido, il server restituisce un codice di stato HTTP 400 Bad Request, insieme a un messaggio di errore che indica all'utente cosa non va nella selezione dei campi (ad esempio, "Invalid field timeline_spec").

Ecco l'esempio di risposta mostrato nella sezione introduttiva precedente.

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

La risposta è simile alla seguente:

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:per le API che supportano i parametri di query per la paginazione dei dati (ad esempio maxResults e nextPageToken), utilizza questi parametri per ridurre i risultati di ogni query a una dimensione gestibile.