google-api-client 0.11.1 → 0.11.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (252) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/api_names.yaml +42335 -1
  4. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +3 -3
  5. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +28 -28
  6. data/generated/google/apis/acceleratedmobilepageurl_v1/representations.rb +12 -12
  7. data/generated/google/apis/acceleratedmobilepageurl_v1/service.rb +2 -2
  8. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +757 -757
  10. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +162 -162
  11. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +48 -48
  12. data/generated/google/apis/admin_directory_v1.rb +1 -1
  13. data/generated/google/apis/admin_directory_v1/classes.rb +75 -7
  14. data/generated/google/apis/admin_directory_v1/representations.rb +20 -0
  15. data/generated/google/apis/admin_directory_v1/service.rb +61 -61
  16. data/generated/google/apis/adsense_v1_4.rb +1 -1
  17. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  18. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  19. data/generated/google/apis/analyticsreporting_v4/classes.rb +403 -403
  20. data/generated/google/apis/analyticsreporting_v4/representations.rb +108 -108
  21. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  22. data/generated/google/apis/androidenterprise_v1/classes.rb +36 -11
  23. data/generated/google/apis/androidenterprise_v1/representations.rb +2 -0
  24. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  25. data/generated/google/apis/appengine_v1.rb +6 -5
  26. data/generated/google/apis/appengine_v1/classes.rb +1429 -1421
  27. data/generated/google/apis/appengine_v1/representations.rb +331 -331
  28. data/generated/google/apis/appengine_v1/service.rb +173 -168
  29. data/generated/google/apis/appstate_v1.rb +1 -1
  30. data/generated/google/apis/bigquery_v2.rb +1 -1
  31. data/generated/google/apis/calendar_v3.rb +1 -1
  32. data/generated/google/apis/classroom_v1.rb +1 -1
  33. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  34. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  35. data/generated/google/apis/cloudbuild_v1/classes.rb +624 -618
  36. data/generated/google/apis/cloudbuild_v1/representations.rb +126 -125
  37. data/generated/google/apis/cloudbuild_v1/service.rb +87 -87
  38. data/generated/google/apis/clouddebugger_v2.rb +4 -4
  39. data/generated/google/apis/clouddebugger_v2/classes.rb +267 -267
  40. data/generated/google/apis/clouddebugger_v2/representations.rb +83 -83
  41. data/generated/google/apis/clouddebugger_v2/service.rb +137 -137
  42. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  43. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +131 -131
  44. data/generated/google/apis/clouderrorreporting_v1beta1/representations.rb +28 -28
  45. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +17 -17
  46. data/generated/google/apis/cloudfunctions_v1.rb +1 -4
  47. data/generated/google/apis/cloudfunctions_v1/classes.rb +7 -47
  48. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -17
  49. data/generated/google/apis/cloudfunctions_v1/service.rb +0 -30
  50. data/generated/google/apis/cloudkms_v1.rb +1 -1
  51. data/generated/google/apis/cloudkms_v1/classes.rb +625 -625
  52. data/generated/google/apis/cloudkms_v1/representations.rb +132 -132
  53. data/generated/google/apis/cloudkms_v1/service.rb +272 -272
  54. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  55. data/generated/google/apis/cloudresourcemanager_v1.rb +4 -4
  56. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +242 -242
  57. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +43 -43
  58. data/generated/google/apis/cloudresourcemanager_v1/service.rb +505 -505
  59. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +4 -4
  60. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +172 -172
  61. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +39 -39
  62. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +310 -310
  63. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  64. data/generated/google/apis/cloudtrace_v1/classes.rb +96 -69
  65. data/generated/google/apis/cloudtrace_v1/representations.rb +16 -16
  66. data/generated/google/apis/cloudtrace_v1/service.rb +42 -15
  67. data/generated/google/apis/compute_beta.rb +1 -1
  68. data/generated/google/apis/compute_beta/classes.rb +194 -25
  69. data/generated/google/apis/compute_beta/representations.rb +42 -0
  70. data/generated/google/apis/compute_beta/service.rb +196 -100
  71. data/generated/google/apis/compute_v1.rb +1 -1
  72. data/generated/google/apis/compute_v1/classes.rb +69 -18
  73. data/generated/google/apis/compute_v1/representations.rb +16 -0
  74. data/generated/google/apis/compute_v1/service.rb +84 -26
  75. data/generated/google/apis/container_v1.rb +3 -3
  76. data/generated/google/apis/container_v1/classes.rb +794 -586
  77. data/generated/google/apis/container_v1/representations.rb +202 -118
  78. data/generated/google/apis/container_v1/service.rb +396 -167
  79. data/generated/google/apis/content_v2.rb +1 -1
  80. data/generated/google/apis/content_v2/service.rb +4 -4
  81. data/generated/google/apis/dataproc_v1.rb +1 -1
  82. data/generated/google/apis/dataproc_v1/classes.rb +487 -484
  83. data/generated/google/apis/dataproc_v1/representations.rb +83 -83
  84. data/generated/google/apis/dataproc_v1/service.rb +299 -297
  85. data/generated/google/apis/datastore_v1.rb +1 -1
  86. data/generated/google/apis/datastore_v1/classes.rb +703 -703
  87. data/generated/google/apis/datastore_v1/representations.rb +148 -148
  88. data/generated/google/apis/datastore_v1/service.rb +62 -62
  89. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  90. data/generated/google/apis/deploymentmanager_v2/classes.rb +7 -5
  91. data/generated/google/apis/dfareporting_v2_6.rb +1 -1
  92. data/generated/google/apis/dfareporting_v2_6/classes.rb +66 -53
  93. data/generated/google/apis/dfareporting_v2_6/service.rb +30 -30
  94. data/generated/google/apis/dfareporting_v2_7.rb +1 -1
  95. data/generated/google/apis/dfareporting_v2_7/classes.rb +69 -55
  96. data/generated/google/apis/dfareporting_v2_7/service.rb +38 -37
  97. data/generated/google/apis/dfareporting_v2_8.rb +40 -0
  98. data/generated/google/apis/dfareporting_v2_8/classes.rb +12046 -0
  99. data/generated/google/apis/dfareporting_v2_8/representations.rb +4310 -0
  100. data/generated/google/apis/dfareporting_v2_8/service.rb +9135 -0
  101. data/generated/google/apis/dns_v1.rb +1 -1
  102. data/generated/google/apis/dns_v2beta1.rb +1 -1
  103. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  104. data/generated/google/apis/drive_v2.rb +1 -1
  105. data/generated/google/apis/drive_v2/classes.rb +15 -0
  106. data/generated/google/apis/drive_v2/representations.rb +2 -0
  107. data/generated/google/apis/drive_v2/service.rb +2 -1
  108. data/generated/google/apis/drive_v3.rb +1 -1
  109. data/generated/google/apis/drive_v3/classes.rb +16 -0
  110. data/generated/google/apis/drive_v3/representations.rb +2 -0
  111. data/generated/google/apis/drive_v3/service.rb +2 -1
  112. data/generated/google/apis/firebasedynamiclinks_v1.rb +2 -3
  113. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +159 -159
  114. data/generated/google/apis/firebasedynamiclinks_v1/representations.rb +55 -55
  115. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +5 -6
  116. data/generated/google/apis/firebaserules_v1.rb +1 -1
  117. data/generated/google/apis/firebaserules_v1/classes.rb +73 -73
  118. data/generated/google/apis/firebaserules_v1/representations.rb +25 -25
  119. data/generated/google/apis/firebaserules_v1/service.rb +118 -118
  120. data/generated/google/apis/fusiontables_v2.rb +1 -1
  121. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  122. data/generated/google/apis/games_management_v1management.rb +1 -1
  123. data/generated/google/apis/games_v1.rb +1 -1
  124. data/generated/google/apis/genomics_v1.rb +1 -1
  125. data/generated/google/apis/genomics_v1/classes.rb +920 -920
  126. data/generated/google/apis/genomics_v1/representations.rb +202 -202
  127. data/generated/google/apis/genomics_v1/service.rb +1092 -1092
  128. data/generated/google/apis/gmail_v1.rb +1 -1
  129. data/generated/google/apis/iam_v1.rb +1 -1
  130. data/generated/google/apis/iam_v1/classes.rb +455 -435
  131. data/generated/google/apis/iam_v1/representations.rb +96 -93
  132. data/generated/google/apis/iam_v1/service.rb +157 -157
  133. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  134. data/generated/google/apis/identitytoolkit_v3/classes.rb +12 -0
  135. data/generated/google/apis/identitytoolkit_v3/representations.rb +2 -0
  136. data/generated/google/apis/kgsearch_v1/classes.rb +6 -6
  137. data/generated/google/apis/kgsearch_v1/representations.rb +1 -1
  138. data/generated/google/apis/kgsearch_v1/service.rb +9 -9
  139. data/generated/google/apis/language_v1.rb +1 -1
  140. data/generated/google/apis/language_v1/classes.rb +455 -455
  141. data/generated/google/apis/language_v1/representations.rb +102 -102
  142. data/generated/google/apis/language_v1/service.rb +42 -42
  143. data/generated/google/apis/language_v1beta1.rb +1 -1
  144. data/generated/google/apis/language_v1beta1/classes.rb +216 -215
  145. data/generated/google/apis/language_v1beta1/representations.rb +75 -75
  146. data/generated/google/apis/language_v1beta1/service.rb +45 -45
  147. data/generated/google/apis/logging_v2.rb +1 -1
  148. data/generated/google/apis/logging_v2/classes.rb +908 -895
  149. data/generated/google/apis/logging_v2/representations.rb +121 -120
  150. data/generated/google/apis/logging_v2/service.rb +489 -489
  151. data/generated/google/apis/logging_v2beta1.rb +4 -4
  152. data/generated/google/apis/logging_v2beta1/classes.rb +928 -915
  153. data/generated/google/apis/logging_v2beta1/representations.rb +121 -120
  154. data/generated/google/apis/logging_v2beta1/service.rb +249 -249
  155. data/generated/google/apis/manufacturers_v1.rb +1 -1
  156. data/generated/google/apis/manufacturers_v1/classes.rb +294 -294
  157. data/generated/google/apis/manufacturers_v1/representations.rb +84 -84
  158. data/generated/google/apis/manufacturers_v1/service.rb +8 -8
  159. data/generated/google/apis/mirror_v1.rb +1 -1
  160. data/generated/google/apis/ml_v1.rb +1 -1
  161. data/generated/google/apis/ml_v1/classes.rb +1186 -1183
  162. data/generated/google/apis/ml_v1/representations.rb +177 -177
  163. data/generated/google/apis/ml_v1/service.rb +244 -244
  164. data/generated/google/apis/monitoring_v3.rb +1 -1
  165. data/generated/google/apis/monitoring_v3/classes.rb +866 -866
  166. data/generated/google/apis/monitoring_v3/representations.rb +163 -163
  167. data/generated/google/apis/monitoring_v3/service.rb +355 -316
  168. data/generated/google/apis/oauth2_v2.rb +1 -1
  169. data/generated/google/apis/partners_v2.rb +1 -1
  170. data/generated/google/apis/partners_v2/classes.rb +1499 -1499
  171. data/generated/google/apis/partners_v2/representations.rb +368 -368
  172. data/generated/google/apis/partners_v2/service.rb +512 -512
  173. data/generated/google/apis/people_v1.rb +10 -10
  174. data/generated/google/apis/people_v1/classes.rb +544 -423
  175. data/generated/google/apis/people_v1/representations.rb +127 -109
  176. data/generated/google/apis/people_v1/service.rb +8 -8
  177. data/generated/google/apis/plus_domains_v1.rb +1 -1
  178. data/generated/google/apis/plus_v1.rb +1 -1
  179. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  180. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +200 -200
  181. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +41 -41
  182. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +80 -80
  183. data/generated/google/apis/pubsub_v1.rb +1 -1
  184. data/generated/google/apis/pubsub_v1/classes.rb +377 -377
  185. data/generated/google/apis/pubsub_v1/representations.rb +82 -82
  186. data/generated/google/apis/pubsub_v1/service.rb +93 -93
  187. data/generated/google/apis/runtimeconfig_v1.rb +6 -4
  188. data/generated/google/apis/runtimeconfig_v1/classes.rb +22 -22
  189. data/generated/google/apis/runtimeconfig_v1/representations.rb +2 -2
  190. data/generated/google/apis/runtimeconfig_v1/service.rb +57 -55
  191. data/generated/google/apis/script_v1.rb +14 -14
  192. data/generated/google/apis/script_v1/classes.rb +113 -58
  193. data/generated/google/apis/script_v1/representations.rb +43 -14
  194. data/generated/google/apis/script_v1/service.rb +6 -6
  195. data/generated/google/apis/searchconsole_v1.rb +1 -1
  196. data/generated/google/apis/searchconsole_v1/classes.rb +67 -67
  197. data/generated/google/apis/searchconsole_v1/representations.rb +29 -29
  198. data/generated/google/apis/searchconsole_v1/service.rb +6 -6
  199. data/generated/google/apis/servicecontrol_v1.rb +4 -4
  200. data/generated/google/apis/servicecontrol_v1/classes.rb +1125 -1125
  201. data/generated/google/apis/servicecontrol_v1/representations.rb +213 -213
  202. data/generated/google/apis/servicecontrol_v1/service.rb +92 -92
  203. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  204. data/generated/google/apis/servicemanagement_v1/classes.rb +3364 -3622
  205. data/generated/google/apis/servicemanagement_v1/representations.rb +546 -530
  206. data/generated/google/apis/servicemanagement_v1/service.rb +262 -152
  207. data/generated/google/apis/serviceuser_v1.rb +4 -4
  208. data/generated/google/apis/serviceuser_v1/classes.rb +2616 -2874
  209. data/generated/google/apis/serviceuser_v1/representations.rb +294 -278
  210. data/generated/google/apis/serviceuser_v1/service.rb +19 -19
  211. data/generated/google/apis/sheets_v4.rb +4 -1
  212. data/generated/google/apis/sheets_v4/classes.rb +4315 -4313
  213. data/generated/google/apis/sheets_v4/representations.rb +858 -858
  214. data/generated/google/apis/sheets_v4/service.rb +115 -115
  215. data/generated/google/apis/slides_v1.rb +1 -1
  216. data/generated/google/apis/slides_v1/classes.rb +2890 -2890
  217. data/generated/google/apis/slides_v1/representations.rb +638 -638
  218. data/generated/google/apis/slides_v1/service.rb +36 -36
  219. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  220. data/generated/google/apis/sourcerepo_v1/classes.rb +283 -283
  221. data/generated/google/apis/sourcerepo_v1/representations.rb +67 -67
  222. data/generated/google/apis/sourcerepo_v1/service.rb +88 -88
  223. data/generated/google/apis/spanner_v1.rb +1 -1
  224. data/generated/google/apis/spanner_v1/classes.rb +2258 -2233
  225. data/generated/google/apis/spanner_v1/representations.rb +325 -325
  226. data/generated/google/apis/spanner_v1/service.rb +466 -466
  227. data/generated/google/apis/speech_v1beta1.rb +2 -2
  228. data/generated/google/apis/speech_v1beta1/classes.rb +97 -97
  229. data/generated/google/apis/speech_v1beta1/representations.rb +29 -29
  230. data/generated/google/apis/speech_v1beta1/service.rb +49 -49
  231. data/generated/google/apis/storage_v1.rb +1 -1
  232. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  233. data/generated/google/apis/storagetransfer_v1/classes.rb +786 -786
  234. data/generated/google/apis/storagetransfer_v1/representations.rb +133 -133
  235. data/generated/google/apis/storagetransfer_v1/service.rb +30 -30
  236. data/generated/google/apis/surveys_v2.rb +1 -1
  237. data/generated/google/apis/surveys_v2/classes.rb +0 -12
  238. data/generated/google/apis/surveys_v2/representations.rb +0 -4
  239. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  240. data/generated/google/apis/vision_v1.rb +1 -1
  241. data/generated/google/apis/vision_v1/classes.rb +1301 -1302
  242. data/generated/google/apis/vision_v1/representations.rb +183 -183
  243. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  244. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  245. data/generated/google/apis/youtube_partner_v1/classes.rb +10 -0
  246. data/generated/google/apis/youtube_partner_v1/representations.rb +1 -0
  247. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  248. data/generated/google/apis/youtubereporting_v1/classes.rb +64 -64
  249. data/generated/google/apis/youtubereporting_v1/representations.rb +12 -12
  250. data/generated/google/apis/youtubereporting_v1/service.rb +94 -94
  251. data/lib/google/apis/version.rb +1 -1
  252. metadata +7 -3
