google-api-client 0.9.8 → 0.9.20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (238) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +37 -0
  3. data/Gemfile +9 -1
  4. data/README.md +10 -2
  5. data/api_names.yaml +63 -110
  6. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +35 -0
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +298 -0
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +122 -0
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +458 -0
  10. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  11. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +260 -13
  12. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +81 -0
  13. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +60 -8
  14. data/generated/google/apis/adexchangeseller_v2_0.rb +2 -3
  15. data/generated/google/apis/adexchangeseller_v2_0/service.rb +1 -2
  16. data/generated/google/apis/admin_directory_v1.rb +1 -1
  17. data/generated/google/apis/admin_directory_v1/classes.rb +86 -0
  18. data/generated/google/apis/admin_directory_v1/representations.rb +24 -0
  19. data/generated/google/apis/admin_directory_v1/service.rb +41 -2
  20. data/generated/google/apis/admin_reports_v1.rb +3 -3
  21. data/generated/google/apis/admin_reports_v1/service.rb +2 -2
  22. data/generated/google/apis/adsense_v1_4.rb +1 -1
  23. data/generated/google/apis/adsense_v1_4/classes.rb +1 -1
  24. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  25. data/generated/google/apis/adsensehost_v4_1/classes.rb +1 -2
  26. data/generated/google/apis/analytics_v3.rb +1 -1
  27. data/generated/google/apis/analytics_v3/classes.rb +379 -3
  28. data/generated/google/apis/analytics_v3/representations.rb +136 -0
  29. data/generated/google/apis/analytics_v3/service.rb +217 -0
  30. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  31. data/generated/google/apis/analyticsreporting_v4/classes.rb +50 -22
  32. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  33. data/generated/google/apis/androidenterprise_v1/classes.rb +813 -49
  34. data/generated/google/apis/androidenterprise_v1/representations.rb +336 -0
  35. data/generated/google/apis/androidenterprise_v1/service.rb +1234 -145
  36. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  37. data/generated/google/apis/androidpublisher_v2/classes.rb +47 -8
  38. data/generated/google/apis/androidpublisher_v2/representations.rb +27 -0
  39. data/generated/google/apis/androidpublisher_v2/service.rb +55 -0
  40. data/generated/google/apis/appengine_v1beta5.rb +7 -1
  41. data/generated/google/apis/appengine_v1beta5/classes.rb +516 -313
  42. data/generated/google/apis/appengine_v1beta5/representations.rb +115 -22
  43. data/generated/google/apis/appengine_v1beta5/service.rb +329 -33
  44. data/generated/google/apis/appsactivity_v1.rb +1 -1
  45. data/generated/google/apis/appsactivity_v1/classes.rb +7 -0
  46. data/generated/google/apis/appsactivity_v1/representations.rb +1 -0
  47. data/generated/google/apis/appstate_v1.rb +1 -1
  48. data/generated/google/apis/bigquery_v2.rb +1 -1
  49. data/generated/google/apis/bigquery_v2/classes.rb +277 -20
  50. data/generated/google/apis/bigquery_v2/representations.rb +86 -0
  51. data/generated/google/apis/bigquery_v2/service.rb +8 -2
  52. data/generated/google/apis/books_v1.rb +2 -2
  53. data/generated/google/apis/books_v1/classes.rb +79 -1
  54. data/generated/google/apis/books_v1/representations.rb +34 -0
  55. data/generated/google/apis/books_v1/service.rb +7 -3
  56. data/generated/google/apis/calendar_v3.rb +1 -1
  57. data/generated/google/apis/civicinfo_v2.rb +3 -2
  58. data/generated/google/apis/civicinfo_v2/classes.rb +377 -5
  59. data/generated/google/apis/civicinfo_v2/representations.rb +149 -0
  60. data/generated/google/apis/civicinfo_v2/service.rb +27 -6
  61. data/generated/google/apis/classroom_v1.rb +1 -1
  62. data/generated/google/apis/classroom_v1/classes.rb +183 -37
  63. data/generated/google/apis/classroom_v1/representations.rb +74 -9
  64. data/generated/google/apis/classroom_v1/service.rb +403 -38
  65. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  66. data/generated/google/apis/cloudbuild_v1/classes.rb +381 -17
  67. data/generated/google/apis/cloudbuild_v1/representations.rb +137 -2
  68. data/generated/google/apis/cloudbuild_v1/service.rb +174 -1
  69. data/generated/google/apis/clouddebugger_v2.rb +3 -6
  70. data/generated/google/apis/clouddebugger_v2/service.rb +4 -4
  71. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  72. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  73. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +502 -111
  74. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +162 -24
  75. data/generated/google/apis/cloudresourcemanager_v1/service.rb +274 -30
  76. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  77. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +121 -9
  78. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +46 -0
  79. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +71 -58
  80. data/generated/google/apis/compute_beta.rb +1 -1
  81. data/generated/google/apis/compute_beta/classes.rb +2299 -434
  82. data/generated/google/apis/compute_beta/representations.rb +752 -33
  83. data/generated/google/apis/compute_beta/service.rb +6067 -3153
  84. data/generated/google/apis/compute_v1.rb +1 -1
  85. data/generated/google/apis/compute_v1/classes.rb +1681 -207
  86. data/generated/google/apis/compute_v1/representations.rb +552 -0
  87. data/generated/google/apis/compute_v1/service.rb +2797 -1171
  88. data/generated/google/apis/content_v2.rb +1 -1
  89. data/generated/google/apis/content_v2/classes.rb +757 -1
  90. data/generated/google/apis/content_v2/representations.rb +337 -0
  91. data/generated/google/apis/content_v2/service.rb +244 -0
  92. data/generated/google/apis/dataflow_v1b3.rb +38 -0
  93. data/generated/google/apis/dataflow_v1b3/classes.rb +4053 -0
  94. data/generated/google/apis/dataflow_v1b3/representations.rb +1736 -0
  95. data/generated/google/apis/dataflow_v1b3/service.rb +875 -0
  96. data/generated/google/apis/dataproc_v1.rb +2 -2
  97. data/generated/google/apis/dataproc_v1/classes.rb +213 -68
  98. data/generated/google/apis/dataproc_v1/representations.rb +38 -0
  99. data/generated/google/apis/dataproc_v1/service.rb +78 -48
  100. data/generated/google/apis/datastore_v1.rb +38 -0
  101. data/generated/google/apis/datastore_v1/classes.rb +1284 -0
  102. data/generated/google/apis/datastore_v1/representations.rb +572 -0
  103. data/generated/google/apis/datastore_v1/service.rb +259 -0
  104. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  105. data/generated/google/apis/datastore_v1beta3/classes.rb +1284 -0
  106. data/generated/google/apis/datastore_v1beta3/representations.rb +572 -0
  107. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  108. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  109. data/generated/google/apis/deploymentmanager_v2/classes.rb +384 -2
  110. data/generated/google/apis/deploymentmanager_v2/representations.rb +161 -0
  111. data/generated/google/apis/deploymentmanager_v2/service.rb +217 -55
  112. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  113. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  114. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  115. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  116. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  117. data/generated/google/apis/dfareporting_v2_6/classes.rb +11586 -0
  118. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  119. data/generated/google/apis/dfareporting_v2_6/service.rb +9025 -0
  120. data/generated/google/apis/dns_v1.rb +1 -1
  121. data/generated/google/apis/dns_v1/classes.rb +1 -1
  122. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  123. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +79 -86
  124. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +25 -28
  125. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +10 -8
  126. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  127. data/generated/google/apis/drive_v2.rb +1 -1
  128. data/generated/google/apis/drive_v2/classes.rb +27 -3
  129. data/generated/google/apis/drive_v2/representations.rb +4 -0
  130. data/generated/google/apis/drive_v2/service.rb +16 -3
  131. data/generated/google/apis/drive_v3.rb +1 -1
  132. data/generated/google/apis/drive_v3/classes.rb +50 -16
  133. data/generated/google/apis/drive_v3/representations.rb +4 -0
  134. data/generated/google/apis/drive_v3/service.rb +12 -2
  135. data/generated/google/apis/fitness_v1.rb +8 -2
  136. data/generated/google/apis/fitness_v1/classes.rb +64 -6
  137. data/generated/google/apis/fitness_v1/representations.rb +20 -0
  138. data/generated/google/apis/fitness_v1/service.rb +17 -18
  139. data/generated/google/apis/fusiontables_v2.rb +1 -1
  140. data/generated/google/apis/fusiontables_v2/classes.rb +4 -3
  141. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  142. data/generated/google/apis/games_management_v1management.rb +1 -1
  143. data/generated/google/apis/games_v1.rb +1 -1
  144. data/generated/google/apis/genomics_v1.rb +2 -4
  145. data/generated/google/apis/genomics_v1/classes.rb +143 -34
  146. data/generated/google/apis/genomics_v1/representations.rb +48 -11
  147. data/generated/google/apis/genomics_v1/service.rb +35 -37
  148. data/generated/google/apis/gmail_v1.rb +10 -1
  149. data/generated/google/apis/gmail_v1/classes.rb +542 -4
  150. data/generated/google/apis/gmail_v1/representations.rb +213 -0
  151. data/generated/google/apis/gmail_v1/service.rb +898 -1
  152. data/generated/google/apis/groupssettings_v1.rb +1 -1
  153. data/generated/google/apis/groupssettings_v1/classes.rb +12 -0
  154. data/generated/google/apis/groupssettings_v1/representations.rb +2 -0
  155. data/generated/google/apis/iam_v1.rb +2 -2
  156. data/generated/google/apis/iam_v1/classes.rb +181 -206
  157. data/generated/google/apis/iam_v1/representations.rb +36 -45
  158. data/generated/google/apis/iam_v1/service.rb +101 -67
  159. data/generated/google/apis/identitytoolkit_v3.rb +4 -1
  160. data/generated/google/apis/identitytoolkit_v3/classes.rb +171 -1
  161. data/generated/google/apis/identitytoolkit_v3/representations.rb +26 -0
  162. data/generated/google/apis/language_v1beta1.rb +36 -0
  163. data/generated/google/apis/language_v1beta1/classes.rb +599 -0
  164. data/generated/google/apis/language_v1beta1/representations.rb +289 -0
  165. data/generated/google/apis/language_v1beta1/service.rb +152 -0
  166. data/generated/google/apis/logging_v2beta1.rb +6 -6
  167. data/generated/google/apis/logging_v2beta1/classes.rb +760 -731
  168. data/generated/google/apis/logging_v2beta1/representations.rb +136 -147
  169. data/generated/google/apis/logging_v2beta1/service.rb +290 -209
  170. data/generated/google/apis/mirror_v1.rb +2 -2
  171. data/generated/google/apis/mirror_v1/service.rb +1 -1
  172. data/generated/google/apis/monitoring_v3.rb +45 -0
  173. data/generated/google/apis/monitoring_v3/classes.rb +1337 -0
  174. data/generated/google/apis/monitoring_v3/representations.rb +516 -0
  175. data/generated/google/apis/monitoring_v3/service.rb +711 -0
  176. data/generated/google/apis/oauth2_v2.rb +1 -1
  177. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  178. data/generated/google/apis/plus_domains_v1.rb +1 -1
  179. data/generated/google/apis/plus_v1.rb +1 -1
  180. data/generated/google/apis/pubsub_v1.rb +1 -1
  181. data/generated/google/apis/pubsub_v1/classes.rb +10 -9
  182. data/generated/google/apis/pubsub_v1/service.rb +128 -27
  183. data/generated/google/apis/qpx_express_v1.rb +1 -1
  184. data/generated/google/apis/qpx_express_v1/classes.rb +6 -0
  185. data/generated/google/apis/qpx_express_v1/representations.rb +1 -0
  186. data/generated/google/apis/replicapool_v1beta2.rb +1 -1
  187. data/generated/google/apis/replicapoolupdater_v1beta1.rb +4 -2
  188. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +3 -1
  189. data/generated/google/apis/script_v1.rb +1 -1
  190. data/generated/google/apis/script_v1/classes.rb +6 -0
  191. data/generated/google/apis/script_v1/representations.rb +1 -0
  192. data/generated/google/apis/sheets_v4.rb +1 -1
  193. data/generated/google/apis/sheets_v4/classes.rb +910 -89
  194. data/generated/google/apis/sheets_v4/representations.rb +194 -10
  195. data/generated/google/apis/sheets_v4/service.rb +216 -49
  196. data/generated/google/apis/slides_v1.rb +49 -0
  197. data/generated/google/apis/slides_v1/classes.rb +3926 -0
  198. data/generated/google/apis/slides_v1/representations.rb +1722 -0
  199. data/generated/google/apis/slides_v1/service.rb +202 -0
  200. data/generated/google/apis/speech_v1beta1.rb +34 -0
  201. data/generated/google/apis/speech_v1beta1/classes.rb +511 -0
  202. data/generated/google/apis/speech_v1beta1/representations.rb +218 -0
  203. data/generated/google/apis/speech_v1beta1/service.rb +271 -0
  204. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  205. data/generated/google/apis/sqladmin_v1beta4/classes.rb +32 -8
  206. data/generated/google/apis/sqladmin_v1beta4/representations.rb +3 -0
  207. data/generated/google/apis/sqladmin_v1beta4/service.rb +42 -0
  208. data/generated/google/apis/storage_v1.rb +1 -1
  209. data/generated/google/apis/storage_v1/classes.rb +43 -18
  210. data/generated/google/apis/storage_v1/representations.rb +4 -1
  211. data/generated/google/apis/storage_v1/service.rb +5 -2
  212. data/generated/google/apis/translate_v2.rb +2 -2
  213. data/generated/google/apis/translate_v2/service.rb +1 -1
  214. data/generated/google/apis/vision_v1.rb +1 -1
  215. data/generated/google/apis/vision_v1/classes.rb +12 -11
  216. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  217. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  218. data/generated/google/apis/youtube_partner_v1/classes.rb +6 -0
  219. data/generated/google/apis/youtube_partner_v1/representations.rb +2 -0
  220. data/generated/google/apis/youtube_partner_v1/service.rb +15 -3
  221. data/generated/google/apis/youtube_v3.rb +1 -1
  222. data/generated/google/apis/youtube_v3/classes.rb +183 -21
  223. data/generated/google/apis/youtube_v3/representations.rb +85 -4
  224. data/generated/google/apis/youtube_v3/service.rb +41 -5
  225. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  226. data/google-api-client.gemspec +2 -1
  227. data/lib/google/apis/core/api_command.rb +4 -0
  228. data/lib/google/apis/core/base_service.rb +10 -4
  229. data/lib/google/apis/core/download.rb +7 -2
  230. data/lib/google/apis/core/http_command.rb +5 -1
  231. data/lib/google/apis/core/upload.rb +7 -1
  232. data/lib/google/apis/errors.rb +2 -2
  233. data/lib/google/apis/generator/annotator.rb +6 -0
  234. data/lib/google/apis/version.rb +1 -1
  235. data/samples/cli/lib/samples/bigquery.rb +101 -0
  236. data/samples/cli/lib/samples/sheets.rb +61 -0
  237. data/sync.rb +71 -0
  238. metadata +55 -13
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/google-apps/groups-settings/get_started
26
26
  module GroupssettingsV1
