Columnas: lista

Detalla todas las columnas para un tipo de informe. Pruébalo ahora y ve un ejemplo.

Solicitud

Solicitud HTTP

GET https://www.googleapis.com/analytics/v3/metadata/reportType/columns

Parámetros

Nombre del parámetro Valor Descripción
Parámetros obligatorios
reportType string Tipo de informe. Valores permitidos: ga. En el ejemplo anterior, ga corresponde a la API de Core Reporting.

Cuerpo de la solicitud

No proporciones un cuerpo de la solicitud con este método.

Respuesta

Si se aplica correctamente, este método muestra un cuerpo de respuesta con la siguiente estructura:

{
  "kind": "analytics#columns",
  "etag": etag,
  "totalResults": integer,
  "attributeNames": [
    string
  ],
  "items": [
    metadata.columns Resource
  ]
}
Nombre de la propiedad Valor Descripción Notas
kind string Tipo de colección.
etag etag ETag de la colección. Esta ETag se puede comparar con la ETag de respuesta más reciente para verificar si la respuesta cambió.
totalResults integer Cantidad total de columnas que se muestran en la respuesta.
attributeNames[] list Lista de nombres de atributos mostrados por columnas.
items[] list Lista de columnas para el tipo de informe.

Ejemplos

Nota: Los ejemplos de código disponibles para este método no representan todos los lenguajes de programación admitidos (consulta la página de bibliotecas cliente para consultar una lista de lenguajes admitidos).

Java

Usa la biblioteca cliente de Java.

/**
 * 1. Execute a Metadata Request
 * An application can request columns data by calling the list method on the Analytics service object.
 * The method requires an reportType parameter that specifies the column data to retrieve.
 * For example, the following code requests columns for the ga report type.
 */

try {
  Columns results = getMetadata(analytics);
  // Success

} catch (GoogleJsonResponseException e) {
  // Catch API specific errors.
  handleApiError(e);
} catch (IOException e) {
  // Catch general parsing network errors.
e.printStackTrace(); } /** * 2. Print out the Columns data * The components of the result can be printed out as follows: */ private static Columns getMetadata(Analytics analytics) throws IOException { String reportType = "ga"; return analytics.metadata() .columns() .list(reportType) .execute(); } private static void printMetadataReport(Columns results) { System.out.println("Metadata Response Report"); printReportInfo(results); printAttributes(results.getAttributeNames()); printColumns(results.getItems()); } private static void printReportInfo(Columns results) { System.out.println("## Metadata Report Info ##"); System.out.println("Kind: " + results.getKind()); System.out.println("Etag: " + results.getEtag()); System.out.println("Total Results: " + results.getTotalResults()); System.out.println(); } private static void printAttributes(List<String> attributeNames) { System.out.println("## Attribute Names ##"); for (String attribute : attributeNames) { System.out.println(attribute); } } private static void printColumns(List<Column> columns) { System.out.println("## Columns ##"); for (Column column : columns) { System.out.println(); System.out.println("Column ID: " + column.getId()); System.out.println("Kind: " + column.getKind()); Map<String, String> columnAttributes = column.getAttributes(); for (Map.Entry<String, String> attribute: columnAttributes.entrySet()) { System.out.println(attribute.getKey() + ": " + attribute.getValue()); } } }

PHP

Usa la biblioteca cliente PHP.

/**
 * 1. Execute a Metadata Request
 * An application can request columns data by calling the list method on the Analytics service object.
 * The method requires an reportType parameter that specifies the column data to retrieve.
 * For example, the following code requests columns for the ga report type.
 */

try {

  $results = $analytics->metadata_columns->listMetadataColumns('ga');
  // Success

} catch (apiServiceException $e) {
  // Handle API service exceptions.
  $error = $e->getMessage();
}


/**
 * 2. Print out the Columns data
 * The components of the result can be printed out as follows:
 */

function printMetadataReport($results) {
  print '<h1>Metadata Report</h1>';
  printReportInfo($results);
  printAttributes($results);
  printColumns($results);
}


function printReportInfo(&$results) {
  $html = '<h2>Report Info</h2>';
  $html .= <<<HTML
<pre>
Kind                  = {$results->getKind()}
Etag                  = {$results->getEtag()}
Total Results         = {$results->getTotalResults()}
</pre>
HTML;
  print $html;
}


function printAttributes(&$results) {
  $html = '<h2>Attribute Names</h2><ul>';
  $attributes = $results->getAttributeNames();
  foreach ($attributes as $attribute) {
    $html .= '<li>'. $attribute . '</li>';
  }
  $html .= '</ul>';
  print $html;
}