@@ -22,6 +22,12 @@ module Google
22
22
  module Apis
23
23
  module ClouderrorreportingV1beta1
24
24
 
25
+ class ErrorEvent
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
25
31
  class ReportedErrorEvent
26
32
  class Representation < Google::Apis::Core::JsonRepresentation; end
27
33
 
@@ -101,9 +107,15 @@ module Google
101
107
  end
102
108
 
103
109
  class ErrorEvent
104
- class Representation < Google::Apis::Core::JsonRepresentation; end
110
+ # @private
111
+ class Representation < Google::Apis::Core::JsonRepresentation
112
+ property :context, as: 'context', class: Google::Apis::ClouderrorreportingV1beta1::ErrorContext, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorContext::Representation
105
113
 
106
- include Google::Apis::Core::JsonObjectSupport
114
+ property :message, as: 'message'
115
+ property :service_context, as: 'serviceContext', class: Google::Apis::ClouderrorreportingV1beta1::ServiceContext, decorator: Google::Apis::ClouderrorreportingV1beta1::ServiceContext::Representation
116
+
117
+ property :event_time, as: 'eventTime'
118
+ end
107
119
  end
108
120
 
109
121
  class ReportedErrorEvent
@@ -121,11 +133,11 @@ module Google
121
133
  class ErrorContext
122
134
  # @private
123
135
  class Representation < Google::Apis::Core::JsonRepresentation
136
+ property :user, as: 'user'
124
137
  property :report_location, as: 'reportLocation', class: Google::Apis::ClouderrorreportingV1beta1::SourceLocation, decorator: Google::Apis::ClouderrorreportingV1beta1::SourceLocation::Representation
125
138
 
126
139
  property :http_request, as: 'httpRequest', class: Google::Apis::ClouderrorreportingV1beta1::HttpRequestContext, decorator: Google::Apis::ClouderrorreportingV1beta1::HttpRequestContext::Representation
127
140
 
128
- property :user, as: 'user'
129
141
  end
130
142
  end
131
143
 
@@ -139,66 +151,66 @@ module Google
139
151
  class ErrorGroupStats
140
152
  # @private
141
153
  class Representation < Google::Apis::Core::JsonRepresentation
142
- collection :affected_services, as: 'affectedServices', class: Google::Apis::ClouderrorreportingV1beta1::ServiceContext, decorator: Google::Apis::ClouderrorreportingV1beta1::ServiceContext::Representation
143
-
144
- property :num_affected_services, as: 'numAffectedServices'
145
- property :representative, as: 'representative', class: Google::Apis::ClouderrorreportingV1beta1::ErrorEvent, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorEvent::Representation
146
-
147
- collection :timed_counts, as: 'timedCounts', class: Google::Apis::ClouderrorreportingV1beta1::TimedCount, decorator: Google::Apis::ClouderrorreportingV1beta1::TimedCount::Representation
148
-
149
154
  property :group, as: 'group', class: Google::Apis::ClouderrorreportingV1beta1::ErrorGroup, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorGroup::Representation
150
155
 
151
156
  property :first_seen_time, as: 'firstSeenTime'
152
157
  property :count, :numeric_string => true, as: 'count'
153
158
  property :affected_users_count, :numeric_string => true, as: 'affectedUsersCount'
154
159
  property :last_seen_time, as: 'lastSeenTime'
160
+ property :num_affected_services, as: 'numAffectedServices'
161
+ collection :affected_services, as: 'affectedServices', class: Google::Apis::ClouderrorreportingV1beta1::ServiceContext, decorator: Google::Apis::ClouderrorreportingV1beta1::ServiceContext::Representation
162
+
163
+ property :representative, as: 'representative', class: Google::Apis::ClouderrorreportingV1beta1::ErrorEvent, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorEvent::Representation
164
+
165
+ collection :timed_counts, as: 'timedCounts', class: Google::Apis::ClouderrorreportingV1beta1::TimedCount, decorator: Google::Apis::ClouderrorreportingV1beta1::TimedCount::Representation
166
+
155
167
  end
156
168
  end
157
169
 
158
170
  class ListEventsResponse
159
171
  # @private
160
172
  class Representation < Google::Apis::Core::JsonRepresentation
173
+ property :time_range_begin, as: 'timeRangeBegin'
161
174
  collection :error_events, as: 'errorEvents', class: Google::Apis::ClouderrorreportingV1beta1::ErrorEvent, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorEvent::Representation
162
175
 
163
176
  property :next_page_token, as: 'nextPageToken'
164
- property :time_range_begin, as: 'timeRangeBegin'
165
177
  end
166
178
  end
167
179
 
168
180
  class TimedCount
169
181
  # @private
170
182
  class Representation < Google::Apis::Core::JsonRepresentation
171
- property :end_time, as: 'endTime'
172
183
  property :count, :numeric_string => true, as: 'count'
173
184
  property :start_time, as: 'startTime'
185
+ property :end_time, as: 'endTime'
174
186
  end
175
187
  end
176
188
 
177
189
  class ErrorGroup
178
190
  # @private
179
191
  class Representation < Google::Apis::Core::JsonRepresentation
192
+ property :name, as: 'name'
180
193
  property :group_id, as: 'groupId'
181
194
  collection :tracking_issues, as: 'trackingIssues', class: Google::Apis::ClouderrorreportingV1beta1::TrackingIssue, decorator: Google::Apis::ClouderrorreportingV1beta1::TrackingIssue::Representation
182
195
 
183
- property :name, as: 'name'
184
196
  end
185
197
  end
186
198
 
187
199
  class ServiceContext
188
200
  # @private
189
201
  class Representation < Google::Apis::Core::JsonRepresentation
202
+ property :version, as: 'version'
190
203
  property :service, as: 'service'
191
204
  property :resource_type, as: 'resourceType'
192
- property :version, as: 'version'
193
205
  end
194
206
  end
195
207
 
196
208
  class SourceLocation
197
209
  # @private
198
210
  class Representation < Google::Apis::Core::JsonRepresentation
211
+ property :function_name, as: 'functionName'
199
212
  property :file_path, as: 'filePath'
200
213
  property :line_number, as: 'lineNumber'
201
- property :function_name, as: 'functionName'
202
214
  end
203
215
  end
204
216
 
@@ -223,10 +235,10 @@ module Google
223
235
  class ListGroupStatsResponse
224
236
  # @private
225
237
  class Representation < Google::Apis::Core::JsonRepresentation
226
- property :next_page_token, as: 'nextPageToken'
227
238
  property :time_range_begin, as: 'timeRangeBegin'
228
239
  collection :error_group_stats, as: 'errorGroupStats', class: Google::Apis::ClouderrorreportingV1beta1::ErrorGroupStats, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorGroupStats::Representation
229
240
 
241
+ property :next_page_token, as: 'nextPageToken'
230
242
  end
231
243
  end
232
244
 
@@ -235,18 +247,6 @@ module Google
235
247
  class Representation < Google::Apis::Core::JsonRepresentation
236
248
  end
237
249
  end
238
-
239
- class ErrorEvent
240
- # @private
241
- class Representation < Google::Apis::Core::JsonRepresentation
242
- property :context, as: 'context', class: Google::Apis::ClouderrorreportingV1beta1::ErrorContext, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorContext::Representation
243
-
244
- property :message, as: 'message'
245
- property :service_context, as: 'serviceContext', class: Google::Apis::ClouderrorreportingV1beta1::ServiceContext, decorator: Google::Apis::ClouderrorreportingV1beta1::ServiceContext::Representation
246
-
247
- property :event_time, as: 'eventTime'
248
- end
249
- end
250
250
  end
251
251
  end
252
252
  end
@@ -134,14 +134,12 @@ module Google
134
134
  # [Google Cloud Platform project
135
135
  # ID](https://support.google.com/cloud/answer/6158840).
136
136
  # Example: `projects/my-project-123`.
137
- # @param [String] group_id
138
- # [Required] The group for which events shall be returned.
137
+ # @param [String] page_token
138
+ # [Optional] A `next_page_token` provided by a previous response.
139
139
  # @param [String] service_filter_service
140
140
  # [Optional] The exact value to match against
141
141
  # [`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/
142
142
  # ServiceContext#FIELDS.service).
143
- # @param [String] page_token
144
- # [Optional] A `next_page_token` provided by a previous response.
145
143
  # @param [Fixnum] page_size
146
144
  # [Optional] The maximum number of results to return per response.
147
145
  # @param [String] service_filter_version
@@ -154,6 +152,8 @@ module Google
154
152
  # ServiceContext#FIELDS.resource_type).
155
153
  # @param [String] time_range_period
156
154
  # Restricts the query to the specified time range.
155
+ # @param [String] group_id
156
+ # [Required] The group for which events shall be returned.
157
157
  # @param [String] fields
158
158
  # Selector specifying which fields to include in a partial response.
159
159
  # @param [String] quota_user
@@ -171,18 +171,18 @@ module Google
171
171
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
172
172
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
173
173
  # @raise [Google::Apis::AuthorizationError] Authorization is required
