google-api-client 0.13.2 → 0.13.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (524) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +149 -0
  3. data/bin/generate-api +6 -2
  4. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +3 -3
  5. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +46 -46
  6. data/generated/google/apis/acceleratedmobilepageurl_v1/representations.rb +15 -15
  7. data/generated/google/apis/acceleratedmobilepageurl_v1/service.rb +6 -6
  8. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +2 -2
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +1394 -1394
  10. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +322 -322
  11. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +449 -449
  12. data/generated/google/apis/adexchangebuyer_v1_2.rb +35 -0
  13. data/generated/google/apis/adexchangebuyer_v1_2/classes.rb +457 -0
  14. data/generated/google/apis/adexchangebuyer_v1_2/representations.rb +189 -0
  15. data/generated/google/apis/adexchangebuyer_v1_2/service.rb +329 -0
  16. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1347 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +498 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +873 -0
  20. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  21. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +1 -1
  22. data/generated/google/apis/adexchangeseller_v1.rb +37 -0
  23. data/generated/google/apis/adexchangeseller_v1/classes.rb +557 -0
  24. data/generated/google/apis/adexchangeseller_v1/representations.rb +248 -0
  25. data/generated/google/apis/adexchangeseller_v1/service.rb +568 -0
  26. data/generated/google/apis/adexchangeseller_v1_1.rb +37 -0
  27. data/generated/google/apis/adexchangeseller_v1_1/classes.rb +842 -0
  28. data/generated/google/apis/adexchangeseller_v1_1/representations.rb +364 -0
  29. data/generated/google/apis/adexchangeseller_v1_1/service.rb +771 -0
  30. data/generated/google/apis/adexperiencereport_v1.rb +35 -0
  31. data/generated/google/apis/adexperiencereport_v1/classes.rb +138 -0
  32. data/generated/google/apis/adexperiencereport_v1/representations.rb +77 -0
  33. data/generated/google/apis/adexperiencereport_v1/service.rb +123 -0
  34. data/generated/google/apis/admin_directory_v1.rb +1 -1
  35. data/generated/google/apis/admin_directory_v1/classes.rb +60 -0
  36. data/generated/google/apis/admin_directory_v1/representations.rb +29 -0
  37. data/generated/google/apis/admin_directory_v1/service.rb +39 -0
  38. data/generated/google/apis/adsense_v1_4.rb +1 -1
  39. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  40. data/generated/google/apis/analytics_v2_4.rb +37 -0
  41. data/generated/google/apis/analytics_v2_4/classes.rb +26 -0
  42. data/generated/google/apis/analytics_v2_4/representations.rb +26 -0
  43. data/generated/google/apis/analytics_v2_4/service.rb +345 -0
  44. data/generated/google/apis/analytics_v3.rb +1 -1
  45. data/generated/google/apis/analytics_v3/classes.rb +15 -2
  46. data/generated/google/apis/analytics_v3/representations.rb +3 -0
  47. data/generated/google/apis/analyticsreporting_v4.rb +4 -4
  48. data/generated/google/apis/analyticsreporting_v4/classes.rb +891 -891
  49. data/generated/google/apis/analyticsreporting_v4/representations.rb +189 -189
  50. data/generated/google/apis/androiddeviceprovisioning_v1.rb +32 -0
  51. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +917 -0
  52. data/generated/google/apis/androiddeviceprovisioning_v1/representations.rb +447 -0
  53. data/generated/google/apis/androiddeviceprovisioning_v1/service.rb +419 -0
  54. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  55. data/generated/google/apis/androidenterprise_v1/classes.rb +31 -0
  56. data/generated/google/apis/androidenterprise_v1/representations.rb +14 -0
  57. data/generated/google/apis/androidenterprise_v1/service.rb +76 -0
  58. data/generated/google/apis/androidmanagement_v1.rb +35 -0
  59. data/generated/google/apis/androidmanagement_v1/classes.rb +2039 -0
  60. data/generated/google/apis/androidmanagement_v1/representations.rb +702 -0
  61. data/generated/google/apis/androidmanagement_v1/service.rb +796 -0
  62. data/generated/google/apis/androidpublisher_v1.rb +34 -0
  63. data/generated/google/apis/androidpublisher_v1/classes.rb +67 -0
  64. data/generated/google/apis/androidpublisher_v1/representations.rb +42 -0
  65. data/generated/google/apis/androidpublisher_v1/service.rb +150 -0
  66. data/generated/google/apis/androidpublisher_v1_1.rb +34 -0
  67. data/generated/google/apis/androidpublisher_v1_1/classes.rb +123 -0
  68. data/generated/google/apis/androidpublisher_v1_1/representations.rb +60 -0
  69. data/generated/google/apis/androidpublisher_v1_1/service.rb +192 -0
  70. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  71. data/generated/google/apis/androidpublisher_v2/classes.rb +21 -0
  72. data/generated/google/apis/androidpublisher_v2/representations.rb +3 -0
  73. data/generated/google/apis/androidpublisher_v2/service.rb +6 -2
  74. data/generated/google/apis/appengine_v1.rb +4 -4
  75. data/generated/google/apis/appengine_v1/classes.rb +1519 -1474
  76. data/generated/google/apis/appengine_v1/representations.rb +351 -335
  77. data/generated/google/apis/appengine_v1/service.rb +255 -239
  78. data/generated/google/apis/appengine_v1alpha.rb +41 -0
  79. data/generated/google/apis/appengine_v1alpha/classes.rb +987 -0
  80. data/generated/google/apis/appengine_v1alpha/representations.rb +397 -0
  81. data/generated/google/apis/appengine_v1alpha/service.rb +631 -0
  82. data/generated/google/apis/appengine_v1beta.rb +41 -0
  83. data/generated/google/apis/appengine_v1beta/classes.rb +2876 -0
  84. data/generated/google/apis/appengine_v1beta/representations.rb +1138 -0
  85. data/generated/google/apis/appengine_v1beta/service.rb +1546 -0
  86. data/generated/google/apis/appengine_v1beta4.rb +41 -0
  87. data/generated/google/apis/appengine_v1beta4/classes.rb +2170 -0
  88. data/generated/google/apis/appengine_v1beta4/representations.rb +824 -0
  89. data/generated/google/apis/appengine_v1beta4/service.rb +876 -0
  90. data/generated/google/apis/appengine_v1beta5.rb +41 -0
  91. data/generated/google/apis/appengine_v1beta5/classes.rb +2168 -0
  92. data/generated/google/apis/appengine_v1beta5/representations.rb +822 -0
  93. data/generated/google/apis/appengine_v1beta5/service.rb +877 -0
  94. data/generated/google/apis/appsactivity_v1.rb +1 -1
  95. data/generated/google/apis/appstate_v1.rb +1 -1
  96. data/generated/google/apis/bigquery_v2.rb +1 -1
  97. data/generated/google/apis/bigquery_v2/classes.rb +106 -18
  98. data/generated/google/apis/bigquery_v2/representations.rb +15 -0
  99. data/generated/google/apis/bigquerydatatransfer_v1.rb +41 -0
  100. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +886 -0
  101. data/generated/google/apis/bigquerydatatransfer_v1/representations.rb +343 -0
  102. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +1317 -0
  103. data/generated/google/apis/blogger_v2.rb +34 -0
  104. data/generated/google/apis/blogger_v2/classes.rb +947 -0
  105. data/generated/google/apis/blogger_v2/representations.rb +465 -0
  106. data/generated/google/apis/blogger_v2/service.rb +424 -0
  107. data/generated/google/apis/calendar_v3.rb +1 -1
  108. data/generated/google/apis/calendar_v3/classes.rb +4 -207
  109. data/generated/google/apis/calendar_v3/representations.rb +0 -97
  110. data/generated/google/apis/calendar_v3/service.rb +8 -4
  111. data/generated/google/apis/classroom_v1.rb +27 -27
  112. data/generated/google/apis/classroom_v1/classes.rb +1037 -926
  113. data/generated/google/apis/classroom_v1/representations.rb +294 -244
  114. data/generated/google/apis/classroom_v1/service.rb +1114 -1109
  115. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  116. data/generated/google/apis/cloudbilling_v1/classes.rb +473 -56
  117. data/generated/google/apis/cloudbilling_v1/representations.rb +176 -10
  118. data/generated/google/apis/cloudbilling_v1/service.rb +182 -89
  119. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  120. data/generated/google/apis/cloudbuild_v1/classes.rb +666 -625
  121. data/generated/google/apis/cloudbuild_v1/representations.rb +132 -116
  122. data/generated/google/apis/cloudbuild_v1/service.rb +158 -158
  123. data/generated/google/apis/clouddebugger_v2.rb +4 -4
  124. data/generated/google/apis/clouddebugger_v2/classes.rb +637 -639
  125. data/generated/google/apis/clouddebugger_v2/representations.rb +139 -139
  126. data/generated/google/apis/clouddebugger_v2/service.rb +157 -157
  127. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  128. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +310 -310
  129. data/generated/google/apis/clouderrorreporting_v1beta1/representations.rb +77 -77
  130. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +144 -144
  131. data/generated/google/apis/cloudfunctions_v1.rb +4 -1
  132. data/generated/google/apis/cloudfunctions_v1/classes.rb +265 -6
  133. data/generated/google/apis/cloudfunctions_v1/representations.rb +80 -1
  134. data/generated/google/apis/cloudfunctions_v1/service.rb +118 -0
  135. data/generated/google/apis/cloudfunctions_v1beta2.rb +35 -0
  136. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +678 -0
  137. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +264 -0
  138. data/generated/google/apis/cloudfunctions_v1beta2/service.rb +385 -0
  139. data/generated/google/apis/cloudkms_v1.rb +1 -1
  140. data/generated/google/apis/cloudkms_v1/classes.rb +652 -622
  141. data/generated/google/apis/cloudkms_v1/representations.rb +138 -137
  142. data/generated/google/apis/cloudkms_v1/service.rb +320 -320
  143. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  144. data/generated/google/apis/cloudresourcemanager_v1.rb +4 -4
  145. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +1129 -1129
  146. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +188 -188
  147. data/generated/google/apis/cloudresourcemanager_v1/service.rb +609 -609
  148. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  149. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +404 -404
  150. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +83 -83
  151. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +328 -328
  152. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +38 -0
  153. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +819 -0
  154. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +304 -0
  155. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +528 -0
  156. data/generated/google/apis/cloudtrace_v1.rb +5 -5
  157. data/generated/google/apis/cloudtrace_v1/classes.rb +67 -67
  158. data/generated/google/apis/cloudtrace_v1/representations.rb +21 -21
  159. data/generated/google/apis/cloudtrace_v1/service.rb +36 -36
  160. data/generated/google/apis/cloudtrace_v2.rb +43 -0
  161. data/generated/google/apis/cloudtrace_v2/classes.rb +797 -0
  162. data/generated/google/apis/cloudtrace_v2/representations.rb +353 -0
  163. data/generated/google/apis/cloudtrace_v2/service.rb +238 -0
  164. data/generated/google/apis/clouduseraccounts_alpha.rb +44 -0
  165. data/generated/google/apis/clouduseraccounts_alpha/classes.rb +1188 -0
  166. data/generated/google/apis/clouduseraccounts_alpha/representations.rb +494 -0
  167. data/generated/google/apis/clouduseraccounts_alpha/service.rb +1152 -0
  168. data/generated/google/apis/clouduseraccounts_vm_alpha.rb +44 -0
  169. data/generated/google/apis/clouduseraccounts_vm_alpha/classes.rb +1188 -0
  170. data/generated/google/apis/clouduseraccounts_vm_alpha/representations.rb +494 -0
  171. data/generated/google/apis/clouduseraccounts_vm_alpha/service.rb +1152 -0
  172. data/generated/google/apis/clouduseraccounts_vm_beta.rb +44 -0
  173. data/generated/google/apis/clouduseraccounts_vm_beta/classes.rb +845 -0
  174. data/generated/google/apis/clouduseraccounts_vm_beta/representations.rb +352 -0
  175. data/generated/google/apis/clouduseraccounts_vm_beta/service.rb +908 -0
  176. data/generated/google/apis/compute_alpha.rb +49 -0
  177. data/generated/google/apis/compute_alpha/classes.rb +23796 -0
  178. data/generated/google/apis/compute_alpha/representations.rb +9391 -0
  179. data/generated/google/apis/compute_alpha/service.rb +24188 -0
  180. data/generated/google/apis/compute_beta.rb +1 -1
  181. data/generated/google/apis/compute_beta/classes.rb +1597 -235
  182. data/generated/google/apis/compute_beta/representations.rb +477 -0
  183. data/generated/google/apis/compute_beta/service.rb +2875 -1677
  184. data/generated/google/apis/compute_v1.rb +1 -1
  185. data/generated/google/apis/compute_v1/classes.rb +319 -197
  186. data/generated/google/apis/compute_v1/representations.rb +51 -0
  187. data/generated/google/apis/compute_v1/service.rb +2057 -172
  188. data/generated/google/apis/consumersurveys_v2.rb +40 -0
  189. data/generated/google/apis/consumersurveys_v2/classes.rb +736 -0
  190. data/generated/google/apis/consumersurveys_v2/representations.rb +343 -0
  191. data/generated/google/apis/consumersurveys_v2/service.rb +478 -0
  192. data/generated/google/apis/container_v1.rb +1 -1
  193. data/generated/google/apis/container_v1/classes.rb +1072 -936
  194. data/generated/google/apis/container_v1/representations.rb +266 -202
  195. data/generated/google/apis/container_v1/service.rb +243 -243
  196. data/generated/google/apis/container_v1beta1.rb +35 -0
  197. data/generated/google/apis/container_v1beta1/classes.rb +1900 -0
  198. data/generated/google/apis/container_v1beta1/representations.rb +662 -0
  199. data/generated/google/apis/container_v1beta1/service.rb +1875 -0
  200. data/generated/google/apis/content_v2.rb +1 -1
  201. data/generated/google/apis/content_v2/classes.rb +72 -3
  202. data/generated/google/apis/content_v2/representations.rb +23 -0
  203. data/generated/google/apis/content_v2/service.rb +23 -18
  204. data/generated/google/apis/content_v2sandbox.rb +35 -0
  205. data/generated/google/apis/content_v2sandbox/classes.rb +2406 -0
  206. data/generated/google/apis/content_v2sandbox/representations.rb +1042 -0
  207. data/generated/google/apis/content_v2sandbox/service.rb +709 -0
  208. data/generated/google/apis/dataflow_v1b3.rb +5 -5
  209. data/generated/google/apis/dataflow_v1b3/classes.rb +3341 -3341
  210. data/generated/google/apis/dataflow_v1b3/representations.rb +807 -807
  211. data/generated/google/apis/dataflow_v1b3/service.rb +492 -444
  212. data/generated/google/apis/dataproc_v1.rb +1 -1
  213. data/generated/google/apis/dataproc_v1/classes.rb +1101 -1101
  214. data/generated/google/apis/dataproc_v1/representations.rb +227 -227
  215. data/generated/google/apis/dataproc_v1/service.rb +254 -254
  216. data/generated/google/apis/dataproc_v1beta2.rb +34 -0
  217. data/generated/google/apis/dataproc_v1beta2/classes.rb +1756 -0
  218. data/generated/google/apis/dataproc_v1beta2/representations.rb +675 -0
  219. data/generated/google/apis/dataproc_v1beta2/service.rb +739 -0
  220. data/generated/google/apis/datastore_v1.rb +4 -4
  221. data/generated/google/apis/datastore_v1/classes.rb +1311 -773
  222. data/generated/google/apis/datastore_v1/representations.rb +351 -148
  223. data/generated/google/apis/datastore_v1/service.rb +206 -55
  224. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  225. data/generated/google/apis/datastore_v1beta3/classes.rb +1621 -0
  226. data/generated/google/apis/datastore_v1beta3/representations.rb +715 -0
  227. data/generated/google/apis/datastore_v1beta3/service.rb +260 -0
  228. data/generated/google/apis/deploymentmanager_alpha.rb +44 -0
  229. data/generated/google/apis/deploymentmanager_alpha/classes.rb +2422 -0
  230. data/generated/google/apis/deploymentmanager_alpha/representations.rb +1054 -0
  231. data/generated/google/apis/deploymentmanager_alpha/service.rb +1883 -0
  232. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  233. data/generated/google/apis/deploymentmanager_v2/classes.rb +81 -2
  234. data/generated/google/apis/deploymentmanager_v2/representations.rb +30 -0
  235. data/generated/google/apis/deploymentmanager_v2beta.rb +44 -0
  236. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +2426 -0
  237. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +1054 -0
  238. data/generated/google/apis/deploymentmanager_v2beta/service.rb +1687 -0
  239. data/generated/google/apis/dfareporting_v2_7.rb +1 -1
  240. data/generated/google/apis/dfareporting_v2_7/classes.rb +9 -26
  241. data/generated/google/apis/dfareporting_v2_7/service.rb +1 -0
  242. data/generated/google/apis/dfareporting_v2_8.rb +1 -1
  243. data/generated/google/apis/dfareporting_v2_8/classes.rb +26 -34
  244. data/generated/google/apis/dfareporting_v2_8/representations.rb +1 -0
  245. data/generated/google/apis/dfareporting_v2_8/service.rb +1 -0
  246. data/generated/google/apis/dlp_v2beta1.rb +36 -0
  247. data/generated/google/apis/dlp_v2beta1/classes.rb +1735 -0
  248. data/generated/google/apis/dlp_v2beta1/representations.rb +879 -0
  249. data/generated/google/apis/dlp_v2beta1/service.rb +406 -0
  250. data/generated/google/apis/dns_v1.rb +1 -1
  251. data/generated/google/apis/dns_v2beta1.rb +1 -1
  252. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  253. data/generated/google/apis/drive_v2.rb +1 -1
  254. data/generated/google/apis/drive_v3.rb +1 -1
  255. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  256. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +267 -261
  257. data/generated/google/apis/firebasedynamiclinks_v1/representations.rb +73 -72
  258. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +1 -1
  259. data/generated/google/apis/firebaserules_v1.rb +1 -1
  260. data/generated/google/apis/firebaserules_v1/classes.rb +283 -283
  261. data/generated/google/apis/firebaserules_v1/representations.rb +75 -75
  262. data/generated/google/apis/firebaserules_v1/service.rb +113 -113
  263. data/generated/google/apis/fitness_v1.rb +1 -1
  264. data/generated/google/apis/fitness_v1/classes.rb +1 -1
  265. data/generated/google/apis/fusiontables_v1.rb +37 -0
  266. data/generated/google/apis/fusiontables_v1/classes.rb +977 -0
  267. data/generated/google/apis/fusiontables_v1/representations.rb +449 -0
  268. data/generated/google/apis/fusiontables_v1/service.rb +1373 -0
  269. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  270. data/generated/google/apis/games_management_v1management.rb +1 -1
  271. data/generated/google/apis/games_v1.rb +1 -1
  272. data/generated/google/apis/genomics_v1.rb +8 -8
  273. data/generated/google/apis/genomics_v1/classes.rb +2288 -2288
  274. data/generated/google/apis/genomics_v1/representations.rb +482 -482
  275. data/generated/google/apis/genomics_v1/service.rb +966 -966
  276. data/generated/google/apis/genomics_v1alpha2.rb +40 -0
  277. data/generated/google/apis/genomics_v1alpha2/classes.rb +1207 -0
  278. data/generated/google/apis/genomics_v1alpha2/representations.rb +449 -0
  279. data/generated/google/apis/genomics_v1alpha2/service.rb +426 -0
  280. data/generated/google/apis/gmail_v1.rb +1 -1
  281. data/generated/google/apis/iam_v1.rb +1 -1
  282. data/generated/google/apis/iam_v1/classes.rb +664 -395
  283. data/generated/google/apis/iam_v1/representations.rb +194 -81
  284. data/generated/google/apis/iam_v1/service.rb +657 -92
  285. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  286. data/generated/google/apis/kgsearch_v1/classes.rb +7 -7
  287. data/generated/google/apis/kgsearch_v1/representations.rb +1 -1
  288. data/generated/google/apis/kgsearch_v1/service.rb +8 -8
  289. data/generated/google/apis/language_v1.rb +4 -1
  290. data/generated/google/apis/language_v1/classes.rb +393 -393
  291. data/generated/google/apis/language_v1/representations.rb +95 -95
  292. data/generated/google/apis/language_v1/service.rb +42 -42
  293. data/generated/google/apis/language_v1beta1.rb +4 -1
  294. data/generated/google/apis/language_v1beta1/classes.rb +457 -457
  295. data/generated/google/apis/language_v1beta1/representations.rb +114 -114
  296. data/generated/google/apis/language_v1beta1/service.rb +48 -48
  297. data/generated/google/apis/language_v1beta2.rb +39 -0
  298. data/generated/google/apis/language_v1beta2/classes.rb +824 -0
  299. data/generated/google/apis/language_v1beta2/representations.rb +373 -0
  300. data/generated/google/apis/language_v1beta2/service.rb +217 -0
  301. data/generated/google/apis/logging_v2.rb +9 -9
  302. data/generated/google/apis/logging_v2/classes.rb +840 -834
  303. data/generated/google/apis/logging_v2/representations.rb +168 -167
  304. data/generated/google/apis/logging_v2/service.rb +667 -463
  305. data/generated/google/apis/logging_v2beta1.rb +9 -9
  306. data/generated/google/apis/logging_v2beta1/classes.rb +856 -850
  307. data/generated/google/apis/logging_v2beta1/representations.rb +169 -168
  308. data/generated/google/apis/logging_v2beta1/service.rb +253 -255
  309. data/generated/google/apis/manufacturers_v1.rb +1 -1
  310. data/generated/google/apis/manufacturers_v1/classes.rb +396 -389
  311. data/generated/google/apis/manufacturers_v1/representations.rb +92 -91
  312. data/generated/google/apis/manufacturers_v1/service.rb +8 -7
  313. data/generated/google/apis/ml_v1.rb +1 -1
  314. data/generated/google/apis/ml_v1/classes.rb +1487 -1676
  315. data/generated/google/apis/ml_v1/representations.rb +229 -299
  316. data/generated/google/apis/ml_v1/service.rb +359 -253
  317. data/generated/google/apis/ml_v1beta1.rb +34 -0
  318. data/generated/google/apis/ml_v1beta1/classes.rb +2396 -0
  319. data/generated/google/apis/ml_v1beta1/representations.rb +755 -0
  320. data/generated/google/apis/ml_v1beta1/service.rb +975 -0
  321. data/generated/google/apis/monitoring_v3.rb +6 -6
  322. data/generated/google/apis/monitoring_v3/classes.rb +834 -834
  323. data/generated/google/apis/monitoring_v3/representations.rb +168 -168
  324. data/generated/google/apis/monitoring_v3/service.rb +330 -330
  325. data/generated/google/apis/mybusiness_v3/classes.rb +1181 -1181
  326. data/generated/google/apis/mybusiness_v3/representations.rb +242 -242
  327. data/generated/google/apis/mybusiness_v3/service.rb +241 -241
  328. data/generated/google/apis/oauth2_v1.rb +43 -0
  329. data/generated/google/apis/oauth2_v1/classes.rb +321 -0
  330. data/generated/google/apis/oauth2_v1/representations.rb +135 -0
  331. data/generated/google/apis/oauth2_v1/service.rb +337 -0
  332. data/generated/google/apis/oauth2_v2.rb +1 -1
  333. data/generated/google/apis/oslogin_v1alpha.rb +37 -0
  334. data/generated/google/apis/oslogin_v1alpha/classes.rb +200 -0
  335. data/generated/google/apis/oslogin_v1alpha/representations.rb +105 -0
  336. data/generated/google/apis/oslogin_v1alpha/service.rb +228 -0
  337. data/generated/google/apis/pagespeedonline_v1.rb +32 -0
  338. data/generated/google/apis/pagespeedonline_v1/classes.rb +536 -0
  339. data/generated/google/apis/pagespeedonline_v1/representations.rb +257 -0
  340. data/generated/google/apis/pagespeedonline_v1/service.rb +120 -0
  341. data/generated/google/apis/partners_v2.rb +1 -1
  342. data/generated/google/apis/partners_v2/classes.rb +1512 -1512
  343. data/generated/google/apis/partners_v2/representations.rb +368 -368
  344. data/generated/google/apis/partners_v2/service.rb +596 -596
  345. data/generated/google/apis/people_v1.rb +15 -15
  346. data/generated/google/apis/people_v1/classes.rb +1384 -1383
  347. data/generated/google/apis/people_v1/representations.rb +311 -311
  348. data/generated/google/apis/people_v1/service.rb +208 -202
  349. data/generated/google/apis/playcustomapp_v1.rb +34 -0
  350. data/generated/google/apis/playcustomapp_v1/classes.rb +51 -0
  351. data/generated/google/apis/playcustomapp_v1/representations.rb +40 -0
  352. data/generated/google/apis/playcustomapp_v1/service.rb +114 -0
  353. data/generated/google/apis/playmoviespartner_v1.rb +34 -0
  354. data/generated/google/apis/playmoviespartner_v1/classes.rb +782 -0
  355. data/generated/google/apis/playmoviespartner_v1/representations.rb +191 -0
  356. data/generated/google/apis/playmoviespartner_v1/service.rb +354 -0
  357. data/generated/google/apis/plus_domains_v1.rb +1 -1
  358. data/generated/google/apis/plus_v1.rb +1 -1
  359. data/generated/google/apis/prediction_v1_2.rb +44 -0
  360. data/generated/google/apis/prediction_v1_2/classes.rb +237 -0
  361. data/generated/google/apis/prediction_v1_2/representations.rb +133 -0
  362. data/generated/google/apis/prediction_v1_2/service.rb +287 -0
  363. data/generated/google/apis/prediction_v1_3.rb +44 -0
  364. data/generated/google/apis/prediction_v1_3/classes.rb +286 -0
  365. data/generated/google/apis/prediction_v1_3/representations.rb +139 -0
  366. data/generated/google/apis/prediction_v1_3/service.rb +284 -0
  367. data/generated/google/apis/prediction_v1_4.rb +44 -0
  368. data/generated/google/apis/prediction_v1_4/classes.rb +336 -0
  369. data/generated/google/apis/prediction_v1_4/representations.rb +158 -0
  370. data/generated/google/apis/prediction_v1_4/service.rb +284 -0
  371. data/generated/google/apis/prediction_v1_5.rb +44 -0
  372. data/generated/google/apis/prediction_v1_5/classes.rb +708 -0
  373. data/generated/google/apis/prediction_v1_5/representations.rb +352 -0
  374. data/generated/google/apis/prediction_v1_5/service.rb +357 -0
  375. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  376. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +539 -539
  377. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +105 -105
  378. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +312 -312
  379. data/generated/google/apis/pubsub_v1.rb +4 -4
  380. data/generated/google/apis/pubsub_v1/classes.rb +352 -352
  381. data/generated/google/apis/pubsub_v1/representations.rb +77 -77
  382. data/generated/google/apis/pubsub_v1/service.rb +346 -346
  383. data/generated/google/apis/pubsub_v1beta1a.rb +37 -0
  384. data/generated/google/apis/pubsub_v1beta1a/classes.rb +605 -0
  385. data/generated/google/apis/pubsub_v1beta1a/representations.rb +306 -0
  386. data/generated/google/apis/pubsub_v1beta1a/service.rb +549 -0
  387. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  388. data/generated/google/apis/pubsub_v1beta2/classes.rb +679 -0
  389. data/generated/google/apis/pubsub_v1beta2/representations.rb +324 -0
  390. data/generated/google/apis/pubsub_v1beta2/service.rb +779 -0
  391. data/generated/google/apis/replicapool_v1beta1.rb +50 -0
  392. data/generated/google/apis/replicapool_v1beta1/classes.rb +918 -0
  393. data/generated/google/apis/replicapool_v1beta1/representations.rb +409 -0
  394. data/generated/google/apis/replicapool_v1beta1/service.rb +511 -0
  395. data/generated/google/apis/resourceviews_v1beta1.rb +50 -0
  396. data/generated/google/apis/resourceviews_v1beta1/classes.rb +338 -0
  397. data/generated/google/apis/resourceviews_v1beta1/representations.rb +201 -0
  398. data/generated/google/apis/resourceviews_v1beta1/service.rb +667 -0
  399. data/generated/google/apis/runtimeconfig_v1.rb +4 -4
  400. data/generated/google/apis/runtimeconfig_v1/classes.rb +118 -118
  401. data/generated/google/apis/runtimeconfig_v1/representations.rb +18 -18
  402. data/generated/google/apis/runtimeconfig_v1/service.rb +21 -21
  403. data/generated/google/apis/runtimeconfig_v1beta1.rb +40 -0
  404. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +805 -0
  405. data/generated/google/apis/runtimeconfig_v1beta1/representations.rb +280 -0
  406. data/generated/google/apis/runtimeconfig_v1beta1/service.rb +903 -0
  407. data/generated/google/apis/safebrowsing_v4.rb +32 -0
  408. data/generated/google/apis/safebrowsing_v4/classes.rb +771 -0
  409. data/generated/google/apis/safebrowsing_v4/representations.rb +379 -0
  410. data/generated/google/apis/safebrowsing_v4/service.rb +252 -0
  411. data/generated/google/apis/script_v1.rb +19 -19
  412. data/generated/google/apis/script_v1/classes.rb +99 -157
  413. data/generated/google/apis/script_v1/representations.rb +17 -47
  414. data/generated/google/apis/script_v1/service.rb +12 -12
  415. data/generated/google/apis/searchconsole_v1.rb +1 -1
  416. data/generated/google/apis/searchconsole_v1/classes.rb +84 -84
  417. data/generated/google/apis/searchconsole_v1/representations.rb +32 -32
  418. data/generated/google/apis/servicecontrol_v1.rb +4 -4
  419. data/generated/google/apis/servicecontrol_v1/classes.rb +1086 -1042
  420. data/generated/google/apis/servicecontrol_v1/representations.rb +216 -200
  421. data/generated/google/apis/servicecontrol_v1/service.rb +120 -114
  422. data/generated/google/apis/servicemanagement_v1.rb +7 -7
  423. data/generated/google/apis/servicemanagement_v1/classes.rb +3375 -3383
  424. data/generated/google/apis/servicemanagement_v1/representations.rb +551 -552
  425. data/generated/google/apis/servicemanagement_v1/service.rb +386 -386
  426. data/generated/google/apis/serviceuser_v1.rb +5 -5
  427. data/generated/google/apis/serviceuser_v1/classes.rb +2667 -2598
  428. data/generated/google/apis/serviceuser_v1/representations.rb +406 -389
  429. data/generated/google/apis/serviceuser_v1/service.rb +43 -43
  430. data/generated/google/apis/sheets_v4.rb +7 -7
  431. data/generated/google/apis/sheets_v4/classes.rb +5031 -5024
  432. data/generated/google/apis/sheets_v4/representations.rb +931 -930
  433. data/generated/google/apis/sheets_v4/service.rb +244 -244
  434. data/generated/google/apis/slides_v1.rb +10 -10
  435. data/generated/google/apis/slides_v1/classes.rb +2915 -2915
  436. data/generated/google/apis/slides_v1/representations.rb +698 -698
  437. data/generated/google/apis/slides_v1/service.rb +35 -35
  438. data/generated/google/apis/sourcerepo_v1.rb +3 -3
  439. data/generated/google/apis/sourcerepo_v1/classes.rb +313 -313
  440. data/generated/google/apis/sourcerepo_v1/representations.rb +77 -77
  441. data/generated/google/apis/sourcerepo_v1/service.rb +102 -102
  442. data/generated/google/apis/spanner_v1.rb +4 -4
  443. data/generated/google/apis/spanner_v1/classes.rb +2304 -2251
  444. data/generated/google/apis/spanner_v1/representations.rb +338 -323
  445. data/generated/google/apis/spanner_v1/service.rb +689 -689
  446. data/generated/google/apis/spectrum_v1explorer.rb +31 -0
  447. data/generated/google/apis/spectrum_v1explorer/classes.rb +1612 -0
  448. data/generated/google/apis/spectrum_v1explorer/representations.rb +611 -0
  449. data/generated/google/apis/spectrum_v1explorer/service.rb +285 -0
  450. data/generated/google/apis/speech_v1.rb +34 -0
  451. data/generated/google/apis/speech_v1/classes.rb +572 -0
  452. data/generated/google/apis/speech_v1/representations.rb +236 -0
  453. data/generated/google/apis/speech_v1/service.rb +277 -0
  454. data/generated/google/apis/speech_v1beta1.rb +1 -1
  455. data/generated/google/apis/speech_v1beta1/classes.rb +312 -312
  456. data/generated/google/apis/speech_v1beta1/representations.rb +48 -48
  457. data/generated/google/apis/speech_v1beta1/service.rb +46 -46
  458. data/generated/google/apis/sqladmin_v1beta3.rb +38 -0
  459. data/generated/google/apis/sqladmin_v1beta3/classes.rb +1615 -0
  460. data/generated/google/apis/sqladmin_v1beta3/representations.rb +731 -0
  461. data/generated/google/apis/sqladmin_v1beta3/service.rb +1045 -0
  462. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  463. data/generated/google/apis/sqladmin_v1beta4/classes.rb +15 -7
  464. data/generated/google/apis/sqladmin_v1beta4/representations.rb +1 -0
  465. data/generated/google/apis/storage_v1.rb +1 -1
  466. data/generated/google/apis/storage_v1/classes.rb +7 -6
  467. data/generated/google/apis/storage_v1/service.rb +51 -29
  468. data/generated/google/apis/storage_v1beta1.rb +40 -0
  469. data/generated/google/apis/storage_v1beta1/classes.rb +616 -0
  470. data/generated/google/apis/storage_v1beta1/representations.rb +249 -0
  471. data/generated/google/apis/storage_v1beta1/service.rb +1082 -0
  472. data/generated/google/apis/storage_v1beta2.rb +40 -0
  473. data/generated/google/apis/storage_v1beta2/classes.rb +1048 -0
  474. data/generated/google/apis/storage_v1beta2/representations.rb +425 -0
  475. data/generated/google/apis/storage_v1beta2/service.rb +1736 -0
  476. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  477. data/generated/google/apis/storagetransfer_v1/classes.rb +556 -556
  478. data/generated/google/apis/storagetransfer_v1/representations.rb +139 -139
  479. data/generated/google/apis/storagetransfer_v1/service.rb +148 -148
  480. data/generated/google/apis/streetviewpublish_v1.rb +36 -0
  481. data/generated/google/apis/streetviewpublish_v1/classes.rb +705 -0
  482. data/generated/google/apis/streetviewpublish_v1/representations.rb +296 -0
  483. data/generated/google/apis/streetviewpublish_v1/service.rb +485 -0
  484. data/generated/google/apis/taskqueue_v1beta1.rb +37 -0
  485. data/generated/google/apis/taskqueue_v1beta1/classes.rb +242 -0
  486. data/generated/google/apis/taskqueue_v1beta1/representations.rb +124 -0
  487. data/generated/google/apis/taskqueue_v1beta1/service.rb +269 -0
  488. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  489. data/generated/google/apis/toolresults_v1beta3/classes.rb +382 -4
  490. data/generated/google/apis/toolresults_v1beta3/representations.rb +139 -0
  491. data/generated/google/apis/toolresults_v1beta3/service.rb +50 -0
  492. data/generated/google/apis/toolresults_v1beta3firstparty.rb +31 -0
  493. data/generated/google/apis/toolresults_v1beta3firstparty/classes.rb +2630 -0
  494. data/generated/google/apis/toolresults_v1beta3firstparty/representations.rb +886 -0
  495. data/generated/google/apis/toolresults_v1beta3firstparty/service.rb +1288 -0
  496. data/generated/google/apis/translate_v2/classes.rb +111 -111
  497. data/generated/google/apis/translate_v2/representations.rb +49 -49
  498. data/generated/google/apis/translate_v2/service.rb +94 -94
  499. data/generated/google/apis/vault_v1.rb +31 -0
  500. data/generated/google/apis/vault_v1/classes.rb +554 -0
  501. data/generated/google/apis/vault_v1/representations.rb +318 -0
  502. data/generated/google/apis/vault_v1/service.rb +677 -0
  503. data/generated/google/apis/videointelligence_v1beta1.rb +34 -0
  504. data/generated/google/apis/videointelligence_v1beta1/classes.rb +903 -0
  505. data/generated/google/apis/videointelligence_v1beta1/representations.rb +351 -0
  506. data/generated/google/apis/videointelligence_v1beta1/service.rb +92 -0
  507. data/generated/google/apis/vision_v1.rb +4 -4
  508. data/generated/google/apis/vision_v1/classes.rb +1176 -1178
  509. data/generated/google/apis/vision_v1/representations.rb +235 -235
  510. data/generated/google/apis/webmasters_v3.rb +1 -1
  511. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  512. data/generated/google/apis/youtube_analytics_v1beta1.rb +46 -0
  513. data/generated/google/apis/youtube_analytics_v1beta1/classes.rb +337 -0
  514. data/generated/google/apis/youtube_analytics_v1beta1/representations.rb +174 -0
  515. data/generated/google/apis/youtube_analytics_v1beta1/service.rb +491 -0
  516. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  517. data/generated/google/apis/youtube_partner_v1/classes.rb +3 -3
  518. data/generated/google/apis/youtube_partner_v1/representations.rb +1 -1
  519. data/generated/google/apis/youtubereporting_v1.rb +4 -4
  520. data/generated/google/apis/youtubereporting_v1/classes.rb +134 -134
  521. data/generated/google/apis/youtubereporting_v1/representations.rb +36 -36
  522. data/generated/google/apis/youtubereporting_v1/service.rb +131 -131
  523. data/lib/google/apis/version.rb +1 -1
  524. metadata +246 -2
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/monitoring/v2beta2/
26
26
  module CloudmonitoringV2beta2