27
27
  VERSION = 'V1'
28
- REVISION = '20160323'
28
+ REVISION = '20160525'
29
29
 
30
30
  # View and manage the settings of a Google Apps Group
31
31
  AUTH_APPS_GROUPS_SETTINGS = 'https://www.googleapis.com/auth/apps.groups.settings'
@@ -46,6 +46,11 @@ module Google
46
46
  # @return [String]
47
47
  attr_accessor :archive_only
48
48
 
49
+ # Custom footer text.
50
+ # Corresponds to the JSON property `customFooterText`
51
+ # @return [String]
52
+ attr_accessor :custom_footer_text
53
+
49
54
  # Default email to which reply to any message should go.
50
55
  # Corresponds to the JSON property `customReplyTo`
51
56
  # @return [String]
@@ -66,6 +71,11 @@ module Google
66
71
  # @return [String]
67
72
  attr_accessor :email
68
73
 
74
+ # Whether to include custom footer.
75
+ # Corresponds to the JSON property `includeCustomFooter`
76
+ # @return [String]
77
+ attr_accessor :include_custom_footer
78
+
69
79
  # If this groups should be included in global address list or not.
70
80
  # Corresponds to the JSON property `includeInGlobalAddressList`
71
81
  # @return [String]
@@ -196,10 +206,12 @@ module Google
196
206
  @allow_google_communication = args[:allow_google_communication] if args.key?(:allow_google_communication)