174
- def list_project_events(project_name, group_id: nil, service_filter_service: nil, page_token: nil, page_size: nil, service_filter_version: nil, service_filter_resource_type: nil, time_range_period: nil, fields: nil, quota_user: nil, options: nil, &block)
174
+ def list_project_events(project_name, page_token: nil, service_filter_service: nil, page_size: nil, service_filter_version: nil, service_filter_resource_type: nil, time_range_period: nil, group_id: nil, fields: nil, quota_user: nil, options: nil, &block)
175
175
  command = make_simple_command(:get, 'v1beta1/{+projectName}/events', options)
176
176
  command.response_representation = Google::Apis::ClouderrorreportingV1beta1::ListEventsResponse::Representation
177
177
  command.response_class = Google::Apis::ClouderrorreportingV1beta1::ListEventsResponse
178
178
  command.params['projectName'] = project_name unless project_name.nil?
179
- command.query['groupId'] = group_id unless group_id.nil?
180
- command.query['serviceFilter.service'] = service_filter_service unless service_filter_service.nil?
181
179
  command.query['pageToken'] = page_token unless page_token.nil?
180
+ command.query['serviceFilter.service'] = service_filter_service unless service_filter_service.nil?
182
181
  command.query['pageSize'] = page_size unless page_size.nil?
183
182
  command.query['serviceFilter.version'] = service_filter_version unless service_filter_version.nil?
184
183
  command.query['serviceFilter.resourceType'] = service_filter_resource_type unless service_filter_resource_type.nil?
185
184
  command.query['timeRange.period'] = time_range_period unless time_range_period.nil?
185
+ command.query['groupId'] = group_id unless group_id.nil?
186
186
  command.query['fields'] = fields unless fields.nil?
187
187
  command.query['quotaUser'] = quota_user unless quota_user.nil?
188
188
  execute_or_queue_command(command, &block)
@@ -266,10 +266,6 @@ module Google
266
266
  # <a href="https://support.google.com/cloud/answer/6158840">Google Cloud
267
267
  # Platform project ID</a>.
268
268
  # Example: <code>projects/my-project-123</code>.
269
- # @param [String] page_token
270
- # [Optional] A `next_page_token` provided by a previous response. To view
271
- # additional results, pass this token along with the identical query
272
- # parameters as the first request.
273
269
  # @param [String] time_range_period
274
270
  # Restricts the query to the specified time range.
275
271
  # @param [String] alignment
@@ -291,16 +287,20 @@ module Google
291
287
  # [Optional] The exact value to match against
292
288
  # [`ServiceContext.version`](/error-reporting/reference/rest/v1beta1/
293
289
  # ServiceContext#FIELDS.version).
294
- # @param [String] alignment_time
295
- # [Optional] Time where the timed counts shall be aligned if rounded
296
- # alignment is chosen. Default is 00:00 UTC.
297
290
  # @param [String] service_filter_resource_type
298
291
  # [Optional] The exact value to match against
299
292
  # [`ServiceContext.resource_type`](/error-reporting/reference/rest/v1beta1/
300
293
  # ServiceContext#FIELDS.resource_type).
294
+ # @param [String] alignment_time
295
+ # [Optional] Time where the timed counts shall be aligned if rounded
296
+ # alignment is chosen. Default is 00:00 UTC.
301
297
  # @param [String] timed_count_duration
302
298
  # [Optional] The preferred duration for a single returned `TimedCount`.
303
299
  # If not set, no timed counts are returned.
300
+ # @param [String] page_token
301
+ # [Optional] A `next_page_token` provided by a previous response. To view
302
+ # additional results, pass this token along with the identical query
303
+ # parameters as the first request.
304
304
  # @param [String] fields
305
305
  # Selector specifying which fields to include in a partial response.
306
306
  # @param [String] quota_user
@@ -318,12 +318,11 @@ module Google
318
318
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
319
319
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
320
320
  # @raise [Google::Apis::AuthorizationError] Authorization is required
