NAME
Net::Google::Analytics::Response - Google Analytics API response
VERSION
version 3.05
SYNOPSIS
my
$res
=
$analytics
->retrieve(
$req
);
die
(
"GA error: "
.
$res
->error_message)
if
!
$res
->is_success;
"Results: 1 - "
,
$res
->num_rows,
" of "
,
$res
->total_results,
"\n\n"
;
for
my
$row
(@{
$res
->rows }) {
$row
->get_source,
": "
,
$row
->get_visits,
" visits, "
,
$row
->get_bounces,
" bounces\n"
;
}
"\nTotal: "
,
$res
->totals(
"visits"
),
" visits, "
,
$res
->totals(
"bounces"
),
" bounces\n"
;
DESCRIPTION
Response class for Net::Google::Analytics web service.
CONSTRUCTOR
new
ACCESSORS
is_success
True for successful requests, false in case of an error.
code
The HTTP status code.
message
The HTTP status message.
content
In case of an error, this field contains a JSON string with additional information about the error from the response body.
error_message
The full error message.
total_results
The total number of results for the query, regardless of the number of results in the response.
start_index
The 1-based start index of the result rows.
items_per_page
The number of rows returned.
contains_sampled_data
Returns true if the results contain sampled data.
profile_info
A hashref containing information about the analytics profile.
num_rows
The number of rows on this result page.
rows
An arrayref of result rows of type Net::Google::Analytics::Row.
dimensions
An array of all dimension names without the 'ga:' prefix and converted to lower case with underscores.
metrics
An array of all metric names without the 'ga:' prefix and converted to lower case with underscores.
METHODS
totals
my
$total
=
$res
->totals(
$metric
);
Returns the sum of all results for a metric regardless of the actual subset of results returned. $metric is a metric name without the 'ga:' prefix and converted to lower case with underscores.
project
my
$projected
=
$res
->project(\
@proj_dim_names
, \
&projection
);
Projects the dimension values of every result row to new dimension values using subroutine reference \&projection. The metrics of rows that are mapped to the same dimension values are summed up.
Argument \@proj_dim_names is an arrayref containing the names of the new dimensions.
The projection subroutine takes as single argument a Net::Google::Analytics::Row object and must return an array of dimension values.
Returns a new response object.
The following example maps a single dimension of type ga:pagePath to categories.
my
$projected
=
$res
->project([
'category'
],
sub
{
my
$row
=
shift
;
my
$page_path
=
$row
->get_page_path;
return
(
'flowers'
)
if
$page_path
=~ m{^/(tulips|roses)};
return
(
'fruit'
)
if
$page_path
=~ m{^/(apples|oranges)};
return
(
'other'
);
});
AUTHOR
Nick Wellnhofer <wellnhofer@aevum.de>
COPYRIGHT AND LICENSE
This software is copyright (c) 2016 by Nick Wellnhofer.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.