Buscar..


Observaciones

Google Analytics Reporting API V4 es el método programático más avanzado para acceder a los datos de informes en Google Analytics . Con la API de informes de Google Analytics, puede:

  • Cree paneles personalizados para mostrar los datos de Google Analytics .
  • Automatice tareas complejas de informes para ahorrar tiempo.
  • Integre sus datos de Google Analytics con otras aplicaciones empresariales.

Caracteristicas

Google Analytics se basa en una potente infraestructura de informes de datos. Google Analytics Reporting API V4 le brinda acceso a la potencia de la plataforma Google Analytics . La API proporciona estas características clave:

  • Expresiones métricas: la API le permite solicitar no solo métricas incorporadas sino también una combinación de métricas expresadas en operaciones matemáticas. Por ejemplo, puede usar la expresión ga: goal1completions / ga: session para solicitar las finalizaciones del objetivo por número de sesiones.
  • Múltiples rangos de fechas: la API le permite en una sola solicitud obtener datos en dos rangos de fechas.
  • Valor de Cohortes y Vida útil: La API tiene un amplio vocabulario para solicitar informes de valores de Cohorte y Vida útil.
  • Múltiples segmentos: la API le permite obtener múltiples segmentos en una sola solicitud.

Ejemplo de informe único utilizando Oauth2 C #

Este ejemplo utiliza la biblioteca oficial de Google .net Client.

PM> Install-Package Google.Apis.AnalyticsReporting.v4

Autorización requiere uno de los siguientes ámbitos de OAuth:

Oauth2

// These are the scopes of permissions you need.
string[] scopes = new string[] { AnalyticsReportingService.Scope.AnalyticsReadonly };   // View your Google Analytics Data

UserCredential credential;
using (var stream = new FileStream(clientSecretJson, FileMode.Open, FileAccess.Read))
{
    string credPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal);
    credPath = Path.Combine(credPath, ".credentials/", System.Reflection.Assembly.GetExecutingAssembly().GetName().Name);

    // Requesting Authentication or loading previously stored authentication for userName
   credential = GoogleWebAuthorizationBroker.AuthorizeAsync(GoogleClientSecrets.Load(stream).Secrets,
       scopes,
      userName,
      CancellationToken.None,
      new FileDataStore(credPath, true)).Result;
}

// Create Reporting API service.
var service = new AnalyticsReportingService(new BaseClientService.Initializer()
            {
             HttpClientInitializer = credential,
             ApplicationName = string.Format("{0} Authentication", System.Reflection.Assembly.GetExecutingAssembly().GetName().Name),
            });

Solicitud de informes

// Create the DateRange object.
DateRange June2015 = new DateRange() { StartDate = "2015-01-01", EndDate = "2015-06-30" };
DateRange June2016 = new DateRange() { StartDate = "2016-01-01", EndDate = "2016-06-30" };
List<DateRange> dateRanges = new List<DateRange>() { June2016, June2015 };           
                       

// Create the ReportRequest object.
// This should have a large number of rows
ReportRequest reportRequest = new ReportRequest
{
    ViewId = ConfigurationManager.AppSettings["GoogleAnaltyicsViewId"],
    DateRanges = dateRanges,
    Dimensions = new List<Dimension>() { new Dimension() { Name = "ga:date" }, new Dimension() { Name = "ga:usertype" } },
    Metrics = new List<Metric>() { new Metric() { Expression= "ga:users" }, new Metric() { Expression = "ga:sessions" } },
    PageSize = 1000,
};
            
List<ReportRequest> requests = new List<ReportRequest>();
requests.Add(reportRequest);


var getReport = new GetReportsRequest() { ReportRequests = requests };
var response = service.Reports.BatchGet(getReport).Execute();

Ejemplo de informe único resto

Las solicitudes de API son HTTP POST con el token de acceso adjunto al final del punto final de la API.

Autorización requiere uno de los siguientes ámbitos de OAuth:

Tenga en cuenta que al publicar los datos use ContentType = "application/Json";

https://analyticsreporting.googleapis.com/v4/reports:batchGet?Access_token={from auth}
{
  "reportRequests":[
  {
    "viewId":"XXXX",
    "dateRanges":[
      {
        "startDate":"2015-06-15",
        "endDate":"2015-06-30"
      }],
    "metrics":[
      {
        "expression":"ga:sessions"
      }],
    "dimensions": [
      {
        "name":"ga:browser"
      }]
    }]
}


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow