google-apis-analyticsadmin_v1alpha 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 163c0faf1da5c5147dfb5e1f0d5ecf622dfdedf5c19e0aa3c3e348e41246678a
4
+ data.tar.gz: c6fee2464a945e4bbae84330ce3c7cbbac08f30d40b1ace0b1d885c716a12726
5
+ SHA512:
6
+ metadata.gz: 746fcd9bb2e590489b0d3dd1a8cdc706d54f2fee955e5ac704520aa7ffa9b226312aa02373f04e2bd18f7d5114b31e81fe722b08e404384b3dbc372c542a7a9a
7
+ data.tar.gz: 1293faedcf825f4a8c66dca055afab81a04ae1d5df1b2cfb6f570d0b12b38853260475bde793e77e98414390820385fa9485d3884122d06c55c96c44b889d08c
@@ -0,0 +1,13 @@
1
+ --hide-void-return
2
+ --no-private
3
+ --verbose
4
+ --title=google-apis-analyticsadmin_v1alpha
5
+ --markup-provider=redcarpet
6
+ --markup=markdown
7
+ --main OVERVIEW.md
8
+ lib/google/apis/analyticsadmin_v1alpha/*.rb
9
+ lib/google/apis/analyticsadmin_v1alpha.rb
10
+ -
11
+ OVERVIEW.md
12
+ CHANGELOG.md
13
+ LICENSE.md
@@ -0,0 +1,7 @@
1
+ # Release history for google-apis-analyticsadmin_v1alpha
2
+
3
+ ### v0.1.0 (2021-01-07)
4
+
5
+ * Regenerated from discovery document revision 20210106
6
+ * Regenerated using generator version 0.1.1
7
+
@@ -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.
@@ -0,0 +1,96 @@
1
+ # Simple REST client for version V1alpha of the Google Analytics Admin API
2
+
3
+ This is a simple client library for version V1alpha of the Google Analytics Admin 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/analyticsadmin.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-analyticsadmin_v1alpha', '~> 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-analyticsadmin_v1alpha
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/analyticsadmin_v1alpha"
49
+
50
+ # Create a client object
51
+ client = Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminService.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 Analyticsadmin service in particular.)
67
+
68
+ For reference information on specific calls in the Google Analytics Admin API, see the {Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminService 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-analyticsadmin_v1alpha`, 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](http://code.google.com/apis/analytics/docs/mgmt/home.html) 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/analyticsadmin_v1alpha"
@@ -0,0 +1,45 @@
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/analyticsadmin_v1alpha/service.rb'
16
+ require 'google/apis/analyticsadmin_v1alpha/classes.rb'
17
+ require 'google/apis/analyticsadmin_v1alpha/representations.rb'
18
+ require 'google/apis/analyticsadmin_v1alpha/gem_version.rb'
19
+
20
+ module Google
21
+ module Apis
22
+ # Google Analytics Admin API
23
+ #
24
+ #
25
+ #
26
+ # @see http://code.google.com/apis/analytics/docs/mgmt/home.html
27
+ module AnalyticsadminV1alpha
28
+ # Version of the Google Analytics Admin API this client connects to.
29
+ # This is NOT the gem version.
30
+ VERSION = 'V1alpha'
31
+
32
+ # Edit Google Analytics management entities
33
+ AUTH_ANALYTICS_EDIT = 'https://www.googleapis.com/auth/analytics.edit'
34
+
35
+ # Manage Google Analytics Account users by email address
36
+ AUTH_ANALYTICS_MANAGE_USERS = 'https://www.googleapis.com/auth/analytics.manage.users'
37
+
38
+ # View Google Analytics user permissions
39
+ AUTH_ANALYTICS_MANAGE_USERS_READONLY = 'https://www.googleapis.com/auth/analytics.manage.users.readonly'
40
+
41
+ # See and download your Google Analytics data
42
+ AUTH_ANALYTICS_READONLY = 'https://www.googleapis.com/auth/analytics.readonly'
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,1370 @@
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 AnalyticsadminV1alpha
24
+
25
+ # A resource message representing a Google Analytics account.
26
+ class GoogleAnalyticsAdminV1alphaAccount
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Country of business. Must be a non-deprecated code for a UN M.49 region. https:
30
+ # //unicode.org/cldr/charts/latest/supplemental/territory_containment_un_m_49.
31
+ # html
32
+ # Corresponds to the JSON property `countryCode`
33
+ # @return [String]
34
+ attr_accessor :country_code
35
+
36
+ # Output only. Time when this account was originally created.
37
+ # Corresponds to the JSON property `createTime`
38
+ # @return [String]
39
+ attr_accessor :create_time
40
+
41
+ # Output only. Indicates whether this Account is soft-deleted or not. Deleted
42
+ # accounts are excluded from List results unless specifically requested.
43
+ # Corresponds to the JSON property `deleted`
44
+ # @return [Boolean]
45
+ attr_accessor :deleted
46
+ alias_method :deleted?, :deleted
47
+
48
+ # Required. Human-readable display name for this account.
49
+ # Corresponds to the JSON property `displayName`
50
+ # @return [String]
51
+ attr_accessor :display_name
52
+
53
+ # Output only. Resource name of this account. Format: accounts/`account` Example:
54
+ # "accounts/100"
55
+ # Corresponds to the JSON property `name`
56
+ # @return [String]
57
+ attr_accessor :name
58
+
59
+ # Output only. Time when account payload fields were last updated.
60
+ # Corresponds to the JSON property `updateTime`
61
+ # @return [String]
62
+ attr_accessor :update_time
63
+
64
+ def initialize(**args)
65
+ update!(**args)
66
+ end
67
+
68
+ # Update properties of this object
69
+ def update!(**args)
70
+ @country_code = args[:country_code] if args.key?(:country_code)
71
+ @create_time = args[:create_time] if args.key?(:create_time)
72
+ @deleted = args[:deleted] if args.key?(:deleted)
73
+ @display_name = args[:display_name] if args.key?(:display_name)
74
+ @name = args[:name] if args.key?(:name)
75
+ @update_time = args[:update_time] if args.key?(:update_time)
76
+ end
77
+ end
78
+
79
+ # A virtual resource representing an overview of an account and all its child
80
+ # GA4 properties.
81
+ class GoogleAnalyticsAdminV1alphaAccountSummary
82
+ include Google::Apis::Core::Hashable
83
+
84
+ # Resource name of account referred to by this account summary Format: accounts/`
85
+ # account_id` Example: "accounts/1000"
86
+ # Corresponds to the JSON property `account`
87
+ # @return [String]
88
+ attr_accessor :account
89
+
90
+ # Display name for the account referred to in this account summary.
91
+ # Corresponds to the JSON property `displayName`
92
+ # @return [String]
93
+ attr_accessor :display_name
94
+
95
+ # Resource name for this account summary. Format: accountSummaries/`account_id`
96
+ # Example: "accountSummaries/1000"
97
+ # Corresponds to the JSON property `name`
98
+ # @return [String]
99
+ attr_accessor :name
100
+
101
+ # List of summaries for child accounts of this account.
102
+ # Corresponds to the JSON property `propertySummaries`
103
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaPropertySummary>]
104
+ attr_accessor :property_summaries
105
+
106
+ def initialize(**args)
107
+ update!(**args)
108
+ end
109
+
110
+ # Update properties of this object
111
+ def update!(**args)
112
+ @account = args[:account] if args.key?(:account)
113
+ @display_name = args[:display_name] if args.key?(:display_name)
114
+ @name = args[:name] if args.key?(:name)
115
+ @property_summaries = args[:property_summaries] if args.key?(:property_summaries)
116
+ end
117
+ end
118
+
119
+ # A resource message representing a Google Analytics Android app stream.
120
+ class GoogleAnalyticsAdminV1alphaAndroidAppDataStream
121
+ include Google::Apis::Core::Hashable
122
+
123
+ # Output only. Time when this stream was originally created.
124
+ # Corresponds to the JSON property `createTime`
125
+ # @return [String]
126
+ attr_accessor :create_time
127
+
128
+ # Human-readable display name for the Data Stream. The max allowed display name
129
+ # length is 255 UTF-16 code units.
130
+ # Corresponds to the JSON property `displayName`
131
+ # @return [String]
132
+ attr_accessor :display_name
133
+
134
+ # Output only. ID of the corresponding Android app in Firebase, if any. This ID
135
+ # can change if the Android app is deleted and recreated.
136
+ # Corresponds to the JSON property `firebaseAppId`
137
+ # @return [String]
138
+ attr_accessor :firebase_app_id
139
+
140
+ # Output only. Resource name of this Data Stream. Format: properties/`
141
+ # property_id`/androidAppDataStreams/`stream_id` Example: "properties/1000/
142
+ # androidAppDataStreams/2000"
143
+ # Corresponds to the JSON property `name`
144
+ # @return [String]
145
+ attr_accessor :name
146
+
147
+ # Immutable. The package name for the app being measured. Example: "com.example.
148
+ # myandroidapp"
149
+ # Corresponds to the JSON property `packageName`
150
+ # @return [String]
151
+ attr_accessor :package_name
152
+
153
+ # Output only. Time when stream payload fields were last updated.
154
+ # Corresponds to the JSON property `updateTime`
155
+ # @return [String]
156
+ attr_accessor :update_time
157
+
158
+ def initialize(**args)
159
+ update!(**args)
160
+ end
161
+
162
+ # Update properties of this object
163
+ def update!(**args)
164
+ @create_time = args[:create_time] if args.key?(:create_time)
165
+ @display_name = args[:display_name] if args.key?(:display_name)
166
+ @firebase_app_id = args[:firebase_app_id] if args.key?(:firebase_app_id)
167
+ @name = args[:name] if args.key?(:name)
168
+ @package_name = args[:package_name] if args.key?(:package_name)
169
+ @update_time = args[:update_time] if args.key?(:update_time)
170
+ end
171
+ end
172
+
173
+ # Read-only resource used to summarize a principal's effective roles.
174
+ class GoogleAnalyticsAdminV1alphaAuditUserLink
175
+ include Google::Apis::Core::Hashable
176
+
177
+ # Roles directly assigned to this user for this entity. Format: predefinedRoles/
178
+ # read Excludes roles that are inherited from an account (if this is for a
179
+ # property), group, or organization admin role.
180
+ # Corresponds to the JSON property `directRoles`
181
+ # @return [Array<String>]
182
+ attr_accessor :direct_roles
183
+
184
+ # Union of all permissions a user has at this account or property (includes
185
+ # direct permissions, group-inherited permissions, etc.). Format:
186
+ # predefinedRoles/read
187
+ # Corresponds to the JSON property `effectiveRoles`
188
+ # @return [Array<String>]
189
+ attr_accessor :effective_roles
190
+
191
+ # Email address of the linked user
192
+ # Corresponds to the JSON property `emailAddress`
193
+ # @return [String]
194
+ attr_accessor :email_address
195
+
196
+ # Example format: properties/1234/userLinks/5678
197
+ # Corresponds to the JSON property `name`
198
+ # @return [String]
199
+ attr_accessor :name
200
+
201
+ def initialize(**args)
202
+ update!(**args)
203
+ end
204
+
205
+ # Update properties of this object
206
+ def update!(**args)
207
+ @direct_roles = args[:direct_roles] if args.key?(:direct_roles)
208
+ @effective_roles = args[:effective_roles] if args.key?(:effective_roles)
209
+ @email_address = args[:email_address] if args.key?(:email_address)
210
+ @name = args[:name] if args.key?(:name)
211
+ end
212
+ end
213
+
214
+ # Request message for AuditUserLinks RPC.
215
+ class GoogleAnalyticsAdminV1alphaAuditUserLinksRequest
216
+ include Google::Apis::Core::Hashable
217
+
218
+ # The maximum number of user links to return. The service may return fewer than
219
+ # this value. If unspecified, at most 1000 user links will be returned. The
220
+ # maximum value is 5000; values above 5000 will be coerced to 5000.
221
+ # Corresponds to the JSON property `pageSize`
222
+ # @return [Fixnum]
223
+ attr_accessor :page_size
224
+
225
+ # A page token, received from a previous `AuditUserLinks` call. Provide this to
226
+ # retrieve the subsequent page. When paginating, all other parameters provided
227
+ # to `AuditUserLinks` must match the call that provided the page token.
228
+ # Corresponds to the JSON property `pageToken`
229
+ # @return [String]
230
+ attr_accessor :page_token
231
+
232
+ def initialize(**args)
233
+ update!(**args)
234
+ end
235
+
236
+ # Update properties of this object
237
+ def update!(**args)
238
+ @page_size = args[:page_size] if args.key?(:page_size)
239
+ @page_token = args[:page_token] if args.key?(:page_token)
240
+ end
241
+ end
242
+
243
+ # Response message for AuditUserLinks RPC.
244
+ class GoogleAnalyticsAdminV1alphaAuditUserLinksResponse
245
+ include Google::Apis::Core::Hashable
246
+
247
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
248
+ # field is omitted, there are no subsequent pages.
249
+ # Corresponds to the JSON property `nextPageToken`
250
+ # @return [String]
251
+ attr_accessor :next_page_token
252
+
253
+ # List of AuditUserLinks. These will be ordered stably, but in an arbitrary
254
+ # order.
255
+ # Corresponds to the JSON property `userLinks`
256
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaAuditUserLink>]
257
+ attr_accessor :user_links
258
+
259
+ def initialize(**args)
260
+ update!(**args)
261
+ end
262
+
263
+ # Update properties of this object
264
+ def update!(**args)
265
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
266
+ @user_links = args[:user_links] if args.key?(:user_links)
267
+ end
268
+ end
269
+
270
+ # Request message for BatchCreateUserLinks RPC.
271
+ class GoogleAnalyticsAdminV1alphaBatchCreateUserLinksRequest
272
+ include Google::Apis::Core::Hashable
273
+
274
+ # Optional. If set, then email the new users notifying them that they've been
275
+ # granted permissions to the resource. Regardless of whether this is set or not,
276
+ # notify_new_user field inside each individual request is ignored.
277
+ # Corresponds to the JSON property `notifyNewUsers`
278
+ # @return [Boolean]
279
+ attr_accessor :notify_new_users
280
+ alias_method :notify_new_users?, :notify_new_users
281
+
282
+ # Required. The requests specifying the user links to create. A maximum of 1000
283
+ # user links can be created in a batch.
284
+ # Corresponds to the JSON property `requests`
285
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaCreateUserLinkRequest>]
286
+ attr_accessor :requests
287
+
288
+ def initialize(**args)
289
+ update!(**args)
290
+ end
291
+
292
+ # Update properties of this object
293
+ def update!(**args)
294
+ @notify_new_users = args[:notify_new_users] if args.key?(:notify_new_users)
295
+ @requests = args[:requests] if args.key?(:requests)
296
+ end
297
+ end
298
+
299
+ # Response message for BatchCreateUserLinks RPC.
300
+ class GoogleAnalyticsAdminV1alphaBatchCreateUserLinksResponse
301
+ include Google::Apis::Core::Hashable
302
+
303
+ # The user links created.
304
+ # Corresponds to the JSON property `userLinks`
305
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaUserLink>]
306
+ attr_accessor :user_links
307
+
308
+ def initialize(**args)
309
+ update!(**args)
310
+ end
311
+
312
+ # Update properties of this object
313
+ def update!(**args)
314
+ @user_links = args[:user_links] if args.key?(:user_links)
315
+ end
316
+ end
317
+
318
+ # Request message for BatchDeleteUserLinks RPC.
319
+ class GoogleAnalyticsAdminV1alphaBatchDeleteUserLinksRequest
320
+ include Google::Apis::Core::Hashable
321
+
322
+ # Required. The requests specifying the user links to update. A maximum of 1000
323
+ # user links can be updated in a batch.
324
+ # Corresponds to the JSON property `requests`
325
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaDeleteUserLinkRequest>]
326
+ attr_accessor :requests
327
+
328
+ def initialize(**args)
329
+ update!(**args)
330
+ end
331
+
332
+ # Update properties of this object
333
+ def update!(**args)
334
+ @requests = args[:requests] if args.key?(:requests)
335
+ end
336
+ end
337
+
338
+ # Response message for BatchGetUserLinks RPC.
339
+ class GoogleAnalyticsAdminV1alphaBatchGetUserLinksResponse
340
+ include Google::Apis::Core::Hashable
341
+
342
+ # The requested user links.
343
+ # Corresponds to the JSON property `userLinks`
344
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaUserLink>]
345
+ attr_accessor :user_links
346
+
347
+ def initialize(**args)
348
+ update!(**args)
349
+ end
350
+
351
+ # Update properties of this object
352
+ def update!(**args)
353
+ @user_links = args[:user_links] if args.key?(:user_links)
354
+ end
355
+ end
356
+
357
+ # Request message for BatchUpdateUserLinks RPC.
358
+ class GoogleAnalyticsAdminV1alphaBatchUpdateUserLinksRequest
359
+ include Google::Apis::Core::Hashable
360
+
361
+ # Required. The requests specifying the user links to update. A maximum of 1000
362
+ # user links can be updated in a batch.
363
+ # Corresponds to the JSON property `requests`
364
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaUpdateUserLinkRequest>]
365
+ attr_accessor :requests
366
+
367
+ def initialize(**args)
368
+ update!(**args)
369
+ end
370
+
371
+ # Update properties of this object
372
+ def update!(**args)
373
+ @requests = args[:requests] if args.key?(:requests)
374
+ end
375
+ end
376
+
377
+ # Response message for BatchUpdateUserLinks RPC.
378
+ class GoogleAnalyticsAdminV1alphaBatchUpdateUserLinksResponse
379
+ include Google::Apis::Core::Hashable
380
+
381
+ # The user links updated.
382
+ # Corresponds to the JSON property `userLinks`
383
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaUserLink>]
384
+ attr_accessor :user_links
385
+
386
+ def initialize(**args)
387
+ update!(**args)
388
+ end
389
+
390
+ # Update properties of this object
391
+ def update!(**args)
392
+ @user_links = args[:user_links] if args.key?(:user_links)
393
+ end
394
+ end
395
+
396
+ # Request message for CreateUserLink RPC. Users can have multiple email
397
+ # addresses associated with their Google account, and one of these email
398
+ # addresses is the "primary" email address. Any of the email addresses
399
+ # associated with a Google account may be used for a new UserLink, but the
400
+ # returned UserLink will always contain the "primary" email address. As a result,
401
+ # the input and output email address for this request may differ.
402
+ class GoogleAnalyticsAdminV1alphaCreateUserLinkRequest
403
+ include Google::Apis::Core::Hashable
404
+
405
+ # Optional. If set, then email the new user notifying them that they've been
406
+ # granted permissions to the resource.
407
+ # Corresponds to the JSON property `notifyNewUser`
408
+ # @return [Boolean]
409
+ attr_accessor :notify_new_user
410
+ alias_method :notify_new_user?, :notify_new_user
411
+
412
+ # Required. Example format: accounts/1234
413
+ # Corresponds to the JSON property `parent`
414
+ # @return [String]
415
+ attr_accessor :parent
416
+
417
+ # A resource message representing a user's permissions on an Account or Property
418
+ # resource.
419
+ # Corresponds to the JSON property `userLink`
420
+ # @return [Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaUserLink]
421
+ attr_accessor :user_link
422
+
423
+ def initialize(**args)
424
+ update!(**args)
425
+ end
426
+
427
+ # Update properties of this object
428
+ def update!(**args)
429
+ @notify_new_user = args[:notify_new_user] if args.key?(:notify_new_user)
430
+ @parent = args[:parent] if args.key?(:parent)
431
+ @user_link = args[:user_link] if args.key?(:user_link)
432
+ end
433
+ end
434
+
435
+ # A resource message representing data sharing settings of a Google Analytics
436
+ # account.
437
+ class GoogleAnalyticsAdminV1alphaDataSharingSettings
438
+ include Google::Apis::Core::Hashable
439
+
440
+ # Output only. Resource name. Format: accounts/`account`/dataSharingSettings
441
+ # Example: "accounts/1000/dataSharingSettings"
442
+ # Corresponds to the JSON property `name`
443
+ # @return [String]
444
+ attr_accessor :name
445
+
446
+ # Allows any of Google sales to access the data in order to suggest
447
+ # configuration changes to improve results.
448
+ # Corresponds to the JSON property `sharingWithGoogleAnySalesEnabled`
449
+ # @return [Boolean]
450
+ attr_accessor :sharing_with_google_any_sales_enabled
451
+ alias_method :sharing_with_google_any_sales_enabled?, :sharing_with_google_any_sales_enabled
452
+
453
+ # Allows Google sales teams that are assigned to the customer to access the data
454
+ # in order to suggest configuration changes to improve results. Sales team
455
+ # restrictions still apply when enabled.
456
+ # Corresponds to the JSON property `sharingWithGoogleAssignedSalesEnabled`
457
+ # @return [Boolean]
458
+ attr_accessor :sharing_with_google_assigned_sales_enabled
459
+ alias_method :sharing_with_google_assigned_sales_enabled?, :sharing_with_google_assigned_sales_enabled
460
+
461
+ # Allows Google to use the data to improve other Google products or services.
462
+ # Corresponds to the JSON property `sharingWithGoogleProductsEnabled`
463
+ # @return [Boolean]
464
+ attr_accessor :sharing_with_google_products_enabled
465
+ alias_method :sharing_with_google_products_enabled?, :sharing_with_google_products_enabled
466
+
467
+ # Allows Google support to access the data in order to help troubleshoot issues.
468
+ # Corresponds to the JSON property `sharingWithGoogleSupportEnabled`
469
+ # @return [Boolean]
470
+ attr_accessor :sharing_with_google_support_enabled
471
+ alias_method :sharing_with_google_support_enabled?, :sharing_with_google_support_enabled
472
+
473
+ # Allows Google to share the data anonymously in aggregate form with others.
474
+ # Corresponds to the JSON property `sharingWithOthersEnabled`
475
+ # @return [Boolean]
476
+ attr_accessor :sharing_with_others_enabled
477
+ alias_method :sharing_with_others_enabled?, :sharing_with_others_enabled
478
+
479
+ def initialize(**args)
480
+ update!(**args)
481
+ end
482
+
483
+ # Update properties of this object
484
+ def update!(**args)
485
+ @name = args[:name] if args.key?(:name)
486
+ @sharing_with_google_any_sales_enabled = args[:sharing_with_google_any_sales_enabled] if args.key?(:sharing_with_google_any_sales_enabled)
487
+ @sharing_with_google_assigned_sales_enabled = args[:sharing_with_google_assigned_sales_enabled] if args.key?(:sharing_with_google_assigned_sales_enabled)
488
+ @sharing_with_google_products_enabled = args[:sharing_with_google_products_enabled] if args.key?(:sharing_with_google_products_enabled)
489
+ @sharing_with_google_support_enabled = args[:sharing_with_google_support_enabled] if args.key?(:sharing_with_google_support_enabled)
490
+ @sharing_with_others_enabled = args[:sharing_with_others_enabled] if args.key?(:sharing_with_others_enabled)
491
+ end
492
+ end
493
+
494
+ # Request message for DeleteUserLink RPC.
495
+ class GoogleAnalyticsAdminV1alphaDeleteUserLinkRequest
496
+ include Google::Apis::Core::Hashable
497
+
498
+ # Required. Example format: accounts/1234/userLinks/5678
499
+ # Corresponds to the JSON property `name`
500
+ # @return [String]
501
+ attr_accessor :name
502
+
503
+ def initialize(**args)
504
+ update!(**args)
505
+ end
506
+
507
+ # Update properties of this object
508
+ def update!(**args)
509
+ @name = args[:name] if args.key?(:name)
510
+ end
511
+ end
512
+
513
+ # Singleton resource under a WebDataStream, configuring measurement of
514
+ # additional site interactions and content.
515
+ class GoogleAnalyticsAdminV1alphaEnhancedMeasurementSettings
516
+ include Google::Apis::Core::Hashable
517
+
518
+ # Capture events when your visitors view content on your site that has articles
519
+ # or blog posts.
520
+ # Corresponds to the JSON property `articlesAndBlogsEnabled`
521
+ # @return [Boolean]
522
+ attr_accessor :articles_and_blogs_enabled
523
+ alias_method :articles_and_blogs_enabled?, :articles_and_blogs_enabled
524
+
525
+ # Capture events when your visitors view content on your site that has
526
+ # structured data (eg, articles, blog posts, product details screens, etc.).
527
+ # Corresponds to the JSON property `contentViewsEnabled`
528
+ # @return [Boolean]
529
+ attr_accessor :content_views_enabled
530
+ alias_method :content_views_enabled?, :content_views_enabled
531
+
532
+ # If enabled, capture a click event each time a visitor clicks a link or element
533
+ # that has data attributes beginning with "data-ga".
534
+ # Corresponds to the JSON property `dataTaggedElementClicksEnabled`
535
+ # @return [Boolean]
536
+ attr_accessor :data_tagged_element_clicks_enabled
537
+ alias_method :data_tagged_element_clicks_enabled?, :data_tagged_element_clicks_enabled
538
+
539
+ # Domains to exclude from measurement. Max length is 1024 characters.
540
+ # Corresponds to the JSON property `excludedDomains`
541
+ # @return [String]
542
+ attr_accessor :excluded_domains
543
+
544
+ # If enabled, capture a file download event each time a link is clicked with a
545
+ # common document, compressed file, application, video, or audio extension.
546
+ # Corresponds to the JSON property `fileDownloadsEnabled`
547
+ # @return [Boolean]
548
+ attr_accessor :file_downloads_enabled
549
+ alias_method :file_downloads_enabled?, :file_downloads_enabled
550
+
551
+ # If enabled, capture a view search results event each time a visitor interacts
552
+ # with a form on your site.
553
+ # Corresponds to the JSON property `formInteractionsEnabled`
554
+ # @return [Boolean]
555
+ attr_accessor :form_interactions_enabled
556
+ alias_method :form_interactions_enabled?, :form_interactions_enabled
557
+
558
+ # Output only. Resource name of this Data Stream. Format: properties/`
559
+ # property_id`/webDataStreams/`stream_id`/enhancedMeasurementSettings Example: "
560
+ # properties/1000/webDataStreams/2000/enhancedMeasurementSettings"
561
+ # Corresponds to the JSON property `name`
562
+ # @return [String]
563
+ attr_accessor :name
564
+
565
+ # If enabled, capture an outbound click event each time a visitor clicks a link
566
+ # that leads them away from your domain.
567
+ # Corresponds to the JSON property `outboundClicksEnabled`
568
+ # @return [Boolean]
569
+ attr_accessor :outbound_clicks_enabled
570
+ alias_method :outbound_clicks_enabled?, :outbound_clicks_enabled
571
+
572
+ # If enabled, capture a page view event each time the website changes the
573
+ # browser history state.
574
+ # Corresponds to the JSON property `pageChangesEnabled`
575
+ # @return [Boolean]
576
+ attr_accessor :page_changes_enabled
577
+ alias_method :page_changes_enabled?, :page_changes_enabled
578
+
579
+ # If enabled, capture a page view event each time a page loads.
580
+ # Corresponds to the JSON property `pageLoadsEnabled`
581
+ # @return [Boolean]
582
+ attr_accessor :page_loads_enabled
583
+ alias_method :page_loads_enabled?, :page_loads_enabled
584
+
585
+ # Output only. If enabled, capture a page view event each time a page loads or
586
+ # the website changes the browser history state.
587
+ # Corresponds to the JSON property `pageViewsEnabled`
588
+ # @return [Boolean]
589
+ attr_accessor :page_views_enabled
590
+ alias_method :page_views_enabled?, :page_views_enabled
591
+
592
+ # Capture events when your visitors view content on your site that has product
593
+ # details screens, etc.
594
+ # Corresponds to the JSON property `productsAndEcommerceEnabled`
595
+ # @return [Boolean]
596
+ attr_accessor :products_and_ecommerce_enabled
597
+ alias_method :products_and_ecommerce_enabled?, :products_and_ecommerce_enabled
598
+
599
+ # If enabled, capture scroll events each time a visitor gets to the bottom of a
600
+ # page.
601
+ # Corresponds to the JSON property `scrollsEnabled`
602
+ # @return [Boolean]
603
+ attr_accessor :scrolls_enabled
604
+ alias_method :scrolls_enabled?, :scrolls_enabled
605
+
606
+ # Required. URL query parameters to interpret as site search parameters. Max
607
+ # length is 1024 characters. Must not be empty.
608
+ # Corresponds to the JSON property `searchQueryParameter`
609
+ # @return [String]
610
+ attr_accessor :search_query_parameter
611
+
612
+ # If enabled, capture a view search results event each time a visitor performs a
613
+ # search on your site (based on a query parameter).
614
+ # Corresponds to the JSON property `siteSearchEnabled`
615
+ # @return [Boolean]
616
+ attr_accessor :site_search_enabled
617
+ alias_method :site_search_enabled?, :site_search_enabled
618
+
619
+ # Indicates whether Enhanced Measurement Settings will be used to automatically
620
+ # measure interactions and content on this web stream. Changing this value does
621
+ # not affect the settings themselves, but determines whether they are respected.
622
+ # Corresponds to the JSON property `streamEnabled`
623
+ # @return [Boolean]
624
+ attr_accessor :stream_enabled
625
+ alias_method :stream_enabled?, :stream_enabled
626
+
627
+ # Additional URL query parameters. Max length is 1024 characters.
628
+ # Corresponds to the JSON property `urlQueryParameter`
629
+ # @return [String]
630
+ attr_accessor :url_query_parameter
631
+
632
+ # If enabled, capture video play, progress, and complete events as visitors view
633
+ # embedded videos on your site.
634
+ # Corresponds to the JSON property `videoEngagementEnabled`
635
+ # @return [Boolean]
636
+ attr_accessor :video_engagement_enabled
637
+ alias_method :video_engagement_enabled?, :video_engagement_enabled
638
+
639
+ def initialize(**args)
640
+ update!(**args)
641
+ end
642
+
643
+ # Update properties of this object
644
+ def update!(**args)
645
+ @articles_and_blogs_enabled = args[:articles_and_blogs_enabled] if args.key?(:articles_and_blogs_enabled)
646
+ @content_views_enabled = args[:content_views_enabled] if args.key?(:content_views_enabled)
647
+ @data_tagged_element_clicks_enabled = args[:data_tagged_element_clicks_enabled] if args.key?(:data_tagged_element_clicks_enabled)
648
+ @excluded_domains = args[:excluded_domains] if args.key?(:excluded_domains)
649
+ @file_downloads_enabled = args[:file_downloads_enabled] if args.key?(:file_downloads_enabled)
650
+ @form_interactions_enabled = args[:form_interactions_enabled] if args.key?(:form_interactions_enabled)
651
+ @name = args[:name] if args.key?(:name)
652
+ @outbound_clicks_enabled = args[:outbound_clicks_enabled] if args.key?(:outbound_clicks_enabled)
653
+ @page_changes_enabled = args[:page_changes_enabled] if args.key?(:page_changes_enabled)
654
+ @page_loads_enabled = args[:page_loads_enabled] if args.key?(:page_loads_enabled)
655
+ @page_views_enabled = args[:page_views_enabled] if args.key?(:page_views_enabled)
656
+ @products_and_ecommerce_enabled = args[:products_and_ecommerce_enabled] if args.key?(:products_and_ecommerce_enabled)
657
+ @scrolls_enabled = args[:scrolls_enabled] if args.key?(:scrolls_enabled)
658
+ @search_query_parameter = args[:search_query_parameter] if args.key?(:search_query_parameter)
659
+ @site_search_enabled = args[:site_search_enabled] if args.key?(:site_search_enabled)
660
+ @stream_enabled = args[:stream_enabled] if args.key?(:stream_enabled)
661
+ @url_query_parameter = args[:url_query_parameter] if args.key?(:url_query_parameter)
662
+ @video_engagement_enabled = args[:video_engagement_enabled] if args.key?(:video_engagement_enabled)
663
+ end
664
+ end
665
+
666
+ # A link between an GA4 property and a Firebase project.
667
+ class GoogleAnalyticsAdminV1alphaFirebaseLink
668
+ include Google::Apis::Core::Hashable
669
+
670
+ # Output only. Time when this FirebaseLink was originally created.
671
+ # Corresponds to the JSON property `createTime`
672
+ # @return [String]
673
+ attr_accessor :create_time
674
+
675
+ # Maximum user access to the GA4 property allowed to admins of the linked
676
+ # Firebase project.
677
+ # Corresponds to the JSON property `maximumUserAccess`
678
+ # @return [String]
679
+ attr_accessor :maximum_user_access
680
+
681
+ # Output only. Example format: properties/1234/firebaseLinks/5678
682
+ # Corresponds to the JSON property `name`
683
+ # @return [String]
684
+ attr_accessor :name
685
+
686
+ # Immutable. Firebase project resource name. When creating a FirebaseLink, you
687
+ # may provide this resource name using either a project number or project ID.
688
+ # Once this resource has been created, returned FirebaseLinks will always have a
689
+ # project_name that contains a project number. Format: 'projects/`project number`
690
+ # ' Example: 'projects/1234'
691
+ # Corresponds to the JSON property `project`
692
+ # @return [String]
693
+ attr_accessor :project
694
+
695
+ def initialize(**args)
696
+ update!(**args)
697
+ end
698
+
699
+ # Update properties of this object
700
+ def update!(**args)
701
+ @create_time = args[:create_time] if args.key?(:create_time)
702
+ @maximum_user_access = args[:maximum_user_access] if args.key?(:maximum_user_access)
703
+ @name = args[:name] if args.key?(:name)
704
+ @project = args[:project] if args.key?(:project)
705
+ end
706
+ end
707
+
708
+ # Read-only resource with the tag for sending data from a website to a
709
+ # WebDataStream.
710
+ class GoogleAnalyticsAdminV1alphaGlobalSiteTag
711
+ include Google::Apis::Core::Hashable
712
+
713
+ # Immutable. JavaScript code snippet to be pasted as the first item into the
714
+ # head tag of every webpage to measure.
715
+ # Corresponds to the JSON property `snippet`
716
+ # @return [String]
717
+ attr_accessor :snippet
718
+
719
+ def initialize(**args)
720
+ update!(**args)
721
+ end
722
+
723
+ # Update properties of this object
724
+ def update!(**args)
725
+ @snippet = args[:snippet] if args.key?(:snippet)
726
+ end
727
+ end
728
+
729
+ # A link between an GA4 property and a Google Ads account.
730
+ class GoogleAnalyticsAdminV1alphaGoogleAdsLink
731
+ include Google::Apis::Core::Hashable
732
+
733
+ # Enable personalized advertising features with this integration. Automatically
734
+ # publish my Google Analytics audience lists and Google Analytics remarketing
735
+ # events/parameters to the linked Google Ads account. If this field is not set
736
+ # on create/update it will be defaulted to true.
737
+ # Corresponds to the JSON property `adsPersonalizationEnabled`
738
+ # @return [Boolean]
739
+ attr_accessor :ads_personalization_enabled
740
+ alias_method :ads_personalization_enabled?, :ads_personalization_enabled
741
+
742
+ # Output only. If true, this link is for a Google Ads manager account.
743
+ # Corresponds to the JSON property `canManageClients`
744
+ # @return [Boolean]
745
+ attr_accessor :can_manage_clients
746
+ alias_method :can_manage_clients?, :can_manage_clients
747
+
748
+ # Output only. Time when this link was originally created.
749
+ # Corresponds to the JSON property `createTime`
750
+ # @return [String]
751
+ attr_accessor :create_time
752
+
753
+ # Immutable. Google Ads customer ID.
754
+ # Corresponds to the JSON property `customerId`
755
+ # @return [String]
756
+ attr_accessor :customer_id
757
+
758
+ # Output only. Email address of the user that created the link. An empty string
759
+ # will be returned if the email address can't be retrieved.
760
+ # Corresponds to the JSON property `emailAddress`
761
+ # @return [String]
762
+ attr_accessor :email_address
763
+
764
+ # Output only. Format: properties/`propertyId`/googleAdsLinks/`googleAdsLinkId`
765
+ # Note: googleAdsLinkId is not the Google Ads customer ID.
766
+ # Corresponds to the JSON property `name`
767
+ # @return [String]
768
+ attr_accessor :name
769
+
770
+ # Immutable. Format: properties/`propertyId`
771
+ # Corresponds to the JSON property `parent`
772
+ # @return [String]
773
+ attr_accessor :parent
774
+
775
+ # Output only. Time when this link was last updated.
776
+ # Corresponds to the JSON property `updateTime`
777
+ # @return [String]
778
+ attr_accessor :update_time
779
+
780
+ def initialize(**args)
781
+ update!(**args)
782
+ end
783
+
784
+ # Update properties of this object
785
+ def update!(**args)
786
+ @ads_personalization_enabled = args[:ads_personalization_enabled] if args.key?(:ads_personalization_enabled)
787
+ @can_manage_clients = args[:can_manage_clients] if args.key?(:can_manage_clients)
788
+ @create_time = args[:create_time] if args.key?(:create_time)
789
+ @customer_id = args[:customer_id] if args.key?(:customer_id)
790
+ @email_address = args[:email_address] if args.key?(:email_address)
791
+ @name = args[:name] if args.key?(:name)
792
+ @parent = args[:parent] if args.key?(:parent)
793
+ @update_time = args[:update_time] if args.key?(:update_time)
794
+ end
795
+ end
796
+
797
+ # A resource message representing a Google Analytics IOS app stream.
798
+ class GoogleAnalyticsAdminV1alphaIosAppDataStream
799
+ include Google::Apis::Core::Hashable
800
+
801
+ # Required. Immutable. The Apple App Store Bundle ID for the app Example: "com.
802
+ # example.myiosapp"
803
+ # Corresponds to the JSON property `bundleId`
804
+ # @return [String]
805
+ attr_accessor :bundle_id
806
+
807
+ # Output only. Time when this stream was originally created.
808
+ # Corresponds to the JSON property `createTime`
809
+ # @return [String]
810
+ attr_accessor :create_time
811
+
812
+ # Human-readable display name for the Data Stream. The max allowed display name
813
+ # length is 255 UTF-16 code units.
814
+ # Corresponds to the JSON property `displayName`
815
+ # @return [String]
816
+ attr_accessor :display_name
817
+
818
+ # Output only. ID of the corresponding iOS app in Firebase, if any. This ID can
819
+ # change if the iOS app is deleted and recreated.
820
+ # Corresponds to the JSON property `firebaseAppId`
821
+ # @return [String]
822
+ attr_accessor :firebase_app_id
823
+
824
+ # Output only. Resource name of this Data Stream. Format: properties/`
825
+ # property_id`/iosAppDataStreams/`stream_id` Example: "properties/1000/
826
+ # iosAppDataStreams/2000"
827
+ # Corresponds to the JSON property `name`
828
+ # @return [String]
829
+ attr_accessor :name
830
+
831
+ # Output only. Time when stream payload fields were last updated.
832
+ # Corresponds to the JSON property `updateTime`
833
+ # @return [String]
834
+ attr_accessor :update_time
835
+
836
+ def initialize(**args)
837
+ update!(**args)
838
+ end
839
+
840
+ # Update properties of this object
841
+ def update!(**args)
842
+ @bundle_id = args[:bundle_id] if args.key?(:bundle_id)
843
+ @create_time = args[:create_time] if args.key?(:create_time)
844
+ @display_name = args[:display_name] if args.key?(:display_name)
845
+ @firebase_app_id = args[:firebase_app_id] if args.key?(:firebase_app_id)
846
+ @name = args[:name] if args.key?(:name)
847
+ @update_time = args[:update_time] if args.key?(:update_time)
848
+ end
849
+ end
850
+
851
+ # Response message for ListAccountSummaries RPC.
852
+ class GoogleAnalyticsAdminV1alphaListAccountSummariesResponse
853
+ include Google::Apis::Core::Hashable
854
+
855
+ # Account summaries of all accounts the caller has access to.
856
+ # Corresponds to the JSON property `accountSummaries`
857
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaAccountSummary>]
858
+ attr_accessor :account_summaries
859
+
860
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
861
+ # field is omitted, there are no subsequent pages.
862
+ # Corresponds to the JSON property `nextPageToken`
863
+ # @return [String]
864
+ attr_accessor :next_page_token
865
+
866
+ def initialize(**args)
867
+ update!(**args)
868
+ end
869
+
870
+ # Update properties of this object
871
+ def update!(**args)
872
+ @account_summaries = args[:account_summaries] if args.key?(:account_summaries)
873
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
874
+ end
875
+ end
876
+
877
+ # Request message for ListAccounts RPC.
878
+ class GoogleAnalyticsAdminV1alphaListAccountsResponse
879
+ include Google::Apis::Core::Hashable
880
+
881
+ # Results that were accessible to the caller.
882
+ # Corresponds to the JSON property `accounts`
883
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaAccount>]
884
+ attr_accessor :accounts
885
+
886
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
887
+ # field is omitted, there are no subsequent pages.
888
+ # Corresponds to the JSON property `nextPageToken`
889
+ # @return [String]
890
+ attr_accessor :next_page_token
891
+
892
+ def initialize(**args)
893
+ update!(**args)
894
+ end
895
+
896
+ # Update properties of this object
897
+ def update!(**args)
898
+ @accounts = args[:accounts] if args.key?(:accounts)
899
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
900
+ end
901
+ end
902
+
903
+ # Request message for ListAndroidDataStreams RPC.
904
+ class GoogleAnalyticsAdminV1alphaListAndroidAppDataStreamsResponse
905
+ include Google::Apis::Core::Hashable
906
+
907
+ # Results that matched the filter criteria and were accessible to the caller.
908
+ # Corresponds to the JSON property `androidAppDataStreams`
909
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaAndroidAppDataStream>]
910
+ attr_accessor :android_app_data_streams
911
+
912
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
913
+ # field is omitted, there are no subsequent pages.
914
+ # Corresponds to the JSON property `nextPageToken`
915
+ # @return [String]
916
+ attr_accessor :next_page_token
917
+
918
+ def initialize(**args)
919
+ update!(**args)
920
+ end
921
+
922
+ # Update properties of this object
923
+ def update!(**args)
924
+ @android_app_data_streams = args[:android_app_data_streams] if args.key?(:android_app_data_streams)
925
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
926
+ end
927
+ end
928
+
929
+ # Response message for ListFirebaseLinks RPC
930
+ class GoogleAnalyticsAdminV1alphaListFirebaseLinksResponse
931
+ include Google::Apis::Core::Hashable
932
+
933
+ # List of FirebaseLinks. This will have at most one value.
934
+ # Corresponds to the JSON property `firebaseLinks`
935
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaFirebaseLink>]
936
+ attr_accessor :firebase_links
937
+
938
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
939
+ # field is omitted, there are no subsequent pages. Currently, Google Analytics
940
+ # supports only one FirebaseLink per property, so this will never be populated.
941
+ # Corresponds to the JSON property `nextPageToken`
942
+ # @return [String]
943
+ attr_accessor :next_page_token
944
+
945
+ def initialize(**args)
946
+ update!(**args)
947
+ end
948
+
949
+ # Update properties of this object
950
+ def update!(**args)
951
+ @firebase_links = args[:firebase_links] if args.key?(:firebase_links)
952
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
953
+ end
954
+ end
955
+
956
+ # Response message for ListGoogleAdsLinks RPC.
957
+ class GoogleAnalyticsAdminV1alphaListGoogleAdsLinksResponse
958
+ include Google::Apis::Core::Hashable
959
+
960
+ # List of GoogleAdsLinks.
961
+ # Corresponds to the JSON property `googleAdsLinks`
962
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaGoogleAdsLink>]
963
+ attr_accessor :google_ads_links
964
+
965
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
966
+ # field is omitted, there are no subsequent pages.
967
+ # Corresponds to the JSON property `nextPageToken`
968
+ # @return [String]
969
+ attr_accessor :next_page_token
970
+
971
+ def initialize(**args)
972
+ update!(**args)
973
+ end
974
+
975
+ # Update properties of this object
976
+ def update!(**args)
977
+ @google_ads_links = args[:google_ads_links] if args.key?(:google_ads_links)
978
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
979
+ end
980
+ end
981
+
982
+ # Request message for ListIosAppDataStreams RPC.
983
+ class GoogleAnalyticsAdminV1alphaListIosAppDataStreamsResponse
984
+ include Google::Apis::Core::Hashable
985
+
986
+ # Results that matched the filter criteria and were accessible to the caller.
987
+ # Corresponds to the JSON property `iosAppDataStreams`
988
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaIosAppDataStream>]
989
+ attr_accessor :ios_app_data_streams
990
+
991
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
992
+ # field is omitted, there are no subsequent pages.
993
+ # Corresponds to the JSON property `nextPageToken`
994
+ # @return [String]
995
+ attr_accessor :next_page_token
996
+
997
+ def initialize(**args)
998
+ update!(**args)
999
+ end
1000
+
1001
+ # Update properties of this object
1002
+ def update!(**args)
1003
+ @ios_app_data_streams = args[:ios_app_data_streams] if args.key?(:ios_app_data_streams)
1004
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1005
+ end
1006
+ end
1007
+
1008
+ # Response message for ListProperties RPC.
1009
+ class GoogleAnalyticsAdminV1alphaListPropertiesResponse
1010
+ include Google::Apis::Core::Hashable
1011
+
1012
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
1013
+ # field is omitted, there are no subsequent pages.
1014
+ # Corresponds to the JSON property `nextPageToken`
1015
+ # @return [String]
1016
+ attr_accessor :next_page_token
1017
+
1018
+ # Results that matched the filter criteria and were accessible to the caller.
1019
+ # Corresponds to the JSON property `properties`
1020
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaProperty>]
1021
+ attr_accessor :properties
1022
+
1023
+ def initialize(**args)
1024
+ update!(**args)
1025
+ end
1026
+
1027
+ # Update properties of this object
1028
+ def update!(**args)
1029
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1030
+ @properties = args[:properties] if args.key?(:properties)
1031
+ end
1032
+ end
1033
+
1034
+ # Response message for ListUserLinks RPC.
1035
+ class GoogleAnalyticsAdminV1alphaListUserLinksResponse
1036
+ include Google::Apis::Core::Hashable
1037
+
1038
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
1039
+ # field is omitted, there are no subsequent pages.
1040
+ # Corresponds to the JSON property `nextPageToken`
1041
+ # @return [String]
1042
+ attr_accessor :next_page_token
1043
+
1044
+ # List of UserLinks. These will be ordered stably, but in an arbitrary order.
1045
+ # Corresponds to the JSON property `userLinks`
1046
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaUserLink>]
1047
+ attr_accessor :user_links
1048
+
1049
+ def initialize(**args)
1050
+ update!(**args)
1051
+ end
1052
+
1053
+ # Update properties of this object
1054
+ def update!(**args)
1055
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1056
+ @user_links = args[:user_links] if args.key?(:user_links)
1057
+ end
1058
+ end
1059
+
1060
+ # Request message for ListWebDataStreams RPC.
1061
+ class GoogleAnalyticsAdminV1alphaListWebDataStreamsResponse
1062
+ include Google::Apis::Core::Hashable
1063
+
1064
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
1065
+ # field is omitted, there are no subsequent pages.
1066
+ # Corresponds to the JSON property `nextPageToken`
1067
+ # @return [String]
1068
+ attr_accessor :next_page_token
1069
+
1070
+ # Results that matched the filter criteria and were accessible to the caller.
1071
+ # Corresponds to the JSON property `webDataStreams`
1072
+ # @return [Array<Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaWebDataStream>]
1073
+ attr_accessor :web_data_streams
1074
+
1075
+ def initialize(**args)
1076
+ update!(**args)
1077
+ end
1078
+
1079
+ # Update properties of this object
1080
+ def update!(**args)
1081
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1082
+ @web_data_streams = args[:web_data_streams] if args.key?(:web_data_streams)
1083
+ end
1084
+ end
1085
+
1086
+ # A resource message representing a Google Analytics GA4 property.
1087
+ class GoogleAnalyticsAdminV1alphaProperty
1088
+ include Google::Apis::Core::Hashable
1089
+
1090
+ # Output only. Time when the entity was originally created.
1091
+ # Corresponds to the JSON property `createTime`
1092
+ # @return [String]
1093
+ attr_accessor :create_time
1094
+
1095
+ # The currency type used in reports involving monetary values. Format: https://
1096
+ # en.wikipedia.org/wiki/ISO_4217 Examples: "USD", "EUR", "JPY"
1097
+ # Corresponds to the JSON property `currencyCode`
1098
+ # @return [String]
1099
+ attr_accessor :currency_code
1100
+
1101
+ # Output only. Indicates whether this Property is soft-deleted or not. Deleted
1102
+ # properties are excluded from List results unless specifically requested.
1103
+ # Corresponds to the JSON property `deleted`
1104
+ # @return [Boolean]
1105
+ attr_accessor :deleted
1106
+ alias_method :deleted?, :deleted
1107
+
1108
+ # Required. Human-readable display name for this property. The max allowed
1109
+ # display name length is 100 UTF-16 code units.
1110
+ # Corresponds to the JSON property `displayName`
1111
+ # @return [String]
1112
+ attr_accessor :display_name
1113
+
1114
+ # Industry associated with this property Example: AUTOMOTIVE, FOOD_AND_DRINK
1115
+ # Corresponds to the JSON property `industryCategory`
1116
+ # @return [String]
1117
+ attr_accessor :industry_category
1118
+
1119
+ # Output only. Resource name of this property. Format: properties/`property_id`
1120
+ # Example: "properties/1000"
1121
+ # Corresponds to the JSON property `name`
1122
+ # @return [String]
1123
+ attr_accessor :name
1124
+
1125
+ # Immutable. Resource name of this property's logical parent. Note: The Property-
1126
+ # Moving UI can be used to change the parent. Format: accounts/`account` Example:
1127
+ # "accounts/100"
1128
+ # Corresponds to the JSON property `parent`
1129
+ # @return [String]
1130
+ attr_accessor :parent
1131
+
1132
+ # Reporting Time Zone, used as the day boundary for reports, regardless of where
1133
+ # the data originates. If the time zone honors DST, Analytics will automatically
1134
+ # adjust for the changes. NOTE: Changing the time zone only affects data going
1135
+ # forward, and is not applied retroactively. Format: https://www.iana.org/time-
1136
+ # zones Example: "America/Los_Angeles"
1137
+ # Corresponds to the JSON property `timeZone`
1138
+ # @return [String]
1139
+ attr_accessor :time_zone
1140
+
1141
+ # Output only. Time when entity payload fields were last updated.
1142
+ # Corresponds to the JSON property `updateTime`
1143
+ # @return [String]
1144
+ attr_accessor :update_time
1145
+
1146
+ def initialize(**args)
1147
+ update!(**args)
1148
+ end
1149
+
1150
+ # Update properties of this object
1151
+ def update!(**args)
1152
+ @create_time = args[:create_time] if args.key?(:create_time)
1153
+ @currency_code = args[:currency_code] if args.key?(:currency_code)
1154
+ @deleted = args[:deleted] if args.key?(:deleted)
1155
+ @display_name = args[:display_name] if args.key?(:display_name)
1156
+ @industry_category = args[:industry_category] if args.key?(:industry_category)
1157
+ @name = args[:name] if args.key?(:name)
1158
+ @parent = args[:parent] if args.key?(:parent)
1159
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
1160
+ @update_time = args[:update_time] if args.key?(:update_time)
1161
+ end
1162
+ end
1163
+
1164
+ # A virtual resource representing metadata for an GA4 property.
1165
+ class GoogleAnalyticsAdminV1alphaPropertySummary
1166
+ include Google::Apis::Core::Hashable
1167
+
1168
+ # Display name for the property referred to in this account summary.
1169
+ # Corresponds to the JSON property `displayName`
1170
+ # @return [String]
1171
+ attr_accessor :display_name
1172
+
1173
+ # Resource name of property referred to by this property summary Format:
1174
+ # properties/`property_id` Example: "properties/1000"
1175
+ # Corresponds to the JSON property `property`
1176
+ # @return [String]
1177
+ attr_accessor :property
1178
+
1179
+ def initialize(**args)
1180
+ update!(**args)
1181
+ end
1182
+
1183
+ # Update properties of this object
1184
+ def update!(**args)
1185
+ @display_name = args[:display_name] if args.key?(:display_name)
1186
+ @property = args[:property] if args.key?(:property)
1187
+ end
1188
+ end
1189
+
1190
+ # Request message for ProvisionAccountTicket RPC.
1191
+ class GoogleAnalyticsAdminV1alphaProvisionAccountTicketRequest
1192
+ include Google::Apis::Core::Hashable
1193
+
1194
+ # A resource message representing a Google Analytics account.
1195
+ # Corresponds to the JSON property `account`
1196
+ # @return [Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaAccount]
1197
+ attr_accessor :account
1198
+
1199
+ # Redirect URI where the user will be sent after accepting Terms of Service.
1200
+ # Must be configured in Developers Console as a Redirect URI
1201
+ # Corresponds to the JSON property `redirectUri`
1202
+ # @return [String]
1203
+ attr_accessor :redirect_uri
1204
+
1205
+ def initialize(**args)
1206
+ update!(**args)
1207
+ end
1208
+
1209
+ # Update properties of this object
1210
+ def update!(**args)
1211
+ @account = args[:account] if args.key?(:account)
1212
+ @redirect_uri = args[:redirect_uri] if args.key?(:redirect_uri)
1213
+ end
1214
+ end
1215
+
1216
+ # Response message for ProvisionAccountTicket RPC.
1217
+ class GoogleAnalyticsAdminV1alphaProvisionAccountTicketResponse
1218
+ include Google::Apis::Core::Hashable
1219
+
1220
+ # The param to be passed in the ToS link.
1221
+ # Corresponds to the JSON property `accountTicketId`
1222
+ # @return [String]
1223
+ attr_accessor :account_ticket_id
1224
+
1225
+ def initialize(**args)
1226
+ update!(**args)
1227
+ end
1228
+
1229
+ # Update properties of this object
1230
+ def update!(**args)
1231
+ @account_ticket_id = args[:account_ticket_id] if args.key?(:account_ticket_id)
1232
+ end
1233
+ end
1234
+
1235
+ # Request message for UpdateUserLink RPC.
1236
+ class GoogleAnalyticsAdminV1alphaUpdateUserLinkRequest
1237
+ include Google::Apis::Core::Hashable
1238
+
1239
+ # A resource message representing a user's permissions on an Account or Property
1240
+ # resource.
1241
+ # Corresponds to the JSON property `userLink`
1242
+ # @return [Google::Apis::AnalyticsadminV1alpha::GoogleAnalyticsAdminV1alphaUserLink]
1243
+ attr_accessor :user_link
1244
+
1245
+ def initialize(**args)
1246
+ update!(**args)
1247
+ end
1248
+
1249
+ # Update properties of this object
1250
+ def update!(**args)
1251
+ @user_link = args[:user_link] if args.key?(:user_link)
1252
+ end
1253
+ end
1254
+
1255
+ # A resource message representing a user's permissions on an Account or Property
1256
+ # resource.
1257
+ class GoogleAnalyticsAdminV1alphaUserLink
1258
+ include Google::Apis::Core::Hashable
1259
+
1260
+ # Roles directly assigned to this user for this account or property. Valid
1261
+ # values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit
1262
+ # predefinedRoles/manage-users Excludes roles that are inherited from a higher-
1263
+ # level entity, group, or organization admin role. A UserLink that is updated to
1264
+ # have an empty list of direct_roles will be deleted.
1265
+ # Corresponds to the JSON property `directRoles`
1266
+ # @return [Array<String>]
1267
+ attr_accessor :direct_roles
1268
+
1269
+ # Email address of the user to link
1270
+ # Corresponds to the JSON property `emailAddress`
1271
+ # @return [String]
1272
+ attr_accessor :email_address
1273
+
1274
+ # Example format: properties/1234/userLinks/5678
1275
+ # Corresponds to the JSON property `name`
1276
+ # @return [String]
1277
+ attr_accessor :name
1278
+
1279
+ def initialize(**args)
1280
+ update!(**args)
1281
+ end
1282
+
1283
+ # Update properties of this object
1284
+ def update!(**args)
1285
+ @direct_roles = args[:direct_roles] if args.key?(:direct_roles)
1286
+ @email_address = args[:email_address] if args.key?(:email_address)
1287
+ @name = args[:name] if args.key?(:name)
1288
+ end
1289
+ end
1290
+
1291
+ # A resource message representing a Google Analytics web stream.
1292
+ class GoogleAnalyticsAdminV1alphaWebDataStream
1293
+ include Google::Apis::Core::Hashable
1294
+
1295
+ # Output only. Time when this stream was originally created.
1296
+ # Corresponds to the JSON property `createTime`
1297
+ # @return [String]
1298
+ attr_accessor :create_time
1299
+
1300
+ # Immutable. Domain name of the web app being measured, or empty. Example: "http:
1301
+ # //www.google.com", "https://www.google.com"
1302
+ # Corresponds to the JSON property `defaultUri`
1303
+ # @return [String]
1304
+ attr_accessor :default_uri
1305
+
1306
+ # Required. Human-readable display name for the Data Stream. The max allowed
1307
+ # display name length is 100 UTF-16 code units.
1308
+ # Corresponds to the JSON property `displayName`
1309
+ # @return [String]
1310
+ attr_accessor :display_name
1311
+
1312
+ # Output only. ID of the corresponding web app in Firebase, if any. This ID can
1313
+ # change if the web app is deleted and recreated.
1314
+ # Corresponds to the JSON property `firebaseAppId`
1315
+ # @return [String]
1316
+ attr_accessor :firebase_app_id
1317
+
1318
+ # Output only. Analytics "Measurement ID", without the "G-" prefix. Example: "G-
1319
+ # 1A2BCD345E" would just be "1A2BCD345E"
1320
+ # Corresponds to the JSON property `measurementId`
1321
+ # @return [String]
1322
+ attr_accessor :measurement_id
1323
+
1324
+ # Output only. Resource name of this Data Stream. Format: properties/`
1325
+ # property_id`/webDataStreams/`stream_id` Example: "properties/1000/
1326
+ # webDataStreams/2000"
1327
+ # Corresponds to the JSON property `name`
1328
+ # @return [String]
1329
+ attr_accessor :name
1330
+
1331
+ # Output only. Time when stream payload fields were last updated.
1332
+ # Corresponds to the JSON property `updateTime`
1333
+ # @return [String]
1334
+ attr_accessor :update_time
1335
+
1336
+ def initialize(**args)
1337
+ update!(**args)
1338
+ end
1339
+
1340
+ # Update properties of this object
1341
+ def update!(**args)
1342
+ @create_time = args[:create_time] if args.key?(:create_time)
1343
+ @default_uri = args[:default_uri] if args.key?(:default_uri)
1344
+ @display_name = args[:display_name] if args.key?(:display_name)
1345
+ @firebase_app_id = args[:firebase_app_id] if args.key?(:firebase_app_id)
1346
+ @measurement_id = args[:measurement_id] if args.key?(:measurement_id)
1347
+ @name = args[:name] if args.key?(:name)
1348
+ @update_time = args[:update_time] if args.key?(:update_time)
1349
+ end
1350
+ end
1351
+
1352
+ # A generic empty message that you can re-use to avoid defining duplicated empty
1353
+ # messages in your APIs. A typical example is to use it as the request or the
1354
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
1355
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
1356
+ # `Empty` is empty JSON object ````.
1357
+ class GoogleProtobufEmpty
1358
+ include Google::Apis::Core::Hashable
1359
+
1360
+ def initialize(**args)
1361
+ update!(**args)
1362
+ end
1363
+
1364
+ # Update properties of this object
1365
+ def update!(**args)
1366
+ end
1367
+ end
1368
+ end
1369
+ end
1370
+ end