197
207
  @allow_web_posting = args[:allow_web_posting] if args.key?(:allow_web_posting)
198
208
  @archive_only = args[:archive_only] if args.key?(:archive_only)
209
+ @custom_footer_text = args[:custom_footer_text] if args.key?(:custom_footer_text)
199
210
  @custom_reply_to = args[:custom_reply_to] if args.key?(:custom_reply_to)
200
211
  @default_message_deny_notification_text = args[:default_message_deny_notification_text] if args.key?(:default_message_deny_notification_text)
201
212
  @description = args[:description] if args.key?(:description)
202
213
  @email = args[:email] if args.key?(:email)
214
+ @include_custom_footer = args[:include_custom_footer] if args.key?(:include_custom_footer)
203
215
  @include_in_global_address_list = args[:include_in_global_address_list] if args.key?(:include_in_global_address_list)
204
216
  @is_archived = args[:is_archived] if args.key?(:is_archived)
205
217
  @kind = args[:kind] if args.key?(:kind)
@@ -35,10 +35,12 @@ module Google
35
35
  property :allow_google_communication, as: 'allowGoogleCommunication'
36
36
  property :allow_web_posting, as: 'allowWebPosting'
37
37
  property :archive_only, as: 'archiveOnly'
38
+ property :custom_footer_text, as: 'customFooterText'
38
39
  property :custom_reply_to, as: 'customReplyTo'