321
- def list_project_group_stats(project_name, page_token: nil, time_range_period: nil, alignment: nil, group_id: nil, service_filter_service: nil, page_size: nil, order: nil, service_filter_version: nil, alignment_time: nil, service_filter_resource_type: nil, timed_count_duration: nil, fields: nil, quota_user: nil, options: nil, &block)
321
+ def list_project_group_stats(project_name, time_range_period: nil, alignment: nil, group_id: nil, service_filter_service: nil, page_size: nil, order: nil, service_filter_version: nil, service_filter_resource_type: nil, alignment_time: nil, timed_count_duration: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
322
322
  command = make_simple_command(:get, 'v1beta1/{+projectName}/groupStats', options)
323
323
  command.response_representation = Google::Apis::ClouderrorreportingV1beta1::ListGroupStatsResponse::Representation
324
324
  command.response_class = Google::Apis::ClouderrorreportingV1beta1::ListGroupStatsResponse
325
325
  command.params['projectName'] = project_name unless project_name.nil?
326
- command.query['pageToken'] = page_token unless page_token.nil?
327
326
  command.query['timeRange.period'] = time_range_period unless time_range_period.nil?
328
327
  command.query['alignment'] = alignment unless alignment.nil?
329
328
  command.query['groupId'] = group_id unless group_id.nil?
@@ -331,9 +330,10 @@ module Google
331
330
  command.query['pageSize'] = page_size unless page_size.nil?
332
331
  command.query['order'] = order unless order.nil?
333
332
  command.query['serviceFilter.version'] = service_filter_version unless service_filter_version.nil?
334
- command.query['alignmentTime'] = alignment_time unless alignment_time.nil?
335
333
  command.query['serviceFilter.resourceType'] = service_filter_resource_type unless service_filter_resource_type.nil?
334
+ command.query['alignmentTime'] = alignment_time unless alignment_time.nil?
336
335
  command.query['timedCountDuration'] = timed_count_duration unless timed_count_duration.nil?
336
+ command.query['pageToken'] = page_token unless page_token.nil?
337
337
  command.query['fields'] = fields unless fields.nil?
338
338
  command.query['quotaUser'] = quota_user unless quota_user.nil?
339
339
  execute_or_queue_command(command, &block)
@@ -26,10 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/functions
27
27
  module CloudfunctionsV1
28
28
  VERSION = 'V1'
29
- REVISION = '20170328'
30
-
31
- # View and manage your data across Google Cloud Platform services
32
- AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
29
+ REVISION = '20170425'
33
30
  end
34
31
  end
35
32
  end
@@ -22,50 +22,16 @@ module Google
22
22
  module Apis
23
23
  module CloudfunctionsV1
24
24
 
25
- # A resource that represents Google Cloud Platform location.
26
- class Location
27
- include Google::Apis::Core::Hashable
28
-
29
- # Service-specific metadata. For example the available capacity at the given
30
- # location.
31
- # Corresponds to the JSON property `metadata`
32
- # @return [Hash<String,Object>]
33
- attr_accessor :metadata
34
-
35
- # Cross-service attributes for the location. For example
36
- # `"cloud.googleapis.com/region": "us-east1"`
37
- # Corresponds to the JSON property `labels`
38
- # @return [Hash<String,String>]
39
- attr_accessor :labels
40
-
41
- # Resource name for the location, which may vary between implementations.
42
- # For example: `"projects/example-project/locations/us-east1"`
43
- # Corresponds to the JSON property `name`
44
- # @return [String]
45
- attr_accessor :name
46
-
47
- # The canonical id for this location. For example: `"us-east1"`.
48
- # Corresponds to the JSON property `locationId`
49
- # @return [String]
50
- attr_accessor :location_id
51
-
52
- def initialize(**args)
53
- update!(**args)
54
- end
55
-
56
- # Update properties of this object
57
- def update!(**args)
58
- @metadata = args[:metadata] if args.key?(:metadata)
59
- @labels = args[:labels] if args.key?(:labels)
60
- @name = args[:name] if args.key?(:name)
61
- @location_id = args[:location_id] if args.key?(:location_id)
62
- end
63
- end
64
-
65
25
  # Metadata describing an Operation
66
26
  class OperationMetadataV1Beta2
67
27
  include Google::Apis::Core::Hashable
68
28
 
29
+ # Target of the operation - for example
30
+ # projects/project-1/locations/region-1/functions/function-1
31
+ # Corresponds to the JSON property `target`
32
+ # @return [String]
33
+ attr_accessor :target
34
+
69
35
  # The original request that started the operation.
70
36
  # Corresponds to the JSON property `request`
71
37
  # @return [Hash<String,Object>]
@@ -76,21 +42,15 @@ module Google
76
42
  # @return [String]
77
43
  attr_accessor :type
78
44
 
79
- # Target of the operation - for example
80
- # projects/project-1/locations/region-1/functions/function-1
81
- # Corresponds to the JSON property `target`
82
- # @return [String]
83
- attr_accessor :target
84
-
85
45
  def initialize(**args)
86
46
  update!(**args)
87
47
  end
88
48
 
89
49
  # Update properties of this object
90
50
  def update!(**args)
51
+ @target = args[:target] if args.key?(:target)
91
52
  @request = args[:request] if args.key?(:request)
92
53
  @type = args[:type] if args.key?(:type)
93
- @target = args[:target] if args.key?(:target)
94
54
  end
95
55
  end
96
56
  end
@@ -22,34 +22,18 @@ module Google
22
22
  module Apis
23
23
  module CloudfunctionsV1
24
24
 
25
- class Location
26
- class Representation < Google::Apis::Core::JsonRepresentation; end
27
-
28
- include Google::Apis::Core::JsonObjectSupport
29
- end
30
-
31
25
  class OperationMetadataV1Beta2
32
26
  class Representation < Google::Apis::Core::JsonRepresentation; end
33
27
 
34
28
  include Google::Apis::Core::JsonObjectSupport
35
29
  end
36
30
 
37
- class Location
38
- # @private
39
- class Representation < Google::Apis::Core::JsonRepresentation
40
- hash :metadata, as: 'metadata'
41
- hash :labels, as: 'labels'
42
- property :name, as: 'name'
43
- property :location_id, as: 'locationId'
44
- end
45
- end
46
-
47
31
  class OperationMetadataV1Beta2
48
32
  # @private
49
33
  class Representation < Google::Apis::Core::JsonRepresentation
34
+ property :target, as: 'target'
50
35
  hash :request, as: 'request'
51
36
  property :type, as: 'type'
52
- property :target, as: 'target'
53
37
  end
54
38
  end
55
39
  end
@@ -47,36 +47,6 @@ module Google
47
47
  super('https://cloudfunctions.googleapis.com/', '')
48
48
  @batch_path = 'batch'
49
49
  end
50
-
51
- # Get information about a location.
52
- # @param [String] name
53
- # Resource name for the location.
54
- # @param [String] quota_user
55
- # Available to use for quota purposes for server-side applications. Can be any
56
- # arbitrary string assigned to a user, but should not exceed 40 characters.
57
- # @param [String] fields
58
- # Selector specifying which fields to include in a partial response.
59
- # @param [Google::Apis::RequestOptions] options
60
- # Request-specific options
61
- #
62
- # @yield [result, err] Result & error if block supplied
63
- # @yieldparam result [Google::Apis::CloudfunctionsV1::Location] parsed result object
64
- # @yieldparam err [StandardError] error object if request failed
65
- #
66
- # @return [Google::Apis::CloudfunctionsV1::Location]
67
- #
68
- # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
69
- # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
70
- # @raise [Google::Apis::AuthorizationError] Authorization is required
71
- def get_project_location(name, quota_user: nil, fields: nil, options: nil, &block)
72
- command = make_simple_command(:get, 'v1/{+name}', options)
73
- command.response_representation = Google::Apis::CloudfunctionsV1::Location::Representation
74
- command.response_class = Google::Apis::CloudfunctionsV1::Location
75
- command.params['name'] = name unless name.nil?
76
- command.query['quotaUser'] = quota_user unless quota_user.nil?
77
- command.query['fields'] = fields unless fields.nil?
78
- execute_or_queue_command(command, &block)
79
- end
80
50
 
81
51
  protected
82
52
 
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/kms/
27
27
  module CloudkmsV1
28
28
  VERSION = 'V1'
29
- REVISION = '20170320'
29
+ REVISION = '20170425'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -22,61 +22,64 @@ module Google
22
22
  module Apis
23
23
  module CloudkmsV1
24
24
 
25
- # Response message for KeyManagementService.Decrypt.
26
- class DecryptResponse
25
+ # Request message for KeyManagementService.DestroyCryptoKeyVersion.
26
+ class DestroyCryptoKeyVersionRequest
27
27
  include Google::Apis::Core::Hashable
28
28
 
29
- # The decrypted data originally supplied in EncryptRequest.plaintext.
30
- # Corresponds to the JSON property `plaintext`
31
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
32
- # @return [String]
33
- attr_accessor :plaintext
34
-
35
29
  def initialize(**args)
36
30
  update!(**args)
37
31
  end
38
32
 
39
33
  # Update properties of this object
40
34
  def update!(**args)
41
- @plaintext = args[:plaintext] if args.key?(:plaintext)
42
35
  end
43
36
  end
44
37
 
45
- # Request message for `TestIamPermissions` method.
46
- class TestIamPermissionsRequest
38
+ # A rule to be applied in a Policy.
39
+ class Rule
47
40
  include Google::Apis::Core::Hashable
48
41
 
49
- # The set of permissions to check for the `resource`. Permissions with
50
- # wildcards (such as '*' or 'storage.*') are not allowed. For more
51
- # information see
52
- # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
53
- # Corresponds to the JSON property `permissions`
42
+ # If one or more 'not_in' clauses are specified, the rule matches
43
+ # if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
44
+ # The format for in and not_in entries is the same as for members in a
45
+ # Binding (see google/iam/v1/policy.proto).
46
+ # Corresponds to the JSON property `notIn`
54
47
  # @return [Array<String>]
55
- attr_accessor :permissions
48
+ attr_accessor :not_in
56
49
 
57
- def initialize(**args)
58
- update!(**args)
59
- end
50
+ # Human-readable description of the rule.
51
+ # Corresponds to the JSON property `description`
52
+ # @return [String]
53
+ attr_accessor :description
60
54
 
61
- # Update properties of this object
62
- def update!(**args)
63
- @permissions = args[:permissions] if args.key?(:permissions)
64
- end
65
- end
55
+ # Additional restrictions that must be met
56
+ # Corresponds to the JSON property `conditions`
57
+ # @return [Array<Google::Apis::CloudkmsV1::Condition>]
58
+ attr_accessor :conditions
66
59
 
67
- # The response message for Locations.ListLocations.
68
- class ListLocationsResponse
69
- include Google::Apis::Core::Hashable
60
+ # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
61
+ # that match the LOG action.
62
+ # Corresponds to the JSON property `logConfig`
63
+ # @return [Array<Google::Apis::CloudkmsV1::LogConfig>]
64
+ attr_accessor :log_config
70
65
 
71
- # A list of locations that matches the specified filter in the request.
72
- # Corresponds to the JSON property `locations`
73
- # @return [Array<Google::Apis::CloudkmsV1::Location>]
74
- attr_accessor :locations
66
+ # If one or more 'in' clauses are specified, the rule matches if
67
+ # the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
68
+ # Corresponds to the JSON property `in`
69
+ # @return [Array<String>]
70
+ attr_accessor :in
75
71
 
76
- # The standard List next-page token.
77
- # Corresponds to the JSON property `nextPageToken`
72
+ # A permission is a string of form '<service>.<resource type>.<verb>'
73
+ # (e.g., 'storage.buckets.list'). A value of '*' matches all permissions,
74
+ # and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
75
+ # Corresponds to the JSON property `permissions`
76
+ # @return [Array<String>]
77
+ attr_accessor :permissions
78
+
79
+ # Required
80
+ # Corresponds to the JSON property `action`
78
81
  # @return [String]
79
- attr_accessor :next_page_token
82
+ attr_accessor :action
80
83
 
81
84
  def initialize(**args)
82
85
  update!(**args)
@@ -84,119 +87,66 @@ module Google
84
87
 
85
88
  # Update properties of this object
86
89
  def update!(**args)
87
- @locations = args[:locations] if args.key?(:locations)
88
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
90
+ @not_in = args[:not_in] if args.key?(:not_in)
91
+ @description = args[:description] if args.key?(:description)
92
+ @conditions = args[:conditions] if args.key?(:conditions)
93
+ @log_config = args[:log_config] if args.key?(:log_config)
94
+ @in = args[:in] if args.key?(:in)
95
+ @permissions = args[:permissions] if args.key?(:permissions)
96
+ @action = args[:action] if args.key?(:action)
89
97
  end
90
98
  end
91
99
 
92
- # Defines an Identity and Access Management (IAM) policy. It is used to
93
- # specify access control policies for Cloud Platform resources.
94
- # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
95
- # `members` to a `role`, where the members can be user accounts, Google groups,
96
- # Google domains, and service accounts. A `role` is a named list of permissions
97
- # defined by IAM.
98
- # **Example**
99
- # `
100
- # "bindings": [
101
- # `
102
- # "role": "roles/owner",
103
- # "members": [
104
- # "user:mike@example.com",
105
- # "group:admins@example.com",
106
- # "domain:google.com",
107
- # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
108
- # ]
109
- # `,
110
- # `
111
- # "role": "roles/viewer",
112
- # "members": ["user:sean@example.com"]
113
- # `
114
- # ]
115
- # `
116
- # For a description of IAM and its features, see the
117
- # [IAM developer's guide](https://cloud.google.com/iam).
118
- class Policy
100
+ # A CryptoKey represents a logical key that can be used for cryptographic
101
+ # operations.
102
+ # A CryptoKey is made up of one or more versions, which
103
+ # represent the actual key material used in cryptographic operations.
104
+ class CryptoKey
119
105
  include Google::Apis::Core::Hashable
120
106
 
121
- # `etag` is used for optimistic concurrency control as a way to help
122
- # prevent simultaneous updates of a policy from overwriting each other.
123
- # It is strongly suggested that systems make use of the `etag` in the
124
- # read-modify-write cycle to perform policy updates in order to avoid race
125
- # conditions: An `etag` is returned in the response to `getIamPolicy`, and
126
- # systems are expected to put that etag in the request to `setIamPolicy` to
127
- # ensure that their change will be applied to the same version of the policy.
128
- # If no `etag` is provided in the call to `setIamPolicy`, then the existing
129
- # policy is overwritten blindly.
130
- # Corresponds to the JSON property `etag`
131
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
107
+ # Output only. The time at which this CryptoKey was created.
108
+ # Corresponds to the JSON property `createTime`
132
109
  # @return [String]
133
- attr_accessor :etag
134
-
135
- #
136
- # Corresponds to the JSON property `iamOwned`
137
- # @return [Boolean]
138
- attr_accessor :iam_owned
139
- alias_method :iam_owned?, :iam_owned
140
-
141
- # If more than one rule is specified, the rules are applied in the following
142
- # manner:
143
- # - All matching LOG rules are always applied.
144
- # - If any DENY/DENY_WITH_LOG rule matches, permission is denied.
145
- # Logging will be applied if one or more matching rule requires logging.
146
- # - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is
147
- # granted.
148
- # Logging will be applied if one or more matching rule requires logging.
149
- # - Otherwise, if no rule applies, permission is denied.
150
- # Corresponds to the JSON property `rules`
151
- # @return [Array<Google::Apis::CloudkmsV1::Rule>]
152
- attr_accessor :rules
153
-
154
- # Version of the `Policy`. The default version is 0.
155
- # Corresponds to the JSON property `version`
156
- # @return [Fixnum]
157
- attr_accessor :version
158
-
159
- # Specifies cloud audit logging configuration for this policy.
160
- # Corresponds to the JSON property `auditConfigs`
161
- # @return [Array<Google::Apis::CloudkmsV1::AuditConfig>]
162
- attr_accessor :audit_configs
163
-
164
- # Associates a list of `members` to a `role`.
165
- # Multiple `bindings` must not be specified for the same `role`.
166
- # `bindings` with no members will result in an error.
167
- # Corresponds to the JSON property `bindings`
168
- # @return [Array<Google::Apis::CloudkmsV1::Binding>]
169
- attr_accessor :bindings
170
-
171
- def initialize(**args)
172
- update!(**args)
173
- end
110
+ attr_accessor :create_time
174
111
 
175
- # Update properties of this object
176
- def update!(**args)
177
- @etag = args[:etag] if args.key?(:etag)
178
- @iam_owned = args[:iam_owned] if args.key?(:iam_owned)
179
- @rules = args[:rules] if args.key?(:rules)
180
- @version = args[:version] if args.key?(:version)
181
- @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
182
- @bindings = args[:bindings] if args.key?(:bindings)
183
- end
184
- end
112
+ # next_rotation_time will be advanced by this period when the service
113
+ # automatically rotates a key. Must be at least one day.
114
+ # If rotation_period is set, next_rotation_time must also be set.
115
+ # Corresponds to the JSON property `rotationPeriod`
116
+ # @return [String]
117
+ attr_accessor :rotation_period
185
118
 
186
- # Response message for KeyManagementService.Encrypt.
187
- class EncryptResponse
188
- include Google::Apis::Core::Hashable
119
+ # A CryptoKeyVersion represents an individual cryptographic key, and the
120
+ # associated key material.
121
+ # It can be used for cryptographic operations either directly, or via its
122
+ # parent CryptoKey, in which case the server will choose the appropriate
123
+ # version for the operation.
124
+ # Corresponds to the JSON property `primary`
125
+ # @return [Google::Apis::CloudkmsV1::CryptoKeyVersion]
126
+ attr_accessor :primary
189
127
 
190
- # The resource name of the CryptoKeyVersion used in encryption.
128
+ # Output only. The resource name for this CryptoKey in the format
129
+ # `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
191
130
  # Corresponds to the JSON property `name`
192
131
  # @return [String]
193
132
  attr_accessor :name
194
133
 
195
- # The encrypted data.
196
- # Corresponds to the JSON property `ciphertext`
197
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
134
+ # The immutable purpose of this CryptoKey. Currently, the only acceptable
135
+ # purpose is ENCRYPT_DECRYPT.
136
+ # Corresponds to the JSON property `purpose`
198
137
  # @return [String]
199
- attr_accessor :ciphertext
138
+ attr_accessor :purpose
139
+
140
+ # At next_rotation_time, the Key Management Service will automatically:
141
+ # 1. Create a new version of this CryptoKey.
142
+ # 2. Mark the new version as primary.
143
+ # Key rotations performed manually via
144
+ # CreateCryptoKeyVersion and
145
+ # UpdateCryptoKeyPrimaryVersion
146
+ # do not affect next_rotation_time.
147
+ # Corresponds to the JSON property `nextRotationTime`
148
+ # @return [String]
149
+ attr_accessor :next_rotation_time
200
150
 
201
151
  def initialize(**args)
202
152
  update!(**args)
@@ -204,25 +154,33 @@ module Google
204
154
 
205
155
  # Update properties of this object
206
156
  def update!(**args)
157
+ @create_time = args[:create_time] if args.key?(:create_time)
158
+ @rotation_period = args[:rotation_period] if args.key?(:rotation_period)
159
+ @primary = args[:primary] if args.key?(:primary)
207
160
  @name = args[:name] if args.key?(:name)
208
- @ciphertext = args[:ciphertext] if args.key?(:ciphertext)
161
+ @purpose = args[:purpose] if args.key?(:purpose)
162
+ @next_rotation_time = args[:next_rotation_time] if args.key?(:next_rotation_time)
209
163
  end
210
164
  end
211
165
 
212
- # A KeyRing is a toplevel logical grouping of CryptoKeys.
213
- class KeyRing
166
+ # Specifies what kind of log the caller must write
167
+ class LogConfig
214
168
  include Google::Apis::Core::Hashable
215
169
 
216
- # Output only. The time at which this KeyRing was created.
217
- # Corresponds to the JSON property `createTime`
218
- # @return [String]
219
- attr_accessor :create_time
170
+ # Options for counters
171
+ # Corresponds to the JSON property `counter`
172
+ # @return [Google::Apis::CloudkmsV1::CounterOptions]
173
+ attr_accessor :counter
220
174
 
221
- # Output only. The resource name for the KeyRing in the format
222
- # `projects/*/locations/*/keyRings/*`.
223
- # Corresponds to the JSON property `name`
224
- # @return [String]
225
- attr_accessor :name
175
+ # Write a Data Access (Gin) log
176
+ # Corresponds to the JSON property `dataAccess`
177
+ # @return [Google::Apis::CloudkmsV1::DataAccessOptions]
178
+ attr_accessor :data_access
179
+
180
+ # Write a Cloud Audit log
181
+ # Corresponds to the JSON property `cloudAudit`
182
+ # @return [Google::Apis::CloudkmsV1::CloudAuditOptions]
183
+ attr_accessor :cloud_audit
226
184
 
227
185
  def initialize(**args)
228
186
  update!(**args)
@@ -230,32 +188,83 @@ module Google
230
188
 
231
189
  # Update properties of this object
232
190
  def update!(**args)
233
- @create_time = args[:create_time] if args.key?(:create_time)
234
- @name = args[:name] if args.key?(:name)
191
+ @counter = args[:counter] if args.key?(:counter)
192
+ @data_access = args[:data_access] if args.key?(:data_access)
193
+ @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit)
235
194
  end
236
195
  end
237
196
 
