Struct google_api_proto::google::analytics::data::v1alpha::report_task::ReportDefinition
source · pub struct ReportDefinition {
pub dimensions: Vec<Dimension>,
pub metrics: Vec<Metric>,
pub date_ranges: Vec<DateRange>,
pub dimension_filter: Option<FilterExpression>,
pub metric_filter: Option<FilterExpression>,
pub offset: i64,
pub limit: i64,
pub metric_aggregations: Vec<i32>,
pub order_bys: Vec<OrderBy>,
pub currency_code: String,
pub cohort_spec: Option<CohortSpec>,
pub keep_empty_rows: bool,
}
Expand description
The definition of how a report should be run.
Fields§
§dimensions: Vec<Dimension>
Optional. The dimensions requested and displayed.
metrics: Vec<Metric>
Optional. The metrics requested and displayed.
date_ranges: Vec<DateRange>
Optional. Date ranges of data to read. If multiple date ranges are
requested, each response row will contain a zero based date range index.
If two date ranges overlap, the event data for the overlapping days is
included in the response rows for both date ranges. In a cohort request,
this dateRanges
must be unspecified.
dimension_filter: Option<FilterExpression>
Optional. Dimension filters let you ask for only specific dimension values in the report. To learn more, see Fundamentals of Dimension Filters for examples. Metrics cannot be used in this filter.
metric_filter: Option<FilterExpression>
Optional. The filter clause of metrics. Applied after aggregating the report’s rows, similar to SQL having-clause. Dimensions cannot be used in this filter.
offset: i64
Optional. The row count of the start row from Google Analytics Storage. The first row is counted as row 0.
When creating a report task, the offset
and limit
parameters define
the subset of data rows from Google Analytics storage to be included in
the generated report. For example, if there are a total of 300,000 rows
in Google Analytics storage, the initial report task may have the
first 10,000 rows with a limit of 10,000 and an offset of 0.
Subsequently, another report task could cover the next 10,000 rows with a
limit of 10,000 and an offset of 10,000.
limit: i64
Optional. The number of rows to return in the Report. If unspecified,
10,000 rows are returned. The API returns a maximum of 250,000 rows per
request, no matter how many you ask for. limit
must be positive.
The API can also return fewer rows than the requested limit
, if there
aren’t as many dimension values as the limit
. For instance, there are
fewer than 300 possible values for the dimension country
, so when
reporting on only country
, you can’t get more than 300 rows, even if
you set limit
to a higher value.
metric_aggregations: Vec<i32>
Optional. Aggregation of metrics. Aggregated metric values will be shown in rows where the dimension_values are set to “RESERVED_(MetricAggregation)”.
order_bys: Vec<OrderBy>
Optional. Specifies how rows are ordered in the response.
currency_code: String
Optional. A currency code in ISO4217 format, such as “AED”, “USD”, “JPY”. If the field is empty, the report uses the property’s default currency.
cohort_spec: Option<CohortSpec>
Optional. Cohort group associated with this request. If there is a cohort group in the request the ‘cohort’ dimension must be present.
keep_empty_rows: bool
Optional. If false or unspecified, each row with all metrics equal to 0 will not be returned. If true, these rows will be returned if they are not separately removed by a filter.
Regardless of this keep_empty_rows
setting, only data recorded by the
Google Analytics (GA4) property can be displayed in a report.
For example if a property never logs a purchase
event, then a query for
the eventName
dimension and eventCount
metric will not have a row
containing eventName: “purchase” and eventCount: 0.
Implementations§
source§impl ReportDefinition
impl ReportDefinition
sourcepub fn metric_aggregations(
&self,
) -> FilterMap<Cloned<Iter<'_, i32>>, fn(_: i32) -> Option<MetricAggregation>>
pub fn metric_aggregations( &self, ) -> FilterMap<Cloned<Iter<'_, i32>>, fn(_: i32) -> Option<MetricAggregation>>
Returns an iterator which yields the valid enum values contained in metric_aggregations
.
sourcepub fn push_metric_aggregations(&mut self, value: MetricAggregation)
pub fn push_metric_aggregations(&mut self, value: MetricAggregation)
Appends the provided enum value to metric_aggregations
.
Trait Implementations§
source§impl Clone for ReportDefinition
impl Clone for ReportDefinition
source§fn clone(&self) -> ReportDefinition
fn clone(&self) -> ReportDefinition
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ReportDefinition
impl Debug for ReportDefinition
source§impl Default for ReportDefinition
impl Default for ReportDefinition
source§impl Message for ReportDefinition
impl Message for ReportDefinition
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for ReportDefinition
impl PartialEq for ReportDefinition
source§fn eq(&self, other: &ReportDefinition) -> bool
fn eq(&self, other: &ReportDefinition) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for ReportDefinition
Auto Trait Implementations§
impl Freeze for ReportDefinition
impl RefUnwindSafe for ReportDefinition
impl Send for ReportDefinition
impl Sync for ReportDefinition
impl Unpin for ReportDefinition
impl UnwindSafe for ReportDefinition
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request