39
40
  property :default_message_deny_notification_text, as: 'defaultMessageDenyNotificationText'
40
41
  property :description, as: 'description'
41
42
  property :email, as: 'email'
43
+ property :include_custom_footer, as: 'includeCustomFooter'
42
44
  property :include_in_global_address_list, as: 'includeInGlobalAddressList'
43
45
  property :is_archived, as: 'isArchived'
44
46
  property :kind, as: 'kind'
@@ -18,7 +18,7 @@ require 'google/apis/iam_v1/representations.rb'
18
18
 
19
19
  module Google
20
20
  module Apis
21
- # Google Identity and Access Management API
21
+ # Google Identity and Access Management (IAM) API
22
22
  #
23
23
  # Manages identity and access control for Google Cloud Platform resources,
24
24
  # including the creation of service accounts, which you can use to authenticate
@@ -27,7 +27,7 @@ module Google
27
27
  # @see https://cloud.google.com/iam/
28
28
  module IamV1
29
29
  VERSION = 'V1'
30
- REVISION = '20160129'
30
+ REVISION = '20160915'
31
31
 
32
32
  # View and manage your data across Google Cloud Platform services
33
33
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -31,8 +31,8 @@ module Google
31
31
  # @return [Array<Google::Apis::IamV1::ServiceAccount>]
32
32
  attr_accessor :accounts
33
33
 
34
- # To retrieve the next page of results, set [ListServiceAccountsRequest.
35
- # page_token] to this value.
34
+ # To retrieve the next page of results, set ListServiceAccountsRequest.
35
+ # page_token to this value.
36
36
  # Corresponds to the JSON property `nextPageToken`
37
37
  # @return [String]
38
38
  attr_accessor :next_page_token
@@ -49,22 +49,25 @@ module Google
49
49
  end
50
50
 
51
51
  # A service account in the Identity and Access Management API. To create a
52
- # service account, you specify the project_id and account_id for the account.
53
- # The account_id is unique within the project, and used to generate the service
54
- # account email address and a stable unique id. All other methods can identify
55
- # accounts using the format "projects/`project`/serviceAccounts/`account`".
56
- # Using '-' as a wildcard for the project, will infer the project from the
57
- # account. The account value can be the email address or the unique_id of the
58
- # service account.
52
+ # service account, specify the `project_id` and the `account_id` for the account.
53
+ # The `account_id` is unique within the project, and is used to generate the
54
+ # service account email address and a stable `unique_id`. If the account already
55
+ # exists, the account's resource name is returned in util::Status's ResourceInfo.
56
+ # resource_name in the format of projects/`project`/serviceAccounts/`email`. The
57
+ # caller can use the name in other methods to access the account. All other
58
+ # methods can identify the service account using the format `projects/`project`/
59
+ # serviceAccounts/`account``. Using `-` as a wildcard for the project will infer
60
+ # the project from the account. The `account` value can be the `email` address
61
+ # or the `unique_id` of the service account.
59
62
  class ServiceAccount
60
63
  include Google::Apis::Core::Hashable
61
64
 
62
- # The resource name of the service account in the format "projects/`project`/
63
- # serviceAccounts/`account`". In requests using '-' as a wildcard for the
64
- # project, will infer the project from the account and the account value can be
65
- # the email address or the unique_id of the service account. In responses the
66
- # resource name will always be in the format "projects/`project`/serviceAccounts/
67
- # `email`".
65
+ # The resource name of the service account in the following format: `projects/`
66
+ # project`/serviceAccounts/`account``. Requests using `-` as a wildcard for the
67
+ # project will infer the project from the `account` and the `account` value can
68
+ # be the `email` address or the `unique_id` of the service account. In responses
69
+ # the resource name will always be in the format `projects/`project`/
70
+ # serviceAccounts/`email``.
68
71
  # Corresponds to the JSON property `name`
69
72
  # @return [String]
70
73
  attr_accessor :name
@@ -74,12 +77,12 @@ module Google
74
77
  # @return [String]
75
78
  attr_accessor :project_id
76
79
 
77
- # @OutputOnly unique and stable id of the service account.
80
+ # @OutputOnly The unique and stable id of the service account.
78
81
  # Corresponds to the JSON property `uniqueId`
79
82
  # @return [String]
80
83
  attr_accessor :unique_id
81
84
 
82
- # @OutputOnly Email address of the service account.
85
+ # @OutputOnly The email address of the service account.
83
86
  # Corresponds to the JSON property `email`
84
87
  # @return [String]
85
88
  attr_accessor :email
@@ -123,21 +126,24 @@ module Google
123
126
  include Google::Apis::Core::Hashable
124
127
 
125
128
  # Required. The account id that is used to generate the service account email