27
27
  VERSION = 'V2beta2'
28
- REVISION = '20170501'
28
+ REVISION = '20170323'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -26,13 +26,13 @@ module Google
26
26
  # @see https://cloud.google.com/resource-manager
27
27
  module CloudresourcemanagerV1
28
28
  VERSION = 'V1'
29
- REVISION = '20170705'
30
-
31
- # View your data across Google Cloud Platform services
32
- AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only'
29
+ REVISION = '20170710'
33
30
 
34
31
  # View and manage your data across Google Cloud Platform services
35
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
33
+
34
+ # View your data across Google Cloud Platform services
35
+ AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only'
36
36
  end
37
37
  end
38
38
  end
@@ -44,16 +44,68 @@ module Google
44
44
  end
45
45
  end
46
46
 
47
- # A `Constraint` that allows or disallows a list of string values, which are
48
- # configured by an Organization's policy administrator with a `Policy`.
49
- class ListConstraint
47
+ # Specifies the audit configuration for a service.
48
+ # The configuration determines which permission types are logged, and what
49
+ # identities, if any, are exempted from logging.
50
+ # An AuditConfig must have one or more AuditLogConfigs.
51
+ # If there are AuditConfigs for both `allServices` and a specific service,
52
+ # the union of the two AuditConfigs is used for that service: the log_types
53
+ # specified in each AuditConfig are enabled, and the exempted_members in each
54
+ # AuditConfig are exempted.
55
+ # Example Policy with multiple AuditConfigs:
56
+ # `
57
+ # "audit_configs": [
58
+ # `
59
+ # "service": "allServices"
60
+ # "audit_log_configs": [
61
+ # `
62
+ # "log_type": "DATA_READ",
63
+ # "exempted_members": [
64
+ # "user:foo@gmail.com"
65
+ # ]
66
+ # `,
67
+ # `
68
+ # "log_type": "DATA_WRITE",
69
+ # `,
70
+ # `
71
+ # "log_type": "ADMIN_READ",
72
+ # `
73
+ # ]
74
+ # `,
75
+ # `
76
+ # "service": "fooservice.googleapis.com"
77
+ # "audit_log_configs": [
78
+ # `
79
+ # "log_type": "DATA_READ",
80
+ # `,
81
+ # `
82
+ # "log_type": "DATA_WRITE",
83
+ # "exempted_members": [
84
+ # "user:bar@gmail.com"
85
+ # ]
86
+ # `
87
+ # ]
88
+ # `
89
+ # ]
90
+ # `
91
+ # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
92
+ # logging. It also exempts foo@gmail.com from DATA_READ logging, and
93
+ # bar@gmail.com from DATA_WRITE logging.
94
+ class AuditConfig
50
95
  include Google::Apis::Core::Hashable
