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.