126
- # address and a stable unique id. It is unique within a project, must be 1-63
127
- # characters long, and match the regular expression [a-z]([-a-z0-9]*[a-z0-9]) to
128
- # comply with RFC1035.
129
+ # address and a stable unique id. It is unique within a project, must be 6-30
130
+ # characters long, and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])`
131
+ # to comply with RFC1035.
129
132
  # Corresponds to the JSON property `accountId`
130
133
  # @return [String]
131
134
  attr_accessor :account_id
132
135
 
133
136
  # A service account in the Identity and Access Management API. To create a
134
- # service account, you specify the project_id and account_id for the account.
135
- # The account_id is unique within the project, and used to generate the service
136
- # account email address and a stable unique id. All other methods can identify
137
- # accounts using the format "projects/`project`/serviceAccounts/`account`".
138
- # Using '-' as a wildcard for the project, will infer the project from the
139
- # account. The account value can be the email address or the unique_id of the
140
- # service account.
137
+ # service account, specify the `project_id` and the `account_id` for the account.
138
+ # The `account_id` is unique within the project, and is used to generate the
139
+ # service account email address and a stable `unique_id`. If the account already
140
+ # exists, the account's resource name is returned in util::Status's ResourceInfo.
141
+ # resource_name in the format of projects/`project`/serviceAccounts/`email`. The
142
+ # caller can use the name in other methods to access the account. All other
143
+ # methods can identify the service account using the format `projects/`project`/
144
+ # serviceAccounts/`account``. Using `-` as a wildcard for the project will infer
145
+ # the project from the account. The `account` value can be the `email` address
146
+ # or the `unique_id` of the service account.
141
147
  # Corresponds to the JSON property `serviceAccount`
142
148
  # @return [Google::Apis::IamV1::ServiceAccount]
143
149
  attr_accessor :service_account
@@ -189,28 +195,47 @@ module Google
189
195
  end
190
196
  end
191
197
 
192
- # Represents a service account key. A service account can have 0 or more key
193
- # pairs. The private keys for these are not stored by Google. ServiceAccountKeys
194
- # are immutable.
198
+ # Represents a service account key. A service account has two sets of key-pairs:
199
+ # user-managed, and system-managed. User-managed key-pairs can be created and
200
+ # deleted by users. Users are responsible for rotating these keys periodically
201
+ # to ensure security of their service accounts. Users retain the private key of
202
+ # these key-pairs, and Google retains ONLY the public key. System-managed key-
203
+ # pairs are managed automatically by Google, and rotated daily without user
204
+ # intervention. The private key never leaves Google's servers to maximize
205
+ # security. Public keys for all service accounts are also published at the
206
+ # OAuth2 Service Account API.
195
207
  class ServiceAccountKey
196
208
  include Google::Apis::Core::Hashable
197
209
 
198
- # The resource name of the service account key in the format "projects/`project`/
199
- # serviceAccounts/`email`/keys/`key`".
210
+ # The resource name of the service account key in the following format `projects/
211
+ # `project`/serviceAccounts/`account`/keys/`key``.
200
212
  # Corresponds to the JSON property `name`
201
213
  # @return [String]
202
214
  attr_accessor :name
203
215
 
204
- # The type of the private key.
216
+ # The output format for the private key. Only provided in `
217
+ # CreateServiceAccountKey` responses, not in `GetServiceAccountKey` or `
218
+ # ListServiceAccountKey` responses. Google never exposes system-managed private
219
+ # keys, and never retains user-managed private keys.
205
220
  # Corresponds to the JSON property `privateKeyType`
206
221
  # @return [String]
207
222
  attr_accessor :private_key_type
208
223
 
209
- # The key data.
224
+ # Specifies the algorithm (and possibly key size) for the key.
225
+ # Corresponds to the JSON property `keyAlgorithm`
226
+ # @return [String]
227
+ attr_accessor :key_algorithm
228
+
229
+ # The private key data. Only provided in `CreateServiceAccountKey` responses.
210
230
  # Corresponds to the JSON property `privateKeyData`
211
231
  # @return [String]
212
232
  attr_accessor :private_key_data
213
233
 
234
+ # The public key data. Only provided in `GetServiceAccountKey` responses.
235
+ # Corresponds to the JSON property `publicKeyData`
236
+ # @return [String]
237
+ attr_accessor :public_key_data
238
+
214
239
  # The key can be used after this timestamp.
215
240
  # Corresponds to the JSON property `validAfterTime`
216
241
  # @return [String]
@@ -229,7 +254,9 @@ module Google
229
254
  def update!(**args)
230
255
  @name = args[:name] if args.key?(:name)
231
256
  @private_key_type = args[:private_key_type] if args.key?(:private_key_type)
257
+ @key_algorithm = args[:key_algorithm] if args.key?(:key_algorithm)
232
258
  @private_key_data = args[:private_key_data] if args.key?(:private_key_data)
259
+ @public_key_data = args[:public_key_data] if args.key?(:public_key_data)
233
260
  @valid_after_time = args[:valid_after_time] if args.key?(:valid_after_time)
234
261
  @valid_before_time = args[:valid_before_time] if args.key?(:valid_before_time)
235
262
  end
@@ -239,11 +266,18 @@ module Google
239
266
  class CreateServiceAccountKeyRequest
240
267
  include Google::Apis::Core::Hashable
241
268
 
242
- # The type of the key requested. GOOGLE_CREDENTIALS is the default key type.
269
+ # The output format of the private key. `GOOGLE_CREDENTIALS_FILE` is the default
270
+ # output format.
243
271
  # Corresponds to the JSON property `privateKeyType`
244
272
  # @return [String]
245
273
  attr_accessor :private_key_type
246
274
 
275
+ # Which type of key and algorithm to use for the key. The default is currently a
276
+ # 4K RSA key. However this may change in the future.
277
+ # Corresponds to the JSON property `keyAlgorithm`
278
+ # @return [String]
279
+ attr_accessor :key_algorithm
280
+
247
281
  def initialize(**args)