51
96
 
52
- # Optional. The Google Cloud Console will try to default to a configuration
53
- # that matches the value specified in this `Constraint`.
54
- # Corresponds to the JSON property `suggestedValue`
97
+ # The configuration for logging of each type of permission.
98
+ # Next ID: 4
99
+ # Corresponds to the JSON property `auditLogConfigs`
100
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::AuditLogConfig>]
101
+ attr_accessor :audit_log_configs
102
+
103
+ # Specifies a service that will be enabled for audit logging.
104
+ # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
105
+ # `allServices` is a special value that covers all services.
106
+ # Corresponds to the JSON property `service`
55
107
  # @return [String]
56
- attr_accessor :suggested_value
108
+ attr_accessor :service
57
109
 
58
110
  def initialize(**args)
59
111
  update!(**args)
@@ -61,19 +113,42 @@ module Google
61
113
 
62
114
  # Update properties of this object
63
115
  def update!(**args)
64
- @suggested_value = args[:suggested_value] if args.key?(:suggested_value)
116
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
117
+ @service = args[:service] if args.key?(:service)
65
118
  end
66
119
  end
67
120
 
68
- # The request sent to the SetOrgPolicyRequest method.
69
- class SetOrgPolicyRequest
121
+ # Provides the configuration for logging a type of permissions.
122
+ # Example:
123
+ # `
124
+ # "audit_log_configs": [
125
+ # `
126
+ # "log_type": "DATA_READ",
127
+ # "exempted_members": [
128
+ # "user:foo@gmail.com"
129
+ # ]
130
+ # `,
131
+ # `
132
+ # "log_type": "DATA_WRITE",
133
+ # `
134
+ # ]
135
+ # `
136
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
137
+ # foo@gmail.com from DATA_READ logging.
138
+ class AuditLogConfig
70
139
  include Google::Apis::Core::Hashable
71
140
 
72
- # Defines a Cloud Organization `Policy` which is used to specify `Constraints`
73
- # for configurations of Cloud Platform resources.
74
- # Corresponds to the JSON property `policy`
75
- # @return [Google::Apis::CloudresourcemanagerV1::OrgPolicy]
76
- attr_accessor :policy
141
+ # Specifies the identities that do not cause logging for this type of
142
+ # permission.
143
+ # Follows the same format of Binding.members.
144
+ # Corresponds to the JSON property `exemptedMembers`
145
+ # @return [Array<String>]
146
+ attr_accessor :exempted_members
147
+
148
+ # The log type that this config enables.
149
+ # Corresponds to the JSON property `logType`
150
+ # @return [String]
151
+ attr_accessor :log_type
77
152
 
78
153
  def initialize(**args)
79
154
  update!(**args)
@@ -81,52 +156,39 @@ module Google
81
156
 
82
157
  # Update properties of this object
83
158
  def update!(**args)
84
- @policy = args[:policy] if args.key?(:policy)
159
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
160
+ @log_type = args[:log_type] if args.key?(:log_type)
85
161
  end
86
162
  end
87
163
 
88
- # Request message for `SetIamPolicy` method.
89
- class SetIamPolicyRequest
164
+ # Associates `members` with a `role`.
165
+ class Binding
90
166
  include Google::Apis::Core::Hashable
91
167
 
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
- # Corresponds to the JSON property `policy`
119
- # @return [Google::Apis::CloudresourcemanagerV1::Policy]
120
- attr_accessor :policy
168
+ # Specifies the identities requesting access for a Cloud Platform resource.
169
+ # `members` can have the following values:
170
+ # * `allUsers`: A special identifier that represents anyone who is
171
+ # on the internet; with or without a Google account.
172
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
173
+ # who is authenticated with a Google account or a service account.
174
+ # * `user:`emailid``: An email address that represents a specific Google
175
+ # account. For example, `alice@gmail.com` or `joe@example.com`.
176
+ # * `serviceAccount:`emailid``: An email address that represents a service
177
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
178
+ # * `group:`emailid``: An email address that represents a Google group.
179
+ # For example, `admins@example.com`.
180
+ # * `domain:`domain``: A Google Apps domain name that represents all the
181
+ # users of that domain. For example, `google.com` or `example.com`.
182
+ # Corresponds to the JSON property `members`
183
+ # @return [Array<String>]
184
+ attr_accessor :members
121
185
 
122
- # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
123
- # the fields in the mask will be modified. If no mask is provided, the
124
- # following default mask is used:
125
- # paths: "bindings, etag"
126
- # This field is only used by Cloud IAM.
127
- # Corresponds to the JSON property `updateMask`
186
+ # Role that is assigned to `members`.
187
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
188
+ # Required
189
+ # Corresponds to the JSON property `role`
128
190
  # @return [String]
129
- attr_accessor :update_mask
191
+ attr_accessor :role
130
192
 
131
193
  def initialize(**args)
132
194
  update!(**args)
@@ -134,19 +196,16 @@ module Google
134
196
 
135
197
  # Update properties of this object
136
198
  def update!(**args)
137
- @policy = args[:policy] if args.key?(:policy)
138
- @update_mask = args[:update_mask] if args.key?(:update_mask)
199
+ @members = args[:members] if args.key?(:members)
200
+ @role = args[:role] if args.key?(:role)
139
201
  end
140
202
  end
141
203
 
142
- # A generic empty message that you can re-use to avoid defining duplicated
143
- # empty messages in your APIs. A typical example is to use it as the request
144
- # or the response type of an API method. For instance:
145
- # service Foo `
146
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
147
- # `
148
- # The JSON representation for `Empty` is empty JSON object ````.
149
- class Empty
204
+ # A `Constraint` that is either enforced or not.
205
+ # For example a constraint `constraints/compute.disableSerialPortAccess`.
206
+ # If it is enforced on a VM instance, serial port connections will not be
207
+ # opened to that instance.
208
+ class BooleanConstraint
150
209
  include Google::Apis::Core::Hashable
151
210
 
152
211
  def initialize(**args)
@@ -158,76 +217,79 @@ module Google
158
217
  end
159
218
  end
160
219
 
161
- # The root node in the resource hierarchy to which a particular entity's
162
- # (e.g., company) resources belong.
163
- class Organization
220
+ # Used in `policy_type` to specify how `boolean_policy` will behave at this
221
+ # resource.
222
+ class BooleanPolicy
164
223
  include Google::Apis::Core::Hashable
165
224
 
166
- # The organization's current lifecycle state. Assigned by the server.
167
- # @OutputOnly
168
- # Corresponds to the JSON property `lifecycleState`
169
- # @return [String]
170
- attr_accessor :lifecycle_state
225
+ # If `true`, then the `Policy` is enforced. If `false`, then any
226
+ # configuration is acceptable.
227
+ # Suppose you have a `Constraint` `constraints/compute.disableSerialPortAccess`
228
+ # with `constraint_default` set to `ALLOW`. A `Policy` for that
229
+ # `Constraint` exhibits the following behavior:
230
+ # - If the `Policy` at this resource has enforced set to `false`, serial
231
+ # port connection attempts will be allowed.
232
+ # - If the `Policy` at this resource has enforced set to `true`, serial
233
+ # port connection attempts will be refused.
234
+ # - If the `Policy` at this resource is `RestoreDefault`, serial port
235
+ # connection attempts will be allowed.
236
+ # - If no `Policy` is set at this resource or anywhere higher in the
237
+ # resource hierarchy, serial port connection attempts will be allowed.
238
+ # - If no `Policy` is set at this resource, but one exists higher in the
239
+ # resource hierarchy, the behavior is as if the`Policy` were set at
240
+ # this resource.
241
+ # The following examples demonstrate the different possible layerings:
242
+ # Example 1 (nearest `Constraint` wins):
243
+ # `organizations/foo` has a `Policy` with:
244
+ # `enforced: false`
245
+ # `projects/bar` has no `Policy` set.
246
+ # The constraint at `projects/bar` and `organizations/foo` will not be
247
+ # enforced.
248
+ # Example 2 (enforcement gets replaced):
249
+ # `organizations/foo` has a `Policy` with:
250
+ # `enforced: false`
251
+ # `projects/bar` has a `Policy` with:
252
+ # `enforced: true`
253
+ # The constraint at `organizations/foo` is not enforced.
254
+ # The constraint at `projects/bar` is enforced.
255
+ # Example 3 (RestoreDefault):
256
+ # `organizations/foo` has a `Policy` with:
257
+ # `enforced: true`
258
+ # `projects/bar` has a `Policy` with:
259
+ # `RestoreDefault: ```
260
+ # The constraint at `organizations/foo` is enforced.
261
+ # The constraint at `projects/bar` is not enforced, because
262
+ # `constraint_default` for the `Constraint` is `ALLOW`.
263
+ # Corresponds to the JSON property `enforced`
264
+ # @return [Boolean]
265
+ attr_accessor :enforced
266
+ alias_method :enforced?, :enforced
171
267
 
172
- # The entity that owns an Organization. The lifetime of the Organization and
173
- # all of its descendants are bound to the `OrganizationOwner`. If the
174
- # `OrganizationOwner` is deleted, the Organization and all its descendants will
175
- # be deleted.
176
- # Corresponds to the JSON property `owner`
177
- # @return [Google::Apis::CloudresourcemanagerV1::OrganizationOwner]
178
- attr_accessor :owner
179
-
180
- # Output Only. The resource name of the organization. This is the
181
- # organization's relative path in the API. Its format is
182
- # "organizations/[organization_id]". For example, "organizations/1234".
183
- # Corresponds to the JSON property `name`
184
- # @return [String]
185
- attr_accessor :name
186
-
187
- # A friendly string to be used to refer to the Organization in the UI.
188
- # Assigned by the server, set to the primary domain of the G Suite
189
- # customer that owns the organization.
190
- # @OutputOnly
191
- # Corresponds to the JSON property `displayName`
192
- # @return [String]
193
- attr_accessor :display_name
194
-
195
- # Timestamp when the Organization was created. Assigned by the server.
196
- # @OutputOnly
197
- # Corresponds to the JSON property `creationTime`
198
- # @return [String]
199
- attr_accessor :creation_time
200
-
201
- def initialize(**args)
202
- update!(**args)
203
- end
268
+ def initialize(**args)
269
+ update!(**args)
270
+ end
204
271
 
205
272
  # Update properties of this object
206
273
  def update!(**args)
207
- @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
208
- @owner = args[:owner] if args.key?(:owner)
209
- @name = args[:name] if args.key?(:name)
210
- @display_name = args[:display_name] if args.key?(:display_name)
211
- @creation_time = args[:creation_time] if args.key?(:creation_time)
274
+ @enforced = args[:enforced] if args.key?(:enforced)
212
275
  end
213
276
  end
214
277
 
215
- # The response returned from the ListAvailableOrgPolicyConstraints method.
216
- # Returns all `Constraints` that could be set at this level of the hierarchy
217
- # (contrast with the response from `ListPolicies`, which returns all policies
218
- # which are set).
219
- class ListAvailableOrgPolicyConstraintsResponse
278
+ # The request sent to the ClearOrgPolicy method.
279
+ class ClearOrgPolicyRequest
220
280
  include Google::Apis::Core::Hashable
221
281
 
222
- # Page token used to retrieve the next page. This is currently not used.
223
- # Corresponds to the JSON property `nextPageToken`
282
+ # Name of the `Constraint` of the `Policy` to clear.
283
+ # Corresponds to the JSON property `constraint`
224
284
  # @return [String]
225
- attr_accessor :next_page_token
285
+ attr_accessor :constraint
226
286
 
227
- # The collection of constraints that are settable on the request resource.
228
- # Corresponds to the JSON property `constraints`
229
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Constraint>]
230
- attr_accessor :constraints
287
+ # The current version, for concurrency control. Not sending an `etag`
288
+ # will cause the `Policy` to be cleared blindly.
289
+ # Corresponds to the JSON property `etag`
290
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
291
+ # @return [String]
292
+ attr_accessor :etag
231
293
 
232
294
  def initialize(**args)
233
295
  update!(**args)
@@ -235,125 +297,69 @@ module Google
235
297
 
236
298
  # Update properties of this object
237
299
  def update!(**args)
238
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
239
- @constraints = args[:constraints] if args.key?(:constraints)
300
+ @constraint = args[:constraint] if args.key?(:constraint)
301
+ @etag = args[:etag] if args.key?(:etag)
240
302
  end
241
303
  end
242
304
 
243
- # Used in `policy_type` to specify how `list_policy` behaves at this
244
- # resource.
245
- # A `ListPolicy` can define specific values that are allowed or denied by
246
- # setting either the `allowed_values` or `denied_values` fields. It can also
247
- # be used to allow or deny all values, by setting the `all_values` field. If
248
- # `all_values` is `ALL_VALUES_UNSPECIFIED`, exactly one of `allowed_values`
249
- # or `denied_values` must be set (attempting to set both or neither will
250
- # result in a failed request). If `all_values` is set to either `ALLOW` or
251
- # `DENY`, `allowed_values` and `denied_values` must be unset.
252
- class ListPolicy
305
+ # A `Constraint` describes a way in which a resource's configuration can be
306
+ # restricted. For example, it controls which cloud services can be activated
307
+ # across an organization, or whether a Compute Engine instance can have
308
+ # serial port connections established. `Constraints` can be configured by the
309
+ # organization's policy adminstrator to fit the needs of the organzation by
310
+ # setting Policies for `Constraints` at different locations in the
311
+ # organization's resource hierarchy. Policies are inherited down the resource
312
+ # hierarchy from higher levels, but can also be overridden. For details about
313
+ # the inheritance rules please read about
314
+ # Policies.
315
+ # `Constraints` have a default behavior determined by the `constraint_default`
316
+ # field, which is the enforcement behavior that is used in the absence of a
317
+ # `Policy` being defined or inherited for the resource in question.
318
+ class Constraint
253
319
  include Google::Apis::Core::Hashable
254
320
 
255
- # Determines the inheritance behavior for this `Policy`.
256
- # By default, a `ListPolicy` set at a resource supercedes any `Policy` set
257
- # anywhere up the resource hierarchy. However, if `inherit_from_parent` is
258
- # set to `true`, then the values from the effective `Policy` of the parent
259
- # resource are inherited, meaning the values set in this `Policy` are
260
- # added to the values inherited up the hierarchy.
261
- # Setting `Policy` hierarchies that inherit both allowed values and denied
262
- # values isn't recommended in most circumstances to keep the configuration
263
- # simple and understandable. However, it is possible to set a `Policy` with
264
- # `allowed_values` set that inherits a `Policy` with `denied_values` set.
265
- # In this case, the values that are allowed must be in `allowed_values` and
266
- # not present in `denied_values`.
267
- # For example, suppose you have a `Constraint`
268
- # `constraints/serviceuser.services`, which has a `constraint_type` of
269
- # `list_constraint`, and with `constraint_default` set to `ALLOW`.
270
- # Suppose that at the Organization level, a `Policy` is applied that
271
- # restricts the allowed API activations to ``E1`, `E2``. Then, if a
272
- # `Policy` is applied to a project below the Organization that has
273
- # `inherit_from_parent` set to `false` and field all_values set to DENY,
274
- # then an attempt to activate any API will be denied.
275
- # The following examples demonstrate different possible layerings:
276
- # Example 1 (no inherited values):
277
- # `organizations/foo` has a `Policy` with values:
278
- # `allowed_values: “E1” allowed_values:”E2”`
279
- # ``projects/bar`` has `inherit_from_parent` `false` and values:
280
- # `allowed_values: "E3" allowed_values: "E4"`
281
- # The accepted values at `organizations/foo` are `E1`, `E2`.
282
- # The accepted values at `projects/bar` are `E3`, and `E4`.
283
- # Example 2 (inherited values):
284
- # `organizations/foo` has a `Policy` with values:
285
- # `allowed_values: “E1” allowed_values:”E2”`
286
- # `projects/bar` has a `Policy` with values:
287
- # `value: “E3” value: ”E4” inherit_from_parent: true`
288
- # The accepted values at `organizations/foo` are `E1`, `E2`.
289
- # The accepted values at `projects/bar` are `E1`, `E2`, `E3`, and `E4`.
290
- # Example 3 (inheriting both allowed and denied values):
291
- # `organizations/foo` has a `Policy` with values:
292
- # `allowed_values: "E1" allowed_values: "E2"`
293
- # `projects/bar` has a `Policy` with:
294
- # `denied_values: "E1"`
295
- # The accepted values at `organizations/foo` are `E1`, `E2`.
296
- # The value accepted at `projects/bar` is `E2`.
297
- # Example 4 (RestoreDefault):
298
- # `organizations/foo` has a `Policy` with values:
299
- # `allowed_values: “E1” allowed_values:”E2”`
300
- # `projects/bar` has a `Policy` with values:
301
- # `RestoreDefault: ```
302
- # The accepted values at `organizations/foo` are `E1`, `E2`.
303
- # The accepted values at `projects/bar` are either all or none depending on
304
- # the value of `constraint_default` (if `ALLOW`, all; if
305
- # `DENY`, none).
306
- # Example 5 (no policy inherits parent policy):
307
- # `organizations/foo` has no `Policy` set.
308
- # `projects/bar` has no `Policy` set.
309
- # The accepted values at both levels are either all or none depending on
310
- # the value of `constraint_default` (if `ALLOW`, all; if
311
- # `DENY`, none).
312
- # Example 6 (ListConstraint allowing all):
313
- # `organizations/foo` has a `Policy` with values:
314
- # `allowed_values: “E1” allowed_values: ”E2”`
315
- # `projects/bar` has a `Policy` with:
316
- # `all: ALLOW`
317
- # The accepted values at `organizations/foo` are `E1`, E2`.
318
- # Any value is accepted at `projects/bar`.
319
- # Example 7 (ListConstraint allowing none):
320
- # `organizations/foo` has a `Policy` with values:
321
- # `allowed_values: “E1” allowed_values: ”E2”`
322
- # `projects/bar` has a `Policy` with:
323
- # `all: DENY`
324
- # The accepted values at `organizations/foo` are `E1`, E2`.
325
- # No value is accepted at `projects/bar`.
326
- # Corresponds to the JSON property `inheritFromParent`
327
- # @return [Boolean]
328
- attr_accessor :inherit_from_parent
329
- alias_method :inherit_from_parent?, :inherit_from_parent
321
+ # A `Constraint` that is either enforced or not.
322
+ # For example a constraint `constraints/compute.disableSerialPortAccess`.
323
+ # If it is enforced on a VM instance, serial port connections will not be
324
+ # opened to that instance.
325
+ # Corresponds to the JSON property `booleanConstraint`
326
+ # @return [Google::Apis::CloudresourcemanagerV1::BooleanConstraint]
327
+ attr_accessor :boolean_constraint
330
328
 
