google-api-client 0.36.0 → 0.36.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +69 -0
  3. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  4. data/generated/google/apis/androidenterprise_v1/classes.rb +2 -1
  5. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  6. data/generated/google/apis/androidmanagement_v1/classes.rb +7 -4
  7. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  8. data/generated/google/apis/androidpublisher_v3/classes.rb +32 -32
  9. data/generated/google/apis/androidpublisher_v3/representations.rb +17 -17
  10. data/generated/google/apis/bigquery_v2.rb +1 -1
  11. data/generated/google/apis/bigquery_v2/classes.rb +2 -1
  12. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  13. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +81 -41
  14. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +2 -0
  15. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +8 -8
  16. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  17. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +60 -30
  18. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  19. data/generated/google/apis/bigtableadmin_v2/classes.rb +75 -40
  20. data/generated/google/apis/bigtableadmin_v2/service.rb +1 -1
  21. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  22. data/generated/google/apis/binaryauthorization_v1/classes.rb +75 -41
  23. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  24. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +75 -41
  25. data/generated/google/apis/chat_v1.rb +1 -1
  26. data/generated/google/apis/chat_v1/service.rb +5 -2
  27. data/generated/google/apis/cloudasset_v1.rb +1 -1
  28. data/generated/google/apis/cloudasset_v1/classes.rb +206 -0
  29. data/generated/google/apis/cloudasset_v1/representations.rb +101 -0
  30. data/generated/google/apis/cloudasset_v1/service.rb +174 -0
  31. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  32. data/generated/google/apis/cloudbilling_v1/classes.rb +59 -41
  33. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  34. data/generated/google/apis/cloudbuild_v1/classes.rb +9 -5
  35. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  36. data/generated/google/apis/cloudfunctions_v1/classes.rb +75 -41
  37. data/generated/google/apis/cloudiot_v1.rb +1 -1
  38. data/generated/google/apis/cloudiot_v1/classes.rb +75 -41
  39. data/generated/google/apis/cloudkms_v1.rb +1 -1
  40. data/generated/google/apis/cloudkms_v1/classes.rb +104 -41
  41. data/generated/google/apis/cloudkms_v1/representations.rb +15 -0
  42. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  43. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +75 -41
  44. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  45. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +75 -41
  46. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +1 -1
  47. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  48. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +75 -41
  49. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  50. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +75 -41
  51. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  52. data/generated/google/apis/cloudsearch_v1/classes.rb +3 -2
  53. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  54. data/generated/google/apis/cloudtasks_v2/classes.rb +81 -47
  55. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  56. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +75 -41
  57. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  58. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +81 -47
  59. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  60. data/generated/google/apis/cloudtrace_v2/classes.rb +5 -3
  61. data/generated/google/apis/compute_alpha.rb +1 -1
  62. data/generated/google/apis/compute_alpha/classes.rb +68 -47
  63. data/generated/google/apis/compute_alpha/representations.rb +2 -1
  64. data/generated/google/apis/compute_alpha/service.rb +54 -0
  65. data/generated/google/apis/compute_beta.rb +1 -1
  66. data/generated/google/apis/compute_beta/classes.rb +597 -40
  67. data/generated/google/apis/compute_beta/representations.rb +164 -0
  68. data/generated/google/apis/compute_beta/service.rb +343 -1
  69. data/generated/google/apis/compute_v1.rb +1 -1
  70. data/generated/google/apis/compute_v1/classes.rb +54 -39
  71. data/generated/google/apis/compute_v1/representations.rb +1 -0
  72. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  73. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +75 -41
  74. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  75. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +77 -43
  76. data/generated/google/apis/containeranalysis_v1beta1/service.rb +26 -20
  77. data/generated/google/apis/content_v2.rb +1 -1
  78. data/generated/google/apis/content_v2/classes.rb +46 -42
  79. data/generated/google/apis/content_v2_1.rb +1 -1
  80. data/generated/google/apis/content_v2_1/classes.rb +46 -42
  81. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  82. data/generated/google/apis/datacatalog_v1beta1/classes.rb +75 -41
  83. data/generated/google/apis/datastore_v1.rb +1 -1
  84. data/generated/google/apis/datastore_v1/classes.rb +16 -22
  85. data/generated/google/apis/datastore_v1/service.rb +10 -10
  86. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  87. data/generated/google/apis/datastore_v1beta3/classes.rb +5 -4
  88. data/generated/google/apis/datastore_v1beta3/service.rb +8 -8
  89. data/generated/google/apis/dfareporting_v3_4.rb +1 -1
  90. data/generated/google/apis/dfareporting_v3_4/classes.rb +88 -88
  91. data/generated/google/apis/dfareporting_v3_4/representations.rb +39 -39
  92. data/generated/google/apis/dialogflow_v2.rb +1 -1
  93. data/generated/google/apis/dialogflow_v2/classes.rb +1 -1
  94. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  95. data/generated/google/apis/dialogflow_v2beta1/classes.rb +1 -1
  96. data/generated/google/apis/dlp_v2.rb +1 -1
  97. data/generated/google/apis/dlp_v2/classes.rb +77 -0
  98. data/generated/google/apis/dlp_v2/representations.rb +42 -0
  99. data/generated/google/apis/file_v1.rb +1 -1
  100. data/generated/google/apis/file_v1/classes.rb +59 -12
  101. data/generated/google/apis/file_v1/representations.rb +19 -2
  102. data/generated/google/apis/file_v1/service.rb +8 -4
  103. data/generated/google/apis/file_v1beta1.rb +1 -1
  104. data/generated/google/apis/file_v1beta1/classes.rb +59 -12
  105. data/generated/google/apis/file_v1beta1/representations.rb +19 -2
  106. data/generated/google/apis/file_v1beta1/service.rb +8 -4
  107. data/generated/google/apis/firebaserules_v1.rb +1 -1
  108. data/generated/google/apis/firebaserules_v1/classes.rb +75 -0
  109. data/generated/google/apis/firebaserules_v1/representations.rb +35 -0
  110. data/generated/google/apis/gmail_v1.rb +1 -1
  111. data/generated/google/apis/gmail_v1/classes.rb +6 -2
  112. data/generated/google/apis/iamcredentials_v1.rb +1 -1
  113. data/generated/google/apis/iamcredentials_v1/classes.rb +7 -4
  114. data/generated/google/apis/iamcredentials_v1/service.rb +4 -4
  115. data/generated/google/apis/iap_v1.rb +1 -1
  116. data/generated/google/apis/iap_v1/classes.rb +225 -40
  117. data/generated/google/apis/iap_v1/representations.rb +84 -0
  118. data/generated/google/apis/iap_v1/service.rb +292 -0
  119. data/generated/google/apis/iap_v1beta1.rb +1 -1
  120. data/generated/google/apis/iap_v1beta1/classes.rb +75 -40
  121. data/generated/google/apis/logging_v2.rb +1 -1
  122. data/generated/google/apis/logging_v2/classes.rb +29 -41
  123. data/generated/google/apis/ml_v1.rb +1 -1
  124. data/generated/google/apis/ml_v1/classes.rb +14 -21
  125. data/generated/google/apis/ml_v1/service.rb +15 -18
  126. data/generated/google/apis/monitoring_v1.rb +1 -1
  127. data/generated/google/apis/monitoring_v1/classes.rb +15 -11
  128. data/generated/google/apis/monitoring_v3.rb +1 -1
  129. data/generated/google/apis/monitoring_v3/classes.rb +6 -10
  130. data/generated/google/apis/monitoring_v3/representations.rb +0 -1
  131. data/generated/google/apis/{fusiontables_v1.rb → policytroubleshooter_v1.rb} +10 -13
  132. data/generated/google/apis/policytroubleshooter_v1/classes.rb +700 -0
  133. data/generated/google/apis/policytroubleshooter_v1/representations.rb +203 -0
  134. data/generated/google/apis/policytroubleshooter_v1/service.rb +90 -0
  135. data/generated/google/apis/pubsub_v1.rb +1 -1
  136. data/generated/google/apis/pubsub_v1/classes.rb +75 -41
  137. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  138. data/generated/google/apis/pubsub_v1beta2/classes.rb +75 -41
  139. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  140. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +1 -1
  141. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  142. data/generated/google/apis/remotebuildexecution_v2/classes.rb +1 -1
  143. data/generated/google/apis/run_v1.rb +1 -1
  144. data/generated/google/apis/run_v1/classes.rb +75 -41
  145. data/generated/google/apis/run_v1alpha1.rb +1 -1
  146. data/generated/google/apis/run_v1alpha1/classes.rb +82 -41
  147. data/generated/google/apis/run_v1alpha1/representations.rb +2 -0
  148. data/generated/google/apis/{fusiontables_v2.rb → secretmanager_v1beta1.rb} +11 -14
  149. data/generated/google/apis/secretmanager_v1beta1/classes.rb +936 -0
  150. data/generated/google/apis/secretmanager_v1beta1/representations.rb +388 -0
  151. data/generated/google/apis/secretmanager_v1beta1/service.rb +674 -0
  152. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  153. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +85 -1
  154. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +32 -0
  155. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  156. data/generated/google/apis/servicecontrol_v1/classes.rb +4 -3
  157. data/generated/google/apis/servicecontrol_v1/service.rb +2 -1
  158. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  159. data/generated/google/apis/servicenetworking_v1/classes.rb +38 -1
  160. data/generated/google/apis/servicenetworking_v1/representations.rb +14 -0
  161. data/generated/google/apis/servicenetworking_v1/service.rb +35 -0
  162. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  163. data/generated/google/apis/servicenetworking_v1beta/classes.rb +16 -1
  164. data/generated/google/apis/servicenetworking_v1beta/representations.rb +1 -0
  165. data/generated/google/apis/serviceusage_v1.rb +1 -1
  166. data/generated/google/apis/serviceusage_v1/classes.rb +16 -1
  167. data/generated/google/apis/serviceusage_v1/representations.rb +1 -0
  168. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  169. data/generated/google/apis/serviceusage_v1beta1/classes.rb +16 -1
  170. data/generated/google/apis/serviceusage_v1beta1/representations.rb +1 -0
  171. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  172. data/generated/google/apis/storagetransfer_v1/service.rb +4 -2
  173. data/generated/google/apis/testing_v1.rb +1 -1
  174. data/generated/google/apis/testing_v1/classes.rb +2 -2
  175. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  176. data/generated/google/apis/toolresults_v1beta3/classes.rb +374 -2
  177. data/generated/google/apis/toolresults_v1beta3/representations.rb +109 -0
  178. data/generated/google/apis/toolresults_v1beta3/service.rb +98 -0
  179. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  180. data/lib/google/apis/version.rb +1 -1
  181. metadata +11 -11
  182. data/generated/google/apis/fusiontables_v1/classes.rb +0 -977
  183. data/generated/google/apis/fusiontables_v1/representations.rb +0 -449
  184. data/generated/google/apis/fusiontables_v1/service.rb +0 -1307
  185. data/generated/google/apis/fusiontables_v2/classes.rb +0 -1049
  186. data/generated/google/apis/fusiontables_v2/representations.rb +0 -457
  187. data/generated/google/apis/fusiontables_v2/service.rb +0 -1431