248
282
  update!(**args)
249
283
  end
@@ -251,6 +285,7 @@ module Google
251
285
  # Update properties of this object
252
286
  def update!(**args)
253
287
  @private_key_type = args[:private_key_type] if args.key?(:private_key_type)
288
+ @key_algorithm = args[:key_algorithm] if args.key?(:key_algorithm)
254
289
  end
255
290
  end
256
291
 
@@ -258,7 +293,7 @@ module Google
258
293
  class SignBlobRequest
259
294
  include Google::Apis::Core::Hashable
260
295
 
261
- # The bytes to sign
296
+ # The bytes to sign.
262
297
  # Corresponds to the JSON property `bytesToSign`
263
298
  # @return [String]
264
299
  attr_accessor :bytes_to_sign
@@ -305,7 +340,7 @@ module Google
305
340
  # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
306
341
  # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
307
342
  # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
308
- # appspot.gserviceaccount.com"] `, ` "role": "roles/viewer", "members": ["user:
343
+ # appspot.gserviceaccount.com", ] `, ` "role": "roles/viewer", "members": ["user:
309
344
  # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
310
345
  # IAM developer's guide](https://cloud.google.com/iam).
311
346
  class Policy
@@ -323,11 +358,6 @@ module Google
323
358
  # @return [Array<Google::Apis::IamV1::Binding>]
324
359
  attr_accessor :bindings
325
360
 
326
- #
327
- # Corresponds to the JSON property `rules`
328
- # @return [Array<Google::Apis::IamV1::Rule>]
329
- attr_accessor :rules
330
-
331
361
  # `etag` is used for optimistic concurrency control as a way to help prevent
332
362
  # simultaneous updates of a policy from overwriting each other. It is strongly
333
363
  # suggested that systems make use of the `etag` in the read-modify-write cycle
@@ -348,7 +378,6 @@ module Google
348
378
  def update!(**args)
349
379
  @version = args[:version] if args.key?(:version)
350
380
  @bindings = args[:bindings] if args.key?(:bindings)
351
- @rules = args[:rules] if args.key?(:rules)
352
381
  @etag = args[:etag] if args.key?(:etag)
353
382
  end
354
383
  end
@@ -390,49 +419,23 @@ module Google
390
419
  end
391
420
  end
392
421
 
393
- # A rule to be applied in a Policy.
394
- class Rule
422
+ # Request message for `SetIamPolicy` method.
423
+ class SetIamPolicyRequest
395
424
  include Google::Apis::Core::Hashable
396
425
 
397
- # Human-readable description of the rule.
398
- # Corresponds to the JSON property `description`
399
- # @return [String]
400
- attr_accessor :description
401
-
402
- # A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value
403
- # of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.
404
- # *') matches all verbs.
405
- # Corresponds to the JSON property `permissions`
406
- # @return [Array<String>]
407
- attr_accessor :permissions
408
-
409
- # Required
410
- # Corresponds to the JSON property `action`
411
- # @return [String]
412
- attr_accessor :action
413
-
414
- # The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries.
415
- # Corresponds to the JSON property `in`
416
- # @return [Array<String>]
417
- attr_accessor :in
418
-
419
- # The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of
420
- # entries. The format for in and not_in entries is the same as for members in a
421
- # Binding (see google/iam/v1/policy.proto).
422
- # Corresponds to the JSON property `notIn`
423
- # @return [Array<String>]
424
- attr_accessor :not_in
425
-
426
- # Additional restrictions that must be met
427
- # Corresponds to the JSON property `conditions`
428
- # @return [Array<Google::Apis::IamV1::Condition>]
429
- attr_accessor :conditions
430
-
431
- # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
432
- # that match the LOG action.
433
- # Corresponds to the JSON property `logConfig`
434
- # @return [Array<Google::Apis::IamV1::LogConfig>]
435
- attr_accessor :log_config
426
+ # Defines an Identity and Access Management (IAM) policy. It is used to specify
427
+ # access control policies for Cloud Platform resources. A `Policy` consists of a
428
+ # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
429
+ # the members can be user accounts, Google groups, Google domains, and service
430
+ # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
431
+ # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
432
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
433
+ # appspot.gserviceaccount.com", ] `, ` "role": "roles/viewer", "members": ["user:
434
+ # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
435
+ # IAM developer's guide](https://cloud.google.com/iam).
436
+ # Corresponds to the JSON property `policy`
437
+ # @return [Google::Apis::IamV1::Policy]
438
+ attr_accessor :policy
436
439
 
437
440
  def initialize(**args)
438
441
  update!(**args)
@@ -440,50 +443,20 @@ module Google
440
443
 
441
444
  # Update properties of this object
442
445
  def update!(**args)
443
- @description = args[:description] if args.key?(:description)
444
- @permissions = args[:permissions] if args.key?(:permissions)
445
- @action = args[:action] if args.key?(:action)
446
- @in = args[:in] if args.key?(:in)
447
- @not_in = args[:not_in] if args.key?(:not_in)
448
- @conditions = args[:conditions] if args.key?(:conditions)
449
- @log_config = args[:log_config] if args.key?(:log_config)
446
+ @policy = args[:policy] if args.key?(:policy)
450
447
  end
451
448
  end
452
449
 
453
- # A condition to be met.
454
- class Condition
450
+ # Request message for `TestIamPermissions` method.
451
+ class TestIamPermissionsRequest
455
452
  include Google::Apis::Core::Hashable
456
453
 