331
- # Optional. The Google Cloud Console will try to default to a configuration
332
- # that matches the value specified in this `Policy`. If `suggested_value`
333
- # is not set, it will inherit the value specified higher in the hierarchy,
334
- # unless `inherit_from_parent` is `false`.
335
- # Corresponds to the JSON property `suggestedValue`
329
+ # The evaluation behavior of this constraint in the absense of 'Policy'.
330
+ # Corresponds to the JSON property `constraintDefault`
336
331
  # @return [String]
337
- attr_accessor :suggested_value
332
+ attr_accessor :constraint_default
338
333
 
339
- # List of values denied at this resource. Can only be set if no values are
340
- # set for `allowed_values` and `all_values` is set to
341
- # `ALL_VALUES_UNSPECIFIED`.
342
- # Corresponds to the JSON property `deniedValues`
343
- # @return [Array<String>]
344
- attr_accessor :denied_values
334
+ # Detailed description of what this `Constraint` controls as well as how and
335
+ # where it is enforced.
336
+ # Mutable.
337
+ # Corresponds to the JSON property `description`
338
+ # @return [String]
339
+ attr_accessor :description
345
340
 
346
- # The policy all_values state.
347
- # Corresponds to the JSON property `allValues`
341
+ # The human readable name.
342
+ # Mutable.
343
+ # Corresponds to the JSON property `displayName`
348
344
  # @return [String]
349
- attr_accessor :all_values
345
+ attr_accessor :display_name
350
346
 
351
- # List of values allowed at this resource. Can only be set if no values
352
- # are set for `denied_values` and `all_values` is set to
353
- # `ALL_VALUES_UNSPECIFIED`.
354
- # Corresponds to the JSON property `allowedValues`
355
- # @return [Array<String>]
356
- attr_accessor :allowed_values
347
+ # A `Constraint` that allows or disallows a list of string values, which are
348
+ # configured by an Organization's policy administrator with a `Policy`.
349
+ # Corresponds to the JSON property `listConstraint`
350
+ # @return [Google::Apis::CloudresourcemanagerV1::ListConstraint]
351
+ attr_accessor :list_constraint
352
+
353
+ # Immutable value, required to globally be unique. For example,
354
+ # `constraints/serviceuser.services`
355
+ # Corresponds to the JSON property `name`
356
+ # @return [String]
357
+ attr_accessor :name
358
+
359
+ # Version of the `Constraint`. Default version is 0;
360
+ # Corresponds to the JSON property `version`
361
+ # @return [Fixnum]
362
+ attr_accessor :version
357
363
 
358
364
  def initialize(**args)
359
365
  update!(**args)
@@ -361,66 +367,60 @@ module Google
361
367
 
362
368
  # Update properties of this object
363
369
  def update!(**args)
364
- @inherit_from_parent = args[:inherit_from_parent] if args.key?(:inherit_from_parent)
365
- @suggested_value = args[:suggested_value] if args.key?(:suggested_value)
366
- @denied_values = args[:denied_values] if args.key?(:denied_values)
367
- @all_values = args[:all_values] if args.key?(:all_values)
368
- @allowed_values = args[:allowed_values] if args.key?(:allowed_values)
370
+ @boolean_constraint = args[:boolean_constraint] if args.key?(:boolean_constraint)
371
+ @constraint_default = args[:constraint_default] if args.key?(:constraint_default)
372
+ @description = args[:description] if args.key?(:description)
373
+ @display_name = args[:display_name] if args.key?(:display_name)
374
+ @list_constraint = args[:list_constraint] if args.key?(:list_constraint)
375
+ @name = args[:name] if args.key?(:name)
376
+ @version = args[:version] if args.key?(:version)
369
377
  end
370
378
  end
371
379
 
372
- # Response from the GetAncestry method.
373
- class GetAncestryResponse
380
+ # A generic empty message that you can re-use to avoid defining duplicated
381
+ # empty messages in your APIs. A typical example is to use it as the request
382
+ # or the response type of an API method. For instance:
383
+ # service Foo `
384
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
385
+ # `
386
+ # The JSON representation for `Empty` is empty JSON object ````.
387
+ class Empty
374
388
  include Google::Apis::Core::Hashable
375
389
 
376
- # Ancestors are ordered from bottom to top of the resource hierarchy. The
377
- # first ancestor is the project itself, followed by the project's parent,
378
- # etc.
379
- # Corresponds to the JSON property `ancestor`
380
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Ancestor>]
381
- attr_accessor :ancestor
382
-
383
390
  def initialize(**args)
384
391
  update!(**args)
385
392
  end
386
393
 
387
394
  # Update properties of this object
388
395
  def update!(**args)
389
- @ancestor = args[:ancestor] if args.key?(:ancestor)
390
396
  end
391
397
  end
392
398
 
393
- # Provides the configuration for logging a type of permissions.
394
- # Example:
395
- # `
396
- # "audit_log_configs": [
397
- # `
398
- # "log_type": "DATA_READ",
399
- # "exempted_members": [
400
- # "user:foo@gmail.com"
401
- # ]
402
- # `,
403
- # `
404
- # "log_type": "DATA_WRITE",
405
- # `
406
- # ]
407
- # `
408
- # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
409
- # foo@gmail.com from DATA_READ logging.
410
- class AuditLogConfig
399
+ # Metadata describing a long running folder operation
400
+ class FolderOperation
411
401
  include Google::Apis::Core::Hashable
412
402
 
413
- # The log type that this config enables.
414
- # Corresponds to the JSON property `logType`
403
+ # The resource name of the folder or organization we are either creating
404
+ # the folder under or moving the folder to.
405
+ # Corresponds to the JSON property `destinationParent`
415
406
  # @return [String]
416
- attr_accessor :log_type
407
+ attr_accessor :destination_parent
417
408
 
418
- # Specifies the identities that do not cause logging for this type of
419
- # permission.
420
- # Follows the same format of Binding.members.
421
- # Corresponds to the JSON property `exemptedMembers`
422
- # @return [Array<String>]
423
- attr_accessor :exempted_members
409
+ # The display name of the folder.
410
+ # Corresponds to the JSON property `displayName`
411
+ # @return [String]
412
+ attr_accessor :display_name
413
+
414
+ # The type of this operation.
415
+ # Corresponds to the JSON property `operationType`
416
+ # @return [String]
417
+ attr_accessor :operation_type
418
+
419
+ # The resource name of the folder's parent.
420
+ # Only applicable when the operation_type is MOVE.
421
+ # Corresponds to the JSON property `sourceParent`
422
+ # @return [String]
423
+ attr_accessor :source_parent
424
424
 
425
425
  def initialize(**args)
426
426
  update!(**args)
@@ -428,41 +428,21 @@ module Google
428
428
 
429
429
  # Update properties of this object
430
430
  def update!(**args)
431
- @log_type = args[:log_type] if args.key?(:log_type)
432
- @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
431
+ @destination_parent = args[:destination_parent] if args.key?(:destination_parent)
432
+ @display_name = args[:display_name] if args.key?(:display_name)
433
+ @operation_type = args[:operation_type] if args.key?(:operation_type)
434
+ @source_parent = args[:source_parent] if args.key?(:source_parent)
433
435
  end
434
436
  end
435
437
 
436
- # The request sent to the `SearchOrganizations` method.
437
- class SearchOrganizationsRequest
438
+ # A classification of the Folder Operation error.
439
+ class FolderOperationError
438
440
  include Google::Apis::Core::Hashable
439
441
 
440
- # An optional query string used to filter the Organizations to return in
441
- # the response. Filter rules are case-insensitive.
442
- # Organizations may be filtered by `owner.directoryCustomerId` or by
443
- # `domain`, where the domain is a Google for Work domain, for example:
444
- # |Filter|Description|
445
- # |------|-----------|
446
- # |owner.directorycustomerid:123456789|Organizations with
447
- # `owner.directory_customer_id` equal to `123456789`.|
448
- # |domain:google.com|Organizations corresponding to the domain `google.com`.|
449
- # This field is optional.
450
- # Corresponds to the JSON property `filter`
451
- # @return [String]
452
- attr_accessor :filter
453
-
454
- # A pagination token returned from a previous call to `SearchOrganizations`
455
- # that indicates from where listing should continue.
456
- # This field is optional.
457
- # Corresponds to the JSON property `pageToken`
442
+ # The type of operation error experienced.
443
+ # Corresponds to the JSON property `errorMessageId`
458
444
  # @return [String]
459
- attr_accessor :page_token
460
-
461
- # The maximum number of Organizations to return in the response.
462
- # This field is optional.
463
- # Corresponds to the JSON property `pageSize`
464
- # @return [Fixnum]
465
- attr_accessor :page_size
445
+ attr_accessor :error_message_id
466
446
 
467
447
  def initialize(**args)
468
448
  update!(**args)
@@ -470,9 +450,7 @@ module Google
470
450
 
471
451
  # Update properties of this object
472
452
  def update!(**args)
473
- @filter = args[:filter] if args.key?(:filter)
474
- @page_token = args[:page_token] if args.key?(:page_token)
475
- @page_size = args[:page_size] if args.key?(:page_size)
453
+ @error_message_id = args[:error_message_id] if args.key?(:error_message_id)
476
454
  end
477
455
  end
478
456
 
@@ -491,17 +469,16 @@ module Google
491
469
  end
492
470
  end
493
471
 
494
- # Request message for `TestIamPermissions` method.
495
- class TestIamPermissionsRequest
472
+ # Response from the GetAncestry method.
473
+ class GetAncestryResponse
496
474
  include Google::Apis::Core::Hashable
497
475
 
498
- # The set of permissions to check for the `resource`. Permissions with
499
- # wildcards (such as '*' or 'storage.*') are not allowed. For more
500
- # information see
501
- # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
502
- # Corresponds to the JSON property `permissions`
503
- # @return [Array<String>]
504
- attr_accessor :permissions
476
+ # Ancestors are ordered from bottom to top of the resource hierarchy. The
477
+ # first ancestor is the project itself, followed by the project's parent,
478
+ # etc.
479
+ # Corresponds to the JSON property `ancestor`
480
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Ancestor>]
481
+ attr_accessor :ancestor
505
482
 
506
483
  def initialize(**args)
507
484
  update!(**args)
@@ -509,27 +486,18 @@ module Google
509
486
 
510
487
  # Update properties of this object
511
488
  def update!(**args)
512
- @permissions = args[:permissions] if args.key?(:permissions)
489
+ @ancestor = args[:ancestor] if args.key?(:ancestor)
513
490
  end
514
491
  end
515
492
 
516
- # The request sent to the [ListAvailableOrgPolicyConstraints]
517
- # google.cloud.OrgPolicy.v1.ListAvailableOrgPolicyConstraints] method.
518
- class ListAvailableOrgPolicyConstraintsRequest
493
+ # The request sent to the GetEffectiveOrgPolicy method.
494
+ class GetEffectiveOrgPolicyRequest
519
495
  include Google::Apis::Core::Hashable
520
496
 
521
- # Page token used to retrieve the next page. This is currently unsupported
522
- # and will be ignored. The server may at any point start using this field.
523
- # Corresponds to the JSON property `pageToken`
497
+ # The name of the `Constraint` to compute the effective `Policy`.
498
+ # Corresponds to the JSON property `constraint`
524
499
  # @return [String]
525
- attr_accessor :page_token
526
-
527
- # Size of the pages to be returned. This is currently unsupported and will
528
- # be ignored. The server may at any point start using this field to limit
529
- # page size.
530
- # Corresponds to the JSON property `pageSize`
531
- # @return [Fixnum]
532
- attr_accessor :page_size
500
+ attr_accessor :constraint
533
501
 
534
502
  def initialize(**args)
535
503
  update!(**args)
@@ -537,69 +505,31 @@ module Google
537
505
 
538
506
  # Update properties of this object
539
507
  def update!(**args)
540
- @page_token = args[:page_token] if args.key?(:page_token)
541
- @page_size = args[:page_size] if args.key?(:page_size)
508
+ @constraint = args[:constraint] if args.key?(:constraint)
542
509
  end
543
510
  end
544
511
 
545
- # Defines an Identity and Access Management (IAM) policy. It is used to
546
- # specify access control policies for Cloud Platform resources.
547
- # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
548
- # `members` to a `role`, where the members can be user accounts, Google groups,
549
- # Google domains, and service accounts. A `role` is a named list of permissions
550
- # defined by IAM.
551
- # **Example**
552
- # `
553
- # "bindings": [
554
- # `
555
- # "role": "roles/owner",
556
- # "members": [
557
- # "user:mike@example.com",
558
- # "group:admins@example.com",
559
- # "domain:google.com",
560
- # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
561
- # ]
562
- # `,
563
- # `
564
- # "role": "roles/viewer",
565
- # "members": ["user:sean@example.com"]
566
- # `
567
- # ]
568
- # `
569
- # For a description of IAM and its features, see the
570
- # [IAM developer's guide](https://cloud.google.com/iam).
571
- class Policy
512
+ # Request message for `GetIamPolicy` method.
513
+ class GetIamPolicyRequest
572
514
  include Google::Apis::Core::Hashable
573
515
 
574
- # Version of the `Policy`. The default version is 0.
575
- # Corresponds to the JSON property `version`
576
- # @return [Fixnum]
577
- attr_accessor :version
516
+ def initialize(**args)
517
+ update!(**args)
518
+ end
578
519
 
579
- # Specifies cloud audit logging configuration for this policy.
580
- # Corresponds to the JSON property `auditConfigs`
581
- # @return [Array<Google::Apis::CloudresourcemanagerV1::AuditConfig>]
582
- attr_accessor :audit_configs
520
+ # Update properties of this object
521
+ def update!(**args)
522
+ end
523
+ end
583
524
 
584
- # Associates a list of `members` to a `role`.
585
- # `bindings` with no members will result in an error.
586
- # Corresponds to the JSON property `bindings`
587
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Binding>]
588
- attr_accessor :bindings
525
+ # The request sent to the GetOrgPolicy method.
526
+ class GetOrgPolicyRequest
527
+ include Google::Apis::Core::Hashable
589
528
 
590
- # `etag` is used for optimistic concurrency control as a way to help
591
- # prevent simultaneous updates of a policy from overwriting each other.
592
- # It is strongly suggested that systems make use of the `etag` in the
593
- # read-modify-write cycle to perform policy updates in order to avoid race
594
- # conditions: An `etag` is returned in the response to `getIamPolicy`, and
595
- # systems are expected to put that etag in the request to `setIamPolicy` to
596
- # ensure that their change will be applied to the same version of the policy.
597
- # If no `etag` is provided in the call to `setIamPolicy`, then the existing
598
- # policy is overwritten blindly.
599
- # Corresponds to the JSON property `etag`
600
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
529
+ # Name of the `Constraint` to get the `Policy`.
530
+ # Corresponds to the JSON property `constraint`
601
531
  # @return [String]
602
- attr_accessor :etag
532
+ attr_accessor :constraint
603
533
 
604
534
  def initialize(**args)
605
535
  update!(**args)
@@ -607,38 +537,56 @@ module Google
607
537
 
608
538
  # Update properties of this object
609
539
  def update!(**args)
610
- @version = args[:version] if args.key?(:version)
611
- @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
612
- @bindings = args[:bindings] if args.key?(:bindings)
613
- @etag = args[:etag] if args.key?(:etag)
540
+ @constraint = args[:constraint] if args.key?(:constraint)
614
541
  end
615
542
  end
616
543
 
617
- # Metadata describing a long running folder operation
618
- class FolderOperation
544
+ # A Lien represents an encumbrance on the actions that can be performed on a
545
+ # resource.
546
+ class Lien
619
547
  include Google::Apis::Core::Hashable
620
548
 
621
- # The type of this operation.
622
- # Corresponds to the JSON property `operationType`
549
+ # The creation time of this Lien.
550
+ # Corresponds to the JSON property `createTime`
623
551
  # @return [String]
624
- attr_accessor :operation_type
552
+ attr_accessor :create_time
625
553
 
626
- # The resource name of the folder's parent.
627
- # Only applicable when the operation_type is MOVE.
628
- # Corresponds to the JSON property `sourceParent`
554
+ # A system-generated unique identifier for this Lien.
555
+ # Example: `liens/1234abcd`
556
+ # Corresponds to the JSON property `name`
629
557
  # @return [String]
630
- attr_accessor :source_parent
558
+ attr_accessor :name
631
559
 
632
- # The display name of the folder.
633
- # Corresponds to the JSON property `displayName`
560
+ # A stable, user-visible/meaningful string identifying the origin of the
561
+ # Lien, intended to be inspected programmatically. Maximum length of 200
562
+ # characters.
563
+ # Example: 'compute.googleapis.com'
564
+ # Corresponds to the JSON property `origin`
634
565
  # @return [String]
635
- attr_accessor :display_name
566
+ attr_accessor :origin
636
567
 
637
- # The resource name of the folder or organization we are either creating
638
- # the folder under or moving the folder to.
639
- # Corresponds to the JSON property `destinationParent`
568
+ # A reference to the resource this Lien is attached to. The server will
569
+ # validate the parent against those for which Liens are supported.
570
+ # Example: `projects/1234`
571
+ # Corresponds to the JSON property `parent`
640
572
  # @return [String]
641
- attr_accessor :destination_parent
573
+ attr_accessor :parent
574
+
575
+ # Concise user-visible strings indicating why an action cannot be performed
576
+ # on a resource. Maximum lenth of 200 characters.
577
+ # Example: 'Holds production API key'
578
+ # Corresponds to the JSON property `reason`
579
+ # @return [String]
580
+ attr_accessor :reason
581
+
582
+ # The types of operations which should be blocked as a result of this Lien.
583
+ # Each value should correspond to an IAM permission. The server will
584
+ # validate the permissions against those for which Liens are supported.
585
+ # An empty list is meaningless and will be rejected.
586
+ # Example: ['resourcemanager.projects.delete']
587
+ # Corresponds to the JSON property `restrictions`
588
+ # @return [Array<String>]
589
+ attr_accessor :restrictions
642
590
 
643
591
  def initialize(**args)
644
592
  update!(**args)
@@ -646,31 +594,32 @@ module Google
646
594
 
647
595
  # Update properties of this object
648
596
  def update!(**args)
649
- @operation_type = args[:operation_type] if args.key?(:operation_type)
650
- @source_parent = args[:source_parent] if args.key?(:source_parent)
651
- @display_name = args[:display_name] if args.key?(:display_name)
652
- @destination_parent = args[:destination_parent] if args.key?(:destination_parent)
597
+ @create_time = args[:create_time] if args.key?(:create_time)
598
+ @name = args[:name] if args.key?(:name)
599
+ @origin = args[:origin] if args.key?(:origin)
600
+ @parent = args[:parent] if args.key?(:parent)
601
+ @reason = args[:reason] if args.key?(:reason)
602
+ @restrictions = args[:restrictions] if args.key?(:restrictions)
653
603
  end
654
604
  end
655
605
 
656
- # A container to reference an id for any resource type. A `resource` in Google
657
- # Cloud Platform is a generic term for something you (a developer) may want to
658
- # interact with through one of our API's. Some examples are an App Engine app,
659
- # a Compute Engine instance, a Cloud SQL database, and so on.
660
- class ResourceId
606
+ # The request sent to the [ListAvailableOrgPolicyConstraints]
607
+ # google.cloud.OrgPolicy.v1.ListAvailableOrgPolicyConstraints] method.
608
+ class ListAvailableOrgPolicyConstraintsRequest
661
609
  include Google::Apis::Core::Hashable
662
610
 
663
- # Required field representing the resource type this id is for.
664
- # At present, the valid types are: "organization"
665
- # Corresponds to the JSON property `type`
666
- # @return [String]
667
- attr_accessor :type
611
+ # Size of the pages to be returned. This is currently unsupported and will
612
+ # be ignored. The server may at any point start using this field to limit
613
+ # page size.
614
+ # Corresponds to the JSON property `pageSize`
615
+ # @return [Fixnum]
616
+ attr_accessor :page_size
668
617
 
