Enumera todas las columnas de un tipo de informe. Pruébalo ahora o consulta un ejemplo.
Solicitud
Solicitud HTTP
GET https://www.googleapis.com/analytics/v3/metadata/reportType/columns
Parámetros
Nombre de parámetro | Valor | Descripción |
---|---|---|
Parámetros obligatorios | ||
reportType |
string |
Tipo de informe. Valores permitidos: ga . Conde ga corresponde a la API de informes centrales.
|
Cuerpo de la solicitud
No proporciones un cuerpo de solicitud con este método.
Respuesta
Si este método se realiza correctamente, el cuerpo de respuesta tendrá la siguiente estructura:
{ "kind": "analytics#columns", "etag": etag, "totalResults": integer, "attributeNames": [ string ], "items": [ metadata.columns Resource ] }
Nombre de propiedad | Valor | Descripción | Notas |
---|---|---|---|
kind |
string |
Tipo de colección. | |
etag |
etag |
Etag de la colección. Esta etag se comparará con la etag de la última respuesta para comprobar si la respuesta ha cambiado. | |
totalResults |
integer |
Número total de columnas devueltas en la respuesta. | |
attributeNames[] |
list |
Lista de los nombres de atributo devueltos por columnas. | |
items[] |
list |
Lista de columnas del 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 de cliente para obtener una lista de los lenguajes admitidos).
Java
Utiliza la biblioteca de cliente 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
Utiliza la biblioteca de 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
Uses the Python client library
# 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 de cliente 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
Utiliza el siguiente explorador de APIs para llamar a este método con datos en tiempo real y ver la respuesta. También puedes probar el explorador independiente.