457
- # Trusted attributes supplied by the IAM system.
458
- # Corresponds to the JSON property `iam`
459
- # @return [String]
460
- attr_accessor :iam
461
-
462
- # Trusted attributes supplied by any service that owns resources and uses the
463
- # IAM system for access control.
464
- # Corresponds to the JSON property `sys`
465
- # @return [String]
466
- attr_accessor :sys
467
-
468
- # Trusted attributes discharged by the service.
469
- # Corresponds to the JSON property `svc`
470
- # @return [String]
471
- attr_accessor :svc
472
-
473
- # An operator to apply the subject with.
474
- # Corresponds to the JSON property `op`
475
- # @return [String]
476
- attr_accessor :op
477
-
478
- # The object of the condition. Exactly one of these must be set.
479
- # Corresponds to the JSON property `value`
480
- # @return [String]
481
- attr_accessor :value
482
-
483
- # The objects of the condition. This is mutually exclusive with 'value'.
484
- # Corresponds to the JSON property `values`
454
+ # The set of permissions to check for the `resource`. Permissions with wildcards
455
+ # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
456
+ # Overview](https://cloud.google.com/iam/docs/overview#permissions).
457
+ # Corresponds to the JSON property `permissions`
485
458
  # @return [Array<String>]
486
- attr_accessor :values
459
+ attr_accessor :permissions
487
460
 
488
461
  def initialize(**args)
489
462
  update!(**args)
@@ -491,44 +464,18 @@ module Google
491
464
 
492
465
  # Update properties of this object
493
466
  def update!(**args)
494
- @iam = args[:iam] if args.key?(:iam)
495
- @sys = args[:sys] if args.key?(:sys)
496
- @svc = args[:svc] if args.key?(:svc)
497
- @op = args[:op] if args.key?(:op)
498
- @value = args[:value] if args.key?(:value)
499
- @values = args[:values] if args.key?(:values)
467
+ @permissions = args[:permissions] if args.key?(:permissions)
500
468
  end
501
469
  end
502
470
 
503
- # Specifies what kind of log the caller must write Increment a streamz counter
504
- # with the specified metric and field names. Metric names should start with a '/'
505
- # , generally be lowercase-only, and end in "_count". Field names should not
506
- # contain an initial slash. The actual exported metric names will have "/iam/
507
- # policy" prepended. Field names correspond to IAM request parameters and field
508
- # values are their respective values. At present only "iam_principal",
509
- # corresponding to IAMContext.principal, is supported. Examples: counter `
510
- # metric: "/debug_access_count" field: "iam_principal" ` ==> increment counter /
511
- # iam/policy/backend_debug_access_count `iam_principal=[value of IAMContext.
512
- # principal]` At this time we do not support: * multiple field names (though
513
- # this may be supported in the future) * decrementing the counter * incrementing
514
- # it by anything other than 1
515
- class LogConfig
471
+ # Response message for `TestIamPermissions` method.
472
+ class TestIamPermissionsResponse
516
473
  include Google::Apis::Core::Hashable
517
474
 
518
- # Options for counters
519
- # Corresponds to the JSON property `counter`
520
- # @return [Google::Apis::IamV1::CounterOptions]
521
- attr_accessor :counter
522
-
523
- # Write a Data Access (Gin) log
524
- # Corresponds to the JSON property `dataAccess`
525
- # @return [Google::Apis::IamV1::DataAccessOptions]
526
- attr_accessor :data_access
527
-
528
- # Write a Cloud Audit log
529
- # Corresponds to the JSON property `cloudAudit`
530
- # @return [Google::Apis::IamV1::CloudAuditOptions]
531
- attr_accessor :cloud_audit
475
+ # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
476
+ # Corresponds to the JSON property `permissions`
477
+ # @return [Array<String>]
478
+ attr_accessor :permissions
532
479
 
533
480
  def initialize(**args)
534
481
  update!(**args)
@@ -536,25 +483,21 @@ module Google
536
483
 
537
484
  # Update properties of this object
538
485
  def update!(**args)
539
- @counter = args[:counter] if args.key?(:counter)
540
- @data_access = args[:data_access] if args.key?(:data_access)
541
- @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit)
486
+ @permissions = args[:permissions] if args.key?(:permissions)
542
487
  end
543
488
  end
544
489
 
545
- # Options for counters
546
- class CounterOptions
490
+ # The grantable role query request.
491
+ class QueryGrantableRolesRequest
547
492
  include Google::Apis::Core::Hashable
548
493
 
549
- # The metric to update.
550
- # Corresponds to the JSON property `metric`
551
- # @return [String]
552
- attr_accessor :metric
553
-
554
- # The field value to attribute.
555
- # Corresponds to the JSON property `field`
494
+ # Required. The full resource name to query from the list of grantable roles.
495
+ # The name follows the Google Cloud Platform resource format. For example, a
496
+ # Cloud Platform project with id `my-project` will be named `//
497
+ # cloudresourcemanager.googleapis.com/projects/my-project`.
498
+ # Corresponds to the JSON property `fullResourceName`
556
499
  # @return [String]
557
- attr_accessor :field
500
+ attr_accessor :full_resource_name
558
501
 
559
502
  def initialize(**args)
560
503
  update!(**args)
@@ -562,54 +505,73 @@ module Google
562
505
 
563
506
  # Update properties of this object
564
507
  def update!(**args)
565
- @metric = args[:metric] if args.key?(:metric)
566
- @field = args[:field] if args.key?(:field)
508
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
567
509
  end
568
510
  end
569
511
 
570
- # Write a Data Access (Gin) log
571
- class DataAccessOptions
512
+ # The grantable role query response.
513
+ class QueryGrantableRolesResponse
572
514
  include Google::Apis::Core::Hashable
573
515
 
516
+ # The list of matching roles.
517
+ # Corresponds to the JSON property `roles`
518
+ # @return [Array<Google::Apis::IamV1::Role>]
519
+ attr_accessor :roles
520
+
574
521
  def initialize(**args)
575
522
  update!(**args)
576
523
  end
577
524
 
578
525
  # Update properties of this object