669
- # Required field for the type-specific id. This should correspond to the id
670
- # used in the type-specific API's.
671
- # Corresponds to the JSON property `id`
618
+ # Page token used to retrieve the next page. This is currently unsupported
619
+ # and will be ignored. The server may at any point start using this field.
620
+ # Corresponds to the JSON property `pageToken`
672
621
  # @return [String]
673
- attr_accessor :id
622
+ attr_accessor :page_token
674
623
 
675
624
  def initialize(**args)
676
625
  update!(**args)
@@ -678,19 +627,27 @@ module Google
678
627
 
679
628
  # Update properties of this object
680
629
  def update!(**args)
681
- @type = args[:type] if args.key?(:type)
682
- @id = args[:id] if args.key?(:id)
630
+ @page_size = args[:page_size] if args.key?(:page_size)
631
+ @page_token = args[:page_token] if args.key?(:page_token)
683
632
  end
684
633
  end
685
634
 
686
- # The request sent to the GetEffectiveOrgPolicy method.
687
- class GetEffectiveOrgPolicyRequest
635
+ # The response returned from the ListAvailableOrgPolicyConstraints method.
636
+ # Returns all `Constraints` that could be set at this level of the hierarchy
637
+ # (contrast with the response from `ListPolicies`, which returns all policies
638
+ # which are set).
639
+ class ListAvailableOrgPolicyConstraintsResponse
688
640
  include Google::Apis::Core::Hashable
689
641
 
690
- # The name of the `Constraint` to compute the effective `Policy`.
691
- # Corresponds to the JSON property `constraint`
642
+ # The collection of constraints that are settable on the request resource.
643
+ # Corresponds to the JSON property `constraints`
644
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Constraint>]
645
+ attr_accessor :constraints
646
+
647
+ # Page token used to retrieve the next page. This is currently not used.
648
+ # Corresponds to the JSON property `nextPageToken`
692
649
  # @return [String]
693
- attr_accessor :constraint
650
+ attr_accessor :next_page_token
694
651
 
695
652
  def initialize(**args)
696
653
  update!(**args)
@@ -698,26 +655,21 @@ module Google
698
655
 
699
656
  # Update properties of this object
700
657
  def update!(**args)
701
- @constraint = args[:constraint] if args.key?(:constraint)
658
+ @constraints = args[:constraints] if args.key?(:constraints)
659
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
702
660
  end
703
661
  end
704
662
 
705
- # The request sent to the ListOrgPolicies method.
706
- class ListOrgPoliciesRequest
663
+ # A `Constraint` that allows or disallows a list of string values, which are
664
+ # configured by an Organization's policy administrator with a `Policy`.
665
+ class ListConstraint
707
666
  include Google::Apis::Core::Hashable
708
667
 
709
- # Page token used to retrieve the next page. This is currently unsupported
710
- # and will be ignored. The server may at any point start using this field.
711
- # Corresponds to the JSON property `pageToken`
668
+ # Optional. The Google Cloud Console will try to default to a configuration
669
+ # that matches the value specified in this `Constraint`.
670
+ # Corresponds to the JSON property `suggestedValue`
712
671
  # @return [String]
713
- attr_accessor :page_token
714
-
715
- # Size of the pages to be returned. This is currently unsupported and will
716
- # be ignored. The server may at any point start using this field to limit
717
- # page size.
718
- # Corresponds to the JSON property `pageSize`
719
- # @return [Fixnum]
720
- attr_accessor :page_size
672
+ attr_accessor :suggested_value
721
673
 
722
674
  def initialize(**args)
723
675
  update!(**args)
@@ -725,73 +677,24 @@ module Google
725
677
 
726
678
  # Update properties of this object
727
679
  def update!(**args)
728
- @page_token = args[:page_token] if args.key?(:page_token)
729
- @page_size = args[:page_size] if args.key?(:page_size)
680
+ @suggested_value = args[:suggested_value] if args.key?(:suggested_value)
730
681
  end
731
682
  end
732
683
 
733
- # Specifies the audit configuration for a service.
734
- # The configuration determines which permission types are logged, and what
735
- # identities, if any, are exempted from logging.
736
- # An AuditConfig must have one or more AuditLogConfigs.
737
- # If there are AuditConfigs for both `allServices` and a specific service,
738
- # the union of the two AuditConfigs is used for that service: the log_types
739
- # specified in each AuditConfig are enabled, and the exempted_members in each
740
- # AuditConfig are exempted.
741
- # Example Policy with multiple AuditConfigs:
742
- # `
743
- # "audit_configs": [
744
- # `
745
- # "service": "allServices"
746
- # "audit_log_configs": [
747
- # `
748
- # "log_type": "DATA_READ",
749
- # "exempted_members": [
750
- # "user:foo@gmail.com"
751
- # ]
752
- # `,
753
- # `
754
- # "log_type": "DATA_WRITE",
755
- # `,
756
- # `
757
- # "log_type": "ADMIN_READ",
758
- # `
759
- # ]
760
- # `,
761
- # `
762
- # "service": "fooservice.googleapis.com"
763
- # "audit_log_configs": [
764
- # `
765
- # "log_type": "DATA_READ",
766
- # `,
767
- # `
768
- # "log_type": "DATA_WRITE",
769
- # "exempted_members": [
770
- # "user:bar@gmail.com"
771
- # ]
772
- # `
773
- # ]
774
- # `
775
- # ]
776
- # `
777
- # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
778
- # logging. It also exempts foo@gmail.com from DATA_READ logging, and
779
- # bar@gmail.com from DATA_WRITE logging.
780
- class AuditConfig
684
+ # The response message for Liens.ListLiens.
685
+ class ListLiensResponse
781
686
  include Google::Apis::Core::Hashable
782
687
 
783
- # Specifies a service that will be enabled for audit logging.
784
- # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
785
- # `allServices` is a special value that covers all services.
786
- # Corresponds to the JSON property `service`
787
- # @return [String]
788
- attr_accessor :service
688
+ # A list of Liens.
689
+ # Corresponds to the JSON property `liens`
690
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Lien>]
691
+ attr_accessor :liens
789
692
 
790
- # The configuration for logging of each type of permission.
791
- # Next ID: 4
792
- # Corresponds to the JSON property `auditLogConfigs`
793
- # @return [Array<Google::Apis::CloudresourcemanagerV1::AuditLogConfig>]
794
- attr_accessor :audit_log_configs
693
+ # Token to retrieve the next page of results, or empty if there are no more
694
+ # results in the list.
695
+ # Corresponds to the JSON property `nextPageToken`
696
+ # @return [String]
697
+ attr_accessor :next_page_token
795
698
 
796
699
  def initialize(**args)
797
700
  update!(**args)
@@ -799,93 +702,27 @@ module Google
799
702
 
800
703
  # Update properties of this object
801
704
  def update!(**args)
802
- @service = args[:service] if args.key?(:service)
803
- @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
705
+ @liens = args[:liens] if args.key?(:liens)
706
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
804
707
  end
805
708
  end
806
709
 
807
- # This resource represents a long-running operation that is the result of a
808
- # network API call.
809
- class Operation
710
+ # The request sent to the ListOrgPolicies method.
711
+ class ListOrgPoliciesRequest
810
712
  include Google::Apis::Core::Hashable
811
713
 
812
- # Service-specific metadata associated with the operation. It typically
813
- # contains progress information and common metadata such as create time.
814
- # Some services might not provide such metadata. Any method that returns a
815
- # long-running operation should document the metadata type, if any.
816
- # Corresponds to the JSON property `metadata`
817
- # @return [Hash<String,Object>]
818
- attr_accessor :metadata
819
-
820
- # If the value is `false`, it means the operation is still in progress.
821
- # If true, the operation is completed, and either `error` or `response` is
822
- # available.
823
- # Corresponds to the JSON property `done`
824
- # @return [Boolean]
825
- attr_accessor :done
826
- alias_method :done?, :done
827
-
828
- # The normal response of the operation in case of success. If the original
829
- # method returns no data on success, such as `Delete`, the response is
830
- # `google.protobuf.Empty`. If the original method is standard
831
- # `Get`/`Create`/`Update`, the response should be the resource. For other
832
- # methods, the response should have the type `XxxResponse`, where `Xxx`
833
- # is the original method name. For example, if the original method name
834
- # is `TakeSnapshot()`, the inferred response type is
835
- # `TakeSnapshotResponse`.
836
- # Corresponds to the JSON property `response`
837
- # @return [Hash<String,Object>]
838
- attr_accessor :response
714
+ # Size of the pages to be returned. This is currently unsupported and will
715
+ # be ignored. The server may at any point start using this field to limit
716
+ # page size.
717
+ # Corresponds to the JSON property `pageSize`
718
+ # @return [Fixnum]
719
+ attr_accessor :page_size
839
720
 
840
- # The server-assigned name, which is only unique within the same service that
841
- # originally returns it. If you use the default HTTP mapping, the
842
- # `name` should have the format of `operations/some/unique/name`.
843
- # Corresponds to the JSON property `name`
721
+ # Page token used to retrieve the next page. This is currently unsupported
722
+ # and will be ignored. The server may at any point start using this field.
723
+ # Corresponds to the JSON property `pageToken`
844
724
  # @return [String]
845
- attr_accessor :name
846
-
847
- # The `Status` type defines a logical error model that is suitable for different
848
- # programming environments, including REST APIs and RPC APIs. It is used by
849
- # [gRPC](https://github.com/grpc). The error model is designed to be:
850
- # - Simple to use and understand for most users
851
- # - Flexible enough to meet unexpected needs
852
- # # Overview
853
- # The `Status` message contains three pieces of data: error code, error message,
854
- # and error details. The error code should be an enum value of
855
- # google.rpc.Code, but it may accept additional error codes if needed. The
856
- # error message should be a developer-facing English message that helps
857
- # developers *understand* and *resolve* the error. If a localized user-facing
858
- # error message is needed, put the localized message in the error details or
859
- # localize it in the client. The optional error details may contain arbitrary
860
- # information about the error. There is a predefined set of error detail types
861
- # in the package `google.rpc` that can be used for common error conditions.
862
- # # Language mapping
863
- # The `Status` message is the logical representation of the error model, but it
864
- # is not necessarily the actual wire format. When the `Status` message is
865
- # exposed in different client libraries and different wire protocols, it can be
866
- # mapped differently. For example, it will likely be mapped to some exceptions
867
- # in Java, but more likely mapped to some error codes in C.
868
- # # Other uses
869
- # The error model and the `Status` message can be used in a variety of
870
- # environments, either with or without APIs, to provide a
871
- # consistent developer experience across different environments.
872
- # Example uses of this error model include:
873
- # - Partial errors. If a service needs to return partial errors to the client,
874
- # it may embed the `Status` in the normal response to indicate the partial
875
- # errors.
876
- # - Workflow errors. A typical workflow has multiple steps. Each step may
877
- # have a `Status` message for error reporting.
878
- # - Batch operations. If a client uses batch request and batch response, the
879
- # `Status` message should be used directly inside batch response, one for
880
- # each error sub-response.
881
- # - Asynchronous operations. If an API call embeds asynchronous operation
882
- # results in its response, the status of those operations should be
883
- # represented directly using the `Status` message.
884
- # - Logging. If some API errors are stored in logs, the message `Status` could
885
- # be used directly after any stripping needed for security/privacy reasons.
886
- # Corresponds to the JSON property `error`
887
- # @return [Google::Apis::CloudresourcemanagerV1::Status]
888
- attr_accessor :error
725
+ attr_accessor :page_token
889
726
 
890
727
  def initialize(**args)
891
728
  update!(**args)
@@ -893,258 +730,153 @@ module Google
893
730
 
894
731
  # Update properties of this object
895
732
  def update!(**args)
896
- @metadata = args[:metadata] if args.key?(:metadata)
897
- @done = args[:done] if args.key?(:done)
898
- @response = args[:response] if args.key?(:response)
899
- @name = args[:name] if args.key?(:name)
900
- @error = args[:error] if args.key?(:error)
733
+ @page_size = args[:page_size] if args.key?(:page_size)
734
+ @page_token = args[:page_token] if args.key?(:page_token)
901
735
  end
902
736
  end
903
737
 
904
- # A `Constraint` describes a way in which a resource's configuration can be
905
- # restricted. For example, it controls which cloud services can be activated
906
- # across an organization, or whether a Compute Engine instance can have
907
- # serial port connections established. `Constraints` can be configured by the
908
- # organization's policy adminstrator to fit the needs of the organzation by
909
- # setting Policies for `Constraints` at different locations in the
910
- # organization's resource hierarchy. Policies are inherited down the resource
911
- # hierarchy from higher levels, but can also be overridden. For details about
912
- # the inheritance rules please read about
913
- # Policies.
914
- # `Constraints` have a default behavior determined by the `constraint_default`
915
- # field, which is the enforcement behavior that is used in the absence of a
916
- # `Policy` being defined or inherited for the resource in question.
917
- class Constraint
738
+ # The response returned from the ListOrgPolicies method. It will be empty
739
+ # if no `Policies` are set on the resource.
740
+ class ListOrgPoliciesResponse
918
741
  include Google::Apis::Core::Hashable
919
742
 
920
- # A `Constraint` that allows or disallows a list of string values, which are
921
- # configured by an Organization's policy administrator with a `Policy`.
922
- # Corresponds to the JSON property `listConstraint`
923
- # @return [Google::Apis::CloudresourcemanagerV1::ListConstraint]
924
- attr_accessor :list_constraint
925
-
926
- # Version of the `Constraint`. Default version is 0;
927
- # Corresponds to the JSON property `version`
928
- # @return [Fixnum]
929
- attr_accessor :version
930
-
931
- # The human readable name.
932
- # Mutable.
933
- # Corresponds to the JSON property `displayName`
934
- # @return [String]
935
- attr_accessor :display_name
936
-
937
- # Detailed description of what this `Constraint` controls as well as how and
938
- # where it is enforced.
939
- # Mutable.
940
- # Corresponds to the JSON property `description`
941
- # @return [String]
942
- attr_accessor :description
943
-
944
- # A `Constraint` that is either enforced or not.
945
- # For example a constraint `constraints/compute.disableSerialPortAccess`.
946
- # If it is enforced on a VM instance, serial port connections will not be
947
- # opened to that instance.
948
- # Corresponds to the JSON property `booleanConstraint`
949
- # @return [Google::Apis::CloudresourcemanagerV1::BooleanConstraint]
950
- attr_accessor :boolean_constraint
951
-
952
- # The evaluation behavior of this constraint in the absense of 'Policy'.
953
- # Corresponds to the JSON property `constraintDefault`
954
- # @return [String]
955
- attr_accessor :constraint_default
956
-
957
- # Immutable value, required to globally be unique. For example,
958
- # `constraints/serviceuser.services`
959
- # Corresponds to the JSON property `name`
960
- # @return [String]
961
- attr_accessor :name
962
-
963
- def initialize(**args)
964
- update!(**args)
965
- end
966
-
967
- # Update properties of this object
968
- def update!(**args)
969
- @list_constraint = args[:list_constraint] if args.key?(:list_constraint)
970
- @version = args[:version] if args.key?(:version)
971
- @display_name = args[:display_name] if args.key?(:display_name)
972
- @description = args[:description] if args.key?(:description)
973
- @boolean_constraint = args[:boolean_constraint] if args.key?(:boolean_constraint)
974
- @constraint_default = args[:constraint_default] if args.key?(:constraint_default)
975
- @name = args[:name] if args.key?(:name)
976
- end
977
- end
978
-
979
- # The response message for Liens.ListLiens.
980
- class ListLiensResponse
981
- include Google::Apis::Core::Hashable
982
-
983
- # A list of Liens.
984
- # Corresponds to the JSON property `liens`
985
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Lien>]
986
- attr_accessor :liens
987
-
988
- # Token to retrieve the next page of results, or empty if there are no more
989
- # results in the list.
743
+ # Page token used to retrieve the next page. This is currently not used, but
744
+ # the server may at any point start supplying a valid token.
990
745
  # Corresponds to the JSON property `nextPageToken`
991
746
  # @return [String]
992
747
  attr_accessor :next_page_token
993
748
 
749
+ # The `Policies` that are set on the resource. It will be empty if no
750
+ # `Policies` are set.
751
+ # Corresponds to the JSON property `policies`
752
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::OrgPolicy>]
753
+ attr_accessor :policies
754
+
994
755
  def initialize(**args)
995
756
  update!(**args)
996
757
  end
997
758
 
998
759
  # Update properties of this object
999
760
  def update!(**args)
1000
- @liens = args[:liens] if args.key?(:liens)
1001
761
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
762
+ @policies = args[:policies] if args.key?(:policies)
1002
763
  end
1003
764
  end
1004
765
 
1005
- # The `Status` type defines a logical error model that is suitable for different
1006
- # programming environments, including REST APIs and RPC APIs. It is used by
1007
- # [gRPC](https://github.com/grpc). The error model is designed to be:
1008
- # - Simple to use and understand for most users
1009
- # - Flexible enough to meet unexpected needs
1010
- # # Overview
1011
- # The `Status` message contains three pieces of data: error code, error message,
1012
- # and error details. The error code should be an enum value of
1013
- # google.rpc.Code, but it may accept additional error codes if needed. The
1014
- # error message should be a developer-facing English message that helps
1015
- # developers *understand* and *resolve* the error. If a localized user-facing
1016
- # error message is needed, put the localized message in the error details or
1017
- # localize it in the client. The optional error details may contain arbitrary
1018
- # information about the error. There is a predefined set of error detail types
1019
- # in the package `google.rpc` that can be used for common error conditions.
1020
- # # Language mapping
1021
- # The `Status` message is the logical representation of the error model, but it
1022
- # is not necessarily the actual wire format. When the `Status` message is
1023
- # exposed in different client libraries and different wire protocols, it can be
1024
- # mapped differently. For example, it will likely be mapped to some exceptions
1025
- # in Java, but more likely mapped to some error codes in C.
1026
- # # Other uses
1027
- # The error model and the `Status` message can be used in a variety of
1028
- # environments, either with or without APIs, to provide a
1029
- # consistent developer experience across different environments.
1030
- # Example uses of this error model include:
1031
- # - Partial errors. If a service needs to return partial errors to the client,
1032
- # it may embed the `Status` in the normal response to indicate the partial
1033
- # errors.
1034
- # - Workflow errors. A typical workflow has multiple steps. Each step may
1035
- # have a `Status` message for error reporting.
1036
- # - Batch operations. If a client uses batch request and batch response, the
1037
- # `Status` message should be used directly inside batch response, one for
1038
- # each error sub-response.
1039
- # - Asynchronous operations. If an API call embeds asynchronous operation
1040
- # results in its response, the status of those operations should be
1041
- # represented directly using the `Status` message.
1042
- # - Logging. If some API errors are stored in logs, the message `Status` could
1043
- # be used directly after any stripping needed for security/privacy reasons.
1044
- class Status
766
+ # Used in `policy_type` to specify how `list_policy` behaves at this
767
+ # resource.
768
+ # A `ListPolicy` can define specific values that are allowed or denied by
769
+ # setting either the `allowed_values` or `denied_values` fields. It can also
770
+ # be used to allow or deny all values, by setting the `all_values` field. If
771
+ # `all_values` is `ALL_VALUES_UNSPECIFIED`, exactly one of `allowed_values`
772
+ # or `denied_values` must be set (attempting to set both or neither will
773
+ # result in a failed request). If `all_values` is set to either `ALLOW` or
774
+ # `DENY`, `allowed_values` and `denied_values` must be unset.
775
+ class ListPolicy
1045
776
  include Google::Apis::Core::Hashable
1046
777
 