238
- # Request message for KeyManagementService.RestoreCryptoKeyVersion.
239
- class RestoreCryptoKeyVersionRequest
197
+ # Request message for `SetIamPolicy` method.
198
+ class SetIamPolicyRequest
240
199
  include Google::Apis::Core::Hashable
241
200
 
201
+ # Defines an Identity and Access Management (IAM) policy. It is used to
202
+ # specify access control policies for Cloud Platform resources.
203
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
204
+ # `members` to a `role`, where the members can be user accounts, Google groups,
205
+ # Google domains, and service accounts. A `role` is a named list of permissions
206
+ # defined by IAM.
207
+ # **Example**
208
+ # `
209
+ # "bindings": [
210
+ # `
211
+ # "role": "roles/owner",
212
+ # "members": [
213
+ # "user:mike@example.com",
214
+ # "group:admins@example.com",
215
+ # "domain:google.com",
216
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
217
+ # ]
218
+ # `,
219
+ # `
220
+ # "role": "roles/viewer",
221
+ # "members": ["user:sean@example.com"]
222
+ # `
223
+ # ]
224
+ # `
225
+ # For a description of IAM and its features, see the
226
+ # [IAM developer's guide](https://cloud.google.com/iam).
227
+ # Corresponds to the JSON property `policy`
228
+ # @return [Google::Apis::CloudkmsV1::Policy]
229
+ attr_accessor :policy
230
+
231
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
232
+ # the fields in the mask will be modified. If no mask is provided, the
233
+ # following default mask is used:
234
+ # paths: "bindings, etag"
235
+ # This field is only used by Cloud IAM.
236
+ # Corresponds to the JSON property `updateMask`
237
+ # @return [String]
238
+ attr_accessor :update_mask
239
+
242
240
  def initialize(**args)
243
241
  update!(**args)
244
242
  end
245
243
 
246
244
  # Update properties of this object
247
245
  def update!(**args)
246
+ @policy = args[:policy] if args.key?(:policy)
247
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
248
248
  end
249
249
  end
250
250
 
251
- # Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.
252
- class UpdateCryptoKeyPrimaryVersionRequest
251
+ # Request message for KeyManagementService.Decrypt.
252
+ class DecryptRequest
253
253
  include Google::Apis::Core::Hashable
254
254
 
255
- # The id of the child CryptoKeyVersion to use as primary.
256
- # Corresponds to the JSON property `cryptoKeyVersionId`
255
+ # Required. The encrypted data originally returned in
256
+ # EncryptResponse.ciphertext.
257
+ # Corresponds to the JSON property `ciphertext`
258
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
257
259
  # @return [String]
258
- attr_accessor :crypto_key_version_id
260
+ attr_accessor :ciphertext
261
+
262
+ # Optional data that must match the data originally supplied in
263
+ # EncryptRequest.additional_authenticated_data.
264
+ # Corresponds to the JSON property `additionalAuthenticatedData`
265
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
266
+ # @return [String]
267
+ attr_accessor :additional_authenticated_data
259
268
 
260
269
  def initialize(**args)
261
270
  update!(**args)
@@ -263,43 +272,71 @@ module Google
263
272
 
264
273
  # Update properties of this object
265
274
  def update!(**args)
266
- @crypto_key_version_id = args[:crypto_key_version_id] if args.key?(:crypto_key_version_id)
275
+ @ciphertext = args[:ciphertext] if args.key?(:ciphertext)
276
+ @additional_authenticated_data = args[:additional_authenticated_data] if args.key?(:additional_authenticated_data)
267
277
  end
268
278
  end
269
279
 
270
- # Write a Data Access (Gin) log
271
- class DataAccessOptions
280
+ # A resource that represents Google Cloud Platform location.
281
+ class Location
272
282
  include Google::Apis::Core::Hashable
273
283
 
284
+ # Cross-service attributes for the location. For example
285
+ # `"cloud.googleapis.com/region": "us-east1"`
286
+ # Corresponds to the JSON property `labels`
287
+ # @return [Hash<String,String>]
288
+ attr_accessor :labels
289
+
290
+ # Resource name for the location, which may vary between implementations.
291
+ # For example: `"projects/example-project/locations/us-east1"`
292
+ # Corresponds to the JSON property `name`
293
+ # @return [String]
294
+ attr_accessor :name
295
+
296
+ # The canonical id for this location. For example: `"us-east1"`.
297
+ # Corresponds to the JSON property `locationId`
298
+ # @return [String]
299
+ attr_accessor :location_id
300
+
301
+ # Service-specific metadata. For example the available capacity at the given
302
+ # location.
303
+ # Corresponds to the JSON property `metadata`
304
+ # @return [Hash<String,Object>]
305
+ attr_accessor :metadata
306
+
274
307
  def initialize(**args)
275
308
  update!(**args)
276
309
  end
277
310
 
278
311
  # Update properties of this object
279
312
  def update!(**args)
313
+ @labels = args[:labels] if args.key?(:labels)
314
+ @name = args[:name] if args.key?(:name)
315
+ @location_id = args[:location_id] if args.key?(:location_id)
316
+ @metadata = args[:metadata] if args.key?(:metadata)
280
317
  end
281
318
  end
282
319
 
283
- # Response message for KeyManagementService.ListKeyRings.
284
- class ListKeyRingsResponse
320
+ # Response message for KeyManagementService.ListCryptoKeys.
321
+ class ListCryptoKeysResponse
285
322
  include Google::Apis::Core::Hashable
286
323
 
287
324
  # A token to retrieve next page of results. Pass this value in
288
- # ListKeyRingsRequest.page_token to retrieve the next page of results.
325
+ # ListCryptoKeysRequest.page_token to retrieve the next page of results.
289
326
  # Corresponds to the JSON property `nextPageToken`
290
327
  # @return [String]
291
328
  attr_accessor :next_page_token
292
329
 
293
- # The total number of KeyRings that matched the query.
330
+ # The list of CryptoKeys.
331
+ # Corresponds to the JSON property `cryptoKeys`
332
+ # @return [Array<Google::Apis::CloudkmsV1::CryptoKey>]
333
+ attr_accessor :crypto_keys
334
+
335
+ # The total number of CryptoKeys that matched the query.
294
336
  # Corresponds to the JSON property `totalSize`
295
337
  # @return [Fixnum]
296
338
  attr_accessor :total_size
297
339
 
298
- # The list of KeyRings.
299
- # Corresponds to the JSON property `keyRings`
300
- # @return [Array<Google::Apis::CloudkmsV1::KeyRing>]
301
- attr_accessor :key_rings
302
-
303
340
  def initialize(**args)
304
341
  update!(**args)
305
342
  end
@@ -307,24 +344,89 @@ module Google
307
344
  # Update properties of this object
308
345
  def update!(**args)
309
346
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
347
+ @crypto_keys = args[:crypto_keys] if args.key?(:crypto_keys)
310
348
  @total_size = args[:total_size] if args.key?(:total_size)
311
- @key_rings = args[:key_rings] if args.key?(:key_rings)
312
349
  end
313
350
  end
314
351
 
315
- # Specifies the audit configuration for a service.
316
- # The configuration determines which permission types are logged, and what
317
- # identities, if any, are exempted from logging.
318
- # An AuditConifg must have one or more AuditLogConfigs.
319
- # If there are AuditConfigs for both `allServices` and a specific service,
320
- # the union of the two AuditConfigs is used for that service: the log_types
321
- # specified in each AuditConfig are enabled, and the exempted_members in each
322
- # AuditConfig are exempted.
323
- # Example Policy with multiple AuditConfigs:
324
- # `
325
- # "audit_configs": [
352
+ # A condition to be met.
353
+ class Condition
354
+ include Google::Apis::Core::Hashable
355
+
356
+ # DEPRECATED. Use 'values' instead.
357
+ # Corresponds to the JSON property `value`
358
+ # @return [String]
359
+ attr_accessor :value
360
+
361
+ # Trusted attributes supplied by any service that owns resources and uses
362
+ # the IAM system for access control.
363
+ # Corresponds to the JSON property `sys`
364
+ # @return [String]
365
+ attr_accessor :sys
366
+
367
+ # Trusted attributes supplied by the IAM system.
368
+ # Corresponds to the JSON property `iam`
369
+ # @return [String]
370
+ attr_accessor :iam
371
+
372
+ # The objects of the condition. This is mutually exclusive with 'value'.
373
+ # Corresponds to the JSON property `values`
374
+ # @return [Array<String>]
375
+ attr_accessor :values
376
+
377
+ # An operator to apply the subject with.
378
+ # Corresponds to the JSON property `op`
379
+ # @return [String]
380
+ attr_accessor :op
381
+
382
+ # Trusted attributes discharged by the service.
383
+ # Corresponds to the JSON property `svc`
384
+ # @return [String]
385
+ attr_accessor :svc
386
+
387
+ def initialize(**args)
388
+ update!(**args)
389
+ end
390
+
391
+ # Update properties of this object
392
+ def update!(**args)
393
+ @value = args[:value] if args.key?(:value)
394
+ @sys = args[:sys] if args.key?(:sys)
395
+ @iam = args[:iam] if args.key?(:iam)
396
+ @values = args[:values] if args.key?(:values)
397
+ @op = args[:op] if args.key?(:op)
398
+ @svc = args[:svc] if args.key?(:svc)
399
+ end
400
+ end
401
+
402
+ # Options for counters
403
+ class CounterOptions
404
+ include Google::Apis::Core::Hashable
405
+
406
+ # The metric to update.
407
+ # Corresponds to the JSON property `metric`
408
+ # @return [String]
409
+ attr_accessor :metric
410
+
411
+ # The field value to attribute.
412
+ # Corresponds to the JSON property `field`
413
+ # @return [String]
414
+ attr_accessor :field
415
+
416
+ def initialize(**args)
417
+ update!(**args)
418
+ end
419
+
420
+ # Update properties of this object
421
+ def update!(**args)
422
+ @metric = args[:metric] if args.key?(:metric)
423
+ @field = args[:field] if args.key?(:field)
424
+ end
425
+ end
426
+
427
+ # Provides the configuration for logging a type of permissions.
428
+ # Example:
326
429
  # `
327
- # "service": "allServices"
328
430
  # "audit_log_configs": [
329
431
  # `
330
432
  # "log_type": "DATA_READ",
@@ -334,48 +436,22 @@ module Google
334
436
  # `,
335
437
  # `
336
438
  # "log_type": "DATA_WRITE",
337
- # `,
338
- # `
339
- # "log_type": "ADMIN_READ",
340
- # `
341
- # ]
342
- # `,
343
- # `
344
- # "service": "fooservice@googleapis.com"
345
- # "audit_log_configs": [
346
- # `
347
- # "log_type": "DATA_READ",
348
- # `,
349
- # `
350
- # "log_type": "DATA_WRITE",
351
- # "exempted_members": [
352
- # "user:bar@gmail.com"
353
- # ]
354
- # `
355
- # ]
356
439
  # `
357
440
  # ]
358
441
  # `
359
- # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
360
- # logging. It also exempts foo@gmail.com from DATA_READ logging, and
361
- # bar@gmail.com from DATA_WRITE logging.
362
- class AuditConfig
442
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
443
+ # foo@gmail.com from DATA_READ logging.
444
+ class AuditLogConfig
363
445
  include Google::Apis::Core::Hashable
364
446
 
365
- # Specifies a service that will be enabled for audit logging.
366
- # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
367
- # `allServices` is a special value that covers all services.
368
- # Corresponds to the JSON property `service`
447
+ # The log type that this config enables.
448
+ # Corresponds to the JSON property `logType`
369
449
  # @return [String]
370
- attr_accessor :service
371
-
372
- # The configuration for logging of each type of permission.
373
- # Next ID: 4
374
- # Corresponds to the JSON property `auditLogConfigs`
375
- # @return [Array<Google::Apis::CloudkmsV1::AuditLogConfig>]
376
- attr_accessor :audit_log_configs
450
+ attr_accessor :log_type
377
451
 
378
- #
452
+ # Specifies the identities that do not cause logging for this type of
453
+ # permission.
454
+ # Follows the same format of Binding.members.
379
455
  # Corresponds to the JSON property `exemptedMembers`
380
456
  # @return [Array<String>]
381
457
  attr_accessor :exempted_members
@@ -386,49 +462,20 @@ module Google
386
462
 
387
463
  # Update properties of this object
388
464
  def update!(**args)
389
- @service = args[:service] if args.key?(:service)
390
- @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
465
+ @log_type = args[:log_type] if args.key?(:log_type)
391
466
  @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
392
467
  end
393
468
  end
394
469
 
395
- # A CryptoKeyVersion represents an individual cryptographic key, and the
396
- # associated key material.
397
- # It can be used for cryptographic operations either directly, or via its
398
- # parent CryptoKey, in which case the server will choose the appropriate
399
- # version for the operation.
400
- class CryptoKeyVersion
470
+ # Response message for KeyManagementService.Decrypt.
471
+ class DecryptResponse
401
472
  include Google::Apis::Core::Hashable