579
526
  def update!(**args)
527
+ @roles = args[:roles] if args.key?(:roles)
580
528
  end
581
529
  end
582
530
 
583
- # Write a Cloud Audit log
584
- class CloudAuditOptions
531
+ # A role in the Identity and Access Management API.
532
+ class Role
585
533
  include Google::Apis::Core::Hashable
586
534
 
535
+ # The name of the role. When Role is used in CreateRole, the role name must not
536
+ # be set. When Role is used in output and other input such as UpdateRole, the
537
+ # role name is the complete path, e.g., roles/logging.viewer for curated roles
538
+ # and organizations/`organization-id`/roles/logging.viewer for custom roles.
539
+ # Corresponds to the JSON property `name`
540
+ # @return [String]
541
+ attr_accessor :name
542
+
543
+ # Optional. A human-readable title for the role. Typically this is limited to
544
+ # 100 UTF-8 bytes.
545
+ # Corresponds to the JSON property `title`
546
+ # @return [String]
547
+ attr_accessor :title
548
+
549
+ # Optional. A human-readable description for the role.
550
+ # Corresponds to the JSON property `description`
551
+ # @return [String]
552
+ attr_accessor :description
553
+
587
554
  def initialize(**args)
588
555
  update!(**args)
589
556
  end
590
557
 
591
558
  # Update properties of this object
592
559
  def update!(**args)
560
+ @name = args[:name] if args.key?(:name)
561
+ @title = args[:title] if args.key?(:title)
562
+ @description = args[:description] if args.key?(:description)
593
563
  end
594
564
  end
595
565
 
596
- # Request message for `SetIamPolicy` method.
597
- class SetIamPolicyRequest
566
+ # Audit log information specific to Cloud IAM. This message is serialized as an `
567
+ # Any` type in the `ServiceData` message of an `AuditLog` message.
568
+ class AuditData
598
569
  include Google::Apis::Core::Hashable
599
570
 
600
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
601
- # access control policies for Cloud Platform resources. A `Policy` consists of a
602
- # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
603
- # the members can be user accounts, Google groups, Google domains, and service
604
- # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
605
- # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
606
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
607
- # appspot.gserviceaccount.com"] `, ` "role": "roles/viewer", "members": ["user:
608
- # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
609
- # IAM developer's guide](https://cloud.google.com/iam).
610
- # Corresponds to the JSON property `policy`
611
- # @return [Google::Apis::IamV1::Policy]
612
- attr_accessor :policy
571
+ # The difference delta between two policies.
572
+ # Corresponds to the JSON property `policyDelta`
573
+ # @return [Google::Apis::IamV1::PolicyDelta]
574
+ attr_accessor :policy_delta
613
575
 
614
576
  def initialize(**args)
615
577
  update!(**args)
@@ -617,20 +579,18 @@ module Google
617
579
 
618
580
  # Update properties of this object
619
581
  def update!(**args)
620
- @policy = args[:policy] if args.key?(:policy)
582
+ @policy_delta = args[:policy_delta] if args.key?(:policy_delta)
621
583
  end
622
584
  end
623
585
 
624
- # Request message for `TestIamPermissions` method.
625
- class TestIamPermissionsRequest
586
+ # The difference delta between two policies.
587
+ class PolicyDelta
626
588
  include Google::Apis::Core::Hashable
627
589
 
628
- # The set of permissions to check for the `resource`. Permissions with wildcards
629
- # (such as '*' or 'storage.*') are not allowed. For more information see IAM
630
- # Overview.
631
- # Corresponds to the JSON property `permissions`
632
- # @return [Array<String>]
633
- attr_accessor :permissions
590
+ # The delta for Bindings between two policies.
591
+ # Corresponds to the JSON property `bindingDeltas`
592
+ # @return [Array<Google::Apis::IamV1::BindingDelta>]
593
+ attr_accessor :binding_deltas
634
594
 
635
595
  def initialize(**args)
636
596
  update!(**args)
@@ -638,18 +598,31 @@ module Google
638
598
 
639
599
  # Update properties of this object
640
600
  def update!(**args)
641
- @permissions = args[:permissions] if args.key?(:permissions)
601
+ @binding_deltas = args[:binding_deltas] if args.key?(:binding_deltas)
642
602
  end
643
603
  end
644
604
 
645
- # Response message for `TestIamPermissions` method.
646
- class TestIamPermissionsResponse
605
+ # One delta entry for Binding. Each individual change (only one member in each
606
+ # entry) to a binding will be a separate entry.
607
+ class BindingDelta
647
608
  include Google::Apis::Core::Hashable
648
609
 
649
- # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
650
- # Corresponds to the JSON property `permissions`
651
- # @return [Array<String>]
652
- attr_accessor :permissions
610
+ # The action that was performed on a Binding. Required
611
+ # Corresponds to the JSON property `action`
612
+ # @return [String]
613
+ attr_accessor :action
614
+
615
+ # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
616
+ # , or `roles/owner`. Required
617
+ # Corresponds to the JSON property `role`
618
+ # @return [String]
619
+ attr_accessor :role
620
+
621
+ # A single identity requesting access for a Cloud Platform resource. Follows the
622
+ # same format of Binding.members. Required
623
+ # Corresponds to the JSON property `member`
624
+ # @return [String]
625
+ attr_accessor :member
653
626
 
654
627
  def initialize(**args)
655
628
  update!(**args)
@@ -657,7 +630,9 @@ module Google
657
630
 
658
631
  # Update properties of this object
659
632
  def update!(**args)
660
- @permissions = args[:permissions] if args.key?(:permissions)
633
+ @action = args[:action] if args.key?(:action)
634
+ @role = args[:role] if args.key?(:role)
635
+ @member = args[:member] if args.key?(:member)
661
636
  end
662
637
  end
663
638
  end