google-apis-analyticsdata_v1beta 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.yardopts +13 -0
- data/CHANGELOG.md +7 -0
- data/LICENSE.md +202 -0
- data/OVERVIEW.md +96 -0
- data/lib/google-apis-analyticsdata_v1beta.rb +15 -0
- data/lib/google/apis/analyticsdata_v1beta.rb +39 -0
- data/lib/google/apis/analyticsdata_v1beta/classes.rb +1873 -0
- data/lib/google/apis/analyticsdata_v1beta/gem_version.rb +28 -0
- data/lib/google/apis/analyticsdata_v1beta/representations.rb +831 -0
- data/lib/google/apis/analyticsdata_v1beta/service.rb +305 -0
- metadata +76 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: a46929d7da0ccb4b780a1b7920285abca62f4a8c6a8a849eed7065a8596f1aa1
|
4
|
+
data.tar.gz: 52eb630f03e88d2c369f4e67a480fcc909dec6465a31c68b79705962d5646813
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 2a981cdc947bd3b91743cbb79f821b781de502b853a97a3a8965d9b6d93ee79b3d4ed7ed26b792253b7175a555a979a13fbe0143660d897275a2426fb9e777fc
|
7
|
+
data.tar.gz: 52b058ad12b85b3d1da1e3a62ccf650c5253185e849ebc9037e87cfa56fcfde94468c1711255b8f38eb0a6763708000039531f13867ffcb828b0265549318300
|
data/.yardopts
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
--hide-void-return
|
2
|
+
--no-private
|
3
|
+
--verbose
|
4
|
+
--title=google-apis-analyticsdata_v1beta
|
5
|
+
--markup-provider=redcarpet
|
6
|
+
--markup=markdown
|
7
|
+
--main OVERVIEW.md
|
8
|
+
lib/google/apis/analyticsdata_v1beta/*.rb
|
9
|
+
lib/google/apis/analyticsdata_v1beta.rb
|
10
|
+
-
|
11
|
+
OVERVIEW.md
|
12
|
+
CHANGELOG.md
|
13
|
+
LICENSE.md
|
data/CHANGELOG.md
ADDED
data/LICENSE.md
ADDED
@@ -0,0 +1,202 @@
|
|
1
|
+
|
2
|
+
Apache License
|
3
|
+
Version 2.0, January 2004
|
4
|
+
http://www.apache.org/licenses/
|
5
|
+
|
6
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
7
|
+
|
8
|
+
1. Definitions.
|
9
|
+
|
10
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
11
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
12
|
+
|
13
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
14
|
+
the copyright owner that is granting the License.
|
15
|
+
|
16
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
17
|
+
other entities that control, are controlled by, or are under common
|
18
|
+
control with that entity. For the purposes of this definition,
|
19
|
+
"control" means (i) the power, direct or indirect, to cause the
|
20
|
+
direction or management of such entity, whether by contract or
|
21
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
22
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
23
|
+
|
24
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
25
|
+
exercising permissions granted by this License.
|
26
|
+
|
27
|
+
"Source" form shall mean the preferred form for making modifications,
|
28
|
+
including but not limited to software source code, documentation
|
29
|
+
source, and configuration files.
|
30
|
+
|
31
|
+
"Object" form shall mean any form resulting from mechanical
|
32
|
+
transformation or translation of a Source form, including but
|
33
|
+
not limited to compiled object code, generated documentation,
|
34
|
+
and conversions to other media types.
|
35
|
+
|
36
|
+
"Work" shall mean the work of authorship, whether in Source or
|
37
|
+
Object form, made available under the License, as indicated by a
|
38
|
+
copyright notice that is included in or attached to the work
|
39
|
+
(an example is provided in the Appendix below).
|
40
|
+
|
41
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
42
|
+
form, that is based on (or derived from) the Work and for which the
|
43
|
+
editorial revisions, annotations, elaborations, or other modifications
|
44
|
+
represent, as a whole, an original work of authorship. For the purposes
|
45
|
+
of this License, Derivative Works shall not include works that remain
|
46
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
47
|
+
the Work and Derivative Works thereof.
|
48
|
+
|
49
|
+
"Contribution" shall mean any work of authorship, including
|
50
|
+
the original version of the Work and any modifications or additions
|
51
|
+
to that Work or Derivative Works thereof, that is intentionally
|
52
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
53
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
54
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
55
|
+
means any form of electronic, verbal, or written communication sent
|
56
|
+
to the Licensor or its representatives, including but not limited to
|
57
|
+
communication on electronic mailing lists, source code control systems,
|
58
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
59
|
+
Licensor for the purpose of discussing and improving the Work, but
|
60
|
+
excluding communication that is conspicuously marked or otherwise
|
61
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
62
|
+
|
63
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
64
|
+
on behalf of whom a Contribution has been received by Licensor and
|
65
|
+
subsequently incorporated within the Work.
|
66
|
+
|
67
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
68
|
+
this License, each Contributor hereby grants to You a perpetual,
|
69
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
70
|
+
copyright license to reproduce, prepare Derivative Works of,
|
71
|
+
publicly display, publicly perform, sublicense, and distribute the
|
72
|
+
Work and such Derivative Works in Source or Object form.
|
73
|
+
|
74
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
75
|
+
this License, each Contributor hereby grants to You a perpetual,
|
76
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
77
|
+
(except as stated in this section) patent license to make, have made,
|
78
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
79
|
+
where such license applies only to those patent claims licensable
|
80
|
+
by such Contributor that are necessarily infringed by their
|
81
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
82
|
+
with the Work to which such Contribution(s) was submitted. If You
|
83
|
+
institute patent litigation against any entity (including a
|
84
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
85
|
+
or a Contribution incorporated within the Work constitutes direct
|
86
|
+
or contributory patent infringement, then any patent licenses
|
87
|
+
granted to You under this License for that Work shall terminate
|
88
|
+
as of the date such litigation is filed.
|
89
|
+
|
90
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
91
|
+
Work or Derivative Works thereof in any medium, with or without
|
92
|
+
modifications, and in Source or Object form, provided that You
|
93
|
+
meet the following conditions:
|
94
|
+
|
95
|
+
(a) You must give any other recipients of the Work or
|
96
|
+
Derivative Works a copy of this License; and
|
97
|
+
|
98
|
+
(b) You must cause any modified files to carry prominent notices
|
99
|
+
stating that You changed the files; and
|
100
|
+
|
101
|
+
(c) You must retain, in the Source form of any Derivative Works
|
102
|
+
that You distribute, all copyright, patent, trademark, and
|
103
|
+
attribution notices from the Source form of the Work,
|
104
|
+
excluding those notices that do not pertain to any part of
|
105
|
+
the Derivative Works; and
|
106
|
+
|
107
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
108
|
+
distribution, then any Derivative Works that You distribute must
|
109
|
+
include a readable copy of the attribution notices contained
|
110
|
+
within such NOTICE file, excluding those notices that do not
|
111
|
+
pertain to any part of the Derivative Works, in at least one
|
112
|
+
of the following places: within a NOTICE text file distributed
|
113
|
+
as part of the Derivative Works; within the Source form or
|
114
|
+
documentation, if provided along with the Derivative Works; or,
|
115
|
+
within a display generated by the Derivative Works, if and
|
116
|
+
wherever such third-party notices normally appear. The contents
|
117
|
+
of the NOTICE file are for informational purposes only and
|
118
|
+
do not modify the License. You may add Your own attribution
|
119
|
+
notices within Derivative Works that You distribute, alongside
|
120
|
+
or as an addendum to the NOTICE text from the Work, provided
|
121
|
+
that such additional attribution notices cannot be construed
|
122
|
+
as modifying the License.
|
123
|
+
|
124
|
+
You may add Your own copyright statement to Your modifications and
|
125
|
+
may provide additional or different license terms and conditions
|
126
|
+
for use, reproduction, or distribution of Your modifications, or
|
127
|
+
for any such Derivative Works as a whole, provided Your use,
|
128
|
+
reproduction, and distribution of the Work otherwise complies with
|
129
|
+
the conditions stated in this License.
|
130
|
+
|
131
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
132
|
+
any Contribution intentionally submitted for inclusion in the Work
|
133
|
+
by You to the Licensor shall be under the terms and conditions of
|
134
|
+
this License, without any additional terms or conditions.
|
135
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
136
|
+
the terms of any separate license agreement you may have executed
|
137
|
+
with Licensor regarding such Contributions.
|
138
|
+
|
139
|
+
6. Trademarks. This License does not grant permission to use the trade
|
140
|
+
names, trademarks, service marks, or product names of the Licensor,
|
141
|
+
except as required for reasonable and customary use in describing the
|
142
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
143
|
+
|
144
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
145
|
+
agreed to in writing, Licensor provides the Work (and each
|
146
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
147
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
148
|
+
implied, including, without limitation, any warranties or conditions
|
149
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
150
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
151
|
+
appropriateness of using or redistributing the Work and assume any
|
152
|
+
risks associated with Your exercise of permissions under this License.
|
153
|
+
|
154
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
155
|
+
whether in tort (including negligence), contract, or otherwise,
|
156
|
+
unless required by applicable law (such as deliberate and grossly
|
157
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
158
|
+
liable to You for damages, including any direct, indirect, special,
|
159
|
+
incidental, or consequential damages of any character arising as a
|
160
|
+
result of this License or out of the use or inability to use the
|
161
|
+
Work (including but not limited to damages for loss of goodwill,
|
162
|
+
work stoppage, computer failure or malfunction, or any and all
|
163
|
+
other commercial damages or losses), even if such Contributor
|
164
|
+
has been advised of the possibility of such damages.
|
165
|
+
|
166
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
167
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
168
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
169
|
+
or other liability obligations and/or rights consistent with this
|
170
|
+
License. However, in accepting such obligations, You may act only
|
171
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
172
|
+
of any other Contributor, and only if You agree to indemnify,
|
173
|
+
defend, and hold each Contributor harmless for any liability
|
174
|
+
incurred by, or claims asserted against, such Contributor by reason
|
175
|
+
of your accepting any such warranty or additional liability.
|
176
|
+
|
177
|
+
END OF TERMS AND CONDITIONS
|
178
|
+
|
179
|
+
APPENDIX: How to apply the Apache License to your work.
|
180
|
+
|
181
|
+
To apply the Apache License to your work, attach the following
|
182
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
183
|
+
replaced with your own identifying information. (Don't include
|
184
|
+
the brackets!) The text should be enclosed in the appropriate
|
185
|
+
comment syntax for the file format. We also recommend that a
|
186
|
+
file or class name and description of purpose be included on the
|
187
|
+
same "printed page" as the copyright notice for easier
|
188
|
+
identification within third-party archives.
|
189
|
+
|
190
|
+
Copyright [yyyy] [name of copyright owner]
|
191
|
+
|
192
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
193
|
+
you may not use this file except in compliance with the License.
|
194
|
+
You may obtain a copy of the License at
|
195
|
+
|
196
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
197
|
+
|
198
|
+
Unless required by applicable law or agreed to in writing, software
|
199
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
200
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
201
|
+
See the License for the specific language governing permissions and
|
202
|
+
limitations under the License.
|
data/OVERVIEW.md
ADDED
@@ -0,0 +1,96 @@
|
|
1
|
+
# Simple REST client for version V1beta of the Google Analytics Data API
|
2
|
+
|
3
|
+
This is a simple client library for version V1beta of the Google Analytics Data API. It provides:
|
4
|
+
|
5
|
+
* A client object that connects to the HTTP/JSON REST endpoint for the service.
|
6
|
+
* Ruby objects for data structures related to the service.
|
7
|
+
* Integration with the googleauth gem for authentication using OAuth, API keys, and service accounts.
|
8
|
+
* Control of retry, pagination, and timeouts.
|
9
|
+
|
10
|
+
Note that although this client library is supported and will continue to be updated to track changes to the service, it is otherwise considered complete and not under active development. Many Google services, especially Google Cloud Platform services, may provide a more modern client that is under more active development and improvement. See the section below titled *Which client should I use?* for more information.
|
11
|
+
|
12
|
+
## Getting started
|
13
|
+
|
14
|
+
### Before you begin
|
15
|
+
|
16
|
+
There are a few setup steps you need to complete before you can use this library:
|
17
|
+
|
18
|
+
1. If you don't already have a Google account, [sign up](https://www.google.com/accounts).
|
19
|
+
2. If you have never created a Google APIs Console project, read about [Managing Projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects) and create a project in the [Google API Console](https://console.cloud.google.com/).
|
20
|
+
3. Most APIs need to be enabled for your project. [Enable it](https://console.cloud.google.com/apis/library/analyticsdata.googleapis.com) in the console.
|
21
|
+
|
22
|
+
### Installation
|
23
|
+
|
24
|
+
Add this line to your application's Gemfile:
|
25
|
+
|
26
|
+
```ruby
|
27
|
+
gem 'google-apis-analyticsdata_v1beta', '~> 0.1'
|
28
|
+
```
|
29
|
+
|
30
|
+
And then execute:
|
31
|
+
|
32
|
+
```
|
33
|
+
$ bundle
|
34
|
+
```
|
35
|
+
|
36
|
+
Or install it yourself as:
|
37
|
+
|
38
|
+
```
|
39
|
+
$ gem install google-apis-analyticsdata_v1beta
|
40
|
+
```
|
41
|
+
|
42
|
+
### Creating a client object
|
43
|
+
|
44
|
+
Once the gem is installed, you can load the client code and instantiate a client.
|
45
|
+
|
46
|
+
```ruby
|
47
|
+
# Load the client
|
48
|
+
require "google/apis/analyticsdata_v1beta"
|
49
|
+
|
50
|
+
# Create a client object
|
51
|
+
client = Google::Apis::AnalyticsdataV1beta::AnalyticsDataService.new
|
52
|
+
|
53
|
+
# Authenticate calls
|
54
|
+
client.authentication = # ... use the googleauth gem to create credentials
|
55
|
+
```
|
56
|
+
|
57
|
+
See the class reference docs for information on the methods you can call from a client.
|
58
|
+
|
59
|
+
## Documentation
|
60
|
+
|
61
|
+
More detailed descriptions of the Google simple REST clients are available in two documents.
|
62
|
+
|
63
|
+
* The [Usage Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/usage-guide.md) discusses how to make API calls, how to use the provided data structures, and how to work the various features of the client library, including media upload and download, error handling, retries, pagination, and logging.
|
64
|
+
* The [Auth Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/auth-guide.md) discusses authentication in the client libraries, including API keys, OAuth 2.0, service accounts, and environment variables.
|
65
|
+
|
66
|
+
(Note: the above documents are written for the simple REST clients in general, and their examples may not reflect the Analyticsdata service in particular.)
|
67
|
+
|
68
|
+
For reference information on specific calls in the Google Analytics Data API, see the {Google::Apis::AnalyticsdataV1beta::AnalyticsDataService class reference docs}.
|
69
|
+
|
70
|
+
## Which client should I use?
|
71
|
+
|
72
|
+
Google provides two types of Ruby API client libraries: **simple REST clients** and **modern clients**.
|
73
|
+
|
74
|
+
This library, `google-apis-analyticsdata_v1beta`, is a simple REST client. You can identify these clients by their gem names, which are always in the form `google-apis-<servicename>_<serviceversion>`. The simple REST clients connect to HTTP/JSON REST endpoints and are automatically generated from service discovery documents. They support most API functionality, but their class interfaces are sometimes awkward.
|
75
|
+
|
76
|
+
Modern clients are produced by a modern code generator, sometimes combined with hand-crafted functionality. Most modern clients connect to high-performance gRPC endpoints, although a few are backed by REST services. Modern clients are available for many Google services, especially Google Cloud Platform services, but do not yet support all the services covered by the simple clients.
|
77
|
+
|
78
|
+
Gem names for modern clients are often of the form `google-cloud-<service_name>`. (For example, [google-cloud-pubsub](https://rubygems.org/gems/google-cloud-pubsub).) Note that most modern clients also have corresponding "versioned" gems with names like `google-cloud-<service_name>-<version>`. (For example, [google-cloud-pubsub-v1](https://rubygems.org/gems/google-cloud-pubsub-v1).) The "versioned" gems can be used directly, but often provide lower-level interfaces. In most cases, the main gem is recommended.
|
79
|
+
|
80
|
+
**For most users, we recommend the modern client, if one is available.** Compared with simple clients, modern clients are generally much easier to use and more Ruby-like, support more advanced features such as streaming and long-running operations, and often provide much better performance. You may consider using a simple client instead, if a modern client is not yet available for the service you want to use, or if you are not able to use gRPC on your infrastructure.
|
81
|
+
|
82
|
+
The [product documentation](https://developers.google.com/analytics/devguides/reporting/data/v1/) may provide guidance regarding the preferred client library to use.
|
83
|
+
|
84
|
+
## Supported Ruby versions
|
85
|
+
|
86
|
+
This library is supported on Ruby 2.5+.
|
87
|
+
|
88
|
+
Google provides official support for Ruby versions that are actively supported by Ruby Core -- that is, Ruby versions that are either in normal maintenance or in security maintenance, and not end of life. Currently, this means Ruby 2.5 and later. Older versions of Ruby _may_ still work, but are unsupported and not recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details about the Ruby support schedule.
|
89
|
+
|
90
|
+
## License
|
91
|
+
|
92
|
+
This library is licensed under Apache 2.0. Full license text is available in the {file:LICENSE.md LICENSE}.
|
93
|
+
|
94
|
+
## Support
|
95
|
+
|
96
|
+
Please [report bugs at the project on Github](https://github.com/google/google-api-ruby-client/issues). Don't hesitate to [ask questions](http://stackoverflow.com/questions/tagged/google-api-ruby-client) about the client or APIs on [StackOverflow](http://stackoverflow.com).
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require "google/apis/analyticsdata_v1beta"
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require 'google/apis/analyticsdata_v1beta/service.rb'
|
16
|
+
require 'google/apis/analyticsdata_v1beta/classes.rb'
|
17
|
+
require 'google/apis/analyticsdata_v1beta/representations.rb'
|
18
|
+
require 'google/apis/analyticsdata_v1beta/gem_version.rb'
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Apis
|
22
|
+
# Google Analytics Data API
|
23
|
+
#
|
24
|
+
# Accesses report data in Google Analytics.
|
25
|
+
#
|
26
|
+
# @see https://developers.google.com/analytics/devguides/reporting/data/v1/
|
27
|
+
module AnalyticsdataV1beta
|
28
|
+
# Version of the Google Analytics Data API this client connects to.
|
29
|
+
# This is NOT the gem version.
|
30
|
+
VERSION = 'V1beta'
|
31
|
+
|
32
|
+
# View and manage your Google Analytics data
|
33
|
+
AUTH_ANALYTICS = 'https://www.googleapis.com/auth/analytics'
|
34
|
+
|
35
|
+
# See and download your Google Analytics data
|
36
|
+
AUTH_ANALYTICS_READONLY = 'https://www.googleapis.com/auth/analytics.readonly'
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
@@ -0,0 +1,1873 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require 'date'
|
16
|
+
require 'google/apis/core/base_service'
|
17
|
+
require 'google/apis/core/json_representation'
|
18
|
+
require 'google/apis/core/hashable'
|
19
|
+
require 'google/apis/errors'
|
20
|
+
|
21
|
+
module Google
|
22
|
+
module Apis
|
23
|
+
module AnalyticsdataV1beta
|
24
|
+
|
25
|
+
# The batch request containing multiple pivot report requests.
|
26
|
+
class BatchRunPivotReportsRequest
|
27
|
+
include Google::Apis::Core::Hashable
|
28
|
+
|
29
|
+
# Individual requests. Each request has a separate pivot report response. Each
|
30
|
+
# batch request is allowed up to 5 requests.
|
31
|
+
# Corresponds to the JSON property `requests`
|
32
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::RunPivotReportRequest>]
|
33
|
+
attr_accessor :requests
|
34
|
+
|
35
|
+
def initialize(**args)
|
36
|
+
update!(**args)
|
37
|
+
end
|
38
|
+
|
39
|
+
# Update properties of this object
|
40
|
+
def update!(**args)
|
41
|
+
@requests = args[:requests] if args.key?(:requests)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
# The batch response containing multiple pivot reports.
|
46
|
+
class BatchRunPivotReportsResponse
|
47
|
+
include Google::Apis::Core::Hashable
|
48
|
+
|
49
|
+
# Identifies what kind of resource this message is. This `kind` is always the
|
50
|
+
# fixed string "analyticsData#batchRunPivotReports". Useful to distinguish
|
51
|
+
# between response types in JSON.
|
52
|
+
# Corresponds to the JSON property `kind`
|
53
|
+
# @return [String]
|
54
|
+
attr_accessor :kind
|
55
|
+
|
56
|
+
# Individual responses. Each response has a separate pivot report request.
|
57
|
+
# Corresponds to the JSON property `pivotReports`
|
58
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::RunPivotReportResponse>]
|
59
|
+
attr_accessor :pivot_reports
|
60
|
+
|
61
|
+
def initialize(**args)
|
62
|
+
update!(**args)
|
63
|
+
end
|
64
|
+
|
65
|
+
# Update properties of this object
|
66
|
+
def update!(**args)
|
67
|
+
@kind = args[:kind] if args.key?(:kind)
|
68
|
+
@pivot_reports = args[:pivot_reports] if args.key?(:pivot_reports)
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
# The batch request containing multiple report requests.
|
73
|
+
class BatchRunReportsRequest
|
74
|
+
include Google::Apis::Core::Hashable
|
75
|
+
|
76
|
+
# Individual requests. Each request has a separate report response. Each batch
|
77
|
+
# request is allowed up to 5 requests.
|
78
|
+
# Corresponds to the JSON property `requests`
|
79
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::RunReportRequest>]
|
80
|
+
attr_accessor :requests
|
81
|
+
|
82
|
+
def initialize(**args)
|
83
|
+
update!(**args)
|
84
|
+
end
|
85
|
+
|
86
|
+
# Update properties of this object
|
87
|
+
def update!(**args)
|
88
|
+
@requests = args[:requests] if args.key?(:requests)
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
# The batch response containing multiple reports.
|
93
|
+
class BatchRunReportsResponse
|
94
|
+
include Google::Apis::Core::Hashable
|
95
|
+
|
96
|
+
# Identifies what kind of resource this message is. This `kind` is always the
|
97
|
+
# fixed string "analyticsData#batchRunReports". Useful to distinguish between
|
98
|
+
# response types in JSON.
|
99
|
+
# Corresponds to the JSON property `kind`
|
100
|
+
# @return [String]
|
101
|
+
attr_accessor :kind
|
102
|
+
|
103
|
+
# Individual responses. Each response has a separate report request.
|
104
|
+
# Corresponds to the JSON property `reports`
|
105
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::RunReportResponse>]
|
106
|
+
attr_accessor :reports
|
107
|
+
|
108
|
+
def initialize(**args)
|
109
|
+
update!(**args)
|
110
|
+
end
|
111
|
+
|
112
|
+
# Update properties of this object
|
113
|
+
def update!(**args)
|
114
|
+
@kind = args[:kind] if args.key?(:kind)
|
115
|
+
@reports = args[:reports] if args.key?(:reports)
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
# To express that the result needs to be between two numbers (inclusive).
|
120
|
+
class BetweenFilter
|
121
|
+
include Google::Apis::Core::Hashable
|
122
|
+
|
123
|
+
# To represent a number.
|
124
|
+
# Corresponds to the JSON property `fromValue`
|
125
|
+
# @return [Google::Apis::AnalyticsdataV1beta::NumericValue]
|
126
|
+
attr_accessor :from_value
|
127
|
+
|
128
|
+
# To represent a number.
|
129
|
+
# Corresponds to the JSON property `toValue`
|
130
|
+
# @return [Google::Apis::AnalyticsdataV1beta::NumericValue]
|
131
|
+
attr_accessor :to_value
|
132
|
+
|
133
|
+
def initialize(**args)
|
134
|
+
update!(**args)
|
135
|
+
end
|
136
|
+
|
137
|
+
# Update properties of this object
|
138
|
+
def update!(**args)
|
139
|
+
@from_value = args[:from_value] if args.key?(:from_value)
|
140
|
+
@to_value = args[:to_value] if args.key?(:to_value)
|
141
|
+
end
|
142
|
+
end
|
143
|
+
|
144
|
+
# Used to convert a dimension value to a single case.
|
145
|
+
class CaseExpression
|
146
|
+
include Google::Apis::Core::Hashable
|
147
|
+
|
148
|
+
# Name of a dimension. The name must refer back to a name in dimensions field of
|
149
|
+
# the request.
|
150
|
+
# Corresponds to the JSON property `dimensionName`
|
151
|
+
# @return [String]
|
152
|
+
attr_accessor :dimension_name
|
153
|
+
|
154
|
+
def initialize(**args)
|
155
|
+
update!(**args)
|
156
|
+
end
|
157
|
+
|
158
|
+
# Update properties of this object
|
159
|
+
def update!(**args)
|
160
|
+
@dimension_name = args[:dimension_name] if args.key?(:dimension_name)
|
161
|
+
end
|
162
|
+
end
|
163
|
+
|
164
|
+
# Defines a cohort selection criteria. A cohort is a group of users who share a
|
165
|
+
# common characteristic. For example, users with the same `firstSessionDate`
|
166
|
+
# belong to the same cohort.
|
167
|
+
class Cohort
|
168
|
+
include Google::Apis::Core::Hashable
|
169
|
+
|
170
|
+
# A contiguous set of days: startDate, startDate + 1, ..., endDate. Requests are
|
171
|
+
# allowed up to 4 date ranges.
|
172
|
+
# Corresponds to the JSON property `dateRange`
|
173
|
+
# @return [Google::Apis::AnalyticsdataV1beta::DateRange]
|
174
|
+
attr_accessor :date_range
|
175
|
+
|
176
|
+
# Dimension used by the cohort. Required and only supports `firstSessionDate`.
|
177
|
+
# Corresponds to the JSON property `dimension`
|
178
|
+
# @return [String]
|
179
|
+
attr_accessor :dimension
|
180
|
+
|
181
|
+
# Assigns a name to this cohort. The dimension `cohort` is valued to this name
|
182
|
+
# in a report response. If set, cannot begin with `cohort_` or `RESERVED_`. If
|
183
|
+
# not set, cohorts are named by their zero based index `cohort_0`, `cohort_1`,
|
184
|
+
# etc.
|
185
|
+
# Corresponds to the JSON property `name`
|
186
|
+
# @return [String]
|
187
|
+
attr_accessor :name
|
188
|
+
|
189
|
+
def initialize(**args)
|
190
|
+
update!(**args)
|
191
|
+
end
|
192
|
+
|
193
|
+
# Update properties of this object
|
194
|
+
def update!(**args)
|
195
|
+
@date_range = args[:date_range] if args.key?(:date_range)
|
196
|
+
@dimension = args[:dimension] if args.key?(:dimension)
|
197
|
+
@name = args[:name] if args.key?(:name)
|
198
|
+
end
|
199
|
+
end
|
200
|
+
|
201
|
+
# Optional settings of a cohort report.
|
202
|
+
class CohortReportSettings
|
203
|
+
include Google::Apis::Core::Hashable
|
204
|
+
|
205
|
+
# If true, accumulates the result from first touch day to the end day. Not
|
206
|
+
# supported in `RunReportRequest`.
|
207
|
+
# Corresponds to the JSON property `accumulate`
|
208
|
+
# @return [Boolean]
|
209
|
+
attr_accessor :accumulate
|
210
|
+
alias_method :accumulate?, :accumulate
|
211
|
+
|
212
|
+
def initialize(**args)
|
213
|
+
update!(**args)
|
214
|
+
end
|
215
|
+
|
216
|
+
# Update properties of this object
|
217
|
+
def update!(**args)
|
218
|
+
@accumulate = args[:accumulate] if args.key?(:accumulate)
|
219
|
+
end
|
220
|
+
end
|
221
|
+
|
222
|
+
# The specification of cohorts for a cohort report. Cohort reports create a time
|
223
|
+
# series of user retention for the cohort. For example, you could select the
|
224
|
+
# cohort of users that were acquired in the first week of September and follow
|
225
|
+
# that cohort for the next six weeks. Selecting the users acquired in the first
|
226
|
+
# week of September cohort is specified in the `cohort` object. Following that
|
227
|
+
# cohort for the next six weeks is specified in the `cohortsRange` object. For
|
228
|
+
# examples, see [Cohort Report Examples](https://developers.google.com/analytics/
|
229
|
+
# devguides/reporting/data/v1/advanced#cohort_report_examples). The report
|
230
|
+
# response could show a weekly time series where say your app has retained 60%
|
231
|
+
# of this cohort after three weeks and 25% of this cohort after six weeks. These
|
232
|
+
# two percentages can be calculated by the metric `cohortActiveUsers/
|
233
|
+
# cohortTotalUsers` and will be separate rows in the report.
|
234
|
+
class CohortSpec
|
235
|
+
include Google::Apis::Core::Hashable
|
236
|
+
|
237
|
+
# Optional settings of a cohort report.
|
238
|
+
# Corresponds to the JSON property `cohortReportSettings`
|
239
|
+
# @return [Google::Apis::AnalyticsdataV1beta::CohortReportSettings]
|
240
|
+
attr_accessor :cohort_report_settings
|
241
|
+
|
242
|
+
# Defines the selection criteria to group users into cohorts. Most cohort
|
243
|
+
# reports define only a single cohort. If multiple cohorts are specified, each
|
244
|
+
# cohort can be recognized in the report by their name.
|
245
|
+
# Corresponds to the JSON property `cohorts`
|
246
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Cohort>]
|
247
|
+
attr_accessor :cohorts
|
248
|
+
|
249
|
+
# Configures the extended reporting date range for a cohort report. Specifies an
|
250
|
+
# offset duration to follow the cohorts over.
|
251
|
+
# Corresponds to the JSON property `cohortsRange`
|
252
|
+
# @return [Google::Apis::AnalyticsdataV1beta::CohortsRange]
|
253
|
+
attr_accessor :cohorts_range
|
254
|
+
|
255
|
+
def initialize(**args)
|
256
|
+
update!(**args)
|
257
|
+
end
|
258
|
+
|
259
|
+
# Update properties of this object
|
260
|
+
def update!(**args)
|
261
|
+
@cohort_report_settings = args[:cohort_report_settings] if args.key?(:cohort_report_settings)
|
262
|
+
@cohorts = args[:cohorts] if args.key?(:cohorts)
|
263
|
+
@cohorts_range = args[:cohorts_range] if args.key?(:cohorts_range)
|
264
|
+
end
|
265
|
+
end
|
266
|
+
|
267
|
+
# Configures the extended reporting date range for a cohort report. Specifies an
|
268
|
+
# offset duration to follow the cohorts over.
|
269
|
+
class CohortsRange
|
270
|
+
include Google::Apis::Core::Hashable
|
271
|
+
|
272
|
+
# Required. `endOffset` specifies the end date of the extended reporting date
|
273
|
+
# range for a cohort report. `endOffset` can be any positive integer but is
|
274
|
+
# commonly set to 5 to 10 so that reports contain data on the cohort for the
|
275
|
+
# next several granularity time periods. If `granularity` is `DAILY`, the `
|
276
|
+
# endDate` of the extended reporting date range is `endDate` of the cohort plus `
|
277
|
+
# endOffset` days. If `granularity` is `WEEKLY`, the `endDate` of the extended
|
278
|
+
# reporting date range is `endDate` of the cohort plus `endOffset * 7` days. If `
|
279
|
+
# granularity` is `MONTHLY`, the `endDate` of the extended reporting date range
|
280
|
+
# is `endDate` of the cohort plus `endOffset * 30` days.
|
281
|
+
# Corresponds to the JSON property `endOffset`
|
282
|
+
# @return [Fixnum]
|
283
|
+
attr_accessor :end_offset
|
284
|
+
|
285
|
+
# Required. The granularity used to interpret the `startOffset` and `endOffset`
|
286
|
+
# for the extended reporting date range for a cohort report.
|
287
|
+
# Corresponds to the JSON property `granularity`
|
288
|
+
# @return [String]
|
289
|
+
attr_accessor :granularity
|
290
|
+
|
291
|
+
# `startOffset` specifies the start date of the extended reporting date range
|
292
|
+
# for a cohort report. `startOffset` is commonly set to 0 so that reports
|
293
|
+
# contain data from the acquisition of the cohort forward. If `granularity` is `
|
294
|
+
# DAILY`, the `startDate` of the extended reporting date range is `startDate` of
|
295
|
+
# the cohort plus `startOffset` days. If `granularity` is `WEEKLY`, the `
|
296
|
+
# startDate` of the extended reporting date range is `startDate` of the cohort
|
297
|
+
# plus `startOffset * 7` days. If `granularity` is `MONTHLY`, the `startDate` of
|
298
|
+
# the extended reporting date range is `startDate` of the cohort plus `
|
299
|
+
# startOffset * 30` days.
|
300
|
+
# Corresponds to the JSON property `startOffset`
|
301
|
+
# @return [Fixnum]
|
302
|
+
attr_accessor :start_offset
|
303
|
+
|
304
|
+
def initialize(**args)
|
305
|
+
update!(**args)
|
306
|
+
end
|
307
|
+
|
308
|
+
# Update properties of this object
|
309
|
+
def update!(**args)
|
310
|
+
@end_offset = args[:end_offset] if args.key?(:end_offset)
|
311
|
+
@granularity = args[:granularity] if args.key?(:granularity)
|
312
|
+
@start_offset = args[:start_offset] if args.key?(:start_offset)
|
313
|
+
end
|
314
|
+
end
|
315
|
+
|
316
|
+
# Used to combine dimension values to a single dimension.
|
317
|
+
class ConcatenateExpression
|
318
|
+
include Google::Apis::Core::Hashable
|
319
|
+
|
320
|
+
# The delimiter placed between dimension names. Delimiters are often single
|
321
|
+
# characters such as "|" or "," but can be longer strings. If a dimension value
|
322
|
+
# contains the delimiter, both will be present in response with no distinction.
|
323
|
+
# For example if dimension 1 value = "US,FR", dimension 2 value = "JP", and
|
324
|
+
# delimiter = ",", then the response will contain "US,FR,JP".
|
325
|
+
# Corresponds to the JSON property `delimiter`
|
326
|
+
# @return [String]
|
327
|
+
attr_accessor :delimiter
|
328
|
+
|
329
|
+
# Names of dimensions. The names must refer back to names in the dimensions
|
330
|
+
# field of the request.
|
331
|
+
# Corresponds to the JSON property `dimensionNames`
|
332
|
+
# @return [Array<String>]
|
333
|
+
attr_accessor :dimension_names
|
334
|
+
|
335
|
+
def initialize(**args)
|
336
|
+
update!(**args)
|
337
|
+
end
|
338
|
+
|
339
|
+
# Update properties of this object
|
340
|
+
def update!(**args)
|
341
|
+
@delimiter = args[:delimiter] if args.key?(:delimiter)
|
342
|
+
@dimension_names = args[:dimension_names] if args.key?(:dimension_names)
|
343
|
+
end
|
344
|
+
end
|
345
|
+
|
346
|
+
# A contiguous set of days: startDate, startDate + 1, ..., endDate. Requests are
|
347
|
+
# allowed up to 4 date ranges.
|
348
|
+
class DateRange
|
349
|
+
include Google::Apis::Core::Hashable
|
350
|
+
|
351
|
+
# The inclusive end date for the query in the format `YYYY-MM-DD`. Cannot be
|
352
|
+
# before `start_date`. The format `NdaysAgo`, `yesterday`, or `today` is also
|
353
|
+
# accepted, and in that case, the date is inferred based on the property's
|
354
|
+
# reporting time zone.
|
355
|
+
# Corresponds to the JSON property `endDate`
|
356
|
+
# @return [String]
|
357
|
+
attr_accessor :end_date
|
358
|
+
|
359
|
+
# Assigns a name to this date range. The dimension `dateRange` is valued to this
|
360
|
+
# name in a report response. If set, cannot begin with `date_range_` or `
|
361
|
+
# RESERVED_`. If not set, date ranges are named by their zero based index in the
|
362
|
+
# request: `date_range_0`, `date_range_1`, etc.
|
363
|
+
# Corresponds to the JSON property `name`
|
364
|
+
# @return [String]
|
365
|
+
attr_accessor :name
|
366
|
+
|
367
|
+
# The inclusive start date for the query in the format `YYYY-MM-DD`. Cannot be
|
368
|
+
# after `end_date`. The format `NdaysAgo`, `yesterday`, or `today` is also
|
369
|
+
# accepted, and in that case, the date is inferred based on the property's
|
370
|
+
# reporting time zone.
|
371
|
+
# Corresponds to the JSON property `startDate`
|
372
|
+
# @return [String]
|
373
|
+
attr_accessor :start_date
|
374
|
+
|
375
|
+
def initialize(**args)
|
376
|
+
update!(**args)
|
377
|
+
end
|
378
|
+
|
379
|
+
# Update properties of this object
|
380
|
+
def update!(**args)
|
381
|
+
@end_date = args[:end_date] if args.key?(:end_date)
|
382
|
+
@name = args[:name] if args.key?(:name)
|
383
|
+
@start_date = args[:start_date] if args.key?(:start_date)
|
384
|
+
end
|
385
|
+
end
|
386
|
+
|
387
|
+
# Dimensions are attributes of your data. For example, the dimension city
|
388
|
+
# indicates the city from which an event originates. Dimension values in report
|
389
|
+
# responses are strings; for example, city could be "Paris" or "New York".
|
390
|
+
# Requests are allowed up to 8 dimensions.
|
391
|
+
class Dimension
|
392
|
+
include Google::Apis::Core::Hashable
|
393
|
+
|
394
|
+
# Used to express a dimension which is the result of a formula of multiple
|
395
|
+
# dimensions. Example usages: 1) lower_case(dimension) 2) concatenate(dimension1,
|
396
|
+
# symbol, dimension2).
|
397
|
+
# Corresponds to the JSON property `dimensionExpression`
|
398
|
+
# @return [Google::Apis::AnalyticsdataV1beta::DimensionExpression]
|
399
|
+
attr_accessor :dimension_expression
|
400
|
+
|
401
|
+
# The name of the dimension. See the [API Dimensions](https://developers.google.
|
402
|
+
# com/analytics/devguides/reporting/data/v1/api-schema#dimensions) for the list
|
403
|
+
# of dimension names. If `dimensionExpression` is specified, `name` can be any
|
404
|
+
# string that you would like within the allowed character set. For example if a `
|
405
|
+
# dimensionExpression` concatenates `country` and `city`, you could call that
|
406
|
+
# dimension `countryAndCity`. Dimension names that you choose must match the
|
407
|
+
# regular expression "^[a-zA-Z0-9_]$". Dimensions are referenced by `name` in `
|
408
|
+
# dimensionFilter`, `orderBys`, `dimensionExpression`, and `pivots`.
|
409
|
+
# Corresponds to the JSON property `name`
|
410
|
+
# @return [String]
|
411
|
+
attr_accessor :name
|
412
|
+
|
413
|
+
def initialize(**args)
|
414
|
+
update!(**args)
|
415
|
+
end
|
416
|
+
|
417
|
+
# Update properties of this object
|
418
|
+
def update!(**args)
|
419
|
+
@dimension_expression = args[:dimension_expression] if args.key?(:dimension_expression)
|
420
|
+
@name = args[:name] if args.key?(:name)
|
421
|
+
end
|
422
|
+
end
|
423
|
+
|
424
|
+
# Used to express a dimension which is the result of a formula of multiple
|
425
|
+
# dimensions. Example usages: 1) lower_case(dimension) 2) concatenate(dimension1,
|
426
|
+
# symbol, dimension2).
|
427
|
+
class DimensionExpression
|
428
|
+
include Google::Apis::Core::Hashable
|
429
|
+
|
430
|
+
# Used to combine dimension values to a single dimension.
|
431
|
+
# Corresponds to the JSON property `concatenate`
|
432
|
+
# @return [Google::Apis::AnalyticsdataV1beta::ConcatenateExpression]
|
433
|
+
attr_accessor :concatenate
|
434
|
+
|
435
|
+
# Used to convert a dimension value to a single case.
|
436
|
+
# Corresponds to the JSON property `lowerCase`
|
437
|
+
# @return [Google::Apis::AnalyticsdataV1beta::CaseExpression]
|
438
|
+
attr_accessor :lower_case
|
439
|
+
|
440
|
+
# Used to convert a dimension value to a single case.
|
441
|
+
# Corresponds to the JSON property `upperCase`
|
442
|
+
# @return [Google::Apis::AnalyticsdataV1beta::CaseExpression]
|
443
|
+
attr_accessor :upper_case
|
444
|
+
|
445
|
+
def initialize(**args)
|
446
|
+
update!(**args)
|
447
|
+
end
|
448
|
+
|
449
|
+
# Update properties of this object
|
450
|
+
def update!(**args)
|
451
|
+
@concatenate = args[:concatenate] if args.key?(:concatenate)
|
452
|
+
@lower_case = args[:lower_case] if args.key?(:lower_case)
|
453
|
+
@upper_case = args[:upper_case] if args.key?(:upper_case)
|
454
|
+
end
|
455
|
+
end
|
456
|
+
|
457
|
+
# Describes a dimension column in the report. Dimensions requested in a report
|
458
|
+
# produce column entries within rows and DimensionHeaders. However, dimensions
|
459
|
+
# used exclusively within filters or expressions do not produce columns in a
|
460
|
+
# report; correspondingly, those dimensions do not produce headers.
|
461
|
+
class DimensionHeader
|
462
|
+
include Google::Apis::Core::Hashable
|
463
|
+
|
464
|
+
# The dimension's name.
|
465
|
+
# Corresponds to the JSON property `name`
|
466
|
+
# @return [String]
|
467
|
+
attr_accessor :name
|
468
|
+
|
469
|
+
def initialize(**args)
|
470
|
+
update!(**args)
|
471
|
+
end
|
472
|
+
|
473
|
+
# Update properties of this object
|
474
|
+
def update!(**args)
|
475
|
+
@name = args[:name] if args.key?(:name)
|
476
|
+
end
|
477
|
+
end
|
478
|
+
|
479
|
+
# Explains a dimension.
|
480
|
+
class DimensionMetadata
|
481
|
+
include Google::Apis::Core::Hashable
|
482
|
+
|
483
|
+
# This dimension's name. Useable in [Dimension](#Dimension)'s `name`. For
|
484
|
+
# example, `eventName`.
|
485
|
+
# Corresponds to the JSON property `apiName`
|
486
|
+
# @return [String]
|
487
|
+
attr_accessor :api_name
|
488
|
+
|
489
|
+
# True if the dimension is a custom dimension for this property.
|
490
|
+
# Corresponds to the JSON property `customDefinition`
|
491
|
+
# @return [Boolean]
|
492
|
+
attr_accessor :custom_definition
|
493
|
+
alias_method :custom_definition?, :custom_definition
|
494
|
+
|
495
|
+
# Still usable but deprecated names for this dimension. If populated, this
|
496
|
+
# dimension is available by either `apiName` or one of `deprecatedApiNames` for
|
497
|
+
# a period of time. After the deprecation period, the dimension will be
|
498
|
+
# available only by `apiName`.
|
499
|
+
# Corresponds to the JSON property `deprecatedApiNames`
|
500
|
+
# @return [Array<String>]
|
501
|
+
attr_accessor :deprecated_api_names
|
502
|
+
|
503
|
+
# Description of how this dimension is used and calculated.
|
504
|
+
# Corresponds to the JSON property `description`
|
505
|
+
# @return [String]
|
506
|
+
attr_accessor :description
|
507
|
+
|
508
|
+
# This dimension's name within the Google Analytics user interface. For example,
|
509
|
+
# `Event name`.
|
510
|
+
# Corresponds to the JSON property `uiName`
|
511
|
+
# @return [String]
|
512
|
+
attr_accessor :ui_name
|
513
|
+
|
514
|
+
def initialize(**args)
|
515
|
+
update!(**args)
|
516
|
+
end
|
517
|
+
|
518
|
+
# Update properties of this object
|
519
|
+
def update!(**args)
|
520
|
+
@api_name = args[:api_name] if args.key?(:api_name)
|
521
|
+
@custom_definition = args[:custom_definition] if args.key?(:custom_definition)
|
522
|
+
@deprecated_api_names = args[:deprecated_api_names] if args.key?(:deprecated_api_names)
|
523
|
+
@description = args[:description] if args.key?(:description)
|
524
|
+
@ui_name = args[:ui_name] if args.key?(:ui_name)
|
525
|
+
end
|
526
|
+
end
|
527
|
+
|
528
|
+
# Sorts by dimension values.
|
529
|
+
class DimensionOrderBy
|
530
|
+
include Google::Apis::Core::Hashable
|
531
|
+
|
532
|
+
# A dimension name in the request to order by.
|
533
|
+
# Corresponds to the JSON property `dimensionName`
|
534
|
+
# @return [String]
|
535
|
+
attr_accessor :dimension_name
|
536
|
+
|
537
|
+
# Controls the rule for dimension value ordering.
|
538
|
+
# Corresponds to the JSON property `orderType`
|
539
|
+
# @return [String]
|
540
|
+
attr_accessor :order_type
|
541
|
+
|
542
|
+
def initialize(**args)
|
543
|
+
update!(**args)
|
544
|
+
end
|
545
|
+
|
546
|
+
# Update properties of this object
|
547
|
+
def update!(**args)
|
548
|
+
@dimension_name = args[:dimension_name] if args.key?(:dimension_name)
|
549
|
+
@order_type = args[:order_type] if args.key?(:order_type)
|
550
|
+
end
|
551
|
+
end
|
552
|
+
|
553
|
+
# The value of a dimension.
|
554
|
+
class DimensionValue
|
555
|
+
include Google::Apis::Core::Hashable
|
556
|
+
|
557
|
+
# Value as a string if the dimension type is a string.
|
558
|
+
# Corresponds to the JSON property `value`
|
559
|
+
# @return [String]
|
560
|
+
attr_accessor :value
|
561
|
+
|
562
|
+
def initialize(**args)
|
563
|
+
update!(**args)
|
564
|
+
end
|
565
|
+
|
566
|
+
# Update properties of this object
|
567
|
+
def update!(**args)
|
568
|
+
@value = args[:value] if args.key?(:value)
|
569
|
+
end
|
570
|
+
end
|
571
|
+
|
572
|
+
# An expression to filter dimension or metric values.
|
573
|
+
class Filter
|
574
|
+
include Google::Apis::Core::Hashable
|
575
|
+
|
576
|
+
# To express that the result needs to be between two numbers (inclusive).
|
577
|
+
# Corresponds to the JSON property `betweenFilter`
|
578
|
+
# @return [Google::Apis::AnalyticsdataV1beta::BetweenFilter]
|
579
|
+
attr_accessor :between_filter
|
580
|
+
|
581
|
+
# The dimension name or metric name. Must be a name defined in dimensions or
|
582
|
+
# metrics.
|
583
|
+
# Corresponds to the JSON property `fieldName`
|
584
|
+
# @return [String]
|
585
|
+
attr_accessor :field_name
|
586
|
+
|
587
|
+
# The result needs to be in a list of string values.
|
588
|
+
# Corresponds to the JSON property `inListFilter`
|
589
|
+
# @return [Google::Apis::AnalyticsdataV1beta::InListFilter]
|
590
|
+
attr_accessor :in_list_filter
|
591
|
+
|
592
|
+
# Filters for numeric or date values.
|
593
|
+
# Corresponds to the JSON property `numericFilter`
|
594
|
+
# @return [Google::Apis::AnalyticsdataV1beta::NumericFilter]
|
595
|
+
attr_accessor :numeric_filter
|
596
|
+
|
597
|
+
# The filter for string
|
598
|
+
# Corresponds to the JSON property `stringFilter`
|
599
|
+
# @return [Google::Apis::AnalyticsdataV1beta::StringFilter]
|
600
|
+
attr_accessor :string_filter
|
601
|
+
|
602
|
+
def initialize(**args)
|
603
|
+
update!(**args)
|
604
|
+
end
|
605
|
+
|
606
|
+
# Update properties of this object
|
607
|
+
def update!(**args)
|
608
|
+
@between_filter = args[:between_filter] if args.key?(:between_filter)
|
609
|
+
@field_name = args[:field_name] if args.key?(:field_name)
|
610
|
+
@in_list_filter = args[:in_list_filter] if args.key?(:in_list_filter)
|
611
|
+
@numeric_filter = args[:numeric_filter] if args.key?(:numeric_filter)
|
612
|
+
@string_filter = args[:string_filter] if args.key?(:string_filter)
|
613
|
+
end
|
614
|
+
end
|
615
|
+
|
616
|
+
# To express dimension or metric filters. The fields in the same
|
617
|
+
# FilterExpression need to be either all dimensions or all metrics.
|
618
|
+
class FilterExpression
|
619
|
+
include Google::Apis::Core::Hashable
|
620
|
+
|
621
|
+
# A list of filter expressions.
|
622
|
+
# Corresponds to the JSON property `andGroup`
|
623
|
+
# @return [Google::Apis::AnalyticsdataV1beta::FilterExpressionList]
|
624
|
+
attr_accessor :and_group
|
625
|
+
|
626
|
+
# An expression to filter dimension or metric values.
|
627
|
+
# Corresponds to the JSON property `filter`
|
628
|
+
# @return [Google::Apis::AnalyticsdataV1beta::Filter]
|
629
|
+
attr_accessor :filter
|
630
|
+
|
631
|
+
# To express dimension or metric filters. The fields in the same
|
632
|
+
# FilterExpression need to be either all dimensions or all metrics.
|
633
|
+
# Corresponds to the JSON property `notExpression`
|
634
|
+
# @return [Google::Apis::AnalyticsdataV1beta::FilterExpression]
|
635
|
+
attr_accessor :not_expression
|
636
|
+
|
637
|
+
# A list of filter expressions.
|
638
|
+
# Corresponds to the JSON property `orGroup`
|
639
|
+
# @return [Google::Apis::AnalyticsdataV1beta::FilterExpressionList]
|
640
|
+
attr_accessor :or_group
|
641
|
+
|
642
|
+
def initialize(**args)
|
643
|
+
update!(**args)
|
644
|
+
end
|
645
|
+
|
646
|
+
# Update properties of this object
|
647
|
+
def update!(**args)
|
648
|
+
@and_group = args[:and_group] if args.key?(:and_group)
|
649
|
+
@filter = args[:filter] if args.key?(:filter)
|
650
|
+
@not_expression = args[:not_expression] if args.key?(:not_expression)
|
651
|
+
@or_group = args[:or_group] if args.key?(:or_group)
|
652
|
+
end
|
653
|
+
end
|
654
|
+
|
655
|
+
# A list of filter expressions.
|
656
|
+
class FilterExpressionList
|
657
|
+
include Google::Apis::Core::Hashable
|
658
|
+
|
659
|
+
# A list of filter expressions.
|
660
|
+
# Corresponds to the JSON property `expressions`
|
661
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::FilterExpression>]
|
662
|
+
attr_accessor :expressions
|
663
|
+
|
664
|
+
def initialize(**args)
|
665
|
+
update!(**args)
|
666
|
+
end
|
667
|
+
|
668
|
+
# Update properties of this object
|
669
|
+
def update!(**args)
|
670
|
+
@expressions = args[:expressions] if args.key?(:expressions)
|
671
|
+
end
|
672
|
+
end
|
673
|
+
|
674
|
+
# The result needs to be in a list of string values.
|
675
|
+
class InListFilter
|
676
|
+
include Google::Apis::Core::Hashable
|
677
|
+
|
678
|
+
# If true, the string value is case sensitive.
|
679
|
+
# Corresponds to the JSON property `caseSensitive`
|
680
|
+
# @return [Boolean]
|
681
|
+
attr_accessor :case_sensitive
|
682
|
+
alias_method :case_sensitive?, :case_sensitive
|
683
|
+
|
684
|
+
# The list of string values. Must be non-empty.
|
685
|
+
# Corresponds to the JSON property `values`
|
686
|
+
# @return [Array<String>]
|
687
|
+
attr_accessor :values
|
688
|
+
|
689
|
+
def initialize(**args)
|
690
|
+
update!(**args)
|
691
|
+
end
|
692
|
+
|
693
|
+
# Update properties of this object
|
694
|
+
def update!(**args)
|
695
|
+
@case_sensitive = args[:case_sensitive] if args.key?(:case_sensitive)
|
696
|
+
@values = args[:values] if args.key?(:values)
|
697
|
+
end
|
698
|
+
end
|
699
|
+
|
700
|
+
# The dimensions and metrics currently accepted in reporting methods.
|
701
|
+
class Metadata
|
702
|
+
include Google::Apis::Core::Hashable
|
703
|
+
|
704
|
+
# The dimension descriptions.
|
705
|
+
# Corresponds to the JSON property `dimensions`
|
706
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::DimensionMetadata>]
|
707
|
+
attr_accessor :dimensions
|
708
|
+
|
709
|
+
# The metric descriptions.
|
710
|
+
# Corresponds to the JSON property `metrics`
|
711
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::MetricMetadata>]
|
712
|
+
attr_accessor :metrics
|
713
|
+
|
714
|
+
# Resource name of this metadata.
|
715
|
+
# Corresponds to the JSON property `name`
|
716
|
+
# @return [String]
|
717
|
+
attr_accessor :name
|
718
|
+
|
719
|
+
def initialize(**args)
|
720
|
+
update!(**args)
|
721
|
+
end
|
722
|
+
|
723
|
+
# Update properties of this object
|
724
|
+
def update!(**args)
|
725
|
+
@dimensions = args[:dimensions] if args.key?(:dimensions)
|
726
|
+
@metrics = args[:metrics] if args.key?(:metrics)
|
727
|
+
@name = args[:name] if args.key?(:name)
|
728
|
+
end
|
729
|
+
end
|
730
|
+
|
731
|
+
# The quantitative measurements of a report. For example, the metric `eventCount`
|
732
|
+
# is the total number of events. Requests are allowed up to 10 metrics.
|
733
|
+
class Metric
|
734
|
+
include Google::Apis::Core::Hashable
|
735
|
+
|
736
|
+
# A mathematical expression for derived metrics. For example, the metric Event
|
737
|
+
# count per user is `eventCount/totalUsers`.
|
738
|
+
# Corresponds to the JSON property `expression`
|
739
|
+
# @return [String]
|
740
|
+
attr_accessor :expression
|
741
|
+
|
742
|
+
# Indicates if a metric is invisible in the report response. If a metric is
|
743
|
+
# invisible, the metric will not produce a column in the response, but can be
|
744
|
+
# used in `metricFilter`, `orderBys`, or a metric `expression`.
|
745
|
+
# Corresponds to the JSON property `invisible`
|
746
|
+
# @return [Boolean]
|
747
|
+
attr_accessor :invisible
|
748
|
+
alias_method :invisible?, :invisible
|
749
|
+
|
750
|
+
# The name of the metric. See the [API Metrics](https://developers.google.com/
|
751
|
+
# analytics/devguides/reporting/data/v1/api-schema#metrics) for the list of
|
752
|
+
# metric names. If `expression` is specified, `name` can be any string that you
|
753
|
+
# would like within the allowed character set. For example if `expression` is `
|
754
|
+
# screenPageViews/sessions`, you could call that metric's name = `
|
755
|
+
# viewsPerSession`. Metric names that you choose must match the regular
|
756
|
+
# expression "^[a-zA-Z0-9_]$". Metrics are referenced by `name` in `metricFilter`
|
757
|
+
# , `orderBys`, and metric `expression`.
|
758
|
+
# Corresponds to the JSON property `name`
|
759
|
+
# @return [String]
|
760
|
+
attr_accessor :name
|
761
|
+
|
762
|
+
def initialize(**args)
|
763
|
+
update!(**args)
|
764
|
+
end
|
765
|
+
|
766
|
+
# Update properties of this object
|
767
|
+
def update!(**args)
|
768
|
+
@expression = args[:expression] if args.key?(:expression)
|
769
|
+
@invisible = args[:invisible] if args.key?(:invisible)
|
770
|
+
@name = args[:name] if args.key?(:name)
|
771
|
+
end
|
772
|
+
end
|
773
|
+
|
774
|
+
# Describes a metric column in the report. Visible metrics requested in a report
|
775
|
+
# produce column entries within rows and MetricHeaders. However, metrics used
|
776
|
+
# exclusively within filters or expressions do not produce columns in a report;
|
777
|
+
# correspondingly, those metrics do not produce headers.
|
778
|
+
class MetricHeader
|
779
|
+
include Google::Apis::Core::Hashable
|
780
|
+
|
781
|
+
# The metric's name.
|
782
|
+
# Corresponds to the JSON property `name`
|
783
|
+
# @return [String]
|
784
|
+
attr_accessor :name
|
785
|
+
|
786
|
+
# The metric's data type.
|
787
|
+
# Corresponds to the JSON property `type`
|
788
|
+
# @return [String]
|
789
|
+
attr_accessor :type
|
790
|
+
|
791
|
+
def initialize(**args)
|
792
|
+
update!(**args)
|
793
|
+
end
|
794
|
+
|
795
|
+
# Update properties of this object
|
796
|
+
def update!(**args)
|
797
|
+
@name = args[:name] if args.key?(:name)
|
798
|
+
@type = args[:type] if args.key?(:type)
|
799
|
+
end
|
800
|
+
end
|
801
|
+
|
802
|
+
# Explains a metric.
|
803
|
+
class MetricMetadata
|
804
|
+
include Google::Apis::Core::Hashable
|
805
|
+
|
806
|
+
# A metric name. Useable in [Metric](#Metric)'s `name`. For example, `eventCount`
|
807
|
+
# .
|
808
|
+
# Corresponds to the JSON property `apiName`
|
809
|
+
# @return [String]
|
810
|
+
attr_accessor :api_name
|
811
|
+
|
812
|
+
# True if the metric is a custom metric for this property.
|
813
|
+
# Corresponds to the JSON property `customDefinition`
|
814
|
+
# @return [Boolean]
|
815
|
+
attr_accessor :custom_definition
|
816
|
+
alias_method :custom_definition?, :custom_definition
|
817
|
+
|
818
|
+
# Still usable but deprecated names for this metric. If populated, this metric
|
819
|
+
# is available by either `apiName` or one of `deprecatedApiNames` for a period
|
820
|
+
# of time. After the deprecation period, the metric will be available only by `
|
821
|
+
# apiName`.
|
822
|
+
# Corresponds to the JSON property `deprecatedApiNames`
|
823
|
+
# @return [Array<String>]
|
824
|
+
attr_accessor :deprecated_api_names
|
825
|
+
|
826
|
+
# Description of how this metric is used and calculated.
|
827
|
+
# Corresponds to the JSON property `description`
|
828
|
+
# @return [String]
|
829
|
+
attr_accessor :description
|
830
|
+
|
831
|
+
# The mathematical expression for this derived metric. Can be used in [Metric](#
|
832
|
+
# Metric)'s `expression` field for equivalent reports. Most metrics are not
|
833
|
+
# expressions, and for non-expressions, this field is empty.
|
834
|
+
# Corresponds to the JSON property `expression`
|
835
|
+
# @return [String]
|
836
|
+
attr_accessor :expression
|
837
|
+
|
838
|
+
# The type of this metric.
|
839
|
+
# Corresponds to the JSON property `type`
|
840
|
+
# @return [String]
|
841
|
+
attr_accessor :type
|
842
|
+
|
843
|
+
# This metric's name within the Google Analytics user interface. For example, `
|
844
|
+
# Event count`.
|
845
|
+
# Corresponds to the JSON property `uiName`
|
846
|
+
# @return [String]
|
847
|
+
attr_accessor :ui_name
|
848
|
+
|
849
|
+
def initialize(**args)
|
850
|
+
update!(**args)
|
851
|
+
end
|
852
|
+
|
853
|
+
# Update properties of this object
|
854
|
+
def update!(**args)
|
855
|
+
@api_name = args[:api_name] if args.key?(:api_name)
|
856
|
+
@custom_definition = args[:custom_definition] if args.key?(:custom_definition)
|
857
|
+
@deprecated_api_names = args[:deprecated_api_names] if args.key?(:deprecated_api_names)
|
858
|
+
@description = args[:description] if args.key?(:description)
|
859
|
+
@expression = args[:expression] if args.key?(:expression)
|
860
|
+
@type = args[:type] if args.key?(:type)
|
861
|
+
@ui_name = args[:ui_name] if args.key?(:ui_name)
|
862
|
+
end
|
863
|
+
end
|
864
|
+
|
865
|
+
# Sorts by metric values.
|
866
|
+
class MetricOrderBy
|
867
|
+
include Google::Apis::Core::Hashable
|
868
|
+
|
869
|
+
# A metric name in the request to order by.
|
870
|
+
# Corresponds to the JSON property `metricName`
|
871
|
+
# @return [String]
|
872
|
+
attr_accessor :metric_name
|
873
|
+
|
874
|
+
def initialize(**args)
|
875
|
+
update!(**args)
|
876
|
+
end
|
877
|
+
|
878
|
+
# Update properties of this object
|
879
|
+
def update!(**args)
|
880
|
+
@metric_name = args[:metric_name] if args.key?(:metric_name)
|
881
|
+
end
|
882
|
+
end
|
883
|
+
|
884
|
+
# The value of a metric.
|
885
|
+
class MetricValue
|
886
|
+
include Google::Apis::Core::Hashable
|
887
|
+
|
888
|
+
# Measurement value. See MetricHeader for type.
|
889
|
+
# Corresponds to the JSON property `value`
|
890
|
+
# @return [String]
|
891
|
+
attr_accessor :value
|
892
|
+
|
893
|
+
def initialize(**args)
|
894
|
+
update!(**args)
|
895
|
+
end
|
896
|
+
|
897
|
+
# Update properties of this object
|
898
|
+
def update!(**args)
|
899
|
+
@value = args[:value] if args.key?(:value)
|
900
|
+
end
|
901
|
+
end
|
902
|
+
|
903
|
+
# Filters for numeric or date values.
|
904
|
+
class NumericFilter
|
905
|
+
include Google::Apis::Core::Hashable
|
906
|
+
|
907
|
+
# The operation type for this filter.
|
908
|
+
# Corresponds to the JSON property `operation`
|
909
|
+
# @return [String]
|
910
|
+
attr_accessor :operation
|
911
|
+
|
912
|
+
# To represent a number.
|
913
|
+
# Corresponds to the JSON property `value`
|
914
|
+
# @return [Google::Apis::AnalyticsdataV1beta::NumericValue]
|
915
|
+
attr_accessor :value
|
916
|
+
|
917
|
+
def initialize(**args)
|
918
|
+
update!(**args)
|
919
|
+
end
|
920
|
+
|
921
|
+
# Update properties of this object
|
922
|
+
def update!(**args)
|
923
|
+
@operation = args[:operation] if args.key?(:operation)
|
924
|
+
@value = args[:value] if args.key?(:value)
|
925
|
+
end
|
926
|
+
end
|
927
|
+
|
928
|
+
# To represent a number.
|
929
|
+
class NumericValue
|
930
|
+
include Google::Apis::Core::Hashable
|
931
|
+
|
932
|
+
# Double value
|
933
|
+
# Corresponds to the JSON property `doubleValue`
|
934
|
+
# @return [Float]
|
935
|
+
attr_accessor :double_value
|
936
|
+
|
937
|
+
# Integer value
|
938
|
+
# Corresponds to the JSON property `int64Value`
|
939
|
+
# @return [Fixnum]
|
940
|
+
attr_accessor :int64_value
|
941
|
+
|
942
|
+
def initialize(**args)
|
943
|
+
update!(**args)
|
944
|
+
end
|
945
|
+
|
946
|
+
# Update properties of this object
|
947
|
+
def update!(**args)
|
948
|
+
@double_value = args[:double_value] if args.key?(:double_value)
|
949
|
+
@int64_value = args[:int64_value] if args.key?(:int64_value)
|
950
|
+
end
|
951
|
+
end
|
952
|
+
|
953
|
+
# The sort options.
|
954
|
+
class OrderBy
|
955
|
+
include Google::Apis::Core::Hashable
|
956
|
+
|
957
|
+
# If true, sorts by descending order.
|
958
|
+
# Corresponds to the JSON property `desc`
|
959
|
+
# @return [Boolean]
|
960
|
+
attr_accessor :desc
|
961
|
+
alias_method :desc?, :desc
|
962
|
+
|
963
|
+
# Sorts by dimension values.
|
964
|
+
# Corresponds to the JSON property `dimension`
|
965
|
+
# @return [Google::Apis::AnalyticsdataV1beta::DimensionOrderBy]
|
966
|
+
attr_accessor :dimension
|
967
|
+
|
968
|
+
# Sorts by metric values.
|
969
|
+
# Corresponds to the JSON property `metric`
|
970
|
+
# @return [Google::Apis::AnalyticsdataV1beta::MetricOrderBy]
|
971
|
+
attr_accessor :metric
|
972
|
+
|
973
|
+
# Sorts by a pivot column group.
|
974
|
+
# Corresponds to the JSON property `pivot`
|
975
|
+
# @return [Google::Apis::AnalyticsdataV1beta::PivotOrderBy]
|
976
|
+
attr_accessor :pivot
|
977
|
+
|
978
|
+
def initialize(**args)
|
979
|
+
update!(**args)
|
980
|
+
end
|
981
|
+
|
982
|
+
# Update properties of this object
|
983
|
+
def update!(**args)
|
984
|
+
@desc = args[:desc] if args.key?(:desc)
|
985
|
+
@dimension = args[:dimension] if args.key?(:dimension)
|
986
|
+
@metric = args[:metric] if args.key?(:metric)
|
987
|
+
@pivot = args[:pivot] if args.key?(:pivot)
|
988
|
+
end
|
989
|
+
end
|
990
|
+
|
991
|
+
# Describes the visible dimension columns and rows in the report response.
|
992
|
+
class Pivot
|
993
|
+
include Google::Apis::Core::Hashable
|
994
|
+
|
995
|
+
# Dimension names for visible columns in the report response. Including "
|
996
|
+
# dateRange" produces a date range column; for each row in the response,
|
997
|
+
# dimension values in the date range column will indicate the corresponding date
|
998
|
+
# range from the request.
|
999
|
+
# Corresponds to the JSON property `fieldNames`
|
1000
|
+
# @return [Array<String>]
|
1001
|
+
attr_accessor :field_names
|
1002
|
+
|
1003
|
+
# The number of unique combinations of dimension values to return in this pivot.
|
1004
|
+
# The `limit` parameter is required. A `limit` of 10,000 is common for single
|
1005
|
+
# pivot requests. The product of the `limit` for each `pivot` in a `
|
1006
|
+
# RunPivotReportRequest` must not exceed 100,000. For example, a two pivot
|
1007
|
+
# request with `limit: 1000` in each pivot will fail because the product is `1,
|
1008
|
+
# 000,000`.
|
1009
|
+
# Corresponds to the JSON property `limit`
|
1010
|
+
# @return [Fixnum]
|
1011
|
+
attr_accessor :limit
|
1012
|
+
|
1013
|
+
# Aggregate the metrics by dimensions in this pivot using the specified
|
1014
|
+
# metric_aggregations.
|
1015
|
+
# Corresponds to the JSON property `metricAggregations`
|
1016
|
+
# @return [Array<String>]
|
1017
|
+
attr_accessor :metric_aggregations
|
1018
|
+
|
1019
|
+
# The row count of the start row. The first row is counted as row 0.
|
1020
|
+
# Corresponds to the JSON property `offset`
|
1021
|
+
# @return [Fixnum]
|
1022
|
+
attr_accessor :offset
|
1023
|
+
|
1024
|
+
# Specifies how dimensions are ordered in the pivot. In the first Pivot, the
|
1025
|
+
# OrderBys determine Row and PivotDimensionHeader ordering; in subsequent Pivots,
|
1026
|
+
# the OrderBys determine only PivotDimensionHeader ordering. Dimensions
|
1027
|
+
# specified in these OrderBys must be a subset of Pivot.field_names.
|
1028
|
+
# Corresponds to the JSON property `orderBys`
|
1029
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::OrderBy>]
|
1030
|
+
attr_accessor :order_bys
|
1031
|
+
|
1032
|
+
def initialize(**args)
|
1033
|
+
update!(**args)
|
1034
|
+
end
|
1035
|
+
|
1036
|
+
# Update properties of this object
|
1037
|
+
def update!(**args)
|
1038
|
+
@field_names = args[:field_names] if args.key?(:field_names)
|
1039
|
+
@limit = args[:limit] if args.key?(:limit)
|
1040
|
+
@metric_aggregations = args[:metric_aggregations] if args.key?(:metric_aggregations)
|
1041
|
+
@offset = args[:offset] if args.key?(:offset)
|
1042
|
+
@order_bys = args[:order_bys] if args.key?(:order_bys)
|
1043
|
+
end
|
1044
|
+
end
|
1045
|
+
|
1046
|
+
# Summarizes dimension values from a row for this pivot.
|
1047
|
+
class PivotDimensionHeader
|
1048
|
+
include Google::Apis::Core::Hashable
|
1049
|
+
|
1050
|
+
# Values of multiple dimensions in a pivot.
|
1051
|
+
# Corresponds to the JSON property `dimensionValues`
|
1052
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::DimensionValue>]
|
1053
|
+
attr_accessor :dimension_values
|
1054
|
+
|
1055
|
+
def initialize(**args)
|
1056
|
+
update!(**args)
|
1057
|
+
end
|
1058
|
+
|
1059
|
+
# Update properties of this object
|
1060
|
+
def update!(**args)
|
1061
|
+
@dimension_values = args[:dimension_values] if args.key?(:dimension_values)
|
1062
|
+
end
|
1063
|
+
end
|
1064
|
+
|
1065
|
+
# Dimensions' values in a single pivot.
|
1066
|
+
class PivotHeader
|
1067
|
+
include Google::Apis::Core::Hashable
|
1068
|
+
|
1069
|
+
# The size is the same as the cardinality of the corresponding dimension
|
1070
|
+
# combinations.
|
1071
|
+
# Corresponds to the JSON property `pivotDimensionHeaders`
|
1072
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::PivotDimensionHeader>]
|
1073
|
+
attr_accessor :pivot_dimension_headers
|
1074
|
+
|
1075
|
+
# The cardinality of the pivot. The total number of rows for this pivot's fields
|
1076
|
+
# regardless of how the parameters `offset` and `limit` are specified in the
|
1077
|
+
# request.
|
1078
|
+
# Corresponds to the JSON property `rowCount`
|
1079
|
+
# @return [Fixnum]
|
1080
|
+
attr_accessor :row_count
|
1081
|
+
|
1082
|
+
def initialize(**args)
|
1083
|
+
update!(**args)
|
1084
|
+
end
|
1085
|
+
|
1086
|
+
# Update properties of this object
|
1087
|
+
def update!(**args)
|
1088
|
+
@pivot_dimension_headers = args[:pivot_dimension_headers] if args.key?(:pivot_dimension_headers)
|
1089
|
+
@row_count = args[:row_count] if args.key?(:row_count)
|
1090
|
+
end
|
1091
|
+
end
|
1092
|
+
|
1093
|
+
# Sorts by a pivot column group.
|
1094
|
+
class PivotOrderBy
|
1095
|
+
include Google::Apis::Core::Hashable
|
1096
|
+
|
1097
|
+
# In the response to order by, order rows by this column. Must be a metric name
|
1098
|
+
# from the request.
|
1099
|
+
# Corresponds to the JSON property `metricName`
|
1100
|
+
# @return [String]
|
1101
|
+
attr_accessor :metric_name
|
1102
|
+
|
1103
|
+
# Used to select a dimension name and value pivot. If multiple pivot selections
|
1104
|
+
# are given, the sort occurs on rows where all pivot selection dimension name
|
1105
|
+
# and value pairs match the row's dimension name and value pair.
|
1106
|
+
# Corresponds to the JSON property `pivotSelections`
|
1107
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::PivotSelection>]
|
1108
|
+
attr_accessor :pivot_selections
|
1109
|
+
|
1110
|
+
def initialize(**args)
|
1111
|
+
update!(**args)
|
1112
|
+
end
|
1113
|
+
|
1114
|
+
# Update properties of this object
|
1115
|
+
def update!(**args)
|
1116
|
+
@metric_name = args[:metric_name] if args.key?(:metric_name)
|
1117
|
+
@pivot_selections = args[:pivot_selections] if args.key?(:pivot_selections)
|
1118
|
+
end
|
1119
|
+
end
|
1120
|
+
|
1121
|
+
# A pair of dimension names and values. Rows with this dimension pivot pair are
|
1122
|
+
# ordered by the metric's value. For example if pivots = ``"browser", "Chrome"``
|
1123
|
+
# and metric_name = "Sessions", then the rows will be sorted based on Sessions
|
1124
|
+
# in Chrome. ---------|----------|----------------|----------|---------------- |
|
1125
|
+
# Chrome | Chrome | Safari | Safari ---------|----------|----------------|-------
|
1126
|
+
# ---|---------------- Country | Sessions | Pages/Sessions | Sessions | Pages/
|
1127
|
+
# Sessions ---------|----------|----------------|----------|---------------- US |
|
1128
|
+
# 2 | 2 | 3 | 1 ---------|----------|----------------|----------|---------------
|
1129
|
+
# - Canada | 3 | 1 | 4 | 1 ---------|----------|----------------|----------|-----
|
1130
|
+
# -----------
|
1131
|
+
class PivotSelection
|
1132
|
+
include Google::Apis::Core::Hashable
|
1133
|
+
|
1134
|
+
# Must be a dimension name from the request.
|
1135
|
+
# Corresponds to the JSON property `dimensionName`
|
1136
|
+
# @return [String]
|
1137
|
+
attr_accessor :dimension_name
|
1138
|
+
|
1139
|
+
# Order by only when the named dimension is this value.
|
1140
|
+
# Corresponds to the JSON property `dimensionValue`
|
1141
|
+
# @return [String]
|
1142
|
+
attr_accessor :dimension_value
|
1143
|
+
|
1144
|
+
def initialize(**args)
|
1145
|
+
update!(**args)
|
1146
|
+
end
|
1147
|
+
|
1148
|
+
# Update properties of this object
|
1149
|
+
def update!(**args)
|
1150
|
+
@dimension_name = args[:dimension_name] if args.key?(:dimension_name)
|
1151
|
+
@dimension_value = args[:dimension_value] if args.key?(:dimension_value)
|
1152
|
+
end
|
1153
|
+
end
|
1154
|
+
|
1155
|
+
# Current state of all quotas for this Analytics Property. If any quota for a
|
1156
|
+
# property is exhausted, all requests to that property will return Resource
|
1157
|
+
# Exhausted errors.
|
1158
|
+
class PropertyQuota
|
1159
|
+
include Google::Apis::Core::Hashable
|
1160
|
+
|
1161
|
+
# Current state for a particular quota group.
|
1162
|
+
# Corresponds to the JSON property `concurrentRequests`
|
1163
|
+
# @return [Google::Apis::AnalyticsdataV1beta::QuotaStatus]
|
1164
|
+
attr_accessor :concurrent_requests
|
1165
|
+
|
1166
|
+
# Current state for a particular quota group.
|
1167
|
+
# Corresponds to the JSON property `potentiallyThresholdedRequestsPerHour`
|
1168
|
+
# @return [Google::Apis::AnalyticsdataV1beta::QuotaStatus]
|
1169
|
+
attr_accessor :potentially_thresholded_requests_per_hour
|
1170
|
+
|
1171
|
+
# Current state for a particular quota group.
|
1172
|
+
# Corresponds to the JSON property `serverErrorsPerProjectPerHour`
|
1173
|
+
# @return [Google::Apis::AnalyticsdataV1beta::QuotaStatus]
|
1174
|
+
attr_accessor :server_errors_per_project_per_hour
|
1175
|
+
|
1176
|
+
# Current state for a particular quota group.
|
1177
|
+
# Corresponds to the JSON property `tokensPerDay`
|
1178
|
+
# @return [Google::Apis::AnalyticsdataV1beta::QuotaStatus]
|
1179
|
+
attr_accessor :tokens_per_day
|
1180
|
+
|
1181
|
+
# Current state for a particular quota group.
|
1182
|
+
# Corresponds to the JSON property `tokensPerHour`
|
1183
|
+
# @return [Google::Apis::AnalyticsdataV1beta::QuotaStatus]
|
1184
|
+
attr_accessor :tokens_per_hour
|
1185
|
+
|
1186
|
+
def initialize(**args)
|
1187
|
+
update!(**args)
|
1188
|
+
end
|
1189
|
+
|
1190
|
+
# Update properties of this object
|
1191
|
+
def update!(**args)
|
1192
|
+
@concurrent_requests = args[:concurrent_requests] if args.key?(:concurrent_requests)
|
1193
|
+
@potentially_thresholded_requests_per_hour = args[:potentially_thresholded_requests_per_hour] if args.key?(:potentially_thresholded_requests_per_hour)
|
1194
|
+
@server_errors_per_project_per_hour = args[:server_errors_per_project_per_hour] if args.key?(:server_errors_per_project_per_hour)
|
1195
|
+
@tokens_per_day = args[:tokens_per_day] if args.key?(:tokens_per_day)
|
1196
|
+
@tokens_per_hour = args[:tokens_per_hour] if args.key?(:tokens_per_hour)
|
1197
|
+
end
|
1198
|
+
end
|
1199
|
+
|
1200
|
+
# Current state for a particular quota group.
|
1201
|
+
class QuotaStatus
|
1202
|
+
include Google::Apis::Core::Hashable
|
1203
|
+
|
1204
|
+
# Quota consumed by this request.
|
1205
|
+
# Corresponds to the JSON property `consumed`
|
1206
|
+
# @return [Fixnum]
|
1207
|
+
attr_accessor :consumed
|
1208
|
+
|
1209
|
+
# Quota remaining after this request.
|
1210
|
+
# Corresponds to the JSON property `remaining`
|
1211
|
+
# @return [Fixnum]
|
1212
|
+
attr_accessor :remaining
|
1213
|
+
|
1214
|
+
def initialize(**args)
|
1215
|
+
update!(**args)
|
1216
|
+
end
|
1217
|
+
|
1218
|
+
# Update properties of this object
|
1219
|
+
def update!(**args)
|
1220
|
+
@consumed = args[:consumed] if args.key?(:consumed)
|
1221
|
+
@remaining = args[:remaining] if args.key?(:remaining)
|
1222
|
+
end
|
1223
|
+
end
|
1224
|
+
|
1225
|
+
# Response's metadata carrying additional information about the report content.
|
1226
|
+
class ResponseMetaData
|
1227
|
+
include Google::Apis::Core::Hashable
|
1228
|
+
|
1229
|
+
# If true, indicates some buckets of dimension combinations are rolled into "(
|
1230
|
+
# other)" row. This can happen for high cardinality reports.
|
1231
|
+
# Corresponds to the JSON property `dataLossFromOtherRow`
|
1232
|
+
# @return [Boolean]
|
1233
|
+
attr_accessor :data_loss_from_other_row
|
1234
|
+
alias_method :data_loss_from_other_row?, :data_loss_from_other_row
|
1235
|
+
|
1236
|
+
def initialize(**args)
|
1237
|
+
update!(**args)
|
1238
|
+
end
|
1239
|
+
|
1240
|
+
# Update properties of this object
|
1241
|
+
def update!(**args)
|
1242
|
+
@data_loss_from_other_row = args[:data_loss_from_other_row] if args.key?(:data_loss_from_other_row)
|
1243
|
+
end
|
1244
|
+
end
|
1245
|
+
|
1246
|
+
# Report data for each row. For example if RunReportRequest contains: ```none "
|
1247
|
+
# dimensions": [ ` "name": "eventName" `, ` "name": "countryId" ` ], "metrics": [
|
1248
|
+
# ` "name": "eventCount" ` ] ``` One row with 'in_app_purchase' as the
|
1249
|
+
# eventName, 'JP' as the countryId, and 15 as the eventCount, would be: ```none "
|
1250
|
+
# dimensionValues": [ ` "value": "in_app_purchase" `, ` "value": "JP" ` ], "
|
1251
|
+
# metricValues": [ ` "value": "15" ` ] ```
|
1252
|
+
class Row
|
1253
|
+
include Google::Apis::Core::Hashable
|
1254
|
+
|
1255
|
+
# List of requested dimension values. In a PivotReport, dimension_values are
|
1256
|
+
# only listed for dimensions included in a pivot.
|
1257
|
+
# Corresponds to the JSON property `dimensionValues`
|
1258
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::DimensionValue>]
|
1259
|
+
attr_accessor :dimension_values
|
1260
|
+
|
1261
|
+
# List of requested visible metric values.
|
1262
|
+
# Corresponds to the JSON property `metricValues`
|
1263
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::MetricValue>]
|
1264
|
+
attr_accessor :metric_values
|
1265
|
+
|
1266
|
+
def initialize(**args)
|
1267
|
+
update!(**args)
|
1268
|
+
end
|
1269
|
+
|
1270
|
+
# Update properties of this object
|
1271
|
+
def update!(**args)
|
1272
|
+
@dimension_values = args[:dimension_values] if args.key?(:dimension_values)
|
1273
|
+
@metric_values = args[:metric_values] if args.key?(:metric_values)
|
1274
|
+
end
|
1275
|
+
end
|
1276
|
+
|
1277
|
+
# The request to generate a pivot report.
|
1278
|
+
class RunPivotReportRequest
|
1279
|
+
include Google::Apis::Core::Hashable
|
1280
|
+
|
1281
|
+
# The specification of cohorts for a cohort report. Cohort reports create a time
|
1282
|
+
# series of user retention for the cohort. For example, you could select the
|
1283
|
+
# cohort of users that were acquired in the first week of September and follow
|
1284
|
+
# that cohort for the next six weeks. Selecting the users acquired in the first
|
1285
|
+
# week of September cohort is specified in the `cohort` object. Following that
|
1286
|
+
# cohort for the next six weeks is specified in the `cohortsRange` object. For
|
1287
|
+
# examples, see [Cohort Report Examples](https://developers.google.com/analytics/
|
1288
|
+
# devguides/reporting/data/v1/advanced#cohort_report_examples). The report
|
1289
|
+
# response could show a weekly time series where say your app has retained 60%
|
1290
|
+
# of this cohort after three weeks and 25% of this cohort after six weeks. These
|
1291
|
+
# two percentages can be calculated by the metric `cohortActiveUsers/
|
1292
|
+
# cohortTotalUsers` and will be separate rows in the report.
|
1293
|
+
# Corresponds to the JSON property `cohortSpec`
|
1294
|
+
# @return [Google::Apis::AnalyticsdataV1beta::CohortSpec]
|
1295
|
+
attr_accessor :cohort_spec
|
1296
|
+
|
1297
|
+
# A currency code in ISO4217 format, such as "AED", "USD", "JPY". If the field
|
1298
|
+
# is empty, the report uses the property's default currency.
|
1299
|
+
# Corresponds to the JSON property `currencyCode`
|
1300
|
+
# @return [String]
|
1301
|
+
attr_accessor :currency_code
|
1302
|
+
|
1303
|
+
# The date range to retrieve event data for the report. If multiple date ranges
|
1304
|
+
# are specified, event data from each date range is used in the report. A
|
1305
|
+
# special dimension with field name "dateRange" can be included in a Pivot's
|
1306
|
+
# field names; if included, the report compares between date ranges. In a cohort
|
1307
|
+
# request, this `dateRanges` must be unspecified.
|
1308
|
+
# Corresponds to the JSON property `dateRanges`
|
1309
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::DateRange>]
|
1310
|
+
attr_accessor :date_ranges
|
1311
|
+
|
1312
|
+
# To express dimension or metric filters. The fields in the same
|
1313
|
+
# FilterExpression need to be either all dimensions or all metrics.
|
1314
|
+
# Corresponds to the JSON property `dimensionFilter`
|
1315
|
+
# @return [Google::Apis::AnalyticsdataV1beta::FilterExpression]
|
1316
|
+
attr_accessor :dimension_filter
|
1317
|
+
|
1318
|
+
# The dimensions requested. All defined dimensions must be used by one of the
|
1319
|
+
# following: dimension_expression, dimension_filter, pivots, order_bys.
|
1320
|
+
# Corresponds to the JSON property `dimensions`
|
1321
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Dimension>]
|
1322
|
+
attr_accessor :dimensions
|
1323
|
+
|
1324
|
+
# If false or unspecified, each row with all metrics equal to 0 will not be
|
1325
|
+
# returned. If true, these rows will be returned if they are not separately
|
1326
|
+
# removed by a filter.
|
1327
|
+
# Corresponds to the JSON property `keepEmptyRows`
|
1328
|
+
# @return [Boolean]
|
1329
|
+
attr_accessor :keep_empty_rows
|
1330
|
+
alias_method :keep_empty_rows?, :keep_empty_rows
|
1331
|
+
|
1332
|
+
# To express dimension or metric filters. The fields in the same
|
1333
|
+
# FilterExpression need to be either all dimensions or all metrics.
|
1334
|
+
# Corresponds to the JSON property `metricFilter`
|
1335
|
+
# @return [Google::Apis::AnalyticsdataV1beta::FilterExpression]
|
1336
|
+
attr_accessor :metric_filter
|
1337
|
+
|
1338
|
+
# The metrics requested, at least one metric needs to be specified. All defined
|
1339
|
+
# metrics must be used by one of the following: metric_expression, metric_filter,
|
1340
|
+
# order_bys.
|
1341
|
+
# Corresponds to the JSON property `metrics`
|
1342
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Metric>]
|
1343
|
+
attr_accessor :metrics
|
1344
|
+
|
1345
|
+
# Describes the visual format of the report's dimensions in columns or rows. The
|
1346
|
+
# union of the fieldNames (dimension names) in all pivots must be a subset of
|
1347
|
+
# dimension names defined in Dimensions. No two pivots can share a dimension. A
|
1348
|
+
# dimension is only visible if it appears in a pivot.
|
1349
|
+
# Corresponds to the JSON property `pivots`
|
1350
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Pivot>]
|
1351
|
+
attr_accessor :pivots
|
1352
|
+
|
1353
|
+
# A Google Analytics GA4 property identifier whose events are tracked. Specified
|
1354
|
+
# in the URL path and not the body. To learn more, see [where to find your
|
1355
|
+
# Property ID](https://developers.google.com/analytics/devguides/reporting/data/
|
1356
|
+
# v1/property-id). Within a batch request, this property should either be
|
1357
|
+
# unspecified or consistent with the batch-level property. Example: properties/
|
1358
|
+
# 1234
|
1359
|
+
# Corresponds to the JSON property `property`
|
1360
|
+
# @return [String]
|
1361
|
+
attr_accessor :property
|
1362
|
+
|
1363
|
+
# Toggles whether to return the current state of this Analytics Property's quota.
|
1364
|
+
# Quota is returned in [PropertyQuota](#PropertyQuota).
|
1365
|
+
# Corresponds to the JSON property `returnPropertyQuota`
|
1366
|
+
# @return [Boolean]
|
1367
|
+
attr_accessor :return_property_quota
|
1368
|
+
alias_method :return_property_quota?, :return_property_quota
|
1369
|
+
|
1370
|
+
def initialize(**args)
|
1371
|
+
update!(**args)
|
1372
|
+
end
|
1373
|
+
|
1374
|
+
# Update properties of this object
|
1375
|
+
def update!(**args)
|
1376
|
+
@cohort_spec = args[:cohort_spec] if args.key?(:cohort_spec)
|
1377
|
+
@currency_code = args[:currency_code] if args.key?(:currency_code)
|
1378
|
+
@date_ranges = args[:date_ranges] if args.key?(:date_ranges)
|
1379
|
+
@dimension_filter = args[:dimension_filter] if args.key?(:dimension_filter)
|
1380
|
+
@dimensions = args[:dimensions] if args.key?(:dimensions)
|
1381
|
+
@keep_empty_rows = args[:keep_empty_rows] if args.key?(:keep_empty_rows)
|
1382
|
+
@metric_filter = args[:metric_filter] if args.key?(:metric_filter)
|
1383
|
+
@metrics = args[:metrics] if args.key?(:metrics)
|
1384
|
+
@pivots = args[:pivots] if args.key?(:pivots)
|
1385
|
+
@property = args[:property] if args.key?(:property)
|
1386
|
+
@return_property_quota = args[:return_property_quota] if args.key?(:return_property_quota)
|
1387
|
+
end
|
1388
|
+
end
|
1389
|
+
|
1390
|
+
# The response pivot report table corresponding to a pivot request.
|
1391
|
+
class RunPivotReportResponse
|
1392
|
+
include Google::Apis::Core::Hashable
|
1393
|
+
|
1394
|
+
# Aggregation of metric values. Can be totals, minimums, or maximums. The
|
1395
|
+
# returned aggregations are controlled by the metric_aggregations in the pivot.
|
1396
|
+
# The type of aggregation returned in each row is shown by the dimension_values
|
1397
|
+
# which are set to "RESERVED_".
|
1398
|
+
# Corresponds to the JSON property `aggregates`
|
1399
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Row>]
|
1400
|
+
attr_accessor :aggregates
|
1401
|
+
|
1402
|
+
# Describes dimension columns. The number of DimensionHeaders and ordering of
|
1403
|
+
# DimensionHeaders matches the dimensions present in rows.
|
1404
|
+
# Corresponds to the JSON property `dimensionHeaders`
|
1405
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::DimensionHeader>]
|
1406
|
+
attr_accessor :dimension_headers
|
1407
|
+
|
1408
|
+
# Identifies what kind of resource this message is. This `kind` is always the
|
1409
|
+
# fixed string "analyticsData#runPivotReport". Useful to distinguish between
|
1410
|
+
# response types in JSON.
|
1411
|
+
# Corresponds to the JSON property `kind`
|
1412
|
+
# @return [String]
|
1413
|
+
attr_accessor :kind
|
1414
|
+
|
1415
|
+
# Response's metadata carrying additional information about the report content.
|
1416
|
+
# Corresponds to the JSON property `metadata`
|
1417
|
+
# @return [Google::Apis::AnalyticsdataV1beta::ResponseMetaData]
|
1418
|
+
attr_accessor :metadata
|
1419
|
+
|
1420
|
+
# Describes metric columns. The number of MetricHeaders and ordering of
|
1421
|
+
# MetricHeaders matches the metrics present in rows.
|
1422
|
+
# Corresponds to the JSON property `metricHeaders`
|
1423
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::MetricHeader>]
|
1424
|
+
attr_accessor :metric_headers
|
1425
|
+
|
1426
|
+
# Summarizes the columns and rows created by a pivot. Each pivot in the request
|
1427
|
+
# produces one header in the response. If we have a request like this: "pivots":
|
1428
|
+
# [` "fieldNames": ["country", "city"] `, ` "fieldNames": "eventName" `] We will
|
1429
|
+
# have the following `pivotHeaders` in the response: "pivotHeaders" : [` "
|
1430
|
+
# dimensionHeaders": [` "dimensionValues": [ ` "value": "United Kingdom" `, ` "
|
1431
|
+
# value": "London" ` ] `, ` "dimensionValues": [ ` "value": "Japan" `, ` "value":
|
1432
|
+
# "Osaka" ` ] `] `, ` "dimensionHeaders": [` "dimensionValues": [` "value": "
|
1433
|
+
# session_start" `] `, ` "dimensionValues": [` "value": "scroll" `] `] `]
|
1434
|
+
# Corresponds to the JSON property `pivotHeaders`
|
1435
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::PivotHeader>]
|
1436
|
+
attr_accessor :pivot_headers
|
1437
|
+
|
1438
|
+
# Current state of all quotas for this Analytics Property. If any quota for a
|
1439
|
+
# property is exhausted, all requests to that property will return Resource
|
1440
|
+
# Exhausted errors.
|
1441
|
+
# Corresponds to the JSON property `propertyQuota`
|
1442
|
+
# @return [Google::Apis::AnalyticsdataV1beta::PropertyQuota]
|
1443
|
+
attr_accessor :property_quota
|
1444
|
+
|
1445
|
+
# Rows of dimension value combinations and metric values in the report.
|
1446
|
+
# Corresponds to the JSON property `rows`
|
1447
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Row>]
|
1448
|
+
attr_accessor :rows
|
1449
|
+
|
1450
|
+
def initialize(**args)
|
1451
|
+
update!(**args)
|
1452
|
+
end
|
1453
|
+
|
1454
|
+
# Update properties of this object
|
1455
|
+
def update!(**args)
|
1456
|
+
@aggregates = args[:aggregates] if args.key?(:aggregates)
|
1457
|
+
@dimension_headers = args[:dimension_headers] if args.key?(:dimension_headers)
|
1458
|
+
@kind = args[:kind] if args.key?(:kind)
|
1459
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
1460
|
+
@metric_headers = args[:metric_headers] if args.key?(:metric_headers)
|
1461
|
+
@pivot_headers = args[:pivot_headers] if args.key?(:pivot_headers)
|
1462
|
+
@property_quota = args[:property_quota] if args.key?(:property_quota)
|
1463
|
+
@rows = args[:rows] if args.key?(:rows)
|
1464
|
+
end
|
1465
|
+
end
|
1466
|
+
|
1467
|
+
# The request to generate a realtime report.
|
1468
|
+
class RunRealtimeReportRequest
|
1469
|
+
include Google::Apis::Core::Hashable
|
1470
|
+
|
1471
|
+
# To express dimension or metric filters. The fields in the same
|
1472
|
+
# FilterExpression need to be either all dimensions or all metrics.
|
1473
|
+
# Corresponds to the JSON property `dimensionFilter`
|
1474
|
+
# @return [Google::Apis::AnalyticsdataV1beta::FilterExpression]
|
1475
|
+
attr_accessor :dimension_filter
|
1476
|
+
|
1477
|
+
# The dimensions requested and displayed.
|
1478
|
+
# Corresponds to the JSON property `dimensions`
|
1479
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Dimension>]
|
1480
|
+
attr_accessor :dimensions
|
1481
|
+
|
1482
|
+
# The number of rows to return. If unspecified, 10,000 rows are returned. The
|
1483
|
+
# API returns a maximum of 100,000 rows per request, no matter how many you ask
|
1484
|
+
# for. `limit` must be positive. The API can also return fewer rows than the
|
1485
|
+
# requested `limit`, if there aren't as many dimension values as the `limit`.
|
1486
|
+
# For instance, there are fewer than 300 possible values for the dimension `
|
1487
|
+
# country`, so when reporting on only `country`, you can't get more than 300
|
1488
|
+
# rows, even if you set `limit` to a higher value.
|
1489
|
+
# Corresponds to the JSON property `limit`
|
1490
|
+
# @return [Fixnum]
|
1491
|
+
attr_accessor :limit
|
1492
|
+
|
1493
|
+
# Aggregation of metrics. Aggregated metric values will be shown in rows where
|
1494
|
+
# the dimension_values are set to "RESERVED_(MetricAggregation)".
|
1495
|
+
# Corresponds to the JSON property `metricAggregations`
|
1496
|
+
# @return [Array<String>]
|
1497
|
+
attr_accessor :metric_aggregations
|
1498
|
+
|
1499
|
+
# To express dimension or metric filters. The fields in the same
|
1500
|
+
# FilterExpression need to be either all dimensions or all metrics.
|
1501
|
+
# Corresponds to the JSON property `metricFilter`
|
1502
|
+
# @return [Google::Apis::AnalyticsdataV1beta::FilterExpression]
|
1503
|
+
attr_accessor :metric_filter
|
1504
|
+
|
1505
|
+
# The metrics requested and displayed.
|
1506
|
+
# Corresponds to the JSON property `metrics`
|
1507
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Metric>]
|
1508
|
+
attr_accessor :metrics
|
1509
|
+
|
1510
|
+
# Specifies how rows are ordered in the response.
|
1511
|
+
# Corresponds to the JSON property `orderBys`
|
1512
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::OrderBy>]
|
1513
|
+
attr_accessor :order_bys
|
1514
|
+
|
1515
|
+
# Toggles whether to return the current state of this Analytics Property's
|
1516
|
+
# Realtime quota. Quota is returned in [PropertyQuota](#PropertyQuota).
|
1517
|
+
# Corresponds to the JSON property `returnPropertyQuota`
|
1518
|
+
# @return [Boolean]
|
1519
|
+
attr_accessor :return_property_quota
|
1520
|
+
alias_method :return_property_quota?, :return_property_quota
|
1521
|
+
|
1522
|
+
def initialize(**args)
|
1523
|
+
update!(**args)
|
1524
|
+
end
|
1525
|
+
|
1526
|
+
# Update properties of this object
|
1527
|
+
def update!(**args)
|
1528
|
+
@dimension_filter = args[:dimension_filter] if args.key?(:dimension_filter)
|
1529
|
+
@dimensions = args[:dimensions] if args.key?(:dimensions)
|
1530
|
+
@limit = args[:limit] if args.key?(:limit)
|
1531
|
+
@metric_aggregations = args[:metric_aggregations] if args.key?(:metric_aggregations)
|
1532
|
+
@metric_filter = args[:metric_filter] if args.key?(:metric_filter)
|
1533
|
+
@metrics = args[:metrics] if args.key?(:metrics)
|
1534
|
+
@order_bys = args[:order_bys] if args.key?(:order_bys)
|
1535
|
+
@return_property_quota = args[:return_property_quota] if args.key?(:return_property_quota)
|
1536
|
+
end
|
1537
|
+
end
|
1538
|
+
|
1539
|
+
# The response realtime report table corresponding to a request.
|
1540
|
+
class RunRealtimeReportResponse
|
1541
|
+
include Google::Apis::Core::Hashable
|
1542
|
+
|
1543
|
+
# Describes dimension columns. The number of DimensionHeaders and ordering of
|
1544
|
+
# DimensionHeaders matches the dimensions present in rows.
|
1545
|
+
# Corresponds to the JSON property `dimensionHeaders`
|
1546
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::DimensionHeader>]
|
1547
|
+
attr_accessor :dimension_headers
|
1548
|
+
|
1549
|
+
# Identifies what kind of resource this message is. This `kind` is always the
|
1550
|
+
# fixed string "analyticsData#runRealtimeReport". Useful to distinguish between
|
1551
|
+
# response types in JSON.
|
1552
|
+
# Corresponds to the JSON property `kind`
|
1553
|
+
# @return [String]
|
1554
|
+
attr_accessor :kind
|
1555
|
+
|
1556
|
+
# If requested, the maximum values of metrics.
|
1557
|
+
# Corresponds to the JSON property `maximums`
|
1558
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Row>]
|
1559
|
+
attr_accessor :maximums
|
1560
|
+
|
1561
|
+
# Describes metric columns. The number of MetricHeaders and ordering of
|
1562
|
+
# MetricHeaders matches the metrics present in rows.
|
1563
|
+
# Corresponds to the JSON property `metricHeaders`
|
1564
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::MetricHeader>]
|
1565
|
+
attr_accessor :metric_headers
|
1566
|
+
|
1567
|
+
# If requested, the minimum values of metrics.
|
1568
|
+
# Corresponds to the JSON property `minimums`
|
1569
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Row>]
|
1570
|
+
attr_accessor :minimums
|
1571
|
+
|
1572
|
+
# Current state of all quotas for this Analytics Property. If any quota for a
|
1573
|
+
# property is exhausted, all requests to that property will return Resource
|
1574
|
+
# Exhausted errors.
|
1575
|
+
# Corresponds to the JSON property `propertyQuota`
|
1576
|
+
# @return [Google::Apis::AnalyticsdataV1beta::PropertyQuota]
|
1577
|
+
attr_accessor :property_quota
|
1578
|
+
|
1579
|
+
# The total number of rows in the query result. `rowCount` is independent of the
|
1580
|
+
# number of rows returned in the response and the `limit` request parameter. For
|
1581
|
+
# example if a query returns 175 rows and includes `limit` of 50 in the API
|
1582
|
+
# request, the response will contain `rowCount` of 175 but only 50 rows.
|
1583
|
+
# Corresponds to the JSON property `rowCount`
|
1584
|
+
# @return [Fixnum]
|
1585
|
+
attr_accessor :row_count
|
1586
|
+
|
1587
|
+
# Rows of dimension value combinations and metric values in the report.
|
1588
|
+
# Corresponds to the JSON property `rows`
|
1589
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Row>]
|
1590
|
+
attr_accessor :rows
|
1591
|
+
|
1592
|
+
# If requested, the totaled values of metrics.
|
1593
|
+
# Corresponds to the JSON property `totals`
|
1594
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Row>]
|
1595
|
+
attr_accessor :totals
|
1596
|
+
|
1597
|
+
def initialize(**args)
|
1598
|
+
update!(**args)
|
1599
|
+
end
|
1600
|
+
|
1601
|
+
# Update properties of this object
|
1602
|
+
def update!(**args)
|
1603
|
+
@dimension_headers = args[:dimension_headers] if args.key?(:dimension_headers)
|
1604
|
+
@kind = args[:kind] if args.key?(:kind)
|
1605
|
+
@maximums = args[:maximums] if args.key?(:maximums)
|
1606
|
+
@metric_headers = args[:metric_headers] if args.key?(:metric_headers)
|
1607
|
+
@minimums = args[:minimums] if args.key?(:minimums)
|
1608
|
+
@property_quota = args[:property_quota] if args.key?(:property_quota)
|
1609
|
+
@row_count = args[:row_count] if args.key?(:row_count)
|
1610
|
+
@rows = args[:rows] if args.key?(:rows)
|
1611
|
+
@totals = args[:totals] if args.key?(:totals)
|
1612
|
+
end
|
1613
|
+
end
|
1614
|
+
|
1615
|
+
# The request to generate a report.
|
1616
|
+
class RunReportRequest
|
1617
|
+
include Google::Apis::Core::Hashable
|
1618
|
+
|
1619
|
+
# The specification of cohorts for a cohort report. Cohort reports create a time
|
1620
|
+
# series of user retention for the cohort. For example, you could select the
|
1621
|
+
# cohort of users that were acquired in the first week of September and follow
|
1622
|
+
# that cohort for the next six weeks. Selecting the users acquired in the first
|
1623
|
+
# week of September cohort is specified in the `cohort` object. Following that
|
1624
|
+
# cohort for the next six weeks is specified in the `cohortsRange` object. For
|
1625
|
+
# examples, see [Cohort Report Examples](https://developers.google.com/analytics/
|
1626
|
+
# devguides/reporting/data/v1/advanced#cohort_report_examples). The report
|
1627
|
+
# response could show a weekly time series where say your app has retained 60%
|
1628
|
+
# of this cohort after three weeks and 25% of this cohort after six weeks. These
|
1629
|
+
# two percentages can be calculated by the metric `cohortActiveUsers/
|
1630
|
+
# cohortTotalUsers` and will be separate rows in the report.
|
1631
|
+
# Corresponds to the JSON property `cohortSpec`
|
1632
|
+
# @return [Google::Apis::AnalyticsdataV1beta::CohortSpec]
|
1633
|
+
attr_accessor :cohort_spec
|
1634
|
+
|
1635
|
+
# A currency code in ISO4217 format, such as "AED", "USD", "JPY". If the field
|
1636
|
+
# is empty, the report uses the property's default currency.
|
1637
|
+
# Corresponds to the JSON property `currencyCode`
|
1638
|
+
# @return [String]
|
1639
|
+
attr_accessor :currency_code
|
1640
|
+
|
1641
|
+
# Date ranges of data to read. If multiple date ranges are requested, each
|
1642
|
+
# response row will contain a zero based date range index. If two date ranges
|
1643
|
+
# overlap, the event data for the overlapping days is included in the response
|
1644
|
+
# rows for both date ranges. In a cohort request, this `dateRanges` must be
|
1645
|
+
# unspecified.
|
1646
|
+
# Corresponds to the JSON property `dateRanges`
|
1647
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::DateRange>]
|
1648
|
+
attr_accessor :date_ranges
|
1649
|
+
|
1650
|
+
# To express dimension or metric filters. The fields in the same
|
1651
|
+
# FilterExpression need to be either all dimensions or all metrics.
|
1652
|
+
# Corresponds to the JSON property `dimensionFilter`
|
1653
|
+
# @return [Google::Apis::AnalyticsdataV1beta::FilterExpression]
|
1654
|
+
attr_accessor :dimension_filter
|
1655
|
+
|
1656
|
+
# The dimensions requested and displayed.
|
1657
|
+
# Corresponds to the JSON property `dimensions`
|
1658
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Dimension>]
|
1659
|
+
attr_accessor :dimensions
|
1660
|
+
|
1661
|
+
# If false or unspecified, each row with all metrics equal to 0 will not be
|
1662
|
+
# returned. If true, these rows will be returned if they are not separately
|
1663
|
+
# removed by a filter.
|
1664
|
+
# Corresponds to the JSON property `keepEmptyRows`
|
1665
|
+
# @return [Boolean]
|
1666
|
+
attr_accessor :keep_empty_rows
|
1667
|
+
alias_method :keep_empty_rows?, :keep_empty_rows
|
1668
|
+
|
1669
|
+
# The number of rows to return. If unspecified, 10,000 rows are returned. The
|
1670
|
+
# API returns a maximum of 100,000 rows per request, no matter how many you ask
|
1671
|
+
# for. `limit` must be positive. The API can also return fewer rows than the
|
1672
|
+
# requested `limit`, if there aren't as many dimension values as the `limit`.
|
1673
|
+
# For instance, there are fewer than 300 possible values for the dimension `
|
1674
|
+
# country`, so when reporting on only `country`, you can't get more than 300
|
1675
|
+
# rows, even if you set `limit` to a higher value. To learn more about this
|
1676
|
+
# pagination parameter, see [Pagination](https://developers.google.com/analytics/
|
1677
|
+
# devguides/reporting/data/v1/basics#pagination).
|
1678
|
+
# Corresponds to the JSON property `limit`
|
1679
|
+
# @return [Fixnum]
|
1680
|
+
attr_accessor :limit
|
1681
|
+
|
1682
|
+
# Aggregation of metrics. Aggregated metric values will be shown in rows where
|
1683
|
+
# the dimension_values are set to "RESERVED_(MetricAggregation)".
|
1684
|
+
# Corresponds to the JSON property `metricAggregations`
|
1685
|
+
# @return [Array<String>]
|
1686
|
+
attr_accessor :metric_aggregations
|
1687
|
+
|
1688
|
+
# To express dimension or metric filters. The fields in the same
|
1689
|
+
# FilterExpression need to be either all dimensions or all metrics.
|
1690
|
+
# Corresponds to the JSON property `metricFilter`
|
1691
|
+
# @return [Google::Apis::AnalyticsdataV1beta::FilterExpression]
|
1692
|
+
attr_accessor :metric_filter
|
1693
|
+
|
1694
|
+
# The metrics requested and displayed.
|
1695
|
+
# Corresponds to the JSON property `metrics`
|
1696
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Metric>]
|
1697
|
+
attr_accessor :metrics
|
1698
|
+
|
1699
|
+
# The row count of the start row. The first row is counted as row 0. When paging,
|
1700
|
+
# the first request does not specify offset; or equivalently, sets offset to 0;
|
1701
|
+
# the first request returns the first `limit` of rows. The second request sets
|
1702
|
+
# offset to the `limit` of the first request; the second request returns the
|
1703
|
+
# second `limit` of rows. To learn more about this pagination parameter, see [
|
1704
|
+
# Pagination](https://developers.google.com/analytics/devguides/reporting/data/
|
1705
|
+
# v1/basics#pagination).
|
1706
|
+
# Corresponds to the JSON property `offset`
|
1707
|
+
# @return [Fixnum]
|
1708
|
+
attr_accessor :offset
|
1709
|
+
|
1710
|
+
# Specifies how rows are ordered in the response.
|
1711
|
+
# Corresponds to the JSON property `orderBys`
|
1712
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::OrderBy>]
|
1713
|
+
attr_accessor :order_bys
|
1714
|
+
|
1715
|
+
# A Google Analytics GA4 property identifier whose events are tracked. Specified
|
1716
|
+
# in the URL path and not the body. To learn more, see [where to find your
|
1717
|
+
# Property ID](https://developers.google.com/analytics/devguides/reporting/data/
|
1718
|
+
# v1/property-id). Within a batch request, this property should either be
|
1719
|
+
# unspecified or consistent with the batch-level property. Example: properties/
|
1720
|
+
# 1234
|
1721
|
+
# Corresponds to the JSON property `property`
|
1722
|
+
# @return [String]
|
1723
|
+
attr_accessor :property
|
1724
|
+
|
1725
|
+
# Toggles whether to return the current state of this Analytics Property's quota.
|
1726
|
+
# Quota is returned in [PropertyQuota](#PropertyQuota).
|
1727
|
+
# Corresponds to the JSON property `returnPropertyQuota`
|
1728
|
+
# @return [Boolean]
|
1729
|
+
attr_accessor :return_property_quota
|
1730
|
+
alias_method :return_property_quota?, :return_property_quota
|
1731
|
+
|
1732
|
+
def initialize(**args)
|
1733
|
+
update!(**args)
|
1734
|
+
end
|
1735
|
+
|
1736
|
+
# Update properties of this object
|
1737
|
+
def update!(**args)
|
1738
|
+
@cohort_spec = args[:cohort_spec] if args.key?(:cohort_spec)
|
1739
|
+
@currency_code = args[:currency_code] if args.key?(:currency_code)
|
1740
|
+
@date_ranges = args[:date_ranges] if args.key?(:date_ranges)
|
1741
|
+
@dimension_filter = args[:dimension_filter] if args.key?(:dimension_filter)
|
1742
|
+
@dimensions = args[:dimensions] if args.key?(:dimensions)
|
1743
|
+
@keep_empty_rows = args[:keep_empty_rows] if args.key?(:keep_empty_rows)
|
1744
|
+
@limit = args[:limit] if args.key?(:limit)
|
1745
|
+
@metric_aggregations = args[:metric_aggregations] if args.key?(:metric_aggregations)
|
1746
|
+
@metric_filter = args[:metric_filter] if args.key?(:metric_filter)
|
1747
|
+
@metrics = args[:metrics] if args.key?(:metrics)
|
1748
|
+
@offset = args[:offset] if args.key?(:offset)
|
1749
|
+
@order_bys = args[:order_bys] if args.key?(:order_bys)
|
1750
|
+
@property = args[:property] if args.key?(:property)
|
1751
|
+
@return_property_quota = args[:return_property_quota] if args.key?(:return_property_quota)
|
1752
|
+
end
|
1753
|
+
end
|
1754
|
+
|
1755
|
+
# The response report table corresponding to a request.
|
1756
|
+
class RunReportResponse
|
1757
|
+
include Google::Apis::Core::Hashable
|
1758
|
+
|
1759
|
+
# Describes dimension columns. The number of DimensionHeaders and ordering of
|
1760
|
+
# DimensionHeaders matches the dimensions present in rows.
|
1761
|
+
# Corresponds to the JSON property `dimensionHeaders`
|
1762
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::DimensionHeader>]
|
1763
|
+
attr_accessor :dimension_headers
|
1764
|
+
|
1765
|
+
# Identifies what kind of resource this message is. This `kind` is always the
|
1766
|
+
# fixed string "analyticsData#runReport". Useful to distinguish between response
|
1767
|
+
# types in JSON.
|
1768
|
+
# Corresponds to the JSON property `kind`
|
1769
|
+
# @return [String]
|
1770
|
+
attr_accessor :kind
|
1771
|
+
|
1772
|
+
# If requested, the maximum values of metrics.
|
1773
|
+
# Corresponds to the JSON property `maximums`
|
1774
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Row>]
|
1775
|
+
attr_accessor :maximums
|
1776
|
+
|
1777
|
+
# Response's metadata carrying additional information about the report content.
|
1778
|
+
# Corresponds to the JSON property `metadata`
|
1779
|
+
# @return [Google::Apis::AnalyticsdataV1beta::ResponseMetaData]
|
1780
|
+
attr_accessor :metadata
|
1781
|
+
|
1782
|
+
# Describes metric columns. The number of MetricHeaders and ordering of
|
1783
|
+
# MetricHeaders matches the metrics present in rows.
|
1784
|
+
# Corresponds to the JSON property `metricHeaders`
|
1785
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::MetricHeader>]
|
1786
|
+
attr_accessor :metric_headers
|
1787
|
+
|
1788
|
+
# If requested, the minimum values of metrics.
|
1789
|
+
# Corresponds to the JSON property `minimums`
|
1790
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Row>]
|
1791
|
+
attr_accessor :minimums
|
1792
|
+
|
1793
|
+
# Current state of all quotas for this Analytics Property. If any quota for a
|
1794
|
+
# property is exhausted, all requests to that property will return Resource
|
1795
|
+
# Exhausted errors.
|
1796
|
+
# Corresponds to the JSON property `propertyQuota`
|
1797
|
+
# @return [Google::Apis::AnalyticsdataV1beta::PropertyQuota]
|
1798
|
+
attr_accessor :property_quota
|
1799
|
+
|
1800
|
+
# The total number of rows in the query result. `rowCount` is independent of the
|
1801
|
+
# number of rows returned in the response, the `limit` request parameter, and
|
1802
|
+
# the `offset` request parameter. For example if a query returns 175 rows and
|
1803
|
+
# includes `limit` of 50 in the API request, the response will contain `rowCount`
|
1804
|
+
# of 175 but only 50 rows. To learn more about this pagination parameter, see [
|
1805
|
+
# Pagination](https://developers.google.com/analytics/devguides/reporting/data/
|
1806
|
+
# v1/basics#pagination).
|
1807
|
+
# Corresponds to the JSON property `rowCount`
|
1808
|
+
# @return [Fixnum]
|
1809
|
+
attr_accessor :row_count
|
1810
|
+
|
1811
|
+
# Rows of dimension value combinations and metric values in the report.
|
1812
|
+
# Corresponds to the JSON property `rows`
|
1813
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Row>]
|
1814
|
+
attr_accessor :rows
|
1815
|
+
|
1816
|
+
# If requested, the totaled values of metrics.
|
1817
|
+
# Corresponds to the JSON property `totals`
|
1818
|
+
# @return [Array<Google::Apis::AnalyticsdataV1beta::Row>]
|
1819
|
+
attr_accessor :totals
|
1820
|
+
|
1821
|
+
def initialize(**args)
|
1822
|
+
update!(**args)
|
1823
|
+
end
|
1824
|
+
|
1825
|
+
# Update properties of this object
|
1826
|
+
def update!(**args)
|
1827
|
+
@dimension_headers = args[:dimension_headers] if args.key?(:dimension_headers)
|
1828
|
+
@kind = args[:kind] if args.key?(:kind)
|
1829
|
+
@maximums = args[:maximums] if args.key?(:maximums)
|
1830
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
1831
|
+
@metric_headers = args[:metric_headers] if args.key?(:metric_headers)
|
1832
|
+
@minimums = args[:minimums] if args.key?(:minimums)
|
1833
|
+
@property_quota = args[:property_quota] if args.key?(:property_quota)
|
1834
|
+
@row_count = args[:row_count] if args.key?(:row_count)
|
1835
|
+
@rows = args[:rows] if args.key?(:rows)
|
1836
|
+
@totals = args[:totals] if args.key?(:totals)
|
1837
|
+
end
|
1838
|
+
end
|
1839
|
+
|
1840
|
+
# The filter for string
|
1841
|
+
class StringFilter
|
1842
|
+
include Google::Apis::Core::Hashable
|
1843
|
+
|
1844
|
+
# If true, the string value is case sensitive.
|
1845
|
+
# Corresponds to the JSON property `caseSensitive`
|
1846
|
+
# @return [Boolean]
|
1847
|
+
attr_accessor :case_sensitive
|
1848
|
+
alias_method :case_sensitive?, :case_sensitive
|
1849
|
+
|
1850
|
+
# The match type for this filter.
|
1851
|
+
# Corresponds to the JSON property `matchType`
|
1852
|
+
# @return [String]
|
1853
|
+
attr_accessor :match_type
|
1854
|
+
|
1855
|
+
# The string value used for the matching.
|
1856
|
+
# Corresponds to the JSON property `value`
|
1857
|
+
# @return [String]
|
1858
|
+
attr_accessor :value
|
1859
|
+
|
1860
|
+
def initialize(**args)
|
1861
|
+
update!(**args)
|
1862
|
+
end
|
1863
|
+
|
1864
|
+
# Update properties of this object
|
1865
|
+
def update!(**args)
|
1866
|
+
@case_sensitive = args[:case_sensitive] if args.key?(:case_sensitive)
|
1867
|
+
@match_type = args[:match_type] if args.key?(:match_type)
|
1868
|
+
@value = args[:value] if args.key?(:value)
|
1869
|
+
end
|
1870
|
+
end
|
1871
|
+
end
|
1872
|
+
end
|
1873
|
+
end
|