402
473
 
403
- # Output only. The time this CryptoKeyVersion's key material is scheduled
404
- # for destruction. Only present if state is
405
- # DESTROY_SCHEDULED.
406
- # Corresponds to the JSON property `destroyTime`
407
- # @return [String]
408
- attr_accessor :destroy_time
409
-
410
- # Output only. The time at which this CryptoKeyVersion was created.
411
- # Corresponds to the JSON property `createTime`
412
- # @return [String]
413
- attr_accessor :create_time
414
-
415
- # The current state of the CryptoKeyVersion.
416
- # Corresponds to the JSON property `state`
417
- # @return [String]
418
- attr_accessor :state
419
-
420
- # Output only. The resource name for this CryptoKeyVersion in the format
421
- # `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
422
- # Corresponds to the JSON property `name`
423
- # @return [String]
424
- attr_accessor :name
425
-
426
- # Output only. The time this CryptoKeyVersion's key material was
427
- # destroyed. Only present if state is
428
- # DESTROYED.
429
- # Corresponds to the JSON property `destroyEventTime`
474
+ # The decrypted data originally supplied in EncryptRequest.plaintext.
475
+ # Corresponds to the JSON property `plaintext`
476
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
430
477
  # @return [String]
431
- attr_accessor :destroy_event_time
478
+ attr_accessor :plaintext
432
479
 
433
480
  def initialize(**args)
434
481
  update!(**args)
@@ -436,55 +483,46 @@ module Google
436
483
 
437
484
  # Update properties of this object
438
485
  def update!(**args)
439
- @destroy_time = args[:destroy_time] if args.key?(:destroy_time)
440
- @create_time = args[:create_time] if args.key?(:create_time)
441
- @state = args[:state] if args.key?(:state)
442
- @name = args[:name] if args.key?(:name)
443
- @destroy_event_time = args[:destroy_event_time] if args.key?(:destroy_event_time)
486
+ @plaintext = args[:plaintext] if args.key?(:plaintext)
444
487
  end
445
488
  end
446
489
 
447
- # Write a Cloud Audit log
448
- class CloudAuditOptions
490
+ # Request message for `TestIamPermissions` method.
491
+ class TestIamPermissionsRequest
449
492
  include Google::Apis::Core::Hashable
450
493
 
494
+ # The set of permissions to check for the `resource`. Permissions with
495
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
496
+ # information see
497
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
498
+ # Corresponds to the JSON property `permissions`
499
+ # @return [Array<String>]
500
+ attr_accessor :permissions
501
+
451
502
  def initialize(**args)
452
503
  update!(**args)
453
504
  end
454
505
 
455
506
  # Update properties of this object
456
507
  def update!(**args)
508
+ @permissions = args[:permissions] if args.key?(:permissions)
457
509
  end
458
510
  end
459
511
 
460
- # Associates `members` with a `role`.
461
- class Binding
512
+ # Response message for KeyManagementService.Encrypt.
513
+ class EncryptResponse
462
514
  include Google::Apis::Core::Hashable
463
515
 
464
- # Specifies the identities requesting access for a Cloud Platform resource.
465
- # `members` can have the following values:
466
- # * `allUsers`: A special identifier that represents anyone who is
467
- # on the internet; with or without a Google account.
468
- # * `allAuthenticatedUsers`: A special identifier that represents anyone
469
- # who is authenticated with a Google account or a service account.
470
- # * `user:`emailid``: An email address that represents a specific Google
471
- # account. For example, `alice@gmail.com` or `joe@example.com`.
472
- # * `serviceAccount:`emailid``: An email address that represents a service
473
- # account. For example, `my-other-app@appspot.gserviceaccount.com`.
474
- # * `group:`emailid``: An email address that represents a Google group.
475
- # For example, `admins@example.com`.
476
- # * `domain:`domain``: A Google Apps domain name that represents all the
477
- # users of that domain. For example, `google.com` or `example.com`.
478
- # Corresponds to the JSON property `members`
479
- # @return [Array<String>]
480
- attr_accessor :members
516
+ # The encrypted data.
517
+ # Corresponds to the JSON property `ciphertext`
518
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
519
+ # @return [String]
520
+ attr_accessor :ciphertext
481
521
 
482
- # Role that is assigned to `members`.
483
- # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
484
- # Required
485
- # Corresponds to the JSON property `role`
522
+ # The resource name of the CryptoKeyVersion used in encryption.
523
+ # Corresponds to the JSON property `name`
486
524
  # @return [String]
487
- attr_accessor :role
525
+ attr_accessor :name
488
526
 
489
527
  def initialize(**args)
490
528
  update!(**args)
@@ -492,28 +530,25 @@ module Google
492
530
 
493
531
  # Update properties of this object
494
532
  def update!(**args)
495
- @members = args[:members] if args.key?(:members)
496
- @role = args[:role] if args.key?(:role)
533
+ @ciphertext = args[:ciphertext] if args.key?(:ciphertext)
534
+ @name = args[:name] if args.key?(:name)
497
535
  end
498
536
  end
499
537
 
500
- # Request message for KeyManagementService.Encrypt.
501
- class EncryptRequest
538
+ # A KeyRing is a toplevel logical grouping of CryptoKeys.
539
+ class KeyRing
502
540
  include Google::Apis::Core::Hashable
503
541
 
504
- # Required. The data to encrypt. Must be no larger than 64KiB.
505
- # Corresponds to the JSON property `plaintext`
506
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
542
+ # Output only. The time at which this KeyRing was created.
543
+ # Corresponds to the JSON property `createTime`
507
544
  # @return [String]
508
- attr_accessor :plaintext
545
+ attr_accessor :create_time
509
546
 
510
- # Optional data that, if specified, must also be provided during decryption
511
- # through DecryptRequest.additional_authenticated_data. Must be no
512
- # larger than 64KiB.
513
- # Corresponds to the JSON property `additionalAuthenticatedData`
514
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
547
+ # Output only. The resource name for the KeyRing in the format
548
+ # `projects/*/locations/*/keyRings/*`.
549
+ # Corresponds to the JSON property `name`
515
550
  # @return [String]
516
- attr_accessor :additional_authenticated_data
551
+ attr_accessor :name
517
552
 
518
553
  def initialize(**args)
519
554
  update!(**args)
@@ -521,32 +556,24 @@ module Google
521
556
 
522
557
  # Update properties of this object
523
558
  def update!(**args)
524
- @plaintext = args[:plaintext] if args.key?(:plaintext)
525
- @additional_authenticated_data = args[:additional_authenticated_data] if args.key?(:additional_authenticated_data)
559
+ @create_time = args[:create_time] if args.key?(:create_time)
560
+ @name = args[:name] if args.key?(:name)
526
561
  end
527
562
  end
528
563
 
529
- # Response message for KeyManagementService.ListCryptoKeyVersions.
530
- class ListCryptoKeyVersionsResponse
564
+ # The response message for Locations.ListLocations.
565
+ class ListLocationsResponse
531
566
  include Google::Apis::Core::Hashable
532
567
 
533
- # A token to retrieve next page of results. Pass this value in
534
- # ListCryptoKeyVersionsRequest.page_token to retrieve the next page of
535
- # results.
568
+ # The standard List next-page token.
536
569
  # Corresponds to the JSON property `nextPageToken`
537
570
  # @return [String]
538
571
  attr_accessor :next_page_token
539
572
 
540
- # The total number of CryptoKeyVersions that matched the
541
- # query.
542
- # Corresponds to the JSON property `totalSize`
543
- # @return [Fixnum]
544
- attr_accessor :total_size
545
-
546
- # The list of CryptoKeyVersions.
547
- # Corresponds to the JSON property `cryptoKeyVersions`
548
- # @return [Array<Google::Apis::CloudkmsV1::CryptoKeyVersion>]
549
- attr_accessor :crypto_key_versions
573
+ # A list of locations that matches the specified filter in the request.
574
+ # Corresponds to the JSON property `locations`
575
+ # @return [Array<Google::Apis::CloudkmsV1::Location>]
576
+ attr_accessor :locations
550
577
 
551
578
  def initialize(**args)
552
579
  update!(**args)
@@ -555,34 +582,88 @@ module Google
555
582
  # Update properties of this object
556
583
  def update!(**args)
557
584
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
558
- @total_size = args[:total_size] if args.key?(:total_size)
559
- @crypto_key_versions = args[:crypto_key_versions] if args.key?(:crypto_key_versions)
585
+ @locations = args[:locations] if args.key?(:locations)
560
586
  end
561
587
  end
562
588
 
563
- # Response message for `TestIamPermissions` method.
564
- class TestIamPermissionsResponse
589
+ # Defines an Identity and Access Management (IAM) policy. It is used to
590
+ # specify access control policies for Cloud Platform resources.
591
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
592
+ # `members` to a `role`, where the members can be user accounts, Google groups,
593
+ # Google domains, and service accounts. A `role` is a named list of permissions
594
+ # defined by IAM.
595
+ # **Example**
596
+ # `
597
+ # "bindings": [
598
+ # `
599
+ # "role": "roles/owner",
600
+ # "members": [
601
+ # "user:mike@example.com",
602
+ # "group:admins@example.com",
603
+ # "domain:google.com",
604
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
605
+ # ]
606
+ # `,
607
+ # `
608
+ # "role": "roles/viewer",
609
+ # "members": ["user:sean@example.com"]
610
+ # `
611
+ # ]
612
+ # `
613
+ # For a description of IAM and its features, see the
614
+ # [IAM developer's guide](https://cloud.google.com/iam).
615
+ class Policy
565
616
  include Google::Apis::Core::Hashable
566
617
 
567
- # A subset of `TestPermissionsRequest.permissions` that the caller is
568
- # allowed.
569
- # Corresponds to the JSON property `permissions`
570
- # @return [Array<String>]
571
- attr_accessor :permissions
618
+ #
619
+ # Corresponds to the JSON property `iamOwned`
620
+ # @return [Boolean]
621
+ attr_accessor :iam_owned
622
+ alias_method :iam_owned?, :iam_owned
572
623
 
573
- def initialize(**args)
574
- update!(**args)
575
- end
624
+ # If more than one rule is specified, the rules are applied in the following
625
+ # manner:
626
+ # - All matching LOG rules are always applied.
627
+ # - If any DENY/DENY_WITH_LOG rule matches, permission is denied.
628
+ # Logging will be applied if one or more matching rule requires logging.
629
+ # - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is
630
+ # granted.
631
+ # Logging will be applied if one or more matching rule requires logging.
632
+ # - Otherwise, if no rule applies, permission is denied.
633
+ # Corresponds to the JSON property `rules`
634
+ # @return [Array<Google::Apis::CloudkmsV1::Rule>]
635
+ attr_accessor :rules
576
636
 
577
- # Update properties of this object
578
- def update!(**args)
579
- @permissions = args[:permissions] if args.key?(:permissions)
580
- end
581
- end
637
+ # Version of the `Policy`. The default version is 0.
638
+ # Corresponds to the JSON property `version`
639
+ # @return [Fixnum]
640
+ attr_accessor :version
582
641
 
583
- # Request message for KeyManagementService.DestroyCryptoKeyVersion.
584
- class DestroyCryptoKeyVersionRequest
585
- include Google::Apis::Core::Hashable
642
+ # Specifies cloud audit logging configuration for this policy.
643
+ # Corresponds to the JSON property `auditConfigs`
644
+ # @return [Array<Google::Apis::CloudkmsV1::AuditConfig>]
645
+ attr_accessor :audit_configs
646
+
647
+ # Associates a list of `members` to a `role`.
648
+ # Multiple `bindings` must not be specified for the same `role`.
649
+ # `bindings` with no members will result in an error.
650
+ # Corresponds to the JSON property `bindings`
651
+ # @return [Array<Google::Apis::CloudkmsV1::Binding>]
652
+ attr_accessor :bindings
653
+
654
+ # `etag` is used for optimistic concurrency control as a way to help
655
+ # prevent simultaneous updates of a policy from overwriting each other.
656
+ # It is strongly suggested that systems make use of the `etag` in the
657
+ # read-modify-write cycle to perform policy updates in order to avoid race
658
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
659
+ # systems are expected to put that etag in the request to `setIamPolicy` to
660
+ # ensure that their change will be applied to the same version of the policy.
661
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
662
+ # policy is overwritten blindly.
663
+ # Corresponds to the JSON property `etag`
664
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
665
+ # @return [String]
666
+ attr_accessor :etag
586
667
 
587
668
  def initialize(**args)
588
669
  update!(**args)
@@ -590,120 +671,36 @@ module Google
590
671
 
591
672
  # Update properties of this object
592
673
  def update!(**args)