1047
- # The status code, which should be an enum value of google.rpc.Code.
1048
- # Corresponds to the JSON property `code`
1049
- # @return [Fixnum]
1050
- attr_accessor :code
1051
-
1052
- # A developer-facing error message, which should be in English. Any
1053
- # user-facing error message should be localized and sent in the
1054
- # google.rpc.Status.details field, or localized by the client.
1055
- # Corresponds to the JSON property `message`
778
+ # The policy all_values state.
779
+ # Corresponds to the JSON property `allValues`
1056
780
  # @return [String]
1057
- attr_accessor :message
1058
-
1059
- # A list of messages that carry the error details. There will be a
1060
- # common set of message types for APIs to use.
1061
- # Corresponds to the JSON property `details`
1062
- # @return [Array<Hash<String,Object>>]
1063
- attr_accessor :details
1064
-
1065
- def initialize(**args)
1066
- update!(**args)
1067
- end
1068
-
1069
- # Update properties of this object
1070
- def update!(**args)
1071
- @code = args[:code] if args.key?(:code)
1072
- @message = args[:message] if args.key?(:message)
1073
- @details = args[:details] if args.key?(:details)
1074
- end
1075
- end
1076
-
1077
- # Associates `members` with a `role`.
1078
- class Binding
1079
- include Google::Apis::Core::Hashable
781
+ attr_accessor :all_values
1080
782
 
1081
- # Specifies the identities requesting access for a Cloud Platform resource.
1082
- # `members` can have the following values:
1083
- # * `allUsers`: A special identifier that represents anyone who is
1084
- # on the internet; with or without a Google account.
1085
- # * `allAuthenticatedUsers`: A special identifier that represents anyone
1086
- # who is authenticated with a Google account or a service account.
1087
- # * `user:`emailid``: An email address that represents a specific Google
1088
- # account. For example, `alice@gmail.com` or `joe@example.com`.
1089
- # * `serviceAccount:`emailid``: An email address that represents a service
1090
- # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1091
- # * `group:`emailid``: An email address that represents a Google group.
1092
- # For example, `admins@example.com`.
1093
- # * `domain:`domain``: A Google Apps domain name that represents all the
1094
- # users of that domain. For example, `google.com` or `example.com`.
1095
- # Corresponds to the JSON property `members`
783
+ # List of values allowed at this resource. Can only be set if no values
784
+ # are set for `denied_values` and `all_values` is set to
785
+ # `ALL_VALUES_UNSPECIFIED`.
786
+ # Corresponds to the JSON property `allowedValues`
1096
787
  # @return [Array<String>]
1097
- attr_accessor :members
1098
-
1099
- # Role that is assigned to `members`.
1100
- # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
1101
- # Required
1102
- # Corresponds to the JSON property `role`
1103
- # @return [String]
1104
- attr_accessor :role
1105
-
1106
- def initialize(**args)
1107
- update!(**args)
1108
- end
1109
-
1110
- # Update properties of this object
1111
- def update!(**args)
1112
- @members = args[:members] if args.key?(:members)
1113
- @role = args[:role] if args.key?(:role)
1114
- end
1115
- end
1116
-
1117
- # Ignores policies set above this resource and restores the
1118
- # `constraint_default` enforcement behavior of the specific `Constraint` at
1119
- # this resource.
1120
- # Suppose that `constraint_default` is set to `ALLOW` for the
1121
- # `Constraint` `constraints/serviceuser.services`. Suppose that organization
1122
- # foo.com sets a `Policy` at their Organization resource node that restricts
1123
- # the allowed service activations to deny all service activations. They
1124
- # could then set a `Policy` with the `policy_type` `restore_default` on
1125
- # several experimental projects, restoring the `constraint_default`
1126
- # enforcement of the `Constraint` for only those projects, allowing those
1127
- # projects to have all services activated.
1128
- class RestoreDefault
1129
- include Google::Apis::Core::Hashable
1130
-
1131
- def initialize(**args)
1132
- update!(**args)
1133
- end
788
+ attr_accessor :allowed_values
1134
789
 
1135
- # Update properties of this object
1136
- def update!(**args)
1137
- end
1138
- end
790
+ # List of values denied at this resource. Can only be set if no values are
791
+ # set for `allowed_values` and `all_values` is set to
792
+ # `ALL_VALUES_UNSPECIFIED`.
793
+ # Corresponds to the JSON property `deniedValues`
794
+ # @return [Array<String>]
795
+ attr_accessor :denied_values
1139
796
 
1140
- # The request sent to the GetOrgPolicy method.
1141
- class GetOrgPolicyRequest
1142
- include Google::Apis::Core::Hashable
797
+ # Determines the inheritance behavior for this `Policy`.
798
+ # By default, a `ListPolicy` set at a resource supercedes any `Policy` set
799
+ # anywhere up the resource hierarchy. However, if `inherit_from_parent` is
800
+ # set to `true`, then the values from the effective `Policy` of the parent
801
+ # resource are inherited, meaning the values set in this `Policy` are
802
+ # added to the values inherited up the hierarchy.
803
+ # Setting `Policy` hierarchies that inherit both allowed values and denied
804
+ # values isn't recommended in most circumstances to keep the configuration
805
+ # simple and understandable. However, it is possible to set a `Policy` with
806
+ # `allowed_values` set that inherits a `Policy` with `denied_values` set.
807
+ # In this case, the values that are allowed must be in `allowed_values` and
808
+ # not present in `denied_values`.
809
+ # For example, suppose you have a `Constraint`
810
+ # `constraints/serviceuser.services`, which has a `constraint_type` of
811
+ # `list_constraint`, and with `constraint_default` set to `ALLOW`.
812
+ # Suppose that at the Organization level, a `Policy` is applied that
813
+ # restricts the allowed API activations to ``E1`, `E2``. Then, if a
814
+ # `Policy` is applied to a project below the Organization that has
815
+ # `inherit_from_parent` set to `false` and field all_values set to DENY,
816
+ # then an attempt to activate any API will be denied.
817
+ # The following examples demonstrate different possible layerings:
818
+ # Example 1 (no inherited values):
819
+ # `organizations/foo` has a `Policy` with values:
820
+ # `allowed_values: “E1” allowed_values:”E2”`
821
+ # ``projects/bar`` has `inherit_from_parent` `false` and values:
822
+ # `allowed_values: "E3" allowed_values: "E4"`
823
+ # The accepted values at `organizations/foo` are `E1`, `E2`.
824
+ # The accepted values at `projects/bar` are `E3`, and `E4`.
825
+ # Example 2 (inherited values):
826
+ # `organizations/foo` has a `Policy` with values:
827
+ # `allowed_values: “E1” allowed_values:”E2”`
828
+ # `projects/bar` has a `Policy` with values:
829
+ # `value: “E3” value: ”E4” inherit_from_parent: true`
830
+ # The accepted values at `organizations/foo` are `E1`, `E2`.
831
+ # The accepted values at `projects/bar` are `E1`, `E2`, `E3`, and `E4`.
832
+ # Example 3 (inheriting both allowed and denied values):
833
+ # `organizations/foo` has a `Policy` with values:
834
+ # `allowed_values: "E1" allowed_values: "E2"`
835
+ # `projects/bar` has a `Policy` with:
836
+ # `denied_values: "E1"`
837
+ # The accepted values at `organizations/foo` are `E1`, `E2`.
838
+ # The value accepted at `projects/bar` is `E2`.
839
+ # Example 4 (RestoreDefault):
840
+ # `organizations/foo` has a `Policy` with values:
841
+ # `allowed_values: “E1” allowed_values:”E2”`
842
+ # `projects/bar` has a `Policy` with values:
843
+ # `RestoreDefault: ```
844
+ # The accepted values at `organizations/foo` are `E1`, `E2`.
845
+ # The accepted values at `projects/bar` are either all or none depending on
846
+ # the value of `constraint_default` (if `ALLOW`, all; if
847
+ # `DENY`, none).
848
+ # Example 5 (no policy inherits parent policy):
849
+ # `organizations/foo` has no `Policy` set.
850
+ # `projects/bar` has no `Policy` set.
851
+ # The accepted values at both levels are either all or none depending on
852
+ # the value of `constraint_default` (if `ALLOW`, all; if
853
+ # `DENY`, none).
854
+ # Example 6 (ListConstraint allowing all):
855
+ # `organizations/foo` has a `Policy` with values:
856
+ # `allowed_values: “E1” allowed_values: ”E2”`
857
+ # `projects/bar` has a `Policy` with:
858
+ # `all: ALLOW`
859
+ # The accepted values at `organizations/foo` are `E1`, E2`.
860
+ # Any value is accepted at `projects/bar`.
861
+ # Example 7 (ListConstraint allowing none):
862
+ # `organizations/foo` has a `Policy` with values:
863
+ # `allowed_values: “E1” allowed_values: ”E2”`
864
+ # `projects/bar` has a `Policy` with:
865
+ # `all: DENY`
866
+ # The accepted values at `organizations/foo` are `E1`, E2`.
867
+ # No value is accepted at `projects/bar`.
868
+ # Corresponds to the JSON property `inheritFromParent`
869
+ # @return [Boolean]
870
+ attr_accessor :inherit_from_parent
871
+ alias_method :inherit_from_parent?, :inherit_from_parent
1143
872
 
1144
- # Name of the `Constraint` to get the `Policy`.
1145
- # Corresponds to the JSON property `constraint`
873
+ # Optional. The Google Cloud Console will try to default to a configuration
874
+ # that matches the value specified in this `Policy`. If `suggested_value`
875
+ # is not set, it will inherit the value specified higher in the hierarchy,
876
+ # unless `inherit_from_parent` is `false`.
877
+ # Corresponds to the JSON property `suggestedValue`
1146
878
  # @return [String]
1147
- attr_accessor :constraint
879
+ attr_accessor :suggested_value
1148
880
 
1149
881
  def initialize(**args)
1150
882
  update!(**args)
@@ -1152,41 +884,40 @@ module Google
1152
884
 
1153
885
  # Update properties of this object
1154
886
  def update!(**args)
1155
- @constraint = args[:constraint] if args.key?(:constraint)
887
+ @all_values = args[:all_values] if args.key?(:all_values)
888
+ @allowed_values = args[:allowed_values] if args.key?(:allowed_values)
889
+ @denied_values = args[:denied_values] if args.key?(:denied_values)
890
+ @inherit_from_parent = args[:inherit_from_parent] if args.key?(:inherit_from_parent)
891
+ @suggested_value = args[:suggested_value] if args.key?(:suggested_value)
1156
892
  end
1157
893
  end
1158
894
 
1159
- # The request sent to the ClearOrgPolicy method.
1160
- class ClearOrgPolicyRequest
895
+ # A page of the response received from the
896
+ # ListProjects
897
+ # method.
898
+ # A paginated response where more pages are available has
899
+ # `next_page_token` set. This token can be used in a subsequent request to
900
+ # retrieve the next request page.
901
+ class ListProjectsResponse
1161
902
  include Google::Apis::Core::Hashable
1162
903
 
1163
- # The current version, for concurrency control. Not sending an `etag`
1164
- # will cause the `Policy` to be cleared blindly.
1165
- # Corresponds to the JSON property `etag`
1166
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
1167
- # @return [String]
1168
- attr_accessor :etag
1169
-
1170
- # Name of the `Constraint` of the `Policy` to clear.
1171
- # Corresponds to the JSON property `constraint`
904
+ # Pagination token.
905
+ # If the result set is too large to fit in a single response, this token
906
+ # is returned. It encodes the position of the current result cursor.
907
+ # Feeding this value into a new list request with the `page_token` parameter
908
+ # gives the next page of the results.
909
+ # When `next_page_token` is not filled in, there is no next page and
910
+ # the list returned is the last page in the result set.
911
+ # Pagination tokens have a limited lifetime.
912
+ # Corresponds to the JSON property `nextPageToken`
1172
913
  # @return [String]
1173
- attr_accessor :constraint
1174
-
1175
- def initialize(**args)
1176
- update!(**args)
1177
- end
1178
-
1179
- # Update properties of this object
1180
- def update!(**args)
1181
- @etag = args[:etag] if args.key?(:etag)
1182
- @constraint = args[:constraint] if args.key?(:constraint)
1183
- end
1184
- end
914
+ attr_accessor :next_page_token
1185
915
 
1186
- # The request sent to the UndeleteProject
1187
- # method.
1188
- class UndeleteProjectRequest
1189
- include Google::Apis::Core::Hashable
916
+ # The list of Projects that matched the list filter. This list can
917
+ # be paginated.
918
+ # Corresponds to the JSON property `projects`
919
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Project>]
920
+ attr_accessor :projects
1190
921
 
1191
922
  def initialize(**args)
1192
923
  update!(**args)
@@ -1194,33 +925,93 @@ module Google
1194
925
 
1195
926
  # Update properties of this object
1196
927
  def update!(**args)
928
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
929
+ @projects = args[:projects] if args.key?(:projects)
1197
930
  end
1198
931
  end
1199
932
 
1200
- # A status object which is used as the `metadata` field for the Operation
1201
- # returned by CreateProject. It provides insight for when significant phases of
1202
- # Project creation have completed.
1203
- class ProjectCreationStatus
933
+ # This resource represents a long-running operation that is the result of a
934
+ # network API call.
935
+ class Operation
1204
936
  include Google::Apis::Core::Hashable
1205
937
 
1206
- # True if the project creation process is complete.
1207
- # Corresponds to the JSON property `ready`
938
+ # If the value is `false`, it means the operation is still in progress.
939
+ # If true, the operation is completed, and either `error` or `response` is
940
+ # available.
941
+ # Corresponds to the JSON property `done`
1208
942
  # @return [Boolean]
1209
- attr_accessor :ready
1210
- alias_method :ready?, :ready
943
+ attr_accessor :done
944
+ alias_method :done?, :done
1211
945
 
1212
- # True if the project can be retrieved using GetProject. No other operations
1213
- # on the project are guaranteed to work until the project creation is
1214
- # complete.
1215
- # Corresponds to the JSON property `gettable`
1216
- # @return [Boolean]
1217
- attr_accessor :gettable
1218
- alias_method :gettable?, :gettable
946
+ # The `Status` type defines a logical error model that is suitable for different
947
+ # programming environments, including REST APIs and RPC APIs. It is used by
948
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
949
+ # - Simple to use and understand for most users
950
+ # - Flexible enough to meet unexpected needs
951
+ # # Overview
952
+ # The `Status` message contains three pieces of data: error code, error message,
953
+ # and error details. The error code should be an enum value of
954
+ # google.rpc.Code, but it may accept additional error codes if needed. The
955
+ # error message should be a developer-facing English message that helps
956
+ # developers *understand* and *resolve* the error. If a localized user-facing
957
+ # error message is needed, put the localized message in the error details or
958
+ # localize it in the client. The optional error details may contain arbitrary
959
+ # information about the error. There is a predefined set of error detail types
960
+ # in the package `google.rpc` that can be used for common error conditions.
961
+ # # Language mapping
962
+ # The `Status` message is the logical representation of the error model, but it
963
+ # is not necessarily the actual wire format. When the `Status` message is
964
+ # exposed in different client libraries and different wire protocols, it can be
965
+ # mapped differently. For example, it will likely be mapped to some exceptions
966
+ # in Java, but more likely mapped to some error codes in C.
967
+ # # Other uses
968
+ # The error model and the `Status` message can be used in a variety of
969
+ # environments, either with or without APIs, to provide a
970
+ # consistent developer experience across different environments.
971
+ # Example uses of this error model include:
972
+ # - Partial errors. If a service needs to return partial errors to the client,
973
+ # it may embed the `Status` in the normal response to indicate the partial
974
+ # errors.
975
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
976
+ # have a `Status` message for error reporting.
977
+ # - Batch operations. If a client uses batch request and batch response, the
978
+ # `Status` message should be used directly inside batch response, one for
979
+ # each error sub-response.
980
+ # - Asynchronous operations. If an API call embeds asynchronous operation
981
+ # results in its response, the status of those operations should be
982
+ # represented directly using the `Status` message.
983
+ # - Logging. If some API errors are stored in logs, the message `Status` could
984
+ # be used directly after any stripping needed for security/privacy reasons.
985
+ # Corresponds to the JSON property `error`
986
+ # @return [Google::Apis::CloudresourcemanagerV1::Status]
987
+ attr_accessor :error
1219
988
 
1220
- # Creation time of the project creation workflow.
1221
- # Corresponds to the JSON property `createTime`
989
+ # Service-specific metadata associated with the operation. It typically
990
+ # contains progress information and common metadata such as create time.
991
+ # Some services might not provide such metadata. Any method that returns a
992
+ # long-running operation should document the metadata type, if any.
993
+ # Corresponds to the JSON property `metadata`
994
+ # @return [Hash<String,Object>]
995
+ attr_accessor :metadata
996
+
997
+ # The server-assigned name, which is only unique within the same service that
998
+ # originally returns it. If you use the default HTTP mapping, the
999
+ # `name` should have the format of `operations/some/unique/name`.
1000
+ # Corresponds to the JSON property `name`
1222
1001
  # @return [String]
1223
- attr_accessor :create_time
1002
+ attr_accessor :name
1003
+
1004
+ # The normal response of the operation in case of success. If the original
1005
+ # method returns no data on success, such as `Delete`, the response is
1006
+ # `google.protobuf.Empty`. If the original method is standard
1007
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
1008
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
1009
+ # is the original method name. For example, if the original method name
1010
+ # is `TakeSnapshot()`, the inferred response type is
1011
+ # `TakeSnapshotResponse`.
1012
+ # Corresponds to the JSON property `response`
1013
+ # @return [Hash<String,Object>]
1014
+ attr_accessor :response
1224
1015
 
1225
1016
  def initialize(**args)
1226
1017
  update!(**args)
@@ -1228,37 +1019,89 @@ module Google
1228
1019
 
1229
1020
  # Update properties of this object
1230
1021
  def update!(**args)
1231
- @ready = args[:ready] if args.key?(:ready)
1232
- @gettable = args[:gettable] if args.key?(:gettable)
1233
- @create_time = args[:create_time] if args.key?(:create_time)
1022
+ @done = args[:done] if args.key?(:done)
1023
+ @error = args[:error] if args.key?(:error)
1024
+ @metadata = args[:metadata] if args.key?(:metadata)
1025
+ @name = args[:name] if args.key?(:name)
1026
+ @response = args[:response] if args.key?(:response)
1234
1027
  end
1235
1028
  end
1236
1029
 
1237
- # A `Constraint` that is either enforced or not.
1238
- # For example a constraint `constraints/compute.disableSerialPortAccess`.
1239
- # If it is enforced on a VM instance, serial port connections will not be
1240
- # opened to that instance.
1241
- class BooleanConstraint
1030
+ # Defines a Cloud Organization `Policy` which is used to specify `Constraints`
1031
+ # for configurations of Cloud Platform resources.
1032
+ class OrgPolicy
1242
1033
  include Google::Apis::Core::Hashable
1243
1034
 
1244
- def initialize(**args)
1245
- update!(**args)
1246
- end
1035
+ # Used in `policy_type` to specify how `boolean_policy` will behave at this
1036
+ # resource.
1037
+ # Corresponds to the JSON property `booleanPolicy`
1038
+ # @return [Google::Apis::CloudresourcemanagerV1::BooleanPolicy]
1039
+ attr_accessor :boolean_policy
1247
1040
 
1248
- # Update properties of this object
1249
- def update!(**args)
1250
- end
1251
- end
1041
+ # The name of the `Constraint` the `Policy` is configuring, for example,
1042
+ # `constraints/serviceuser.services`.
1043
+ # Immutable after creation.
1044
+ # Corresponds to the JSON property `constraint`
1045
+ # @return [String]
1046
+ attr_accessor :constraint
1252
1047
 