@@ -0,0 +1,203 @@
1
+ # Copyright 2015 Google Inc.
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 PolicytroubleshooterV1
24
+
25
+ class GoogleCloudPolicytroubleshooterV1AccessTuple
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
31
+ class GoogleCloudPolicytroubleshooterV1BindingExplanation
32
+ class Representation < Google::Apis::Core::JsonRepresentation; end
33
+
34
+ include Google::Apis::Core::JsonObjectSupport
35
+ end
36
+
37
+ class GoogleCloudPolicytroubleshooterV1BindingExplanationAnnotatedMembership
38
+ class Representation < Google::Apis::Core::JsonRepresentation; end
39
+
40
+ include Google::Apis::Core::JsonObjectSupport
41
+ end
42
+
43
+ class GoogleCloudPolicytroubleshooterV1ExplainedPolicy
44
+ class Representation < Google::Apis::Core::JsonRepresentation; end
45
+
46
+ include Google::Apis::Core::JsonObjectSupport
47
+ end
48
+
49
+ class GoogleCloudPolicytroubleshooterV1TroubleshootIamPolicyRequest
50
+ class Representation < Google::Apis::Core::JsonRepresentation; end
51
+
52
+ include Google::Apis::Core::JsonObjectSupport
53
+ end
54
+
55
+ class GoogleCloudPolicytroubleshooterV1TroubleshootIamPolicyResponse
56
+ class Representation < Google::Apis::Core::JsonRepresentation; end
57
+
58
+ include Google::Apis::Core::JsonObjectSupport
59
+ end
60
+
61
+ class GoogleIamV1AuditConfig
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
67
+ class GoogleIamV1AuditLogConfig
68
+ class Representation < Google::Apis::Core::JsonRepresentation; end
69
+
70
+ include Google::Apis::Core::JsonObjectSupport
71
+ end
72
+
73
+ class GoogleIamV1Binding
74
+ class Representation < Google::Apis::Core::JsonRepresentation; end
75
+
76
+ include Google::Apis::Core::JsonObjectSupport
77
+ end
78
+
79
+ class GoogleIamV1Policy
80
+ class Representation < Google::Apis::Core::JsonRepresentation; end
81
+
82
+ include Google::Apis::Core::JsonObjectSupport
83
+ end
84
+
85
+ class GoogleTypeExpr
86
+ class Representation < Google::Apis::Core::JsonRepresentation; end
87
+
88
+ include Google::Apis::Core::JsonObjectSupport
89
+ end
90
+
91
+ class GoogleCloudPolicytroubleshooterV1AccessTuple
92
+ # @private
93
+ class Representation < Google::Apis::Core::JsonRepresentation
94
+ property :full_resource_name, as: 'fullResourceName'
95
+ property :permission, as: 'permission'
96
+ property :principal, as: 'principal'
97
+ end
98
+ end
99
+
100
+ class GoogleCloudPolicytroubleshooterV1BindingExplanation
101
+ # @private
102
+ class Representation < Google::Apis::Core::JsonRepresentation
103
+ property :access, as: 'access'
104
+ property :condition, as: 'condition', class: Google::Apis::PolicytroubleshooterV1::GoogleTypeExpr, decorator: Google::Apis::PolicytroubleshooterV1::GoogleTypeExpr::Representation
105
+
106
+ hash :memberships, as: 'memberships', class: Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1BindingExplanationAnnotatedMembership, decorator: Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1BindingExplanationAnnotatedMembership::Representation
107
+
108
+ property :relevance, as: 'relevance'
109
+ property :role, as: 'role'
110
+ property :role_permission, as: 'rolePermission'
111
+ property :role_permission_relevance, as: 'rolePermissionRelevance'
112
+ end
113
+ end
114
+
115
+ class GoogleCloudPolicytroubleshooterV1BindingExplanationAnnotatedMembership
116
+ # @private
117
+ class Representation < Google::Apis::Core::JsonRepresentation
118
+ property :membership, as: 'membership'
119
+ property :relevance, as: 'relevance'
120
+ end
121
+ end
122
+
123
+ class GoogleCloudPolicytroubleshooterV1ExplainedPolicy
124
+ # @private
125
+ class Representation < Google::Apis::Core::JsonRepresentation
126
+ property :access, as: 'access'
127
+ collection :binding_explanations, as: 'bindingExplanations', class: Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1BindingExplanation, decorator: Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1BindingExplanation::Representation
128
+
129
+ property :full_resource_name, as: 'fullResourceName'
130
+ property :policy, as: 'policy', class: Google::Apis::PolicytroubleshooterV1::GoogleIamV1Policy, decorator: Google::Apis::PolicytroubleshooterV1::GoogleIamV1Policy::Representation
131
+
132
+ property :relevance, as: 'relevance'
133
+ end
134
+ end
135
+
136
+ class GoogleCloudPolicytroubleshooterV1TroubleshootIamPolicyRequest
137
+ # @private
138
+ class Representation < Google::Apis::Core::JsonRepresentation
139
+ property :access_tuple, as: 'accessTuple', class: Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1AccessTuple, decorator: Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1AccessTuple::Representation
140
+
141
+ end
142
+ end
143
+
144
+ class GoogleCloudPolicytroubleshooterV1TroubleshootIamPolicyResponse
145
+ # @private
146
+ class Representation < Google::Apis::Core::JsonRepresentation
147
+ property :access, as: 'access'
148
+ collection :explained_policies, as: 'explainedPolicies', class: Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1ExplainedPolicy, decorator: Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1ExplainedPolicy::Representation
149
+
150
+ end
151
+ end
152
+
153
+ class GoogleIamV1AuditConfig
154
+ # @private
155
+ class Representation < Google::Apis::Core::JsonRepresentation
156
+ collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::PolicytroubleshooterV1::GoogleIamV1AuditLogConfig, decorator: Google::Apis::PolicytroubleshooterV1::GoogleIamV1AuditLogConfig::Representation
157
+
158
+ property :service, as: 'service'
159
+ end
160
+ end
161
+
162
+ class GoogleIamV1AuditLogConfig
163
+ # @private
164
+ class Representation < Google::Apis::Core::JsonRepresentation
165
+ collection :exempted_members, as: 'exemptedMembers'
166
+ property :log_type, as: 'logType'
167
+ end
168
+ end
169
+
170
+ class GoogleIamV1Binding
171
+ # @private
172
+ class Representation < Google::Apis::Core::JsonRepresentation
173
+ property :condition, as: 'condition', class: Google::Apis::PolicytroubleshooterV1::GoogleTypeExpr, decorator: Google::Apis::PolicytroubleshooterV1::GoogleTypeExpr::Representation
174
+
175
+ collection :members, as: 'members'
176
+ property :role, as: 'role'
177
+ end
178
+ end
179
+
180
+ class GoogleIamV1Policy
181
+ # @private
182
+ class Representation < Google::Apis::Core::JsonRepresentation
183
+ collection :audit_configs, as: 'auditConfigs', class: Google::Apis::PolicytroubleshooterV1::GoogleIamV1AuditConfig, decorator: Google::Apis::PolicytroubleshooterV1::GoogleIamV1AuditConfig::Representation
184
+
185
+ collection :bindings, as: 'bindings', class: Google::Apis::PolicytroubleshooterV1::GoogleIamV1Binding, decorator: Google::Apis::PolicytroubleshooterV1::GoogleIamV1Binding::Representation
186
+
187
+ property :etag, :base64 => true, as: 'etag'
188
+ property :version, as: 'version'
189
+ end
190
+ end
191
+
192
+ class GoogleTypeExpr
193
+ # @private
194
+ class Representation < Google::Apis::Core::JsonRepresentation
195
+ property :description, as: 'description'
196
+ property :expression, as: 'expression'
197
+ property :location, as: 'location'
198
+ property :title, as: 'title'
199
+ end
200
+ end
201
+ end
202
+ end
203
+ end
@@ -0,0 +1,90 @@
1
+ # Copyright 2015 Google Inc.
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/core/base_service'
16
+ require 'google/apis/core/json_representation'
17
+ require 'google/apis/core/hashable'
18
+ require 'google/apis/errors'
19
+
20
+ module Google
21
+ module Apis
22
+ module PolicytroubleshooterV1
23
+ # Policy Troubleshooter API
24
+ #
25
+ #
26
+ #
27
+ # @example
28
+ # require 'google/apis/policytroubleshooter_v1'
29
+ #
30
+ # Policytroubleshooter = Google::Apis::PolicytroubleshooterV1 # Alias the module
31
+ # service = Policytroubleshooter::PolicyTroubleshooterService.new
32
+ #
33
+ # @see https://cloud.google.com/iam/
34
+ class PolicyTroubleshooterService < Google::Apis::Core::BaseService
35
+ # @return [String]
36
+ # API key. Your API key identifies your project and provides you with API access,
37
+ # quota, and reports. Required unless you provide an OAuth 2.0 token.
38
+ attr_accessor :key
39
+
40
+ # @return [String]
41
+ # Available to use for quota purposes for server-side applications. Can be any
42
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
43
+ attr_accessor :quota_user
44
+
45
+ def initialize
46
+ super('https://policytroubleshooter.googleapis.com/', '')
47
+ @batch_path = 'batch'
48
+ end
49
+
50
+ # Checks whether a member has a specific permission for a specific resource,
51
+ # and explains why the member does or does not have that permission.
52
+ # @param [Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1TroubleshootIamPolicyRequest] google_cloud_policytroubleshooter_v1_troubleshoot_iam_policy_request_object
53
+ # @param [String] fields
54
+ # Selector specifying which fields to include in a partial response.
55
+ # @param [String] quota_user
56
+ # Available to use for quota purposes for server-side applications. Can be any
57
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
58
+ # @param [Google::Apis::RequestOptions] options
59
+ # Request-specific options
60
+ #
61
+ # @yield [result, err] Result & error if block supplied
62
+ # @yieldparam result [Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1TroubleshootIamPolicyResponse] parsed result object
63
+ # @yieldparam err [StandardError] error object if request failed
64
+ #
65
+ # @return [Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1TroubleshootIamPolicyResponse]
66
+ #
67
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
68
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
69
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
70
+ def troubleshoot_iam(google_cloud_policytroubleshooter_v1_troubleshoot_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
71
+ command = make_simple_command(:post, 'v1/iam:troubleshoot', options)
72
+ command.request_representation = Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1TroubleshootIamPolicyRequest::Representation
73
+ command.request_object = google_cloud_policytroubleshooter_v1_troubleshoot_iam_policy_request_object
74
+ command.response_representation = Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1TroubleshootIamPolicyResponse::Representation
75
+ command.response_class = Google::Apis::PolicytroubleshooterV1::GoogleCloudPolicytroubleshooterV1TroubleshootIamPolicyResponse
76
+ command.query['fields'] = fields unless fields.nil?
77
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
78
+ execute_or_queue_command(command, &block)
79
+ end
80
+
81
+ protected
82
+
83
+ def apply_command_defaults(command)
84
+ command.query['key'] = key unless key.nil?
85
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
86
+ end
87
+ end
88
+ end
89
+ end
90
+ end
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/pubsub/docs
26
26
  module PubsubV1
27
27
  VERSION = 'V1'
28
- REVISION = '20191111'
28
+ REVISION = '20191203'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -66,6 +66,23 @@ module Google
66
66
  # account. For example, `my-other-app@appspot.gserviceaccount.com`.
67
67
  # * `group:`emailid``: An email address that represents a Google group.
68
68
  # For example, `admins@example.com`.
69
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
70
+ # identifier) representing a user that has been recently deleted. For
71
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
72
+ # recovered, this value reverts to `user:`emailid`` and the recovered user
73
+ # retains the role in the binding.
74
+ # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus
75
+ # unique identifier) representing a service account that has been recently
76
+ # deleted. For example,
77
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
78
+ # If the service account is undeleted, this value reverts to
79
+ # `serviceAccount:`emailid`` and the undeleted service account retains the
80
+ # role in the binding.
81
+ # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
82
+ # identifier) representing a Google group that has been recently
83
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
84
+ # the group is recovered, this value reverts to `group:`emailid`` and the
85
+ # recovered group retains the role in the binding.
69
86
  # * `domain:`domain``: The G Suite domain (primary) that represents all the
70
87
  # users of that domain. For example, `google.com` or `example.com`.
71
88
  # Corresponds to the JSON property `members`
@@ -458,16 +475,18 @@ module Google
458
475
  end
459
476
  end
460
477
 
461
- # Defines an Identity and Access Management (IAM) policy. It is used to
462
- # specify access control policies for Cloud Platform resources.
478
+ # An Identity and Access Management (IAM) policy, which specifies access
479
+ # controls for Google Cloud resources.
463
480
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more
464
481
  # `members` to a single `role`. Members can be user accounts, service accounts,
465
482
  # Google groups, and domains (such as G Suite). A `role` is a named list of
466
- # permissions (defined by IAM or configured by users). A `binding` can
467
- # optionally specify a `condition`, which is a logic expression that further
468
- # constrains the role binding based on attributes about the request and/or
469
- # target resource.
470
- # **JSON Example**
483
+ # permissions; each `role` can be an IAM predefined role or a user-created
484
+ # custom role.
485
+ # Optionally, a `binding` can specify a `condition`, which is a logical
486
+ # expression that allows access to a resource only if the expression evaluates
487
+ # to `true`. A condition can add constraints based on attributes of the
488
+ # request, the resource, or both.
489
+ # **JSON example:**
471
490
  # `
472
491
  # "bindings": [
473
492
  # `
@@ -485,13 +504,15 @@ module Google
485
504
  # "condition": `
486
505
  # "title": "expirable access",
487
506
  # "description": "Does not grant access after Sep 2020",
488
- # "expression": "request.time <
489
- # timestamp('2020-10-01T00:00:00.000Z')",
507
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
508
+ # ",
490
509
  # `
491
510
  # `
492
- # ]
511
+ # ],
512
+ # "etag": "BwWWja0YfJA=",
513
+ # "version": 3
493
514
  # `
494
- # **YAML Example**
515
+ # **YAML example:**
495
516
  # bindings:
496
517
  # - members:
497
518
  # - user:mike@example.com
@@ -506,14 +527,16 @@ module Google
506
527
  # title: expirable access
507
528
  # description: Does not grant access after Sep 2020
508
529
  # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
530
+ # - etag: BwWWja0YfJA=
531
+ # - version: 3
509
532
  # For a description of IAM and its features, see the
510
- # [IAM developer's guide](https://cloud.google.com/iam/docs).
533
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
511
534
  class Policy
512
535
  include Google::Apis::Core::Hashable
513
536
 
514
- # Associates a list of `members` to a `role`. Optionally may specify a
515
- # `condition` that determines when binding is in effect.
516
- # `bindings` with no members will result in an error.
537
+ # Associates a list of `members` to a `role`. Optionally, may specify a
538
+ # `condition` that determines how and when the `bindings` are applied. Each
539
+ # of the `bindings` must contain at least one member.
517
540
  # Corresponds to the JSON property `bindings`
518
541
  # @return [Array<Google::Apis::PubsubV1::Binding>]
519
542
  attr_accessor :bindings
@@ -525,26 +548,31 @@ module Google
525
548
  # conditions: An `etag` is returned in the response to `getIamPolicy`, and
526
549
  # systems are expected to put that etag in the request to `setIamPolicy` to
527
550
  # ensure that their change will be applied to the same version of the policy.
528
- # If no `etag` is provided in the call to `setIamPolicy`, then the existing
529
- # policy is overwritten. Due to blind-set semantics of an etag-less policy,
530
- # 'setIamPolicy' will not fail even if the incoming policy version does not
531
- # meet the requirements for modifying the stored policy.
551
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
552
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
553
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
554
+ # the conditions in the version `3` policy are lost.
532
555
  # Corresponds to the JSON property `etag`
533
556
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
534
557
  # @return [String]
535
558
  attr_accessor :etag
536
559
 
537
560
  # Specifies the format of the policy.
538
- # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
539
- # rejected.
540
- # Operations affecting conditional bindings must specify version 3. This can
541
- # be either setting a conditional policy, modifying a conditional binding,
542
- # or removing a binding (conditional or unconditional) from the stored
543
- # conditional policy.
544
- # Operations on non-conditional policies may specify any valid value or
545
- # leave the field unset.
546
- # If no etag is provided in the call to `setIamPolicy`, version compliance
547
- # checks against the stored policy is skipped.
561
+ # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
562
+ # are rejected.
563
+ # Any operation that affects conditional role bindings must specify version
564
+ # `3`. This requirement applies to the following operations:
565
+ # * Getting a policy that includes a conditional role binding
566
+ # * Adding a conditional role binding to a policy
567
+ # * Changing a conditional role binding in a policy
568
+ # * Removing any role binding, with or without a condition, from a policy
569
+ # that includes conditions
570
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
571
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
572
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
573
+ # the conditions in the version `3` policy are lost.
574
+ # If a policy does not include any conditions, operations on that policy may
575
+ # specify any valid version or leave the field unset.
548
576
  # Corresponds to the JSON property `version`
549
577
  # @return [Fixnum]
550
578
  attr_accessor :version
@@ -841,16 +869,18 @@ module Google
841
869
  class SetIamPolicyRequest
842
870
  include Google::Apis::Core::Hashable
843
871
 
844
- # Defines an Identity and Access Management (IAM) policy. It is used to
845
- # specify access control policies for Cloud Platform resources.
872
+ # An Identity and Access Management (IAM) policy, which specifies access
873
+ # controls for Google Cloud resources.
846
874
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more
847
875
  # `members` to a single `role`. Members can be user accounts, service accounts,
848
876
  # Google groups, and domains (such as G Suite). A `role` is a named list of
849
- # permissions (defined by IAM or configured by users). A `binding` can
850
- # optionally specify a `condition`, which is a logic expression that further
851
- # constrains the role binding based on attributes about the request and/or
852
- # target resource.
853
- # **JSON Example**
877
+ # permissions; each `role` can be an IAM predefined role or a user-created
878
+ # custom role.
879
+ # Optionally, a `binding` can specify a `condition`, which is a logical
880
+ # expression that allows access to a resource only if the expression evaluates
881
+ # to `true`. A condition can add constraints based on attributes of the
882
+ # request, the resource, or both.
883
+ # **JSON example:**
854
884
  # `
855
885
  # "bindings": [
856
886
  # `
@@ -868,13 +898,15 @@ module Google
868
898
  # "condition": `
869
899
  # "title": "expirable access",
870
900
  # "description": "Does not grant access after Sep 2020",
871
- # "expression": "request.time <
872
- # timestamp('2020-10-01T00:00:00.000Z')",
901
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
902
+ # ",
873
903
  # `
874
904
  # `
875
- # ]
905
+ # ],
906
+ # "etag": "BwWWja0YfJA=",
907
+ # "version": 3
876
908
  # `
877
- # **YAML Example**
909
+ # **YAML example:**
878
910
  # bindings:
879
911
  # - members:
880
912
  # - user:mike@example.com
@@ -889,8 +921,10 @@ module Google
889
921
  # title: expirable access
890
922
  # description: Does not grant access after Sep 2020
891
923
  # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
924
+ # - etag: BwWWja0YfJA=
925
+ # - version: 3
892
926
  # For a description of IAM and its features, see the
893
- # [IAM developer's guide](https://cloud.google.com/iam/docs).
927
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
894
928
  # Corresponds to the JSON property `policy`
895
929
  # @return [Google::Apis::PubsubV1::Policy]
896
930
  attr_accessor :policy