674
+ @iam_owned = args[:iam_owned] if args.key?(:iam_owned)
675
+ @rules = args[:rules] if args.key?(:rules)
676
+ @version = args[:version] if args.key?(:version)
677
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
678
+ @bindings = args[:bindings] if args.key?(:bindings)
679
+ @etag = args[:etag] if args.key?(:etag)
593
680
  end
594
681
  end
595
682
 
596
- # A CryptoKey represents a logical key that can be used for cryptographic
597
- # operations.
598
- # A CryptoKey is made up of one or more versions, which
599
- # represent the actual key material used in cryptographic operations.
600
- class CryptoKey
683
+ # Request message for KeyManagementService.RestoreCryptoKeyVersion.
684
+ class RestoreCryptoKeyVersionRequest
601
685
  include Google::Apis::Core::Hashable
602
686
 
603
- # A CryptoKeyVersion represents an individual cryptographic key, and the
604
- # associated key material.
605
- # It can be used for cryptographic operations either directly, or via its
606
- # parent CryptoKey, in which case the server will choose the appropriate
607
- # version for the operation.
608
- # Corresponds to the JSON property `primary`
609
- # @return [Google::Apis::CloudkmsV1::CryptoKeyVersion]
610
- attr_accessor :primary
611
-
612
- # Output only. The resource name for this CryptoKey in the format
613
- # `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
614
- # Corresponds to the JSON property `name`
615
- # @return [String]
616
- attr_accessor :name
617
-
618
- # The immutable purpose of this CryptoKey. Currently, the only acceptable
619
- # purpose is ENCRYPT_DECRYPT.
620
- # Corresponds to the JSON property `purpose`
621
- # @return [String]
622
- attr_accessor :purpose
623
-
624
- # At next_rotation_time, the Key Management Service will automatically:
625
- # 1. Create a new version of this CryptoKey.
626
- # 2. Mark the new version as primary.
627
- # Key rotations performed manually via
628
- # CreateCryptoKeyVersion and
629
- # UpdateCryptoKeyPrimaryVersion
630
- # do not affect next_rotation_time.
631
- # Corresponds to the JSON property `nextRotationTime`
632
- # @return [String]
633
- attr_accessor :next_rotation_time
634
-
635
- # Output only. The time at which this CryptoKey was created.
636
- # Corresponds to the JSON property `createTime`
637
- # @return [String]
638
- attr_accessor :create_time
639
-
640
- # next_rotation_time will be advanced by this period when the service
641
- # automatically rotates a key. Must be at least one day.
642
- # If rotation_period is set, next_rotation_time must also be set.
643
- # Corresponds to the JSON property `rotationPeriod`
644
- # @return [String]
645
- attr_accessor :rotation_period
646
-
647
687
  def initialize(**args)
648
688
  update!(**args)
649
689
  end
650
690
 
651
691
  # Update properties of this object
652
692
  def update!(**args)
653
- @primary = args[:primary] if args.key?(:primary)
654
- @name = args[:name] if args.key?(:name)
655
- @purpose = args[:purpose] if args.key?(:purpose)
656
- @next_rotation_time = args[:next_rotation_time] if args.key?(:next_rotation_time)
657
- @create_time = args[:create_time] if args.key?(:create_time)
658
- @rotation_period = args[:rotation_period] if args.key?(:rotation_period)
659
693
  end
660
694
  end
661
695
 
662
- # A rule to be applied in a Policy.
663
- class Rule
696
+ # Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.
697
+ class UpdateCryptoKeyPrimaryVersionRequest
664
698
  include Google::Apis::Core::Hashable
665
699
 
666
- # Human-readable description of the rule.
667
- # Corresponds to the JSON property `description`
668
- # @return [String]
669
- attr_accessor :description
670
-
671
- # Additional restrictions that must be met
672
- # Corresponds to the JSON property `conditions`
673
- # @return [Array<Google::Apis::CloudkmsV1::Condition>]
674
- attr_accessor :conditions
675
-
676
- # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
677
- # that match the LOG action.
678
- # Corresponds to the JSON property `logConfig`
679
- # @return [Array<Google::Apis::CloudkmsV1::LogConfig>]
680
- attr_accessor :log_config
681
-
682
- # If one or more 'in' clauses are specified, the rule matches if
683
- # the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
684
- # Corresponds to the JSON property `in`
685
- # @return [Array<String>]
686
- attr_accessor :in
687
-
688
- # A permission is a string of form '<service>.<resource type>.<verb>'
689
- # (e.g., 'storage.buckets.list'). A value of '*' matches all permissions,
690
- # and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
691
- # Corresponds to the JSON property `permissions`
692
- # @return [Array<String>]
693
- attr_accessor :permissions
694
-
695
- # Required
696
- # Corresponds to the JSON property `action`
700
+ # The id of the child CryptoKeyVersion to use as primary.
701
+ # Corresponds to the JSON property `cryptoKeyVersionId`
697
702
  # @return [String]
698
- attr_accessor :action
699
-
700
- # If one or more 'not_in' clauses are specified, the rule matches
701
- # if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
702
- # The format for in and not_in entries is the same as for members in a
703
- # Binding (see google/iam/v1/policy.proto).
704
- # Corresponds to the JSON property `notIn`
705
- # @return [Array<String>]
706
- attr_accessor :not_in
703
+ attr_accessor :crypto_key_version_id
707
704
 
708
705
  def initialize(**args)
709
706
  update!(**args)
@@ -711,34 +708,29 @@ module Google
711
708
 
712
709
  # Update properties of this object
713
710
  def update!(**args)
714
- @description = args[:description] if args.key?(:description)
715
- @conditions = args[:conditions] if args.key?(:conditions)
716
- @log_config = args[:log_config] if args.key?(:log_config)
717
- @in = args[:in] if args.key?(:in)
718
- @permissions = args[:permissions] if args.key?(:permissions)
719
- @action = args[:action] if args.key?(:action)
720
- @not_in = args[:not_in] if args.key?(:not_in)
711
+ @crypto_key_version_id = args[:crypto_key_version_id] if args.key?(:crypto_key_version_id)
721
712
  end
722
713
  end
723
714
 
724
- # Specifies what kind of log the caller must write
725
- class LogConfig
715
+ # Response message for KeyManagementService.ListKeyRings.
716
+ class ListKeyRingsResponse
726
717
  include Google::Apis::Core::Hashable
727
718
 
728
- # Write a Cloud Audit log
729
- # Corresponds to the JSON property `cloudAudit`
730
- # @return [Google::Apis::CloudkmsV1::CloudAuditOptions]
731
- attr_accessor :cloud_audit
719
+ # The list of KeyRings.
720
+ # Corresponds to the JSON property `keyRings`
721
+ # @return [Array<Google::Apis::CloudkmsV1::KeyRing>]
722
+ attr_accessor :key_rings
732
723
 
733
- # Options for counters
734
- # Corresponds to the JSON property `counter`
735
- # @return [Google::Apis::CloudkmsV1::CounterOptions]
736
- attr_accessor :counter
724
+ # A token to retrieve next page of results. Pass this value in
725
+ # ListKeyRingsRequest.page_token to retrieve the next page of results.
726
+ # Corresponds to the JSON property `nextPageToken`
727
+ # @return [String]
728
+ attr_accessor :next_page_token
737
729
 
738
- # Write a Data Access (Gin) log
739
- # Corresponds to the JSON property `dataAccess`
740
- # @return [Google::Apis::CloudkmsV1::DataAccessOptions]
741
- attr_accessor :data_access
730
+ # The total number of KeyRings that matched the query.
731
+ # Corresponds to the JSON property `totalSize`
732
+ # @return [Fixnum]
733
+ attr_accessor :total_size
742
734
 
743
735
  def initialize(**args)
744
736
  update!(**args)
@@ -746,83 +738,92 @@ module Google
746
738
 
747
739
  # Update properties of this object
748
740
  def update!(**args)
749
- @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit)
750
- @counter = args[:counter] if args.key?(:counter)
751
- @data_access = args[:data_access] if args.key?(:data_access)
741
+ @key_rings = args[:key_rings] if args.key?(:key_rings)
742
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
743
+ @total_size = args[:total_size] if args.key?(:total_size)
752
744
  end
753
745
  end
754
746
 
755
- # Request message for `SetIamPolicy` method.
756
- class SetIamPolicyRequest
747
+ # Write a Data Access (Gin) log
748
+ class DataAccessOptions
757
749
  include Google::Apis::Core::Hashable
758
750
 
759
- # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
760
- # the fields in the mask will be modified. If no mask is provided, the
761
- # following default mask is used:
762
- # paths: "bindings, etag"
763
- # This field is only used by Cloud IAM.
764
- # Corresponds to the JSON property `updateMask`
765
- # @return [String]
766
- attr_accessor :update_mask
767
-
768
- # Defines an Identity and Access Management (IAM) policy. It is used to
769
- # specify access control policies for Cloud Platform resources.
770
- # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
771
- # `members` to a `role`, where the members can be user accounts, Google groups,
772
- # Google domains, and service accounts. A `role` is a named list of permissions
773
- # defined by IAM.
774
- # **Example**
775
- # `
776
- # "bindings": [
777
- # `
778
- # "role": "roles/owner",
779
- # "members": [
780
- # "user:mike@example.com",
781
- # "group:admins@example.com",
782
- # "domain:google.com",
783
- # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
784
- # ]
785
- # `,
786
- # `
787
- # "role": "roles/viewer",
788
- # "members": ["user:sean@example.com"]
789
- # `
790
- # ]
791
- # `
792
- # For a description of IAM and its features, see the
793
- # [IAM developer's guide](https://cloud.google.com/iam).
794
- # Corresponds to the JSON property `policy`
795
- # @return [Google::Apis::CloudkmsV1::Policy]
796
- attr_accessor :policy
797
-
798
751
  def initialize(**args)
799
752
  update!(**args)
800
753
  end
801
754
 
802
755
  # Update properties of this object
803
756
  def update!(**args)
804
- @update_mask = args[:update_mask] if args.key?(:update_mask)
805
- @policy = args[:policy] if args.key?(:policy)
806
757
  end
807
758
  end
808
759
 
809
- # Request message for KeyManagementService.Decrypt.
810
- class DecryptRequest
760
+ # Specifies the audit configuration for a service.
761
+ # The configuration determines which permission types are logged, and what
762
+ # identities, if any, are exempted from logging.
763
+ # An AuditConfig must have one or more AuditLogConfigs.
764
+ # If there are AuditConfigs for both `allServices` and a specific service,
765
+ # the union of the two AuditConfigs is used for that service: the log_types
766
+ # specified in each AuditConfig are enabled, and the exempted_members in each
767
+ # AuditConfig are exempted.
768
+ # Example Policy with multiple AuditConfigs:
769
+ # `
770
+ # "audit_configs": [
771
+ # `
772
+ # "service": "allServices"
773
+ # "audit_log_configs": [
774
+ # `
775
+ # "log_type": "DATA_READ",
776
+ # "exempted_members": [
777
+ # "user:foo@gmail.com"
778
+ # ]
779
+ # `,
780
+ # `
781
+ # "log_type": "DATA_WRITE",
782
+ # `,
783
+ # `
784
+ # "log_type": "ADMIN_READ",
785
+ # `
786
+ # ]
787
+ # `,
788
+ # `
789
+ # "service": "fooservice.googleapis.com"
790
+ # "audit_log_configs": [
791
+ # `
792
+ # "log_type": "DATA_READ",
793
+ # `,
794
+ # `
795
+ # "log_type": "DATA_WRITE",
796
+ # "exempted_members": [
797
+ # "user:bar@gmail.com"
798
+ # ]
799
+ # `
800
+ # ]
801
+ # `
802
+ # ]
803
+ # `
804
+ # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
805
+ # logging. It also exempts foo@gmail.com from DATA_READ logging, and
806
+ # bar@gmail.com from DATA_WRITE logging.
807
+ class AuditConfig
811
808
  include Google::Apis::Core::Hashable
812
809
 
813
- # Required. The encrypted data originally returned in
814
- # EncryptResponse.ciphertext.
815
- # Corresponds to the JSON property `ciphertext`
816
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
817
- # @return [String]
818
- attr_accessor :ciphertext
810
+ #
811
+ # Corresponds to the JSON property `exemptedMembers`
812
+ # @return [Array<String>]
813
+ attr_accessor :exempted_members
819
814
 
820
- # Optional data that must match the data originally supplied in
821
- # EncryptRequest.additional_authenticated_data.
822
- # Corresponds to the JSON property `additionalAuthenticatedData`
823
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
815
+ # Specifies a service that will be enabled for audit logging.
816
+ # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
817
+ # `allServices` is a special value that covers all services.
818
+ # Corresponds to the JSON property `service`
824
819
  # @return [String]
