google-analytics-api
Metadata api
Zoeken…
Syntaxis
- HTTP GET https://www.googleapis.com/analytics/v3/metadata/ {reportType} / columns? Key = {APIKey}
- HTTP GET https://www.googleapis.com/analytics/v3/metadata/ {reportType} / columns? Access_token = {Access_token}
parameters
Parameternaam | Beschrijving |
---|---|
reportType | Type rapport. Toegestane waarden: ga . Waar ga overeenkomt met de Core Reporting API . |
Opmerkingen
De Metadata-API retourneert de lijst en kenmerken van kolommen (dwz dimensies en statistieken) die worden weergegeven in de rapportage-API's van Google Analytics (v2, v3 en v4). Attributen die worden geretourneerd, omvatten UI-naam, beschrijving, ondersteuning van segmenten en meer.
U kunt de Metadata API gebruiken om:
- Ontdek automatisch nieuwe kolommen
- Toegang tot alle dimensies en statistiekenattributen voor rapportage-API's van Google Analytics
Dit is dezelfde lijst als in de dimensies en statistiekenverkenner .
Opmerking: dimensies en statistieken voor realtime en multi-channel trechters zijn momenteel niet beschikbaar.
Rust voorbeeld
Oproepen naar de Metadata API zijn met HTTP Get:
Openbare API-sleutel gebruiken
KRIJG https://www.googleapis.com/analytics/v3/metadata/ga/columns?key= {YOUR_API_KEY}
Toegangstoken gebruiken via Oauth2- of Service-accountverificatie
KRIJG https://www.googleapis.com/analytics/v3/metadata/ga/columns?access_token= {Authentcated_Access_Token}
Java-voorbeeld
gebruikt de Java Client-bibliotheek
/**
* 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());
}
}
}
Opmerking: eerste versie gekopieerd van Metadata.list
PHP Voorbeeld
Gebruikt de PHP-clientbibliotheek
/**
* 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;
}
Opmerking: originele versie gekopieerd van metadata.list
Python-voorbeeld
Gebruikt de Python-clientbibliotheek
# 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)
Opmerking: originele versie gekopieerd van metadata.list
C # voorbeeld
Gebruikt de .Net Client-bibliotheek
PM> Installatiepakket Google.Apis.Analytics.v3
var metadataService = new AnalyticsMetaDataService(new BaseClientService.Initializer()
{
ApiKey = {Public API KEY},
ApplicationName = "Metadata api",
});
var result = Service.Metadata.Columns.List("ga").Execute();