1253
- # Response message for `TestIamPermissions` method.
1254
- class TestIamPermissionsResponse
1255
- include Google::Apis::Core::Hashable
1048
+ # An opaque tag indicating the current version of the `Policy`, used for
1049
+ # concurrency control.
1050
+ # When the `Policy` is returned from either a `GetPolicy` or a
1051
+ # `ListOrgPolicy` request, this `etag` indicates the version of the current
1052
+ # `Policy` to use when executing a read-modify-write loop.
1053
+ # When the `Policy` is returned from a `GetEffectivePolicy` request, the
1054
+ # `etag` will be unset.
1055
+ # When the `Policy` is used in a `SetOrgPolicy` method, use the `etag` value
1056
+ # that was returned from a `GetOrgPolicy` request as part of a
1057
+ # read-modify-write loop for concurrency control. Not setting the `etag`in a
1058
+ # `SetOrgPolicy` request will result in an unconditional write of the
1059
+ # `Policy`.
1060
+ # Corresponds to the JSON property `etag`
1061
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1062
+ # @return [String]
1063
+ attr_accessor :etag
1256
1064
 
1257
- # A subset of `TestPermissionsRequest.permissions` that the caller is
1258
- # allowed.
1259
- # Corresponds to the JSON property `permissions`
1260
- # @return [Array<String>]
1261
- attr_accessor :permissions
1065
+ # Used in `policy_type` to specify how `list_policy` behaves at this
1066
+ # resource.
1067
+ # A `ListPolicy` can define specific values that are allowed or denied by
1068
+ # setting either the `allowed_values` or `denied_values` fields. It can also
1069
+ # be used to allow or deny all values, by setting the `all_values` field. If
1070
+ # `all_values` is `ALL_VALUES_UNSPECIFIED`, exactly one of `allowed_values`
1071
+ # or `denied_values` must be set (attempting to set both or neither will
1072
+ # result in a failed request). If `all_values` is set to either `ALLOW` or
1073
+ # `DENY`, `allowed_values` and `denied_values` must be unset.
1074
+ # Corresponds to the JSON property `listPolicy`
1075
+ # @return [Google::Apis::CloudresourcemanagerV1::ListPolicy]
1076
+ attr_accessor :list_policy
1077
+
1078
+ # Ignores policies set above this resource and restores the
1079
+ # `constraint_default` enforcement behavior of the specific `Constraint` at
1080
+ # this resource.
1081
+ # Suppose that `constraint_default` is set to `ALLOW` for the
1082
+ # `Constraint` `constraints/serviceuser.services`. Suppose that organization
1083
+ # foo.com sets a `Policy` at their Organization resource node that restricts
1084
+ # the allowed service activations to deny all service activations. They
1085
+ # could then set a `Policy` with the `policy_type` `restore_default` on
1086
+ # several experimental projects, restoring the `constraint_default`
1087
+ # enforcement of the `Constraint` for only those projects, allowing those
1088
+ # projects to have all services activated.
1089
+ # Corresponds to the JSON property `restoreDefault`
1090
+ # @return [Google::Apis::CloudresourcemanagerV1::RestoreDefault]
1091
+ attr_accessor :restore_default
1092
+
1093
+ # The time stamp the `Policy` was previously updated. This is set by the
1094
+ # server, not specified by the caller, and represents the last time a call to
1095
+ # `SetOrgPolicy` was made for that `Policy`. Any value set by the client will
1096
+ # be ignored.
1097
+ # Corresponds to the JSON property `updateTime`
1098
+ # @return [String]
1099
+ attr_accessor :update_time
1100
+
1101
+ # Version of the `Policy`. Default version is 0;
1102
+ # Corresponds to the JSON property `version`
1103
+ # @return [Fixnum]
1104
+ attr_accessor :version
1262
1105
 
1263
1106
  def initialize(**args)
1264
1107
  update!(**args)
@@ -1266,20 +1109,67 @@ module Google
1266
1109
 
1267
1110
  # Update properties of this object
1268
1111
  def update!(**args)
1269
- @permissions = args[:permissions] if args.key?(:permissions)
1112
+ @boolean_policy = args[:boolean_policy] if args.key?(:boolean_policy)
1113
+ @constraint = args[:constraint] if args.key?(:constraint)
1114
+ @etag = args[:etag] if args.key?(:etag)
1115
+ @list_policy = args[:list_policy] if args.key?(:list_policy)
1116
+ @restore_default = args[:restore_default] if args.key?(:restore_default)
1117
+ @update_time = args[:update_time] if args.key?(:update_time)
1118
+ @version = args[:version] if args.key?(:version)
1270
1119
  end
1271
1120
  end
1272
1121
 
1273
- # Request message for `GetIamPolicy` method.
1274
- class GetIamPolicyRequest
1122
+ # The root node in the resource hierarchy to which a particular entity's
1123
+ # (e.g., company) resources belong.
1124
+ class Organization
1275
1125
  include Google::Apis::Core::Hashable
1276
1126
 
1127
+ # Timestamp when the Organization was created. Assigned by the server.
1128
+ # @OutputOnly
1129
+ # Corresponds to the JSON property `creationTime`
1130
+ # @return [String]
1131
+ attr_accessor :creation_time
1132
+
1133
+ # A friendly string to be used to refer to the Organization in the UI.
1134
+ # Assigned by the server, set to the primary domain of the G Suite
1135
+ # customer that owns the organization.
1136
+ # @OutputOnly
1137
+ # Corresponds to the JSON property `displayName`
1138
+ # @return [String]
1139
+ attr_accessor :display_name
1140
+
1141
+ # The organization's current lifecycle state. Assigned by the server.
1142
+ # @OutputOnly
1143
+ # Corresponds to the JSON property `lifecycleState`
1144
+ # @return [String]
1145
+ attr_accessor :lifecycle_state
1146
+
1147
+ # Output Only. The resource name of the organization. This is the
1148
+ # organization's relative path in the API. Its format is
1149
+ # "organizations/[organization_id]". For example, "organizations/1234".
1150
+ # Corresponds to the JSON property `name`
1151
+ # @return [String]
1152
+ attr_accessor :name
1153
+
1154
+ # The entity that owns an Organization. The lifetime of the Organization and
1155
+ # all of its descendants are bound to the `OrganizationOwner`. If the
1156
+ # `OrganizationOwner` is deleted, the Organization and all its descendants will
1157
+ # be deleted.
1158
+ # Corresponds to the JSON property `owner`
1159
+ # @return [Google::Apis::CloudresourcemanagerV1::OrganizationOwner]
1160
+ attr_accessor :owner
1161
+
1277
1162
  def initialize(**args)
1278
1163
  update!(**args)
1279
1164
  end
1280
1165
 
1281
1166
  # Update properties of this object
1282
1167
  def update!(**args)
1168
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
1169
+ @display_name = args[:display_name] if args.key?(:display_name)
1170
+ @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
1171
+ @name = args[:name] if args.key?(:name)
1172
+ @owner = args[:owner] if args.key?(:owner)
1283
1173
  end
1284
1174
  end
1285
1175
 
@@ -1305,32 +1195,64 @@ module Google
1305
1195
  end
1306
1196
  end
1307
1197
 
1308
- # A page of the response received from the
1309
- # ListProjects
1310
- # method.
1311
- # A paginated response where more pages are available has
1312
- # `next_page_token` set. This token can be used in a subsequent request to
1313
- # retrieve the next request page.
1314
- class ListProjectsResponse
1198
+ # Defines an Identity and Access Management (IAM) policy. It is used to
1199
+ # specify access control policies for Cloud Platform resources.
1200
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
1201
+ # `members` to a `role`, where the members can be user accounts, Google groups,
1202
+ # Google domains, and service accounts. A `role` is a named list of permissions
1203
+ # defined by IAM.
1204
+ # **Example**
1205
+ # `
1206
+ # "bindings": [
1207
+ # `
1208
+ # "role": "roles/owner",
1209
+ # "members": [
1210
+ # "user:mike@example.com",
1211
+ # "group:admins@example.com",
1212
+ # "domain:google.com",
1213
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
1214
+ # ]
1215
+ # `,
1216
+ # `
1217
+ # "role": "roles/viewer",
1218
+ # "members": ["user:sean@example.com"]
1219
+ # `
1220
+ # ]
1221
+ # `
1222
+ # For a description of IAM and its features, see the
1223
+ # [IAM developer's guide](https://cloud.google.com/iam).
1224
+ class Policy
1315
1225
  include Google::Apis::Core::Hashable
1316
1226
 
1317
- # Pagination token.
1318
- # If the result set is too large to fit in a single response, this token
1319
- # is returned. It encodes the position of the current result cursor.
1320
- # Feeding this value into a new list request with the `page_token` parameter
1321
- # gives the next page of the results.
1322
- # When `next_page_token` is not filled in, there is no next page and
1323
- # the list returned is the last page in the result set.
1324
- # Pagination tokens have a limited lifetime.
1325
- # Corresponds to the JSON property `nextPageToken`
1227
+ # Specifies cloud audit logging configuration for this policy.
1228
+ # Corresponds to the JSON property `auditConfigs`
1229
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::AuditConfig>]
1230
+ attr_accessor :audit_configs
1231
+
1232
+ # Associates a list of `members` to a `role`.
1233
+ # `bindings` with no members will result in an error.
1234
+ # Corresponds to the JSON property `bindings`
1235
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Binding>]
1236
+ attr_accessor :bindings
1237
+
1238
+ # `etag` is used for optimistic concurrency control as a way to help
1239
+ # prevent simultaneous updates of a policy from overwriting each other.
1240
+ # It is strongly suggested that systems make use of the `etag` in the
1241
+ # read-modify-write cycle to perform policy updates in order to avoid race
1242
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1243
+ # systems are expected to put that etag in the request to `setIamPolicy` to
1244
+ # ensure that their change will be applied to the same version of the policy.
1245
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
1246
+ # policy is overwritten blindly.
1247
+ # Corresponds to the JSON property `etag`
1248
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1326
1249
  # @return [String]
1327
- attr_accessor :next_page_token
1250
+ attr_accessor :etag
1328
1251
 
1329
- # The list of Projects that matched the list filter. This list can
1330
- # be paginated.
1331
- # Corresponds to the JSON property `projects`
1332
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Project>]
1333
- attr_accessor :projects
1252
+ # Version of the `Policy`. The default version is 0.
1253
+ # Corresponds to the JSON property `version`
1254
+ # @return [Fixnum]
1255
+ attr_accessor :version
1334
1256
 
1335
1257
  def initialize(**args)
1336
1258
  update!(**args)
@@ -1338,16 +1260,44 @@ module Google
1338
1260
 
1339
1261
  # Update properties of this object
1340
1262
  def update!(**args)
1341
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1342
- @projects = args[:projects] if args.key?(:projects)
1263
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
1264
+ @bindings = args[:bindings] if args.key?(:bindings)
1265
+ @etag = args[:etag] if args.key?(:etag)
1266
+ @version = args[:version] if args.key?(:version)
1343
1267
  end
1344
1268
  end
1345
1269
 
1346
- # A Project is a high-level Google Cloud Platform entity. It is a
1347
- # container for ACLs, APIs, App Engine Apps, VMs, and other
1348
- # Google Cloud Platform resources.
1349
- class Project
1350
- include Google::Apis::Core::Hashable
1270
+ # A Project is a high-level Google Cloud Platform entity. It is a
1271
+ # container for ACLs, APIs, App Engine Apps, VMs, and other
1272
+ # Google Cloud Platform resources.
1273
+ class Project
1274
+ include Google::Apis::Core::Hashable
1275
+
1276
+ # Creation time.
1277
+ # Read-only.
1278
+ # Corresponds to the JSON property `createTime`
1279
+ # @return [String]
1280
+ attr_accessor :create_time
1281
+
1282
+ # The labels associated with this Project.
1283
+ # Label keys must be between 1 and 63 characters long and must conform
1284
+ # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
1285
+ # Label values must be between 0 and 63 characters long and must conform
1286
+ # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
1287
+ # No more than 256 labels can be associated with a given resource.
1288
+ # Clients should store labels in a representation such as JSON that does not
1289
+ # depend on specific characters being disallowed.
1290
+ # Example: <code>"environment" : "dev"</code>
1291
+ # Read-write.
1292
+ # Corresponds to the JSON property `labels`
1293
+ # @return [Hash<String,String>]
1294
+ attr_accessor :labels
1295
+
1296
+ # The Project lifecycle state.
1297
+ # Read-only.
1298
+ # Corresponds to the JSON property `lifecycleState`
1299
+ # @return [String]
1300
+ attr_accessor :lifecycle_state
1351
1301
 
1352
1302
  # The user-assigned display name of the Project.
1353
1303
  # It must be 4 to 30 characters.
@@ -1359,6 +1309,14 @@ module Google
1359
1309
  # @return [String]
1360
1310
  attr_accessor :name
1361
1311
 
1312
+ # A container to reference an id for any resource type. A `resource` in Google
1313
+ # Cloud Platform is a generic term for something you (a developer) may want to
1314
+ # interact with through one of our API's. Some examples are an App Engine app,
1315
+ # a Compute Engine instance, a Cloud SQL database, and so on.
1316
+ # Corresponds to the JSON property `parent`
1317
+ # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
1318
+ attr_accessor :parent
1319
+
1362
1320
  # The unique, user-assigned ID of the Project.
1363
1321
  # It must be 6 to 30 lowercase letters, digits, or hyphens.
1364
1322
  # It must start with a letter.
@@ -1369,12 +1327,6 @@ module Google
1369
1327
  # @return [String]
1370
1328
  attr_accessor :project_id
1371
1329
 
1372
- # The Project lifecycle state.
1373
- # Read-only.
1374
- # Corresponds to the JSON property `lifecycleState`
1375
- # @return [String]
1376
- attr_accessor :lifecycle_state
1377
-
1378
1330
  # The number uniquely identifying the project.
1379
1331
  # Example: <code>415104041262</code>
1380
1332
  # Read-only.
@@ -1382,66 +1334,77 @@ module Google
1382
1334
  # @return [Fixnum]
1383
1335
  attr_accessor :project_number
1384
1336
 
1385
- # A container to reference an id for any resource type. A `resource` in Google
1386
- # Cloud Platform is a generic term for something you (a developer) may want to
1387
- # interact with through one of our API's. Some examples are an App Engine app,
1388
- # a Compute Engine instance, a Cloud SQL database, and so on.
1389
- # Corresponds to the JSON property `parent`
1390
- # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
1391
- attr_accessor :parent
1337
+ def initialize(**args)
1338
+ update!(**args)
1339
+ end
1392
1340
 
1393
- # The labels associated with this Project.
1394
- # Label keys must be between 1 and 63 characters long and must conform
1395
- # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
1396
- # Label values must be between 0 and 63 characters long and must conform
1397
- # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
1398
- # No more than 256 labels can be associated with a given resource.
1399
- # Clients should store labels in a representation such as JSON that does not
1400
- # depend on specific characters being disallowed.
1401
- # Example: <code>"environment" : "dev"</code>
1402
- # Read-write.
1403
- # Corresponds to the JSON property `labels`
1404
- # @return [Hash<String,String>]
1405
- attr_accessor :labels
1341
+ # Update properties of this object
1342
+ def update!(**args)
1343
+ @create_time = args[:create_time] if args.key?(:create_time)
1344
+ @labels = args[:labels] if args.key?(:labels)
1345
+ @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
1346
+ @name = args[:name] if args.key?(:name)
1347
+ @parent = args[:parent] if args.key?(:parent)
1348
+ @project_id = args[:project_id] if args.key?(:project_id)
1349
+ @project_number = args[:project_number] if args.key?(:project_number)
1350
+ end
1351
+ end
1406
1352
 
1407
- # Creation time.
1408
- # Read-only.
1353
+ # A status object which is used as the `metadata` field for the Operation
1354
+ # returned by CreateProject. It provides insight for when significant phases of
1355
+ # Project creation have completed.
1356
+ class ProjectCreationStatus
1357
+ include Google::Apis::Core::Hashable
1358
+
1359
+ # Creation time of the project creation workflow.
1409
1360
  # Corresponds to the JSON property `createTime`
1410
1361
  # @return [String]
1411
1362
  attr_accessor :create_time
1412
1363
 
1364
+ # True if the project can be retrieved using GetProject. No other operations
1365
+ # on the project are guaranteed to work until the project creation is
1366
+ # complete.
1367
+ # Corresponds to the JSON property `gettable`
1368
+ # @return [Boolean]
1369
+ attr_accessor :gettable
1370
+ alias_method :gettable?, :gettable
1371
+
1372
+ # True if the project creation process is complete.
1373
+ # Corresponds to the JSON property `ready`
1374
+ # @return [Boolean]
1375
+ attr_accessor :ready
1376
+ alias_method :ready?, :ready
1377
+
1413
1378
  def initialize(**args)
1414
1379
  update!(**args)
1415
1380
  end
1416
1381
 
1417
1382
  # Update properties of this object
1418
1383
  def update!(**args)
1419
- @name = args[:name] if args.key?(:name)
1420
- @project_id = args[:project_id] if args.key?(:project_id)
1421
- @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
1422
- @project_number = args[:project_number] if args.key?(:project_number)
1423
- @parent = args[:parent] if args.key?(:parent)
1424
- @labels = args[:labels] if args.key?(:labels)
1425
1384
  @create_time = args[:create_time] if args.key?(:create_time)
1385
+ @gettable = args[:gettable] if args.key?(:gettable)
1386
+ @ready = args[:ready] if args.key?(:ready)
1426
1387
  end
1427
1388
  end
1428
1389
 
1429
- # The response returned from the ListOrgPolicies method. It will be empty
1430
- # if no `Policies` are set on the resource.
1431
- class ListOrgPoliciesResponse
1390
+ # A container to reference an id for any resource type. A `resource` in Google
1391
+ # Cloud Platform is a generic term for something you (a developer) may want to
1392
+ # interact with through one of our API's. Some examples are an App Engine app,
1393
+ # a Compute Engine instance, a Cloud SQL database, and so on.
1394
+ class ResourceId
1432
1395
  include Google::Apis::Core::Hashable
1433
1396
 
1434
- # The `Policies` that are set on the resource. It will be empty if no
1435
- # `Policies` are set.
1436
- # Corresponds to the JSON property `policies`
1437
- # @return [Array<Google::Apis::CloudresourcemanagerV1::OrgPolicy>]
1438
- attr_accessor :policies
1397
+ # Required field for the type-specific id. This should correspond to the id
1398
+ # used in the type-specific API's.
1399
+ # Corresponds to the JSON property `id`
1400
+ # @return [String]
1401
+ attr_accessor :id
1439
1402
 
1440
- # Page token used to retrieve the next page. This is currently not used, but
1441
- # the server may at any point start supplying a valid token.
1442
- # Corresponds to the JSON property `nextPageToken`
1403
+ # Required field representing the resource type this id is for.
1404
+ # At present, the valid types are: "organization"
1405
+ # Corresponds to the JSON property `type`
1443
1406
  # @return [String]
1444
- attr_accessor :next_page_token
1407
+ attr_accessor :type
1445
1408
 
1446
1409
  def initialize(**args)
1447
1410
  update!(**args)
@@ -1449,8 +1412,74 @@ module Google
1449
1412
 
1450
1413
  # Update properties of this object
1451
1414
  def update!(**args)