825
- attr_accessor :additional_authenticated_data
820
+ attr_accessor :service
821
+
822
+ # The configuration for logging of each type of permission.
823
+ # Next ID: 4
824
+ # Corresponds to the JSON property `auditLogConfigs`
825
+ # @return [Array<Google::Apis::CloudkmsV1::AuditLogConfig>]
826
+ attr_accessor :audit_log_configs
826
827
 
827
828
  def initialize(**args)
828
829
  update!(**args)
@@ -830,37 +831,49 @@ module Google
830
831
 
831
832
  # Update properties of this object
832
833
  def update!(**args)
833
- @ciphertext = args[:ciphertext] if args.key?(:ciphertext)
834
- @additional_authenticated_data = args[:additional_authenticated_data] if args.key?(:additional_authenticated_data)
834
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
835
+ @service = args[:service] if args.key?(:service)
836
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
835
837
  end
836
838
  end
837
839
 
838
- # A resource that represents Google Cloud Platform location.
839
- class Location
840
+ # A CryptoKeyVersion represents an individual cryptographic key, and the
841
+ # associated key material.
842
+ # It can be used for cryptographic operations either directly, or via its
843
+ # parent CryptoKey, in which case the server will choose the appropriate
844
+ # version for the operation.
845
+ class CryptoKeyVersion
840
846
  include Google::Apis::Core::Hashable
841
847
 
842
- # Cross-service attributes for the location. For example
843
- # `"cloud.googleapis.com/region": "us-east1"`
844
- # Corresponds to the JSON property `labels`
845
- # @return [Hash<String,String>]
846
- attr_accessor :labels
848
+ # Output only. The time this CryptoKeyVersion's key material was
849
+ # destroyed. Only present if state is
850
+ # DESTROYED.
851
+ # Corresponds to the JSON property `destroyEventTime`
852
+ # @return [String]
853
+ attr_accessor :destroy_event_time
847
854
 
848
- # Resource name for the location, which may vary between implementations.
849
- # For example: `"projects/example-project/locations/us-east1"`
850
- # Corresponds to the JSON property `name`
855
+ # Output only. The time this CryptoKeyVersion's key material is scheduled
856
+ # for destruction. Only present if state is
857
+ # DESTROY_SCHEDULED.
858
+ # Corresponds to the JSON property `destroyTime`
851
859
  # @return [String]
852
- attr_accessor :name
860
+ attr_accessor :destroy_time
853
861
 
854
- # The canonical id for this location. For example: `"us-east1"`.
855
- # Corresponds to the JSON property `locationId`
862
+ # Output only. The time at which this CryptoKeyVersion was created.
863
+ # Corresponds to the JSON property `createTime`
856
864
  # @return [String]
857
- attr_accessor :location_id
865
+ attr_accessor :create_time
858
866
 
859
- # Service-specific metadata. For example the available capacity at the given
860
- # location.
861
- # Corresponds to the JSON property `metadata`
862
- # @return [Hash<String,Object>]
863
- attr_accessor :metadata
867
+ # The current state of the CryptoKeyVersion.
868
+ # Corresponds to the JSON property `state`
869
+ # @return [String]
870
+ attr_accessor :state
871
+
872
+ # Output only. The resource name for this CryptoKeyVersion in the format
873
+ # `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
874
+ # Corresponds to the JSON property `name`
875
+ # @return [String]
876
+ attr_accessor :name
864
877
 
865
878
  def initialize(**args)
866
879
  update!(**args)
@@ -868,79 +881,84 @@ module Google
868
881
 
869
882
  # Update properties of this object
870
883
  def update!(**args)
871
- @labels = args[:labels] if args.key?(:labels)
884
+ @destroy_event_time = args[:destroy_event_time] if args.key?(:destroy_event_time)
885
+ @destroy_time = args[:destroy_time] if args.key?(:destroy_time)
886
+ @create_time = args[:create_time] if args.key?(:create_time)
887
+ @state = args[:state] if args.key?(:state)
872
888
  @name = args[:name] if args.key?(:name)
873
- @location_id = args[:location_id] if args.key?(:location_id)
874
- @metadata = args[:metadata] if args.key?(:metadata)
875
889
  end
876
890
  end
877
891
 
878
- # Response message for KeyManagementService.ListCryptoKeys.
879
- class ListCryptoKeysResponse
892
+ # Write a Cloud Audit log
893
+ class CloudAuditOptions
880
894
  include Google::Apis::Core::Hashable
881
895
 
882
- # A token to retrieve next page of results. Pass this value in
883
- # ListCryptoKeysRequest.page_token to retrieve the next page of results.
884
- # Corresponds to the JSON property `nextPageToken`
885
- # @return [String]
886
- attr_accessor :next_page_token
887
-
888
- # The list of CryptoKeys.
889
- # Corresponds to the JSON property `cryptoKeys`
890
- # @return [Array<Google::Apis::CloudkmsV1::CryptoKey>]
891
- attr_accessor :crypto_keys
892
-
893
- # The total number of CryptoKeys that matched the query.
894
- # Corresponds to the JSON property `totalSize`
895
- # @return [Fixnum]
896
- attr_accessor :total_size
897
-
898
896
  def initialize(**args)
899
897
  update!(**args)
900
898
  end
901
899
 
902
900
  # Update properties of this object
903
901
  def update!(**args)
904
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
905
- @crypto_keys = args[:crypto_keys] if args.key?(:crypto_keys)
906
- @total_size = args[:total_size] if args.key?(:total_size)
907
902
  end
908
903
  end
909
904
 
910
- # A condition to be met.
911
- class Condition
905
+ # Associates `members` with a `role`.
906
+ class Binding
912
907
  include Google::Apis::Core::Hashable
913
908
 
914
- # The objects of the condition. This is mutually exclusive with 'value'.
915
- # Corresponds to the JSON property `values`
909
+ # Specifies the identities requesting access for a Cloud Platform resource.
910
+ # `members` can have the following values:
911
+ # * `allUsers`: A special identifier that represents anyone who is
912
+ # on the internet; with or without a Google account.
913
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
914
+ # who is authenticated with a Google account or a service account.
915
+ # * `user:`emailid``: An email address that represents a specific Google
916
+ # account. For example, `alice@gmail.com` or `joe@example.com`.
917
+ # * `serviceAccount:`emailid``: An email address that represents a service
918
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
919
+ # * `group:`emailid``: An email address that represents a Google group.
920
+ # For example, `admins@example.com`.
921
+ # * `domain:`domain``: A Google Apps domain name that represents all the
922
+ # users of that domain. For example, `google.com` or `example.com`.
923
+ # Corresponds to the JSON property `members`
916
924
  # @return [Array<String>]
917
- attr_accessor :values
925
+ attr_accessor :members
918
926
 
919
- # Trusted attributes supplied by the IAM system.
920
- # Corresponds to the JSON property `iam`
927
+ # Role that is assigned to `members`.
928
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
929
+ # Required
930
+ # Corresponds to the JSON property `role`
921
931
  # @return [String]
922
- attr_accessor :iam
932
+ attr_accessor :role
923
933
 
924
- # An operator to apply the subject with.
925
- # Corresponds to the JSON property `op`
926
- # @return [String]
927
- attr_accessor :op
934
+ def initialize(**args)
935
+ update!(**args)
936
+ end
928
937
 
929
- # Trusted attributes discharged by the service.
930
- # Corresponds to the JSON property `svc`
931
- # @return [String]
932
- attr_accessor :svc
938
+ # Update properties of this object
939
+ def update!(**args)
940
+ @members = args[:members] if args.key?(:members)
941
+ @role = args[:role] if args.key?(:role)
942
+ end
943
+ end
933
944
 
934
- # Trusted attributes supplied by any service that owns resources and uses
935
- # the IAM system for access control.
936
- # Corresponds to the JSON property `sys`
945
+ # Request message for KeyManagementService.Encrypt.
946
+ class EncryptRequest
947
+ include Google::Apis::Core::Hashable
948
+
949
+ # Optional data that, if specified, must also be provided during decryption
950
+ # through DecryptRequest.additional_authenticated_data. Must be no
951
+ # larger than 64KiB.
952
+ # Corresponds to the JSON property `additionalAuthenticatedData`
953
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
937
954
  # @return [String]
938
- attr_accessor :sys
955
+ attr_accessor :additional_authenticated_data
939
956
 
940
- # DEPRECATED. Use 'values' instead.
941
- # Corresponds to the JSON property `value`
957
+ # Required. The data to encrypt. Must be no larger than 64KiB.
958
+ # Corresponds to the JSON property `plaintext`
959
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
942
960
  # @return [String]
943
- attr_accessor :value
961
+ attr_accessor :plaintext
944
962
 
945
963
  def initialize(**args)
946
964
  update!(**args)
@@ -948,28 +966,32 @@ module Google
948
966
 
949
967
  # Update properties of this object
950
968
  def update!(**args)
951
- @values = args[:values] if args.key?(:values)
952
- @iam = args[:iam] if args.key?(:iam)
953
- @op = args[:op] if args.key?(:op)
954
- @svc = args[:svc] if args.key?(:svc)
955
- @sys = args[:sys] if args.key?(:sys)
956
- @value = args[:value] if args.key?(:value)
969
+ @additional_authenticated_data = args[:additional_authenticated_data] if args.key?(:additional_authenticated_data)
970
+ @plaintext = args[:plaintext] if args.key?(:plaintext)
957
971
  end
958
972
  end
959
973
 
960
- # Options for counters
961
- class CounterOptions
974
+ # Response message for KeyManagementService.ListCryptoKeyVersions.
975
+ class ListCryptoKeyVersionsResponse
962
976
  include Google::Apis::Core::Hashable
963
977
 
964
- # The metric to update.
965
- # Corresponds to the JSON property `metric`
966
- # @return [String]
967
- attr_accessor :metric
978
+ # The list of CryptoKeyVersions.
979
+ # Corresponds to the JSON property `cryptoKeyVersions`
980
+ # @return [Array<Google::Apis::CloudkmsV1::CryptoKeyVersion>]
981
+ attr_accessor :crypto_key_versions
968
982
 
969
- # The field value to attribute.
970
- # Corresponds to the JSON property `field`
983
+ # A token to retrieve next page of results. Pass this value in
984
+ # ListCryptoKeyVersionsRequest.page_token to retrieve the next page of
985
+ # results.
986
+ # Corresponds to the JSON property `nextPageToken`
971
987
  # @return [String]
972
- attr_accessor :field
988
+ attr_accessor :next_page_token
989
+
990
+ # The total number of CryptoKeyVersions that matched the
991
+ # query.
992
+ # Corresponds to the JSON property `totalSize`
993
+ # @return [Fixnum]
994
+ attr_accessor :total_size
973
995
 
974
996
  def initialize(**args)
975
997
  update!(**args)
@@ -977,42 +999,21 @@ module Google
977
999
 
978
1000
  # Update properties of this object
979
1001
  def update!(**args)
980
- @metric = args[:metric] if args.key?(:metric)
981
- @field = args[:field] if args.key?(:field)
1002
+ @crypto_key_versions = args[:crypto_key_versions] if args.key?(:crypto_key_versions)
1003
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1004
+ @total_size = args[:total_size] if args.key?(:total_size)
982
1005
  end
983
1006
  end
984
1007
 
985
- # Provides the configuration for logging a type of permissions.
986
- # Example:
987
- # `
988
- # "audit_log_configs": [
989
- # `
990
- # "log_type": "DATA_READ",
991
- # "exempted_members": [
992
- # "user:foo@gmail.com"
993
- # ]
994
- # `,
995
- # `
996
- # "log_type": "DATA_WRITE",
997
- # `
998
- # ]
999
- # `
1000
- # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
1001
- # foo@gmail.com from DATA_READ logging.
1002
- class AuditLogConfig
1008
+ # Response message for `TestIamPermissions` method.
1009
+ class TestIamPermissionsResponse
1003
1010
  include Google::Apis::Core::Hashable
1004
1011
 
1005
- # Specifies the identities that do not cause logging for this type of
1006
- # permission.
1007
- # Follows the same format of Binding.members.
1008
- # Corresponds to the JSON property `exemptedMembers`
1012
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
1013
+ # allowed.
1014
+ # Corresponds to the JSON property `permissions`
1009
1015
  # @return [Array<String>]
1010
- attr_accessor :exempted_members
1011
-
1012
- # The log type that this config enables.
1013
- # Corresponds to the JSON property `logType`
1014
- # @return [String]
1015
- attr_accessor :log_type
1016
+ attr_accessor :permissions
1016
1017
 
1017
1018
  def initialize(**args)
1018
1019
  update!(**args)
@@ -1020,8 +1021,7 @@ module Google
1020
1021
 
1021
1022
  # Update properties of this object
1022
1023
  def update!(**args)
1023
- @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
1024
- @log_type = args[:log_type] if args.key?(:log_type)
1024
+ @permissions = args[:permissions] if args.key?(:permissions)
1025
1025
  end
1026
1026
  end
1027
1027
  end