function printColumns(&$results) {
  $columns = $results->getItems();
  if (count($columns) > 0) {
    $html = '<h2>Columns</h2>';
    foreach ($columns as $column) {
      $html .= '<h3>' . $column->getId() . '</h3>';
      $column_attributes = $column->getAttributes();
      foreach ($column_attributes as $name=>$value) {
        $html .= <<<HTML
<pre>
{$name}: {$value}
</pre>
HTML;
      }
    }
  } else {
    $html = '<p>No Results Found.</p>';
  }
  print $html;
}

Python

Usa la biblioteca cliente de Python.

# 1. Execute a Metadata Request
# An application can request columns data by calling the list method on the Analytics service object.
# The method requires an reportType parameter that specifies the column data to retrieve.
# For example, the following code requests columns for the ga report type.

try:
  results = service.metadata().columns().list(reportType='ga').execute()

except TypeError, error:
  # Handle errors in constructing a query.
  print ('There was an error in constructing your query : %s' % error)

except HttpError, error:
  # Handle API errors.
  print ('Arg, there was an API error : %s : %s' %
         (error.resp.status, error._get_reason()))

# 2. Print out the Columns data
# The components of the result can be printed out as follows:

def print_metadata_report(results):
  print 'Metadata Response Report'
  print_report_info(results)
  print_attributes(results.get('attributeNames'))
  print_columns(results)


def print_report_info(columns):
  print "Metadata Report Info"
  if columns:
    print 'Kind           = %s' % columns.get('kind')
    print 'Etag           = %s' % columns.get('etag')
    print 'Total Results  = %s' % columns.get('totalResults')


def print_attributes(attributes):
  if attributes:
    print 'Attribute Names:'
    for attribute in attributes:
      print attribute

def print_columns(columns_data):
  if columns_data:
    print 'Columns:'

    columns = columns_data.get('items', [])

    for column in columns:
      print
      print '%15s = %35s' % ('Column ID', column.get('id'))
      print '%15s = %35s' % ('Kind', column.get('kind'))

      column_attributes = column.get('attributes', [])

      for name, value in column_attributes.iteritems():
        print '%15s = %35s' % (name, value)

JavaScript

Usa la biblioteca cliente de JavaScript.

/**
 * 1. Execute a Metadata Request
 * An application can request columns data by calling the list method on the Analytics service object.
 * The method requires an reportType parameter that specifies the column data to retrieve.
 * For example, the following code requests columns for the ga report type.
 */

function makeMetadataRequest() {
  var request = gapi.client.analytics.metadata.columns.list({
      'reportType': 'ga'
  });
  request.execute(renderMetadataReport);
}


/**
 * 2. Print out the Columns data
 * The components of the result can be printed out as follows:
 */

function renderMetadataReport(results) {
  var reportHtml = [];
  reportHtml.push(
      getReportInfo(results),
      getAttributes(results),
      getColumns(results));

  // Renders the results to a DIV element
  document.getElementById('DIV_ID').innerHTML = reportHtml.join('');
}


function getReportInfo(results) {
  var html = [];
  if (results) {
    html.push('<h2>Report Info</h2>');
    html.push('<pre>Kind: ', results.kind, '</pre>');
    html.push('<pre>Etag: ', results.etag, '</pre>');
    html.push('<pre>Total Results: ', results.totalResults, '</pre>');
  }
  return html.join('');
}


function getAttributes(results) {
  var html = [];
  if (results) {
    html.push('<h2>Attribute Names</h2><ul>');
    var attributes = results.attributeNames;

    for (var i = 0, attribute; attribute = attributes[i]; i++) {
      html.push('<li>', attribute, '</li>');
    }
    html.push('</ul>');
  }
  return html.join('');
}

function  getColumns(results) {
  var html = [];
  if (results) {
    var columns = results.items;
    html.push('<h2>Columns</h2>');

    for (var i = 0, column; column = columns[i]; i++) {
      html.push('<h3>', column.id, '</h3>');
      var attributes = column.attributes;
      for (attribute in attributes) {
        html.push('<pre><strong>', attribute, '</strong> : ',
                  attributes[attribute], '</pre>');
      }
    }
  }
  return html.join('');
}

Pruébalo

Usa el Explorador de APIs que aparece a continuación para llamar a este método con los datos en tiempo real y ver la respuesta. También puedes probar el Explorador independiente.