1452
- @policies = args[:policies] if args.key?(:policies)
1453
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1415
+ @id = args[:id] if args.key?(:id)
1416
+ @type = args[:type] if args.key?(:type)
1417
+ end
1418
+ end
1419
+
1420
+ # Ignores policies set above this resource and restores the
1421
+ # `constraint_default` enforcement behavior of the specific `Constraint` at
1422
+ # this resource.
1423
+ # Suppose that `constraint_default` is set to `ALLOW` for the
1424
+ # `Constraint` `constraints/serviceuser.services`. Suppose that organization
1425
+ # foo.com sets a `Policy` at their Organization resource node that restricts
1426
+ # the allowed service activations to deny all service activations. They
1427
+ # could then set a `Policy` with the `policy_type` `restore_default` on
1428
+ # several experimental projects, restoring the `constraint_default`
1429
+ # enforcement of the `Constraint` for only those projects, allowing those
1430
+ # projects to have all services activated.
1431
+ class RestoreDefault
1432
+ include Google::Apis::Core::Hashable
1433
+
1434
+ def initialize(**args)
1435
+ update!(**args)
1436
+ end
1437
+
1438
+ # Update properties of this object
1439
+ def update!(**args)
1440
+ end
1441
+ end
1442
+
1443
+ # The request sent to the `SearchOrganizations` method.
1444
+ class SearchOrganizationsRequest
1445
+ include Google::Apis::Core::Hashable
1446
+
1447
+ # An optional query string used to filter the Organizations to return in
1448
+ # the response. Filter rules are case-insensitive.
1449
+ # Organizations may be filtered by `owner.directoryCustomerId` or by
1450
+ # `domain`, where the domain is a Google for Work domain, for example:
1451
+ # |Filter|Description|
1452
+ # |------|-----------|
1453
+ # |owner.directorycustomerid:123456789|Organizations with
1454
+ # `owner.directory_customer_id` equal to `123456789`.|
1455
+ # |domain:google.com|Organizations corresponding to the domain `google.com`.|
1456
+ # This field is optional.
1457
+ # Corresponds to the JSON property `filter`
1458
+ # @return [String]
1459
+ attr_accessor :filter
1460
+
1461
+ # The maximum number of Organizations to return in the response.
1462
+ # This field is optional.
1463
+ # Corresponds to the JSON property `pageSize`
1464
+ # @return [Fixnum]
1465
+ attr_accessor :page_size
1466
+
1467
+ # A pagination token returned from a previous call to `SearchOrganizations`
1468
+ # that indicates from where listing should continue.
1469
+ # This field is optional.
1470
+ # Corresponds to the JSON property `pageToken`
1471
+ # @return [String]
1472
+ attr_accessor :page_token
1473
+
1474
+ def initialize(**args)
1475
+ update!(**args)
1476
+ end
1477
+
1478
+ # Update properties of this object
1479
+ def update!(**args)
1480
+ @filter = args[:filter] if args.key?(:filter)
1481
+ @page_size = args[:page_size] if args.key?(:page_size)
1482
+ @page_token = args[:page_token] if args.key?(:page_token)
1454
1483
  end
1455
1484
  end
1456
1485
 
@@ -1484,14 +1513,69 @@ module Google
1484
1513
  end
1485
1514
  end
1486
1515
 
1487
- # A classification of the Folder Operation error.
1488
- class FolderOperationError
1516
+ # Request message for `SetIamPolicy` method.
1517
+ class SetIamPolicyRequest
1489
1518
  include Google::Apis::Core::Hashable
1490
1519
 
1491
- # The type of operation error experienced.
1492
- # Corresponds to the JSON property `errorMessageId`
1520
+ # Defines an Identity and Access Management (IAM) policy. It is used to
1521
+ # specify access control policies for Cloud Platform resources.
1522
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
1523
+ # `members` to a `role`, where the members can be user accounts, Google groups,
1524
+ # Google domains, and service accounts. A `role` is a named list of permissions
1525
+ # defined by IAM.
1526
+ # **Example**
1527
+ # `
1528
+ # "bindings": [
1529
+ # `
1530
+ # "role": "roles/owner",
1531
+ # "members": [
1532
+ # "user:mike@example.com",
1533
+ # "group:admins@example.com",
1534
+ # "domain:google.com",
1535
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
1536
+ # ]
1537
+ # `,
1538
+ # `
1539
+ # "role": "roles/viewer",
1540
+ # "members": ["user:sean@example.com"]
1541
+ # `
1542
+ # ]
1543
+ # `
1544
+ # For a description of IAM and its features, see the
1545
+ # [IAM developer's guide](https://cloud.google.com/iam).
1546
+ # Corresponds to the JSON property `policy`
1547
+ # @return [Google::Apis::CloudresourcemanagerV1::Policy]
1548
+ attr_accessor :policy
1549
+
1550
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
1551
+ # the fields in the mask will be modified. If no mask is provided, the
1552
+ # following default mask is used:
1553
+ # paths: "bindings, etag"
1554
+ # This field is only used by Cloud IAM.
1555
+ # Corresponds to the JSON property `updateMask`
1493
1556
  # @return [String]
1494
- attr_accessor :error_message_id
1557
+ attr_accessor :update_mask
1558
+
1559
+ def initialize(**args)
1560
+ update!(**args)
1561
+ end
1562
+
1563
+ # Update properties of this object
1564
+ def update!(**args)
1565
+ @policy = args[:policy] if args.key?(:policy)
1566
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
1567
+ end
1568
+ end
1569
+
1570
+ # The request sent to the SetOrgPolicyRequest method.
1571
+ class SetOrgPolicyRequest
1572
+ include Google::Apis::Core::Hashable
1573
+
1574
+ # Defines a Cloud Organization `Policy` which is used to specify `Constraints`
1575
+ # for configurations of Cloud Platform resources.
1576
+ # Corresponds to the JSON property `policy`
1577
+ # @return [Google::Apis::CloudresourcemanagerV1::OrgPolicy]
1578
+ attr_accessor :policy
1495
1579
 
1496
1580
  def initialize(**args)
1497
1581
  update!(**args)
@@ -1499,85 +1583,69 @@ module Google
1499
1583
 
1500
1584
  # Update properties of this object
1501
1585
  def update!(**args)
1502
- @error_message_id = args[:error_message_id] if args.key?(:error_message_id)
1586
+ @policy = args[:policy] if args.key?(:policy)
1503
1587
  end
1504
1588
  end
1505
1589
 
1506
- # Defines a Cloud Organization `Policy` which is used to specify `Constraints`
1507
- # for configurations of Cloud Platform resources.
1508
- class OrgPolicy
1590
+ # The `Status` type defines a logical error model that is suitable for different
1591
+ # programming environments, including REST APIs and RPC APIs. It is used by
1592
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
1593
+ # - Simple to use and understand for most users
1594
+ # - Flexible enough to meet unexpected needs
1595
+ # # Overview
1596
+ # The `Status` message contains three pieces of data: error code, error message,
1597
+ # and error details. The error code should be an enum value of
1598
+ # google.rpc.Code, but it may accept additional error codes if needed. The
1599
+ # error message should be a developer-facing English message that helps
1600
+ # developers *understand* and *resolve* the error. If a localized user-facing
1601
+ # error message is needed, put the localized message in the error details or
1602
+ # localize it in the client. The optional error details may contain arbitrary
1603
+ # information about the error. There is a predefined set of error detail types
1604
+ # in the package `google.rpc` that can be used for common error conditions.
1605
+ # # Language mapping
1606
+ # The `Status` message is the logical representation of the error model, but it
1607
+ # is not necessarily the actual wire format. When the `Status` message is
1608
+ # exposed in different client libraries and different wire protocols, it can be
1609
+ # mapped differently. For example, it will likely be mapped to some exceptions
1610
+ # in Java, but more likely mapped to some error codes in C.
1611
+ # # Other uses
1612
+ # The error model and the `Status` message can be used in a variety of
1613
+ # environments, either with or without APIs, to provide a
1614
+ # consistent developer experience across different environments.
1615
+ # Example uses of this error model include:
1616
+ # - Partial errors. If a service needs to return partial errors to the client,
1617
+ # it may embed the `Status` in the normal response to indicate the partial
1618
+ # errors.
1619
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
1620
+ # have a `Status` message for error reporting.
1621
+ # - Batch operations. If a client uses batch request and batch response, the
1622
+ # `Status` message should be used directly inside batch response, one for
1623
+ # each error sub-response.
1624
+ # - Asynchronous operations. If an API call embeds asynchronous operation
1625
+ # results in its response, the status of those operations should be
1626
+ # represented directly using the `Status` message.
1627
+ # - Logging. If some API errors are stored in logs, the message `Status` could
1628
+ # be used directly after any stripping needed for security/privacy reasons.
1629
+ class Status
1509
1630
  include Google::Apis::Core::Hashable
1510
1631
 
1511
- # The time stamp the `Policy` was previously updated. This is set by the
1512
- # server, not specified by the caller, and represents the last time a call to
1513
- # `SetOrgPolicy` was made for that `Policy`. Any value set by the client will
1514
- # be ignored.
1515
- # Corresponds to the JSON property `updateTime`
1516
- # @return [String]
1517
- attr_accessor :update_time
1518
-
1519
- # Version of the `Policy`. Default version is 0;
1520
- # Corresponds to the JSON property `version`
1632
+ # The status code, which should be an enum value of google.rpc.Code.
1633
+ # Corresponds to the JSON property `code`
1521
1634
  # @return [Fixnum]
1522
- attr_accessor :version
1523
-
1524
- # Ignores policies set above this resource and restores the
1525
- # `constraint_default` enforcement behavior of the specific `Constraint` at
1526
- # this resource.
1527
- # Suppose that `constraint_default` is set to `ALLOW` for the
1528
- # `Constraint` `constraints/serviceuser.services`. Suppose that organization
1529
- # foo.com sets a `Policy` at their Organization resource node that restricts
1530
- # the allowed service activations to deny all service activations. They
1531
- # could then set a `Policy` with the `policy_type` `restore_default` on
1532
- # several experimental projects, restoring the `constraint_default`
1533
- # enforcement of the `Constraint` for only those projects, allowing those
1534
- # projects to have all services activated.
1535
- # Corresponds to the JSON property `restoreDefault`
1536
- # @return [Google::Apis::CloudresourcemanagerV1::RestoreDefault]
1537
- attr_accessor :restore_default
1538
-
1539
- # Used in `policy_type` to specify how `list_policy` behaves at this
1540
- # resource.
1541
- # A `ListPolicy` can define specific values that are allowed or denied by
1542
- # setting either the `allowed_values` or `denied_values` fields. It can also
1543
- # be used to allow or deny all values, by setting the `all_values` field. If
1544
- # `all_values` is `ALL_VALUES_UNSPECIFIED`, exactly one of `allowed_values`
1545
- # or `denied_values` must be set (attempting to set both or neither will
1546
- # result in a failed request). If `all_values` is set to either `ALLOW` or
1547
- # `DENY`, `allowed_values` and `denied_values` must be unset.
1548
- # Corresponds to the JSON property `listPolicy`
1549
- # @return [Google::Apis::CloudresourcemanagerV1::ListPolicy]
1550
- attr_accessor :list_policy
1635
+ attr_accessor :code
1551
1636
 
1552
- # An opaque tag indicating the current version of the `Policy`, used for
1553
- # concurrency control.
1554
- # When the `Policy` is returned from either a `GetPolicy` or a
1555
- # `ListOrgPolicy` request, this `etag` indicates the version of the current
1556
- # `Policy` to use when executing a read-modify-write loop.
1557
- # When the `Policy` is returned from a `GetEffectivePolicy` request, the
1558
- # `etag` will be unset.
1559
- # When the `Policy` is used in a `SetOrgPolicy` method, use the `etag` value
1560
- # that was returned from a `GetOrgPolicy` request as part of a
1561
- # read-modify-write loop for concurrency control. Not setting the `etag`in a
1562
- # `SetOrgPolicy` request will result in an unconditional write of the
1563
- # `Policy`.
1564
- # Corresponds to the JSON property `etag`
1565
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
1566
- # @return [String]
1567
- attr_accessor :etag
1637
+ # A list of messages that carry the error details. There is a common set of
1638
+ # message types for APIs to use.
1639
+ # Corresponds to the JSON property `details`
1640
+ # @return [Array<Hash<String,Object>>]
1641
+ attr_accessor :details
1568
1642
 
1569
- # The name of the `Constraint` the `Policy` is configuring, for example,
1570
- # `constraints/serviceuser.services`.
1571
- # Immutable after creation.
1572
- # Corresponds to the JSON property `constraint`
1643
+ # A developer-facing error message, which should be in English. Any
1644
+ # user-facing error message should be localized and sent in the
1645
+ # google.rpc.Status.details field, or localized by the client.
1646
+ # Corresponds to the JSON property `message`
1573
1647
  # @return [String]
1574
- attr_accessor :constraint
1575
-
1576
- # Used in `policy_type` to specify how `boolean_policy` will behave at this
1577
- # resource.
1578
- # Corresponds to the JSON property `booleanPolicy`
1579
- # @return [Google::Apis::CloudresourcemanagerV1::BooleanPolicy]
1580
- attr_accessor :boolean_policy
1648
+ attr_accessor :message
1581
1649
 
1582
1650
  def initialize(**args)
1583
1651
  update!(**args)
@@ -1585,63 +1653,23 @@ module Google
1585
1653
 
1586
1654
  # Update properties of this object
1587
1655
  def update!(**args)
1588
- @update_time = args[:update_time] if args.key?(:update_time)
1589
- @version = args[:version] if args.key?(:version)
1590
- @restore_default = args[:restore_default] if args.key?(:restore_default)
1591
- @list_policy = args[:list_policy] if args.key?(:list_policy)
1592
- @etag = args[:etag] if args.key?(:etag)
1593
- @constraint = args[:constraint] if args.key?(:constraint)
1594
- @boolean_policy = args[:boolean_policy] if args.key?(:boolean_policy)
1656
+ @code = args[:code] if args.key?(:code)
1657
+ @details = args[:details] if args.key?(:details)
1658
+ @message = args[:message] if args.key?(:message)
1595
1659
  end
1596
1660
  end
1597
1661
 
1598
- # Used in `policy_type` to specify how `boolean_policy` will behave at this
1599
- # resource.
1600
- class BooleanPolicy
1662
+ # Request message for `TestIamPermissions` method.
1663
+ class TestIamPermissionsRequest
1601
1664
  include Google::Apis::Core::Hashable
1602
1665
 
1603
- # If `true`, then the `Policy` is enforced. If `false`, then any
1604
- # configuration is acceptable.
1605
- # Suppose you have a `Constraint` `constraints/compute.disableSerialPortAccess`
1606
- # with `constraint_default` set to `ALLOW`. A `Policy` for that
1607
- # `Constraint` exhibits the following behavior:
1608
- # - If the `Policy` at this resource has enforced set to `false`, serial
1609
- # port connection attempts will be allowed.
1610
- # - If the `Policy` at this resource has enforced set to `true`, serial
1611
- # port connection attempts will be refused.
1612
- # - If the `Policy` at this resource is `RestoreDefault`, serial port
1613
- # connection attempts will be allowed.
1614
- # - If no `Policy` is set at this resource or anywhere higher in the
1615
- # resource hierarchy, serial port connection attempts will be allowed.
1616
- # - If no `Policy` is set at this resource, but one exists higher in the
1617
- # resource hierarchy, the behavior is as if the`Policy` were set at
1618
- # this resource.
1619
- # The following examples demonstrate the different possible layerings:
1620
- # Example 1 (nearest `Constraint` wins):
1621
- # `organizations/foo` has a `Policy` with:
1622
- # `enforced: false`
1623
- # `projects/bar` has no `Policy` set.
1624
- # The constraint at `projects/bar` and `organizations/foo` will not be
1625
- # enforced.
1626
- # Example 2 (enforcement gets replaced):
1627
- # `organizations/foo` has a `Policy` with:
1628
- # `enforced: false`
1629
- # `projects/bar` has a `Policy` with:
1630
- # `enforced: true`
1631
- # The constraint at `organizations/foo` is not enforced.
1632
- # The constraint at `projects/bar` is enforced.
1633
- # Example 3 (RestoreDefault):
1634
- # `organizations/foo` has a `Policy` with:
1635
- # `enforced: true`
1636
- # `projects/bar` has a `Policy` with:
1637
- # `RestoreDefault: ```
1638
- # The constraint at `organizations/foo` is enforced.
1639
- # The constraint at `projects/bar` is not enforced, because
1640
- # `constraint_default` for the `Constraint` is `ALLOW`.
1641
- # Corresponds to the JSON property `enforced`
1642
- # @return [Boolean]
1643
- attr_accessor :enforced
1644
- alias_method :enforced?, :enforced
1666
+ # The set of permissions to check for the `resource`. Permissions with
1667
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
1668
+ # information see
1669
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
1670
+ # Corresponds to the JSON property `permissions`
1671
+ # @return [Array<String>]
1672
+ attr_accessor :permissions
1645
1673
 
1646
1674
  def initialize(**args)
1647
1675
  update!(**args)
@@ -1649,56 +1677,34 @@ module Google
1649
1677
 
1650
1678
  # Update properties of this object
1651
1679
  def update!(**args)
1652
- @enforced = args[:enforced] if args.key?(:enforced)
1680
+ @permissions = args[:permissions] if args.key?(:permissions)
1653
1681
  end
1654
1682
  end
1655
1683
 
1656
- # A Lien represents an encumbrance on the actions that can be performed on a
1657
- # resource.
1658
- class Lien
1684
+ # Response message for `TestIamPermissions` method.
1685
+ class TestIamPermissionsResponse
1659
1686
  include Google::Apis::Core::Hashable
1660
1687
 
1661
- # A system-generated unique identifier for this Lien.
1662
- # Example: `liens/1234abcd`
1663
- # Corresponds to the JSON property `name`
1664
- # @return [String]
1665
- attr_accessor :name
1666
-
1667
- # Concise user-visible strings indicating why an action cannot be performed
1668
- # on a resource. Maximum lenth of 200 characters.
1669
- # Example: 'Holds production API key'
1670
- # Corresponds to the JSON property `reason`
1671
- # @return [String]
1672
- attr_accessor :reason
1673
-
1674
- # A stable, user-visible/meaningful string identifying the origin of the
1675
- # Lien, intended to be inspected programmatically. Maximum length of 200
1676
- # characters.
1677
- # Example: 'compute.googleapis.com'
1678
- # Corresponds to the JSON property `origin`
1679
- # @return [String]
1680
- attr_accessor :origin
1681
-
1682
- # The types of operations which should be blocked as a result of this Lien.
1683
- # Each value should correspond to an IAM permission. The server will
1684
- # validate the permissions against those for which Liens are supported.
1685
- # An empty list is meaningless and will be rejected.
1686
- # Example: ['resourcemanager.projects.delete']
1687
- # Corresponds to the JSON property `restrictions`
1688
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
1689
+ # allowed.
1690
+ # Corresponds to the JSON property `permissions`
1688
1691
  # @return [Array<String>]
1689
- attr_accessor :restrictions
1692
+ attr_accessor :permissions
1690
1693
 
1691
- # A reference to the resource this Lien is attached to. The server will
1692
- # validate the parent against those for which Liens are supported.
1693
- # Example: `projects/1234`
1694
- # Corresponds to the JSON property `parent`
1695
- # @return [String]
1696
- attr_accessor :parent
1694
+ def initialize(**args)
1695
+ update!(**args)
1696
+ end
1697
1697
 
1698
- # The creation time of this Lien.
1699
- # Corresponds to the JSON property `createTime`
1700
- # @return [String]
1701
- attr_accessor :create_time
1698
+ # Update properties of this object
1699
+ def update!(**args)
1700
+ @permissions = args[:permissions] if args.key?(:permissions)
1701
+ end
1702
+ end
1703
+
1704
+ # The request sent to the UndeleteProject
1705
+ # method.
1706
+ class UndeleteProjectRequest
1707
+ include Google::Apis::Core::Hashable
1702
1708
 
1703
1709
  def initialize(**args)
1704
1710
  update!(**args)
@@ -1706,12 +1712,6 @@ module Google
1706
1712
 
1707
1713
  # Update properties of this object
1708
1714
  def update!(**args)
1709
- @name = args[:name] if args.key?(:name)
1710
- @reason = args[:reason] if args.key?(:reason)
1711
- @origin = args[:origin] if args.key?(:origin)
1712
- @restrictions = args[:restrictions] if args.key?(:restrictions)
1713
- @parent = args[:parent] if args.key?(:parent)
1714
- @create_time = args[:create_time] if args.key?(:create_time)
1715
1715
  end
1716
1716
  end
1717
1717
  end