google-api-client 0.47.0 → 0.52.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (605) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/release-please.yml +57 -0
  3. data/CHANGELOG.md +466 -0
  4. data/README.md +2 -2
  5. data/generated/google/apis/accessapproval_v1.rb +1 -1
  6. data/generated/google/apis/accessapproval_v1/service.rb +12 -9
  7. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +50 -6
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +18 -0
  10. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +3 -1
  11. data/generated/google/apis/admin_datatransfer_v1.rb +2 -2
  12. data/generated/google/apis/admin_datatransfer_v1/classes.rb +6 -16
  13. data/generated/google/apis/admin_datatransfer_v1/service.rb +3 -3
  14. data/generated/google/apis/admin_directory_v1.rb +2 -2
  15. data/generated/google/apis/admin_directory_v1/classes.rb +453 -321
  16. data/generated/google/apis/admin_directory_v1/representations.rb +15 -15
  17. data/generated/google/apis/admin_directory_v1/service.rb +323 -183
  18. data/generated/google/apis/admin_reports_v1.rb +2 -2
  19. data/generated/google/apis/admin_reports_v1/classes.rb +48 -43
  20. data/generated/google/apis/admin_reports_v1/service.rb +198 -179
  21. data/generated/google/apis/admob_v1.rb +4 -1
  22. data/generated/google/apis/admob_v1/service.rb +4 -0
  23. data/generated/google/apis/admob_v1beta.rb +38 -0
  24. data/generated/google/apis/admob_v1beta/classes.rb +1035 -0
  25. data/generated/google/apis/admob_v1beta/representations.rb +472 -0
  26. data/generated/google/apis/admob_v1beta/service.rb +279 -0
  27. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  28. data/generated/google/apis/analytics_v3/service.rb +1 -1
  29. data/generated/google/apis/analyticsadmin_v1alpha.rb +1 -1
  30. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +11 -10
  31. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +33 -24
  32. data/generated/google/apis/analyticsdata_v1alpha.rb +2 -2
  33. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +243 -63
  34. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +52 -14
  35. data/generated/google/apis/analyticsdata_v1alpha/service.rb +43 -34
  36. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  37. data/generated/google/apis/androidenterprise_v1/classes.rb +6 -0
  38. data/generated/google/apis/androidenterprise_v1/representations.rb +1 -0
  39. data/generated/google/apis/androidenterprise_v1/service.rb +4 -1
  40. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  41. data/generated/google/apis/androidmanagement_v1/classes.rb +69 -4
  42. data/generated/google/apis/androidmanagement_v1/representations.rb +19 -0
  43. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  44. data/generated/google/apis/androidpublisher_v3/service.rb +4 -4
  45. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  46. data/generated/google/apis/apigateway_v1beta/classes.rb +5 -8
  47. data/generated/google/apis/apigee_v1.rb +1 -1
  48. data/generated/google/apis/apigee_v1/classes.rb +433 -84
  49. data/generated/google/apis/apigee_v1/representations.rb +150 -0
  50. data/generated/google/apis/apigee_v1/service.rb +926 -110
  51. data/generated/google/apis/appengine_v1.rb +1 -1
  52. data/generated/google/apis/appengine_v1/classes.rb +7 -0
  53. data/generated/google/apis/appengine_v1/representations.rb +1 -0
  54. data/generated/google/apis/appengine_v1beta.rb +1 -1
  55. data/generated/google/apis/appengine_v1beta/classes.rb +8 -0
  56. data/generated/google/apis/appengine_v1beta/representations.rb +1 -0
  57. data/generated/google/apis/area120tables_v1alpha1.rb +4 -1
  58. data/generated/google/apis/area120tables_v1alpha1/classes.rb +58 -0
  59. data/generated/google/apis/area120tables_v1alpha1/representations.rb +31 -0
  60. data/generated/google/apis/area120tables_v1alpha1/service.rb +67 -0
  61. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  62. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +2 -9
  63. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +0 -1
  64. data/generated/google/apis/artifactregistry_v1beta1/service.rb +4 -1
  65. data/generated/google/apis/artifactregistry_v1beta2.rb +38 -0
  66. data/generated/google/apis/artifactregistry_v1beta2/classes.rb +1037 -0
  67. data/generated/google/apis/artifactregistry_v1beta2/representations.rb +443 -0
  68. data/generated/google/apis/artifactregistry_v1beta2/service.rb +947 -0
  69. data/generated/google/apis/{assuredworkloads_v1beta1.rb → assuredworkloads_v1.rb} +6 -6
  70. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/classes.rb +69 -137
  71. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/representations.rb +29 -87
  72. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/service.rb +46 -46
  73. data/generated/google/apis/bigquery_v2.rb +1 -1
  74. data/generated/google/apis/bigquery_v2/classes.rb +6 -0
  75. data/generated/google/apis/bigquery_v2/representations.rb +1 -0
  76. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  77. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -0
  78. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +1 -0
  79. data/generated/google/apis/billingbudgets_v1.rb +1 -1
  80. data/generated/google/apis/billingbudgets_v1/classes.rb +11 -0
  81. data/generated/google/apis/billingbudgets_v1/representations.rb +1 -0
  82. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  83. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +11 -0
  84. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  85. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  86. data/generated/google/apis/binaryauthorization_v1/classes.rb +0 -7
  87. data/generated/google/apis/binaryauthorization_v1/representations.rb +0 -1
  88. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  89. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +2 -8
  90. data/generated/google/apis/binaryauthorization_v1beta1/representations.rb +0 -1
  91. data/generated/google/apis/calendar_v3.rb +1 -1
  92. data/generated/google/apis/calendar_v3/classes.rb +2 -2
  93. data/generated/google/apis/chat_v1.rb +1 -1
  94. data/generated/google/apis/chat_v1/classes.rb +1 -2
  95. data/generated/google/apis/chat_v1/service.rb +176 -0
  96. data/generated/google/apis/cloudasset_v1.rb +1 -1
  97. data/generated/google/apis/cloudasset_v1/classes.rb +1125 -0
  98. data/generated/google/apis/cloudasset_v1/representations.rb +474 -0
  99. data/generated/google/apis/cloudasset_v1/service.rb +171 -0
  100. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  101. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  102. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  103. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  104. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  105. data/generated/google/apis/cloudbuild_v1/classes.rb +1 -1
  106. data/generated/google/apis/cloudbuild_v1/service.rb +1 -1
  107. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  108. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  109. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  110. data/generated/google/apis/cloudfunctions_v1/classes.rb +6 -0
  111. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  112. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  113. data/generated/google/apis/cloudidentity_v1/classes.rb +240 -0
  114. data/generated/google/apis/cloudidentity_v1/representations.rb +125 -0
  115. data/generated/google/apis/cloudidentity_v1/service.rb +217 -9
  116. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  117. data/generated/google/apis/cloudidentity_v1beta1/service.rb +45 -23
  118. data/generated/google/apis/cloudiot_v1.rb +1 -1
  119. data/generated/google/apis/cloudiot_v1/classes.rb +0 -7
  120. data/generated/google/apis/cloudiot_v1/representations.rb +0 -1
  121. data/generated/google/apis/cloudkms_v1.rb +1 -1
  122. data/generated/google/apis/cloudkms_v1/classes.rb +0 -7
  123. data/generated/google/apis/cloudkms_v1/representations.rb +0 -1
  124. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  125. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +401 -7
  126. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +280 -1
  127. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  128. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +401 -7
  129. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +280 -1
  130. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  131. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +405 -11
  132. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +280 -1
  133. data/generated/google/apis/cloudresourcemanager_v2/service.rb +6 -6
  134. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  135. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +405 -11
  136. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +280 -1
  137. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +6 -6
  138. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  139. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +19 -0
  140. data/generated/google/apis/cloudscheduler_v1beta1/representations.rb +2 -0
  141. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +12 -2
  142. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  143. data/generated/google/apis/cloudsearch_v1/classes.rb +10 -5
  144. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  145. data/generated/google/apis/cloudtasks_v2/classes.rb +0 -7
  146. data/generated/google/apis/cloudtasks_v2/representations.rb +0 -1
  147. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  148. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +59 -7
  149. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +19 -1
  150. data/generated/google/apis/cloudtasks_v2beta2/service.rb +12 -2
  151. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  152. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +102 -7
  153. data/generated/google/apis/cloudtasks_v2beta3/representations.rb +35 -1
  154. data/generated/google/apis/cloudtasks_v2beta3/service.rb +16 -2
  155. data/generated/google/apis/composer_v1.rb +1 -1
  156. data/generated/google/apis/composer_v1/classes.rb +123 -0
  157. data/generated/google/apis/composer_v1/representations.rb +49 -0
  158. data/generated/google/apis/composer_v1/service.rb +19 -15
  159. data/generated/google/apis/composer_v1beta1.rb +1 -1
  160. data/generated/google/apis/composer_v1beta1/classes.rb +173 -0
  161. data/generated/google/apis/composer_v1beta1/representations.rb +64 -0
  162. data/generated/google/apis/composer_v1beta1/service.rb +39 -1
  163. data/generated/google/apis/compute_alpha.rb +1 -1
  164. data/generated/google/apis/compute_alpha/classes.rb +1071 -341
  165. data/generated/google/apis/compute_alpha/representations.rb +248 -19
  166. data/generated/google/apis/compute_alpha/service.rb +291 -15
  167. data/generated/google/apis/compute_beta.rb +1 -1
  168. data/generated/google/apis/compute_beta/classes.rb +926 -283
  169. data/generated/google/apis/compute_beta/representations.rb +221 -18
  170. data/generated/google/apis/compute_beta/service.rb +24 -15
  171. data/generated/google/apis/compute_v1.rb +1 -1
  172. data/generated/google/apis/compute_v1/classes.rb +688 -176
  173. data/generated/google/apis/compute_v1/representations.rb +99 -0
  174. data/generated/google/apis/compute_v1/service.rb +704 -552
  175. data/generated/google/apis/container_v1.rb +1 -1
  176. data/generated/google/apis/container_v1/classes.rb +48 -9
  177. data/generated/google/apis/container_v1/representations.rb +17 -0
  178. data/generated/google/apis/container_v1/service.rb +4 -2
  179. data/generated/google/apis/container_v1beta1.rb +1 -1
  180. data/generated/google/apis/container_v1beta1/classes.rb +53 -13
  181. data/generated/google/apis/container_v1beta1/representations.rb +17 -0
  182. data/generated/google/apis/container_v1beta1/service.rb +6 -2
  183. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  184. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +0 -7
  185. data/generated/google/apis/containeranalysis_v1alpha1/representations.rb +0 -1
  186. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  187. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +2 -8
  188. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +0 -1
  189. data/generated/google/apis/content_v2.rb +1 -1
  190. data/generated/google/apis/content_v2/classes.rb +7 -7
  191. data/generated/google/apis/content_v2/service.rb +10 -8
  192. data/generated/google/apis/content_v2_1.rb +3 -4
  193. data/generated/google/apis/content_v2_1/classes.rb +1533 -1064
  194. data/generated/google/apis/content_v2_1/representations.rb +421 -0
  195. data/generated/google/apis/content_v2_1/service.rb +1127 -809
  196. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  197. data/generated/google/apis/datacatalog_v1beta1/classes.rb +25 -17
  198. data/generated/google/apis/datacatalog_v1beta1/representations.rb +5 -1
  199. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  200. data/generated/google/apis/dataflow_v1b3/classes.rb +29 -1
  201. data/generated/google/apis/dataflow_v1b3/representations.rb +5 -0
  202. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  203. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  204. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  205. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  206. data/generated/google/apis/datamigration_v1beta1.rb +34 -0
  207. data/generated/google/apis/datamigration_v1beta1/classes.rb +1664 -0
  208. data/generated/google/apis/datamigration_v1beta1/representations.rb +677 -0
  209. data/generated/google/apis/datamigration_v1beta1/service.rb +1172 -0
  210. data/generated/google/apis/dataproc_v1.rb +1 -1
  211. data/generated/google/apis/dataproc_v1/classes.rb +80 -9
  212. data/generated/google/apis/dataproc_v1/representations.rb +22 -1
  213. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  214. data/generated/google/apis/dataproc_v1beta2/classes.rb +48 -9
  215. data/generated/google/apis/dataproc_v1beta2/representations.rb +18 -1
  216. data/generated/google/apis/datastore_v1.rb +1 -1
  217. data/generated/google/apis/datastore_v1/classes.rb +4 -4
  218. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  219. data/generated/google/apis/datastore_v1beta3/classes.rb +4 -4
  220. data/generated/google/apis/deploymentmanager_alpha.rb +6 -5
  221. data/generated/google/apis/deploymentmanager_alpha/classes.rb +276 -644
  222. data/generated/google/apis/deploymentmanager_alpha/representations.rb +10 -143
  223. data/generated/google/apis/deploymentmanager_alpha/service.rb +247 -398
  224. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  225. data/generated/google/apis/deploymentmanager_v2/classes.rb +203 -558
  226. data/generated/google/apis/deploymentmanager_v2/representations.rb +0 -132
  227. data/generated/google/apis/deploymentmanager_v2/service.rb +149 -213
  228. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  229. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +247 -609
  230. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +0 -132
  231. data/generated/google/apis/deploymentmanager_v2beta/service.rb +246 -359
  232. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  233. data/generated/google/apis/dfareporting_v3_3/classes.rb +6 -6
  234. data/generated/google/apis/dfareporting_v3_3/service.rb +12 -12
  235. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  236. data/generated/google/apis/dfareporting_v3_4/classes.rb +6 -6
  237. data/generated/google/apis/dfareporting_v3_4/service.rb +12 -12
  238. data/generated/google/apis/dialogflow_v2.rb +1 -1
  239. data/generated/google/apis/dialogflow_v2/classes.rb +62 -15
  240. data/generated/google/apis/dialogflow_v2/representations.rb +28 -12
  241. data/generated/google/apis/dialogflow_v2/service.rb +12 -4
  242. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  243. data/generated/google/apis/dialogflow_v2beta1/classes.rb +60 -18
  244. data/generated/google/apis/dialogflow_v2beta1/representations.rb +28 -12
  245. data/generated/google/apis/dialogflow_v2beta1/service.rb +508 -38
  246. data/generated/google/apis/{bigqueryreservation_v1alpha2.rb → dialogflow_v3.rb} +13 -12
  247. data/generated/google/apis/dialogflow_v3/classes.rb +8943 -0
  248. data/generated/google/apis/dialogflow_v3/representations.rb +3773 -0
  249. data/generated/google/apis/dialogflow_v3/service.rb +3006 -0
  250. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  251. data/generated/google/apis/dialogflow_v3beta1/classes.rb +180 -15
  252. data/generated/google/apis/dialogflow_v3beta1/representations.rb +65 -12
  253. data/generated/google/apis/dialogflow_v3beta1/service.rb +183 -2
  254. data/generated/google/apis/displayvideo_v1.rb +1 -1
  255. data/generated/google/apis/displayvideo_v1/classes.rb +306 -34
  256. data/generated/google/apis/displayvideo_v1/representations.rb +122 -0
  257. data/generated/google/apis/displayvideo_v1/service.rb +342 -38
  258. data/generated/google/apis/dlp_v2.rb +1 -1
  259. data/generated/google/apis/dlp_v2/classes.rb +6 -0
  260. data/generated/google/apis/dlp_v2/representations.rb +1 -0
  261. data/generated/google/apis/dlp_v2/service.rb +294 -1
  262. data/generated/google/apis/dns_v1.rb +1 -1
  263. data/generated/google/apis/dns_v1/classes.rb +71 -0
  264. data/generated/google/apis/dns_v1/representations.rb +33 -0
  265. data/generated/google/apis/dns_v1beta2.rb +1 -1
  266. data/generated/google/apis/dns_v1beta2/classes.rb +19 -0
  267. data/generated/google/apis/dns_v1beta2/representations.rb +13 -0
  268. data/generated/google/apis/dns_v1beta2/service.rb +176 -0
  269. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  270. data/generated/google/apis/documentai_v1beta2/classes.rb +220 -102
  271. data/generated/google/apis/documentai_v1beta2/representations.rb +105 -9
  272. data/generated/google/apis/documentai_v1beta3.rb +1 -1
  273. data/generated/google/apis/documentai_v1beta3/classes.rb +241 -117
  274. data/generated/google/apis/documentai_v1beta3/representations.rb +105 -9
  275. data/generated/google/apis/documentai_v1beta3/service.rb +81 -2
  276. data/generated/google/apis/domains_v1alpha2.rb +1 -1
  277. data/generated/google/apis/domains_v1beta1.rb +1 -1
  278. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  279. data/generated/google/apis/drive_v2.rb +1 -1
  280. data/generated/google/apis/drive_v2/classes.rb +24 -21
  281. data/generated/google/apis/drive_v2/service.rb +26 -58
  282. data/generated/google/apis/drive_v3.rb +1 -1
  283. data/generated/google/apis/drive_v3/classes.rb +12 -8
  284. data/generated/google/apis/drive_v3/service.rb +14 -30
  285. data/generated/google/apis/eventarc_v1beta1.rb +1 -1
  286. data/generated/google/apis/eventarc_v1beta1/classes.rb +9 -12
  287. data/generated/google/apis/eventarc_v1beta1/service.rb +25 -5
  288. data/generated/google/apis/file_v1.rb +1 -1
  289. data/generated/google/apis/file_v1/classes.rb +566 -4
  290. data/generated/google/apis/file_v1/representations.rb +222 -0
  291. data/generated/google/apis/file_v1/service.rb +229 -1
  292. data/generated/google/apis/file_v1beta1.rb +1 -1
  293. data/generated/google/apis/file_v1beta1/classes.rb +346 -6
  294. data/generated/google/apis/file_v1beta1/representations.rb +149 -0
  295. data/generated/google/apis/file_v1beta1/service.rb +6 -2
  296. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  297. data/generated/google/apis/firebase_v1beta1/service.rb +17 -4
  298. data/generated/google/apis/firebasedatabase_v1beta.rb +44 -0
  299. data/generated/google/apis/firebasedatabase_v1beta/classes.rb +130 -0
  300. data/generated/google/apis/{displayvideo_v1dev → firebasedatabase_v1beta}/representations.rb +26 -16
  301. data/generated/google/apis/firebasedatabase_v1beta/service.rb +292 -0
  302. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  303. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +2 -0
  304. data/generated/google/apis/firestore_v1.rb +1 -1
  305. data/generated/google/apis/firestore_v1/classes.rb +4 -4
  306. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  307. data/generated/google/apis/firestore_v1beta1/classes.rb +4 -4
  308. data/generated/google/apis/games_v1.rb +1 -1
  309. data/generated/google/apis/games_v1/classes.rb +353 -0
  310. data/generated/google/apis/games_v1/representations.rb +145 -0
  311. data/generated/google/apis/games_v1/service.rb +67 -0
  312. data/generated/google/apis/gameservices_v1.rb +1 -1
  313. data/generated/google/apis/gameservices_v1/classes.rb +1 -2
  314. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  315. data/generated/google/apis/gameservices_v1beta/classes.rb +1 -2
  316. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  317. data/generated/google/apis/genomics_v2alpha1/classes.rb +36 -7
  318. data/generated/google/apis/genomics_v2alpha1/representations.rb +15 -0
  319. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  320. data/generated/google/apis/gmailpostmastertools_v1beta1/classes.rb +9 -0
  321. data/generated/google/apis/gmailpostmastertools_v1beta1/representations.rb +1 -0
  322. data/generated/google/apis/healthcare_v1.rb +1 -1
  323. data/generated/google/apis/healthcare_v1/classes.rb +18 -17
  324. data/generated/google/apis/healthcare_v1/service.rb +13 -12
  325. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  326. data/generated/google/apis/healthcare_v1beta1/classes.rb +321 -70
  327. data/generated/google/apis/healthcare_v1beta1/representations.rb +121 -18
  328. data/generated/google/apis/healthcare_v1beta1/service.rb +75 -39
  329. data/generated/google/apis/iam_v1.rb +2 -5
  330. data/generated/google/apis/iam_v1/classes.rb +109 -11
  331. data/generated/google/apis/iam_v1/representations.rb +33 -1
  332. data/generated/google/apis/iam_v1/service.rb +63 -4
  333. data/generated/google/apis/iamcredentials_v1.rb +3 -4
  334. data/generated/google/apis/iamcredentials_v1/service.rb +2 -3
  335. data/generated/google/apis/iap_v1.rb +1 -1
  336. data/generated/google/apis/iap_v1/classes.rb +0 -18
  337. data/generated/google/apis/iap_v1/representations.rb +0 -2
  338. data/generated/google/apis/iap_v1beta1.rb +1 -1
  339. data/generated/google/apis/iap_v1beta1/classes.rb +0 -7
  340. data/generated/google/apis/iap_v1beta1/representations.rb +0 -1
  341. data/generated/google/apis/jobs_v3.rb +1 -1
  342. data/generated/google/apis/jobs_v3/classes.rb +9 -807
  343. data/generated/google/apis/jobs_v3/representations.rb +0 -272
  344. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  345. data/generated/google/apis/jobs_v3p1beta1/classes.rb +9 -768
  346. data/generated/google/apis/jobs_v3p1beta1/representations.rb +0 -257
  347. data/generated/google/apis/{jobs_v2.rb → jobs_v4.rb} +6 -6
  348. data/generated/google/apis/jobs_v4/classes.rb +2699 -0
  349. data/generated/google/apis/jobs_v4/representations.rb +934 -0
  350. data/generated/google/apis/jobs_v4/service.rb +903 -0
  351. data/generated/google/apis/licensing_v1.rb +1 -1
  352. data/generated/google/apis/licensing_v1/classes.rb +26 -8
  353. data/generated/google/apis/licensing_v1/representations.rb +12 -0
  354. data/generated/google/apis/licensing_v1/service.rb +32 -29
  355. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  356. data/generated/google/apis/lifesciences_v2beta/classes.rb +25 -0
  357. data/generated/google/apis/lifesciences_v2beta/representations.rb +15 -0
  358. data/generated/google/apis/logging_v2.rb +1 -1
  359. data/generated/google/apis/logging_v2/classes.rb +187 -9
  360. data/generated/google/apis/logging_v2/representations.rb +77 -0
  361. data/generated/google/apis/logging_v2/service.rb +446 -25
  362. data/generated/google/apis/managedidentities_v1.rb +1 -1
  363. data/generated/google/apis/managedidentities_v1/classes.rb +361 -16
  364. data/generated/google/apis/managedidentities_v1/representations.rb +149 -1
  365. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  366. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +363 -17
  367. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +149 -1
  368. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  369. data/generated/google/apis/managedidentities_v1beta1/classes.rb +349 -12
  370. data/generated/google/apis/managedidentities_v1beta1/representations.rb +149 -1
  371. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  372. data/generated/google/apis/memcache_v1beta2/classes.rb +345 -4
  373. data/generated/google/apis/memcache_v1beta2/representations.rb +149 -0
  374. data/generated/google/apis/metastore_v1beta.rb +35 -0
  375. data/generated/google/apis/metastore_v1beta/classes.rb +1151 -0
  376. data/generated/google/apis/metastore_v1beta/representations.rb +479 -0
  377. data/generated/google/apis/metastore_v1beta/service.rb +800 -0
  378. data/generated/google/apis/ml_v1.rb +1 -1
  379. data/generated/google/apis/ml_v1/classes.rb +85 -25
  380. data/generated/google/apis/ml_v1/representations.rb +42 -1
  381. data/generated/google/apis/ml_v1/service.rb +35 -0
  382. data/generated/google/apis/monitoring_v3.rb +1 -1
  383. data/generated/google/apis/monitoring_v3/classes.rb +13 -8
  384. data/generated/google/apis/monitoring_v3/service.rb +5 -4
  385. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  386. data/generated/google/apis/networkmanagement_v1/classes.rb +6 -0
  387. data/generated/google/apis/networkmanagement_v1/representations.rb +1 -0
  388. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  389. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +57 -0
  390. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +31 -0
  391. data/generated/google/apis/notebooks_v1.rb +34 -0
  392. data/generated/google/apis/notebooks_v1/classes.rb +1455 -0
  393. data/generated/google/apis/notebooks_v1/representations.rb +580 -0
  394. data/generated/google/apis/notebooks_v1/service.rb +1042 -0
  395. data/generated/google/apis/osconfig_v1.rb +1 -1
  396. data/generated/google/apis/osconfig_v1/classes.rb +419 -0
  397. data/generated/google/apis/osconfig_v1/representations.rb +168 -0
  398. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  399. data/generated/google/apis/osconfig_v1beta/classes.rb +419 -0
  400. data/generated/google/apis/osconfig_v1beta/representations.rb +168 -0
  401. data/generated/google/apis/pagespeedonline_v5.rb +1 -1
  402. data/generated/google/apis/pagespeedonline_v5/service.rb +3 -3
  403. data/generated/google/apis/people_v1.rb +1 -1
  404. data/generated/google/apis/people_v1/classes.rb +10 -6
  405. data/generated/google/apis/people_v1/service.rb +21 -18
  406. data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
  407. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  408. data/generated/google/apis/privateca_v1beta1.rb +36 -0
  409. data/generated/google/apis/privateca_v1beta1/classes.rb +2467 -0
  410. data/generated/google/apis/privateca_v1beta1/representations.rb +996 -0
  411. data/generated/google/apis/privateca_v1beta1/service.rb +1437 -0
  412. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  413. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +37 -0
  414. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +18 -0
  415. data/generated/google/apis/pubsub_v1.rb +1 -1
  416. data/generated/google/apis/pubsub_v1/classes.rb +0 -7
  417. data/generated/google/apis/pubsub_v1/representations.rb +0 -1
  418. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  419. data/generated/google/apis/pubsub_v1beta2/classes.rb +0 -7
  420. data/generated/google/apis/pubsub_v1beta2/representations.rb +0 -1
  421. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  422. data/generated/google/apis/realtimebidding_v1/classes.rb +545 -0
  423. data/generated/google/apis/realtimebidding_v1/representations.rb +232 -0
  424. data/generated/google/apis/realtimebidding_v1/service.rb +450 -0
  425. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  426. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +32 -0
  427. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -0
  428. data/generated/google/apis/recommender_v1.rb +1 -1
  429. data/generated/google/apis/recommender_v1/classes.rb +2 -2
  430. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  431. data/generated/google/apis/recommender_v1beta1/classes.rb +2 -2
  432. data/generated/google/apis/recommender_v1beta1/service.rb +317 -0
  433. data/generated/google/apis/redis_v1.rb +1 -1
  434. data/generated/google/apis/redis_v1/classes.rb +86 -0
  435. data/generated/google/apis/redis_v1/representations.rb +34 -0
  436. data/generated/google/apis/redis_v1/service.rb +34 -0
  437. data/generated/google/apis/redis_v1beta1.rb +1 -1
  438. data/generated/google/apis/redis_v1beta1/classes.rb +58 -0
  439. data/generated/google/apis/redis_v1beta1/representations.rb +20 -0
  440. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  441. data/generated/google/apis/remotebuildexecution_v1/classes.rb +5 -30
  442. data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -16
  443. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  444. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +5 -30
  445. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -16
  446. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  447. data/generated/google/apis/remotebuildexecution_v2/classes.rb +5 -30
  448. data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -16
  449. data/generated/google/apis/reseller_v1.rb +4 -4
  450. data/generated/google/apis/reseller_v1/service.rb +5 -5
  451. data/generated/google/apis/run_v1.rb +1 -1
  452. data/generated/google/apis/run_v1/classes.rb +2 -1
  453. data/generated/google/apis/run_v1alpha1.rb +1 -1
  454. data/generated/google/apis/run_v1alpha1/classes.rb +2 -1
  455. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  456. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +0 -7
  457. data/generated/google/apis/runtimeconfig_v1beta1/representations.rb +0 -1
  458. data/generated/google/apis/safebrowsing_v4.rb +35 -0
  459. data/generated/google/apis/safebrowsing_v4/classes.rb +909 -0
  460. data/generated/google/apis/safebrowsing_v4/representations.rb +445 -0
  461. data/generated/google/apis/safebrowsing_v4/service.rb +286 -0
  462. data/generated/google/apis/searchconsole_v1.rb +1 -1
  463. data/generated/google/apis/searchconsole_v1/classes.rb +7 -0
  464. data/generated/google/apis/searchconsole_v1/representations.rb +1 -0
  465. data/generated/google/apis/secretmanager_v1.rb +1 -1
  466. data/generated/google/apis/secretmanager_v1/classes.rb +0 -7
  467. data/generated/google/apis/secretmanager_v1/representations.rb +0 -1
  468. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  469. data/generated/google/apis/secretmanager_v1beta1/classes.rb +0 -7
  470. data/generated/google/apis/secretmanager_v1beta1/representations.rb +0 -1
  471. data/generated/google/apis/securitycenter_v1.rb +1 -1
  472. data/generated/google/apis/securitycenter_v1/classes.rb +91 -0
  473. data/generated/google/apis/securitycenter_v1/representations.rb +37 -0
  474. data/generated/google/apis/securitycenter_v1/service.rb +1448 -414
  475. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  476. data/generated/google/apis/securitycenter_v1beta1/classes.rb +68 -0
  477. data/generated/google/apis/securitycenter_v1beta1/representations.rb +32 -0
  478. data/generated/google/apis/securitycenter_v1beta2.rb +1 -1
  479. data/generated/google/apis/securitycenter_v1beta2/classes.rb +68 -0
  480. data/generated/google/apis/securitycenter_v1beta2/representations.rb +32 -0
  481. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  482. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +1 -1
  483. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  484. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +12 -11
  485. data/generated/google/apis/servicecontrol_v1.rb +3 -3
  486. data/generated/google/apis/servicecontrol_v1/classes.rb +45 -0
  487. data/generated/google/apis/servicecontrol_v1/representations.rb +6 -0
  488. data/generated/google/apis/servicecontrol_v1/service.rb +2 -2
  489. data/generated/google/apis/servicecontrol_v2.rb +3 -3
  490. data/generated/google/apis/servicecontrol_v2/classes.rb +45 -0
  491. data/generated/google/apis/servicecontrol_v2/representations.rb +6 -0
  492. data/generated/google/apis/servicecontrol_v2/service.rb +2 -2
  493. data/generated/google/apis/servicedirectory_v1.rb +35 -0
  494. data/generated/google/apis/servicedirectory_v1/classes.rb +721 -0
  495. data/generated/google/apis/servicedirectory_v1/representations.rb +304 -0
  496. data/generated/google/apis/servicedirectory_v1/service.rb +957 -0
  497. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  498. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +26 -13
  499. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +0 -1
  500. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  501. data/generated/google/apis/servicemanagement_v1/classes.rb +2 -61
  502. data/generated/google/apis/servicemanagement_v1/representations.rb +0 -18
  503. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  504. data/generated/google/apis/servicenetworking_v1/classes.rb +79 -5
  505. data/generated/google/apis/servicenetworking_v1/representations.rb +33 -1
  506. data/generated/google/apis/servicenetworking_v1/service.rb +80 -0
  507. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  508. data/generated/google/apis/servicenetworking_v1beta/classes.rb +38 -5
  509. data/generated/google/apis/servicenetworking_v1beta/representations.rb +17 -1
  510. data/generated/google/apis/serviceusage_v1.rb +1 -1
  511. data/generated/google/apis/serviceusage_v1/classes.rb +12 -11
  512. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  513. data/generated/google/apis/serviceusage_v1beta1/classes.rb +42 -11
  514. data/generated/google/apis/serviceusage_v1beta1/representations.rb +15 -0
  515. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  516. data/generated/google/apis/sheets_v4.rb +1 -1
  517. data/generated/google/apis/sheets_v4/classes.rb +332 -7
  518. data/generated/google/apis/sheets_v4/representations.rb +102 -0
  519. data/generated/google/apis/slides_v1.rb +1 -1
  520. data/generated/google/apis/slides_v1/classes.rb +9 -3
  521. data/generated/google/apis/smartdevicemanagement_v1.rb +1 -1
  522. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +0 -34
  523. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +0 -16
  524. data/generated/google/apis/smartdevicemanagement_v1/service.rb +3 -8
  525. data/generated/google/apis/spanner_v1.rb +1 -1
  526. data/generated/google/apis/spanner_v1/classes.rb +10 -8
  527. data/generated/google/apis/spanner_v1/representations.rb +1 -1
  528. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  529. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  530. data/generated/google/apis/sqladmin_v1beta4/classes.rb +118 -11
  531. data/generated/google/apis/sqladmin_v1beta4/representations.rb +37 -0
  532. data/generated/google/apis/sqladmin_v1beta4/service.rb +1 -1
  533. data/generated/google/apis/storage_v1.rb +1 -1
  534. data/generated/google/apis/storage_v1/classes.rb +7 -0
  535. data/generated/google/apis/storage_v1/representations.rb +1 -0
  536. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  537. data/generated/google/apis/storagetransfer_v1/classes.rb +43 -21
  538. data/generated/google/apis/storagetransfer_v1/representations.rb +3 -0
  539. data/generated/google/apis/storagetransfer_v1/service.rb +3 -3
  540. data/generated/google/apis/testing_v1.rb +1 -1
  541. data/generated/google/apis/testing_v1/classes.rb +1 -1
  542. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  543. data/generated/google/apis/toolresults_v1beta3/classes.rb +13 -0
  544. data/generated/google/apis/toolresults_v1beta3/representations.rb +12 -0
  545. data/generated/google/apis/trafficdirector_v2.rb +2 -2
  546. data/generated/google/apis/trafficdirector_v2/service.rb +1 -1
  547. data/generated/google/apis/transcoder_v1beta1.rb +34 -0
  548. data/generated/google/apis/transcoder_v1beta1/classes.rb +1694 -0
  549. data/generated/google/apis/transcoder_v1beta1/representations.rb +757 -0
  550. data/generated/google/apis/transcoder_v1beta1/service.rb +329 -0
  551. data/generated/google/apis/translate_v3.rb +1 -1
  552. data/generated/google/apis/translate_v3/classes.rb +3 -2
  553. data/generated/google/apis/translate_v3beta1.rb +1 -1
  554. data/generated/google/apis/translate_v3beta1/classes.rb +3 -2
  555. data/generated/google/apis/vault_v1.rb +1 -1
  556. data/generated/google/apis/vault_v1/classes.rb +76 -0
  557. data/generated/google/apis/vault_v1/representations.rb +45 -0
  558. data/generated/google/apis/vectortile_v1.rb +1 -1
  559. data/generated/google/apis/vectortile_v1/classes.rb +59 -4
  560. data/generated/google/apis/vectortile_v1/representations.rb +19 -0
  561. data/generated/google/apis/videointelligence_v1.rb +1 -1
  562. data/generated/google/apis/videointelligence_v1/classes.rb +65 -0
  563. data/generated/google/apis/videointelligence_v1/representations.rb +15 -0
  564. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  565. data/generated/google/apis/videointelligence_v1beta2/classes.rb +65 -0
  566. data/generated/google/apis/videointelligence_v1beta2/representations.rb +15 -0
  567. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  568. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +65 -0
  569. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +15 -0
  570. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  571. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +65 -0
  572. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +15 -0
  573. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  574. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +65 -0
  575. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +15 -0
  576. data/generated/google/apis/vision_v1.rb +1 -1
  577. data/generated/google/apis/vision_v1/classes.rb +16 -16
  578. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  579. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  580. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  581. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  582. data/generated/google/apis/workflows_v1beta.rb +1 -1
  583. data/generated/google/apis/workflows_v1beta/classes.rb +4 -4
  584. data/generated/google/apis/youtube_v3.rb +1 -1
  585. data/generated/google/apis/youtube_v3/classes.rb +2 -2
  586. data/generated/google/apis/youtube_v3/service.rb +8 -8
  587. data/lib/google/apis/version.rb +1 -1
  588. metadata +60 -27
  589. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +0 -426
  590. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +0 -195
  591. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +0 -622
  592. data/generated/google/apis/displayvideo_v1beta.rb +0 -38
  593. data/generated/google/apis/displayvideo_v1beta/classes.rb +0 -146
  594. data/generated/google/apis/displayvideo_v1beta/representations.rb +0 -72
  595. data/generated/google/apis/displayvideo_v1beta/service.rb +0 -161
  596. data/generated/google/apis/displayvideo_v1beta2.rb +0 -38
  597. data/generated/google/apis/displayvideo_v1beta2/classes.rb +0 -146
  598. data/generated/google/apis/displayvideo_v1beta2/representations.rb +0 -72
  599. data/generated/google/apis/displayvideo_v1beta2/service.rb +0 -130
  600. data/generated/google/apis/displayvideo_v1dev.rb +0 -38
  601. data/generated/google/apis/displayvideo_v1dev/classes.rb +0 -146
  602. data/generated/google/apis/displayvideo_v1dev/service.rb +0 -130
  603. data/generated/google/apis/jobs_v2/classes.rb +0 -4012
  604. data/generated/google/apis/jobs_v2/representations.rb +0 -1396
  605. data/generated/google/apis/jobs_v2/service.rb +0 -693
@@ -130,6 +130,18 @@ module Google
130
130
  include Google::Apis::Core::JsonObjectSupport
131
131
  end
132
132
 
133
+ class LatencyDistribution
134
+ class Representation < Google::Apis::Core::JsonRepresentation; end
135
+
136
+ include Google::Apis::Core::JsonObjectSupport
137
+ end
138
+
139
+ class LatencyPercentile
140
+ class Representation < Google::Apis::Core::JsonRepresentation; end
141
+
142
+ include Google::Apis::Core::JsonObjectSupport
143
+ end
144
+
133
145
  class ListConnectivityTestsResponse
134
146
  class Representation < Google::Apis::Core::JsonRepresentation; end
135
147
 
@@ -290,6 +302,7 @@ module Google
290
302
  class Binding
291
303
  # @private
292
304
  class Representation < Google::Apis::Core::JsonRepresentation
305
+ property :binding_id, as: 'bindingId'
293
306
  property :condition, as: 'condition', class: Google::Apis::NetworkmanagementV1beta1::Expr, decorator: Google::Apis::NetworkmanagementV1beta1::Expr::Representation
294
307
 
295
308
  collection :members, as: 'members'
@@ -455,6 +468,22 @@ module Google
455
468
  end
456
469
  end
457
470
 
471
+ class LatencyDistribution
472
+ # @private
473
+ class Representation < Google::Apis::Core::JsonRepresentation
474
+ collection :latency_percentiles, as: 'latencyPercentiles', class: Google::Apis::NetworkmanagementV1beta1::LatencyPercentile, decorator: Google::Apis::NetworkmanagementV1beta1::LatencyPercentile::Representation
475
+
476
+ end
477
+ end
478
+
479
+ class LatencyPercentile
480
+ # @private
481
+ class Representation < Google::Apis::Core::JsonRepresentation
482
+ property :latency_micros, :numeric_string => true, as: 'latencyMicros'
483
+ property :percent, as: 'percent'
484
+ end
485
+ end
486
+
458
487
  class ListConnectivityTestsResponse
459
488
  # @private
460
489
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -571,6 +600,8 @@ module Google
571
600
 
572
601
  property :error, as: 'error', class: Google::Apis::NetworkmanagementV1beta1::Status, decorator: Google::Apis::NetworkmanagementV1beta1::Status::Representation
573
602
 
603
+ property :probing_latency, as: 'probingLatency', class: Google::Apis::NetworkmanagementV1beta1::LatencyDistribution, decorator: Google::Apis::NetworkmanagementV1beta1::LatencyDistribution::Representation
604
+
574
605
  property :result, as: 'result'
575
606
  property :sent_probe_count, as: 'sentProbeCount'
576
607
  property :successful_probe_count, as: 'successfulProbeCount'
@@ -0,0 +1,34 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/notebooks_v1/service.rb'
16
+ require 'google/apis/notebooks_v1/classes.rb'
17
+ require 'google/apis/notebooks_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Notebooks API
22
+ #
23
+ # AI Platform Notebooks API is used to manage notebook resources in Google Cloud.
24
+ #
25
+ # @see https://cloud.google.com/ai-platform/notebooks/docs/
26
+ module NotebooksV1
27
+ VERSION = 'V1'
28
+ REVISION = '20201110'
29
+
30
+ # View and manage your data across Google Cloud Platform services
31
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,1455 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module NotebooksV1
24
+
25
+ # Definition of a hardware accelerator. Note that not all combinations of `type`
26
+ # and `core_count` are valid. Check [GPUs on Compute Engine](/compute/docs/gpus/#
27
+ # gpus-list) to find a valid combination. TPUs are not supported.
28
+ class AcceleratorConfig
29
+ include Google::Apis::Core::Hashable
30
+
31
+ # Count of cores of this accelerator.
32
+ # Corresponds to the JSON property `coreCount`
33
+ # @return [Fixnum]
34
+ attr_accessor :core_count
35
+
36
+ # Type of this accelerator.
37
+ # Corresponds to the JSON property `type`
38
+ # @return [String]
39
+ attr_accessor :type
40
+
41
+ def initialize(**args)
42
+ update!(**args)
43
+ end
44
+
45
+ # Update properties of this object
46
+ def update!(**args)
47
+ @core_count = args[:core_count] if args.key?(:core_count)
48
+ @type = args[:type] if args.key?(:type)
49
+ end
50
+ end
51
+
52
+ # Associates `members` with a `role`.
53
+ class Binding
54
+ include Google::Apis::Core::Hashable
55
+
56
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
57
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
58
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
59
+ # "Summary size limit" description: "Determines if a summary is less than 100
60
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
61
+ # Requestor is owner" description: "Determines if requestor is the document
62
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
63
+ # Logic): title: "Public documents" description: "Determine whether the document
64
+ # should be publicly visible" expression: "document.type != 'private' &&
65
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
66
+ # string" description: "Create a notification string with a timestamp."
67
+ # expression: "'New message received at ' + string(document.create_time)" The
68
+ # exact variables and functions that may be referenced within an expression are
69
+ # determined by the service that evaluates it. See the service documentation for
70
+ # additional information.
71
+ # Corresponds to the JSON property `condition`
72
+ # @return [Google::Apis::NotebooksV1::Expr]
73
+ attr_accessor :condition
74
+
75
+ # Specifies the identities requesting access for a Cloud Platform resource. `
76
+ # members` can have the following values: * `allUsers`: A special identifier
77
+ # that represents anyone who is on the internet; with or without a Google
78
+ # account. * `allAuthenticatedUsers`: A special identifier that represents
79
+ # anyone who is authenticated with a Google account or a service account. * `
80
+ # user:`emailid``: An email address that represents a specific Google account.
81
+ # For example, `alice@example.com` . * `serviceAccount:`emailid``: An email
82
+ # address that represents a service account. For example, `my-other-app@appspot.
83
+ # gserviceaccount.com`. * `group:`emailid``: An email address that represents a
84
+ # Google group. For example, `admins@example.com`. * `deleted:user:`emailid`?uid=
85
+ # `uniqueid``: An email address (plus unique identifier) representing a user
86
+ # that has been recently deleted. For example, `alice@example.com?uid=
87
+ # 123456789012345678901`. If the user is recovered, this value reverts to `user:`
88
+ # emailid`` and the recovered user retains the role in the binding. * `deleted:
89
+ # serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus unique
90
+ # identifier) representing a service account that has been recently deleted. For
91
+ # example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
92
+ # If the service account is undeleted, this value reverts to `serviceAccount:`
93
+ # emailid`` and the undeleted service account retains the role in the binding. *
94
+ # `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
95
+ # identifier) representing a Google group that has been recently deleted. For
96
+ # example, `admins@example.com?uid=123456789012345678901`. If the group is
97
+ # recovered, this value reverts to `group:`emailid`` and the recovered group
98
+ # retains the role in the binding. * `domain:`domain``: The G Suite domain (
99
+ # primary) that represents all the users of that domain. For example, `google.
100
+ # com` or `example.com`.
101
+ # Corresponds to the JSON property `members`
102
+ # @return [Array<String>]
103
+ attr_accessor :members
104
+
105
+ # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
106
+ # , or `roles/owner`.
107
+ # Corresponds to the JSON property `role`
108
+ # @return [String]
109
+ attr_accessor :role
110
+
111
+ def initialize(**args)
112
+ update!(**args)
113
+ end
114
+
115
+ # Update properties of this object
116
+ def update!(**args)
117
+ @condition = args[:condition] if args.key?(:condition)
118
+ @members = args[:members] if args.key?(:members)
119
+ @role = args[:role] if args.key?(:role)
120
+ end
121
+ end
122
+
123
+ # The request message for Operations.CancelOperation.
124
+ class CancelOperationRequest
125
+ include Google::Apis::Core::Hashable
126
+
127
+ def initialize(**args)
128
+ update!(**args)
129
+ end
130
+
131
+ # Update properties of this object
132
+ def update!(**args)
133
+ end
134
+ end
135
+
136
+ # Definition of a container image for starting a notebook instance with the
137
+ # environment installed in a container.
138
+ class ContainerImage
139
+ include Google::Apis::Core::Hashable
140
+
141
+ # Required. The path to the container image repository. For example: `gcr.io/`
142
+ # project_id`/`image_name``
143
+ # Corresponds to the JSON property `repository`
144
+ # @return [String]
145
+ attr_accessor :repository
146
+
147
+ # The tag of the container image. If not specified, this defaults to the latest
148
+ # tag.
149
+ # Corresponds to the JSON property `tag`
150
+ # @return [String]
151
+ attr_accessor :tag
152
+
153
+ def initialize(**args)
154
+ update!(**args)
155
+ end
156
+
157
+ # Update properties of this object
158
+ def update!(**args)
159
+ @repository = args[:repository] if args.key?(:repository)
160
+ @tag = args[:tag] if args.key?(:tag)
161
+ end
162
+ end
163
+
164
+ # An instance-attached disk resource.
165
+ class Disk
166
+ include Google::Apis::Core::Hashable
167
+
168
+ # Indicates whether the disk will be auto-deleted when the instance is deleted (
169
+ # but not when the disk is detached from the instance).
170
+ # Corresponds to the JSON property `autoDelete`
171
+ # @return [Boolean]
172
+ attr_accessor :auto_delete
173
+ alias_method :auto_delete?, :auto_delete
174
+
175
+ # Indicates that this is a boot disk. The virtual machine will use the first
176
+ # partition of the disk for its root filesystem.
177
+ # Corresponds to the JSON property `boot`
178
+ # @return [Boolean]
179
+ attr_accessor :boot
180
+ alias_method :boot?, :boot
181
+
182
+ # Indicates a unique device name of your choice that is reflected into the /dev/
183
+ # disk/by-id/google-* tree of a Linux operating system running within the
184
+ # instance. This name can be used to reference the device for mounting, resizing,
185
+ # and so on, from within the instance. If not specified, the server chooses a
186
+ # default device name to apply to this disk, in the form persistent-disk-x,
187
+ # where x is a number assigned by Google Compute Engine.This field is only
188
+ # applicable for persistent disks.
189
+ # Corresponds to the JSON property `deviceName`
190
+ # @return [String]
191
+ attr_accessor :device_name
192
+
193
+ # Indicates the size of the disk in base-2 GB.
194
+ # Corresponds to the JSON property `diskSizeGb`
195
+ # @return [Fixnum]
196
+ attr_accessor :disk_size_gb
197
+
198
+ # Indicates a list of features to enable on the guest operating system.
199
+ # Applicable only for bootable images. Read Enabling guest operating system
200
+ # features to see a list of available options.
201
+ # Corresponds to the JSON property `guestOsFeatures`
202
+ # @return [Array<Google::Apis::NotebooksV1::GuestOsFeature>]
203
+ attr_accessor :guest_os_features
204
+
205
+ # A zero-based index to this disk, where 0 is reserved for the boot disk. If you
206
+ # have many disks attached to an instance, each disk would have a unique index
207
+ # number.
208
+ # Corresponds to the JSON property `index`
209
+ # @return [Fixnum]
210
+ attr_accessor :index
211
+
212
+ # Indicates the disk interface to use for attaching this disk, which is either
213
+ # SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and
214
+ # the request will fail if you attempt to attach a persistent disk in any other
215
+ # format than SCSI. Local SSDs can use either NVME or SCSI. For performance
216
+ # characteristics of SCSI over NVMe, see Local SSD performance. Valid values:
217
+ # NVME SCSI
218
+ # Corresponds to the JSON property `interface`
219
+ # @return [String]
220
+ attr_accessor :interface
221
+
222
+ # Type of the resource. Always compute#attachedDisk for attached disks.
223
+ # Corresponds to the JSON property `kind`
224
+ # @return [String]
225
+ attr_accessor :kind
226
+
227
+ # A list of publicly visible licenses. Reserved for Google's use. A License
228
+ # represents billing and aggregate usage data for public and marketplace images.
229
+ # Corresponds to the JSON property `licenses`
230
+ # @return [Array<String>]
231
+ attr_accessor :licenses
232
+
233
+ # The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not
234
+ # specified, the default is to attach the disk in READ_WRITE mode. Valid values:
235
+ # READ_ONLY READ_WRITE
236
+ # Corresponds to the JSON property `mode`
237
+ # @return [String]
238
+ attr_accessor :mode
239
+
240
+ # Indicates a valid partial or full URL to an existing Persistent Disk resource.
241
+ # Corresponds to the JSON property `source`
242
+ # @return [String]
243
+ attr_accessor :source
244
+
245
+ # Indicates the type of the disk, either SCRATCH or PERSISTENT. Valid values:
246
+ # PERSISTENT SCRATCH
247
+ # Corresponds to the JSON property `type`
248
+ # @return [String]
249
+ attr_accessor :type
250
+
251
+ def initialize(**args)
252
+ update!(**args)
253
+ end
254
+
255
+ # Update properties of this object
256
+ def update!(**args)
257
+ @auto_delete = args[:auto_delete] if args.key?(:auto_delete)
258
+ @boot = args[:boot] if args.key?(:boot)
259
+ @device_name = args[:device_name] if args.key?(:device_name)
260
+ @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
261
+ @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
262
+ @index = args[:index] if args.key?(:index)
263
+ @interface = args[:interface] if args.key?(:interface)
264
+ @kind = args[:kind] if args.key?(:kind)
265
+ @licenses = args[:licenses] if args.key?(:licenses)
266
+ @mode = args[:mode] if args.key?(:mode)
267
+ @source = args[:source] if args.key?(:source)
268
+ @type = args[:type] if args.key?(:type)
269
+ end
270
+ end
271
+
272
+ # A generic empty message that you can re-use to avoid defining duplicated empty
273
+ # messages in your APIs. A typical example is to use it as the request or the
274
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
275
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
276
+ # `Empty` is empty JSON object ````.
277
+ class Empty
278
+ include Google::Apis::Core::Hashable
279
+
280
+ def initialize(**args)
281
+ update!(**args)
282
+ end
283
+
284
+ # Update properties of this object
285
+ def update!(**args)
286
+ end
287
+ end
288
+
289
+ # Definition of a software environment that is used to start a notebook instance.
290
+ class Environment
291
+ include Google::Apis::Core::Hashable
292
+
293
+ # Definition of a container image for starting a notebook instance with the
294
+ # environment installed in a container.
295
+ # Corresponds to the JSON property `containerImage`
296
+ # @return [Google::Apis::NotebooksV1::ContainerImage]
297
+ attr_accessor :container_image
298
+
299
+ # Output only. The time at which this environment was created.
300
+ # Corresponds to the JSON property `createTime`
301
+ # @return [String]
302
+ attr_accessor :create_time
303
+
304
+ # A brief description of this environment.
305
+ # Corresponds to the JSON property `description`
306
+ # @return [String]
307
+ attr_accessor :description
308
+
309
+ # Display name of this environment for the UI.
310
+ # Corresponds to the JSON property `displayName`
311
+ # @return [String]
312
+ attr_accessor :display_name
313
+
314
+ # Output only. Name of this environment. Format: `projects/`project_id`/
315
+ # locations/`location`/environments/`environment_id``
316
+ # Corresponds to the JSON property `name`
317
+ # @return [String]
318
+ attr_accessor :name
319
+
320
+ # Path to a Bash script that automatically runs after a notebook instance fully
321
+ # boots up. The path must be a URL or Cloud Storage path. Example: `"gs://path-
322
+ # to-file/file-name"`
323
+ # Corresponds to the JSON property `postStartupScript`
324
+ # @return [String]
325
+ attr_accessor :post_startup_script
326
+
327
+ # Definition of a custom Compute Engine virtual machine image for starting a
328
+ # notebook instance with the environment installed directly on the VM.
329
+ # Corresponds to the JSON property `vmImage`
330
+ # @return [Google::Apis::NotebooksV1::VmImage]
331
+ attr_accessor :vm_image
332
+
333
+ def initialize(**args)
334
+ update!(**args)
335
+ end
336
+
337
+ # Update properties of this object
338
+ def update!(**args)
339
+ @container_image = args[:container_image] if args.key?(:container_image)
340
+ @create_time = args[:create_time] if args.key?(:create_time)
341
+ @description = args[:description] if args.key?(:description)
342
+ @display_name = args[:display_name] if args.key?(:display_name)
343
+ @name = args[:name] if args.key?(:name)
344
+ @post_startup_script = args[:post_startup_script] if args.key?(:post_startup_script)
345
+ @vm_image = args[:vm_image] if args.key?(:vm_image)
346
+ end
347
+ end
348
+
349
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
350
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
351
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
352
+ # "Summary size limit" description: "Determines if a summary is less than 100
353
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
354
+ # Requestor is owner" description: "Determines if requestor is the document
355
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
356
+ # Logic): title: "Public documents" description: "Determine whether the document
357
+ # should be publicly visible" expression: "document.type != 'private' &&
358
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
359
+ # string" description: "Create a notification string with a timestamp."
360
+ # expression: "'New message received at ' + string(document.create_time)" The
361
+ # exact variables and functions that may be referenced within an expression are
362
+ # determined by the service that evaluates it. See the service documentation for
363
+ # additional information.
364
+ class Expr
365
+ include Google::Apis::Core::Hashable
366
+
367
+ # Optional. Description of the expression. This is a longer text which describes
368
+ # the expression, e.g. when hovered over it in a UI.
369
+ # Corresponds to the JSON property `description`
370
+ # @return [String]
371
+ attr_accessor :description
372
+
373
+ # Textual representation of an expression in Common Expression Language syntax.
374
+ # Corresponds to the JSON property `expression`
375
+ # @return [String]
376
+ attr_accessor :expression
377
+
378
+ # Optional. String indicating the location of the expression for error reporting,
379
+ # e.g. a file name and a position in the file.
380
+ # Corresponds to the JSON property `location`
381
+ # @return [String]
382
+ attr_accessor :location
383
+
384
+ # Optional. Title for the expression, i.e. a short string describing its purpose.
385
+ # This can be used e.g. in UIs which allow to enter the expression.
386
+ # Corresponds to the JSON property `title`
387
+ # @return [String]
388
+ attr_accessor :title
389
+
390
+ def initialize(**args)
391
+ update!(**args)
392
+ end
393
+
394
+ # Update properties of this object
395
+ def update!(**args)
396
+ @description = args[:description] if args.key?(:description)
397
+ @expression = args[:expression] if args.key?(:expression)
398
+ @location = args[:location] if args.key?(:location)
399
+ @title = args[:title] if args.key?(:title)
400
+ end
401
+ end
402
+
403
+ # Guest OS features for boot disk.
404
+ class GuestOsFeature
405
+ include Google::Apis::Core::Hashable
406
+
407
+ # The ID of a supported feature. Read Enabling guest operating system features
408
+ # to see a list of available options. Valid values: FEATURE_TYPE_UNSPECIFIED
409
+ # MULTI_IP_SUBNET SECURE_BOOT UEFI_COMPATIBLE VIRTIO_SCSI_MULTIQUEUE WINDOWS
410
+ # Corresponds to the JSON property `type`
411
+ # @return [String]
412
+ attr_accessor :type
413
+
414
+ def initialize(**args)
415
+ update!(**args)
416
+ end
417
+
418
+ # Update properties of this object
419
+ def update!(**args)
420
+ @type = args[:type] if args.key?(:type)
421
+ end
422
+ end
423
+
424
+ # The definition of a notebook instance.
425
+ class Instance
426
+ include Google::Apis::Core::Hashable
427
+
428
+ # Definition of a hardware accelerator. Note that not all combinations of `type`
429
+ # and `core_count` are valid. Check [GPUs on Compute Engine](/compute/docs/gpus/#
430
+ # gpus-list) to find a valid combination. TPUs are not supported.
431
+ # Corresponds to the JSON property `acceleratorConfig`
432
+ # @return [Google::Apis::NotebooksV1::AcceleratorConfig]
433
+ attr_accessor :accelerator_config
434
+
435
+ # Input only. The size of the boot disk in GB attached to this instance, up to a
436
+ # maximum of 64000 GB (64 TB). The minimum recommended value is 100 GB. If not
437
+ # specified, this defaults to 100.
438
+ # Corresponds to the JSON property `bootDiskSizeGb`
439
+ # @return [Fixnum]
440
+ attr_accessor :boot_disk_size_gb
441
+
442
+ # Input only. The type of the boot disk attached to this instance, defaults to
443
+ # standard persistent disk (`PD_STANDARD`).
444
+ # Corresponds to the JSON property `bootDiskType`
445
+ # @return [String]
446
+ attr_accessor :boot_disk_type
447
+
448
+ # Definition of a container image for starting a notebook instance with the
449
+ # environment installed in a container.
450
+ # Corresponds to the JSON property `containerImage`
451
+ # @return [Google::Apis::NotebooksV1::ContainerImage]
452
+ attr_accessor :container_image
453
+
454
+ # Output only. Instance creation time.
455
+ # Corresponds to the JSON property `createTime`
456
+ # @return [String]
457
+ attr_accessor :create_time
458
+
459
+ # Specify a custom Cloud Storage path where the GPU driver is stored. If not
460
+ # specified, we'll automatically choose from official GPU drivers.
461
+ # Corresponds to the JSON property `customGpuDriverPath`
462
+ # @return [String]
463
+ attr_accessor :custom_gpu_driver_path
464
+
465
+ # Input only. The size of the data disk in GB attached to this instance, up to a
466
+ # maximum of 64000 GB (64 TB). You can choose the size of the data disk based on
467
+ # how big your notebooks and data are. If not specified, this defaults to 100.
468
+ # Corresponds to the JSON property `dataDiskSizeGb`
469
+ # @return [Fixnum]
470
+ attr_accessor :data_disk_size_gb
471
+
472
+ # Input only. The type of the data disk attached to this instance, defaults to
473
+ # standard persistent disk (`PD_STANDARD`).
474
+ # Corresponds to the JSON property `dataDiskType`
475
+ # @return [String]
476
+ attr_accessor :data_disk_type
477
+
478
+ # Input only. Disk encryption method used on the boot and data disks, defaults
479
+ # to GMEK.
480
+ # Corresponds to the JSON property `diskEncryption`
481
+ # @return [String]
482
+ attr_accessor :disk_encryption
483
+
484
+ # Output only. Attached disks to notebook instance.
485
+ # Corresponds to the JSON property `disks`
486
+ # @return [Array<Google::Apis::NotebooksV1::Disk>]
487
+ attr_accessor :disks
488
+
489
+ # Whether the end user authorizes Google Cloud to install GPU driver on this
490
+ # instance. If this field is empty or set to false, the GPU driver won't be
491
+ # installed. Only applicable to instances with GPUs.
492
+ # Corresponds to the JSON property `installGpuDriver`
493
+ # @return [Boolean]
494
+ attr_accessor :install_gpu_driver
495
+ alias_method :install_gpu_driver?, :install_gpu_driver
496
+
497
+ # Input only. The owner of this instance after creation. Format: `alias@example.
498
+ # com` Currently supports one owner only. If not specified, all of the service
499
+ # account users of your VM instance's service account can use the instance.
500
+ # Corresponds to the JSON property `instanceOwners`
501
+ # @return [Array<String>]
502
+ attr_accessor :instance_owners
503
+
504
+ # Input only. The KMS key used to encrypt the disks, only applicable if
505
+ # disk_encryption is CMEK. Format: `projects/`project_id`/locations/`location`/
506
+ # keyRings/`key_ring_id`/cryptoKeys/`key_id`` Learn more about [using your own
507
+ # encryption keys](/kms/docs/quickstart).
508
+ # Corresponds to the JSON property `kmsKey`
509
+ # @return [String]
510
+ attr_accessor :kms_key
511
+
512
+ # Labels to apply to this instance. These can be later modified by the setLabels
513
+ # method.
514
+ # Corresponds to the JSON property `labels`
515
+ # @return [Hash<String,String>]
516
+ attr_accessor :labels
517
+
518
+ # Required. The [Compute Engine machine type](/compute/docs/machine-types) of
519
+ # this instance.
520
+ # Corresponds to the JSON property `machineType`
521
+ # @return [String]
522
+ attr_accessor :machine_type
523
+
524
+ # Custom metadata to apply to this instance.
525
+ # Corresponds to the JSON property `metadata`
526
+ # @return [Hash<String,String>]
527
+ attr_accessor :metadata
528
+
529
+ # Output only. The name of this notebook instance. Format: `projects/`project_id`
530
+ # /locations/`location`/instances/`instance_id``
531
+ # Corresponds to the JSON property `name`
532
+ # @return [String]
533
+ attr_accessor :name
534
+
535
+ # The name of the VPC that this instance is in. Format: `projects/`project_id`/
536
+ # global/networks/`network_id``
537
+ # Corresponds to the JSON property `network`
538
+ # @return [String]
539
+ attr_accessor :network
540
+
541
+ # If true, the notebook instance will not register with the proxy.
542
+ # Corresponds to the JSON property `noProxyAccess`
543
+ # @return [Boolean]
544
+ attr_accessor :no_proxy_access
545
+ alias_method :no_proxy_access?, :no_proxy_access
546
+
547
+ # If true, no public IP will be assigned to this instance.
548
+ # Corresponds to the JSON property `noPublicIp`
549
+ # @return [Boolean]
550
+ attr_accessor :no_public_ip
551
+ alias_method :no_public_ip?, :no_public_ip
552
+
553
+ # Input only. If true, the data disk will not be auto deleted when deleting the
554
+ # instance.
555
+ # Corresponds to the JSON property `noRemoveDataDisk`
556
+ # @return [Boolean]
557
+ attr_accessor :no_remove_data_disk
558
+ alias_method :no_remove_data_disk?, :no_remove_data_disk
559
+
560
+ # Path to a Bash script that automatically runs after a notebook instance fully
561
+ # boots up. The path must be a URL or Cloud Storage path (gs://path-to-file/file-
562
+ # name).
563
+ # Corresponds to the JSON property `postStartupScript`
564
+ # @return [String]
565
+ attr_accessor :post_startup_script
566
+
567
+ # Output only. The proxy endpoint that is used to access the Jupyter notebook.
568
+ # Corresponds to the JSON property `proxyUri`
569
+ # @return [String]
570
+ attr_accessor :proxy_uri
571
+
572
+ # The service account on this instance, giving access to other Google Cloud
573
+ # services. You can use any service account within the same project, but you
574
+ # must have the service account user permission to use the instance. If not
575
+ # specified, the [Compute Engine default service account](https://cloud.google.
576
+ # com/compute/docs/access/service-accounts#default_service_account) is used.
577
+ # Corresponds to the JSON property `serviceAccount`
578
+ # @return [String]
579
+ attr_accessor :service_account
580
+
581
+ # Output only. The state of this instance.
582
+ # Corresponds to the JSON property `state`
583
+ # @return [String]
584
+ attr_accessor :state
585
+
586
+ # The name of the subnet that this instance is in. Format: `projects/`project_id`
587
+ # /regions/`region`/subnetworks/`subnetwork_id``
588
+ # Corresponds to the JSON property `subnet`
589
+ # @return [String]
590
+ attr_accessor :subnet
591
+
592
+ # Output only. Instance update time.
593
+ # Corresponds to the JSON property `updateTime`
594
+ # @return [String]
595
+ attr_accessor :update_time
596
+
597
+ # The upgrade history of this instance.
598
+ # Corresponds to the JSON property `upgradeHistory`
599
+ # @return [Array<Google::Apis::NotebooksV1::UpgradeHistoryEntry>]
600
+ attr_accessor :upgrade_history
601
+
602
+ # Definition of a custom Compute Engine virtual machine image for starting a
603
+ # notebook instance with the environment installed directly on the VM.
604
+ # Corresponds to the JSON property `vmImage`
605
+ # @return [Google::Apis::NotebooksV1::VmImage]
606
+ attr_accessor :vm_image
607
+
608
+ def initialize(**args)
609
+ update!(**args)
610
+ end
611
+
612
+ # Update properties of this object
613
+ def update!(**args)
614
+ @accelerator_config = args[:accelerator_config] if args.key?(:accelerator_config)
615
+ @boot_disk_size_gb = args[:boot_disk_size_gb] if args.key?(:boot_disk_size_gb)
616
+ @boot_disk_type = args[:boot_disk_type] if args.key?(:boot_disk_type)
617
+ @container_image = args[:container_image] if args.key?(:container_image)
618
+ @create_time = args[:create_time] if args.key?(:create_time)
619
+ @custom_gpu_driver_path = args[:custom_gpu_driver_path] if args.key?(:custom_gpu_driver_path)
620
+ @data_disk_size_gb = args[:data_disk_size_gb] if args.key?(:data_disk_size_gb)
621
+ @data_disk_type = args[:data_disk_type] if args.key?(:data_disk_type)
622
+ @disk_encryption = args[:disk_encryption] if args.key?(:disk_encryption)
623
+ @disks = args[:disks] if args.key?(:disks)
624
+ @install_gpu_driver = args[:install_gpu_driver] if args.key?(:install_gpu_driver)
625
+ @instance_owners = args[:instance_owners] if args.key?(:instance_owners)
626
+ @kms_key = args[:kms_key] if args.key?(:kms_key)
627
+ @labels = args[:labels] if args.key?(:labels)
628
+ @machine_type = args[:machine_type] if args.key?(:machine_type)
629
+ @metadata = args[:metadata] if args.key?(:metadata)
630
+ @name = args[:name] if args.key?(:name)
631
+ @network = args[:network] if args.key?(:network)
632
+ @no_proxy_access = args[:no_proxy_access] if args.key?(:no_proxy_access)
633
+ @no_public_ip = args[:no_public_ip] if args.key?(:no_public_ip)
634
+ @no_remove_data_disk = args[:no_remove_data_disk] if args.key?(:no_remove_data_disk)
635
+ @post_startup_script = args[:post_startup_script] if args.key?(:post_startup_script)
636
+ @proxy_uri = args[:proxy_uri] if args.key?(:proxy_uri)
637
+ @service_account = args[:service_account] if args.key?(:service_account)
638
+ @state = args[:state] if args.key?(:state)
639
+ @subnet = args[:subnet] if args.key?(:subnet)
640
+ @update_time = args[:update_time] if args.key?(:update_time)
641
+ @upgrade_history = args[:upgrade_history] if args.key?(:upgrade_history)
642
+ @vm_image = args[:vm_image] if args.key?(:vm_image)
643
+ end
644
+ end
645
+
646
+ # Response for checking if a notebook instance is upgradeable.
647
+ class IsInstanceUpgradeableResponse
648
+ include Google::Apis::Core::Hashable
649
+
650
+ # Additional information about upgrade.
651
+ # Corresponds to the JSON property `upgradeInfo`
652
+ # @return [String]
653
+ attr_accessor :upgrade_info
654
+
655
+ # The version this instance will be upgraded to if calling the upgrade endpoint.
656
+ # This field will only be populated if field upgradeable is true.
657
+ # Corresponds to the JSON property `upgradeVersion`
658
+ # @return [String]
659
+ attr_accessor :upgrade_version
660
+
661
+ # If an instance is upgradeable.
662
+ # Corresponds to the JSON property `upgradeable`
663
+ # @return [Boolean]
664
+ attr_accessor :upgradeable
665
+ alias_method :upgradeable?, :upgradeable
666
+
667
+ def initialize(**args)
668
+ update!(**args)
669
+ end
670
+
671
+ # Update properties of this object
672
+ def update!(**args)
673
+ @upgrade_info = args[:upgrade_info] if args.key?(:upgrade_info)
674
+ @upgrade_version = args[:upgrade_version] if args.key?(:upgrade_version)
675
+ @upgradeable = args[:upgradeable] if args.key?(:upgradeable)
676
+ end
677
+ end
678
+
679
+ # Response for listing environments.
680
+ class ListEnvironmentsResponse
681
+ include Google::Apis::Core::Hashable
682
+
683
+ # A list of returned environments.
684
+ # Corresponds to the JSON property `environments`
685
+ # @return [Array<Google::Apis::NotebooksV1::Environment>]
686
+ attr_accessor :environments
687
+
688
+ # A page token that can be used to continue listing from the last result in the
689
+ # next list call.
690
+ # Corresponds to the JSON property `nextPageToken`
691
+ # @return [String]
692
+ attr_accessor :next_page_token
693
+
694
+ # Locations that could not be reached.
695
+ # Corresponds to the JSON property `unreachable`
696
+ # @return [Array<String>]
697
+ attr_accessor :unreachable
698
+
699
+ def initialize(**args)
700
+ update!(**args)
701
+ end
702
+
703
+ # Update properties of this object
704
+ def update!(**args)
705
+ @environments = args[:environments] if args.key?(:environments)
706
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
707
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
708
+ end
709
+ end
710
+
711
+ # Response for listing notebook instances.
712
+ class ListInstancesResponse
713
+ include Google::Apis::Core::Hashable
714
+
715
+ # A list of returned instances.
716
+ # Corresponds to the JSON property `instances`
717
+ # @return [Array<Google::Apis::NotebooksV1::Instance>]
718
+ attr_accessor :instances
719
+
720
+ # Page token that can be used to continue listing from the last result in the
721
+ # next list call.
722
+ # Corresponds to the JSON property `nextPageToken`
723
+ # @return [String]
724
+ attr_accessor :next_page_token
725
+
726
+ # Locations that could not be reached. For example, ['us-west1-a', 'us-central1-
727
+ # b']. A ListInstancesResponse will only contain either instances or
728
+ # unreachables,
729
+ # Corresponds to the JSON property `unreachable`
730
+ # @return [Array<String>]
731
+ attr_accessor :unreachable
732
+
733
+ def initialize(**args)
734
+ update!(**args)
735
+ end
736
+
737
+ # Update properties of this object
738
+ def update!(**args)
739
+ @instances = args[:instances] if args.key?(:instances)
740
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
741
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
742
+ end
743
+ end
744
+
745
+ # The response message for Locations.ListLocations.
746
+ class ListLocationsResponse
747
+ include Google::Apis::Core::Hashable
748
+
749
+ # A list of locations that matches the specified filter in the request.
750
+ # Corresponds to the JSON property `locations`
751
+ # @return [Array<Google::Apis::NotebooksV1::Location>]
752
+ attr_accessor :locations
753
+
754
+ # The standard List next-page token.
755
+ # Corresponds to the JSON property `nextPageToken`
756
+ # @return [String]
757
+ attr_accessor :next_page_token
758
+
759
+ def initialize(**args)
760
+ update!(**args)
761
+ end
762
+
763
+ # Update properties of this object
764
+ def update!(**args)
765
+ @locations = args[:locations] if args.key?(:locations)
766
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
767
+ end
768
+ end
769
+
770
+ # The response message for Operations.ListOperations.
771
+ class ListOperationsResponse
772
+ include Google::Apis::Core::Hashable
773
+
774
+ # The standard List next-page token.
775
+ # Corresponds to the JSON property `nextPageToken`
776
+ # @return [String]
777
+ attr_accessor :next_page_token
778
+
779
+ # A list of operations that matches the specified filter in the request.
780
+ # Corresponds to the JSON property `operations`
781
+ # @return [Array<Google::Apis::NotebooksV1::Operation>]
782
+ attr_accessor :operations
783
+
784
+ def initialize(**args)
785
+ update!(**args)
786
+ end
787
+
788
+ # Update properties of this object
789
+ def update!(**args)
790
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
791
+ @operations = args[:operations] if args.key?(:operations)
792
+ end
793
+ end
794
+
795
+ # A resource that represents Google Cloud Platform location.
796
+ class Location
797
+ include Google::Apis::Core::Hashable
798
+
799
+ # The friendly name for this location, typically a nearby city name. For example,
800
+ # "Tokyo".
801
+ # Corresponds to the JSON property `displayName`
802
+ # @return [String]
803
+ attr_accessor :display_name
804
+
805
+ # Cross-service attributes for the location. For example `"cloud.googleapis.com/
806
+ # region": "us-east1"`
807
+ # Corresponds to the JSON property `labels`
808
+ # @return [Hash<String,String>]
809
+ attr_accessor :labels
810
+
811
+ # The canonical id for this location. For example: `"us-east1"`.
812
+ # Corresponds to the JSON property `locationId`
813
+ # @return [String]
814
+ attr_accessor :location_id
815
+
816
+ # Service-specific metadata. For example the available capacity at the given
817
+ # location.
818
+ # Corresponds to the JSON property `metadata`
819
+ # @return [Hash<String,Object>]
820
+ attr_accessor :metadata
821
+
822
+ # Resource name for the location, which may vary between implementations. For
823
+ # example: `"projects/example-project/locations/us-east1"`
824
+ # Corresponds to the JSON property `name`
825
+ # @return [String]
826
+ attr_accessor :name
827
+
828
+ def initialize(**args)
829
+ update!(**args)
830
+ end
831
+
832
+ # Update properties of this object
833
+ def update!(**args)
834
+ @display_name = args[:display_name] if args.key?(:display_name)
835
+ @labels = args[:labels] if args.key?(:labels)
836
+ @location_id = args[:location_id] if args.key?(:location_id)
837
+ @metadata = args[:metadata] if args.key?(:metadata)
838
+ @name = args[:name] if args.key?(:name)
839
+ end
840
+ end
841
+
842
+ # This resource represents a long-running operation that is the result of a
843
+ # network API call.
844
+ class Operation
845
+ include Google::Apis::Core::Hashable
846
+
847
+ # If the value is `false`, it means the operation is still in progress. If `true`
848
+ # , the operation is completed, and either `error` or `response` is available.
849
+ # Corresponds to the JSON property `done`
850
+ # @return [Boolean]
851
+ attr_accessor :done
852
+ alias_method :done?, :done
853
+
854
+ # The `Status` type defines a logical error model that is suitable for different
855
+ # programming environments, including REST APIs and RPC APIs. It is used by [
856
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
857
+ # data: error code, error message, and error details. You can find out more
858
+ # about this error model and how to work with it in the [API Design Guide](https:
859
+ # //cloud.google.com/apis/design/errors).
860
+ # Corresponds to the JSON property `error`
861
+ # @return [Google::Apis::NotebooksV1::Status]
862
+ attr_accessor :error
863
+
864
+ # Service-specific metadata associated with the operation. It typically contains
865
+ # progress information and common metadata such as create time. Some services
866
+ # might not provide such metadata. Any method that returns a long-running
867
+ # operation should document the metadata type, if any.
868
+ # Corresponds to the JSON property `metadata`
869
+ # @return [Hash<String,Object>]
870
+ attr_accessor :metadata
871
+
872
+ # The server-assigned name, which is only unique within the same service that
873
+ # originally returns it. If you use the default HTTP mapping, the `name` should
874
+ # be a resource name ending with `operations/`unique_id``.
875
+ # Corresponds to the JSON property `name`
876
+ # @return [String]
877
+ attr_accessor :name
878
+
879
+ # The normal response of the operation in case of success. If the original
880
+ # method returns no data on success, such as `Delete`, the response is `google.
881
+ # protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
882
+ # the response should be the resource. For other methods, the response should
883
+ # have the type `XxxResponse`, where `Xxx` is the original method name. For
884
+ # example, if the original method name is `TakeSnapshot()`, the inferred
885
+ # response type is `TakeSnapshotResponse`.
886
+ # Corresponds to the JSON property `response`
887
+ # @return [Hash<String,Object>]
888
+ attr_accessor :response
889
+
890
+ def initialize(**args)
891
+ update!(**args)
892
+ end
893
+
894
+ # Update properties of this object
895
+ def update!(**args)
896
+ @done = args[:done] if args.key?(:done)
897
+ @error = args[:error] if args.key?(:error)
898
+ @metadata = args[:metadata] if args.key?(:metadata)
899
+ @name = args[:name] if args.key?(:name)
900
+ @response = args[:response] if args.key?(:response)
901
+ end
902
+ end
903
+
904
+ # Represents the metadata of the long-running operation.
905
+ class OperationMetadata
906
+ include Google::Apis::Core::Hashable
907
+
908
+ # API version used to start the operation.
909
+ # Corresponds to the JSON property `apiVersion`
910
+ # @return [String]
911
+ attr_accessor :api_version
912
+
913
+ # The time the operation was created.
914
+ # Corresponds to the JSON property `createTime`
915
+ # @return [String]
916
+ attr_accessor :create_time
917
+
918
+ # The time the operation finished running.
919
+ # Corresponds to the JSON property `endTime`
920
+ # @return [String]
921
+ attr_accessor :end_time
922
+
923
+ # API endpoint name of this operation.
924
+ # Corresponds to the JSON property `endpoint`
925
+ # @return [String]
926
+ attr_accessor :endpoint
927
+
928
+ # Identifies whether the user has requested cancellation of the operation.
929
+ # Operations that have successfully been cancelled have Operation.error value
930
+ # with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.
931
+ # Corresponds to the JSON property `requestedCancellation`
932
+ # @return [Boolean]
933
+ attr_accessor :requested_cancellation
934
+ alias_method :requested_cancellation?, :requested_cancellation
935
+
936
+ # Human-readable status of the operation, if any.
937
+ # Corresponds to the JSON property `statusMessage`
938
+ # @return [String]
939
+ attr_accessor :status_message
940
+
941
+ # Server-defined resource path for the target of the operation.
942
+ # Corresponds to the JSON property `target`
943
+ # @return [String]
944
+ attr_accessor :target
945
+
946
+ # Name of the verb executed by the operation.
947
+ # Corresponds to the JSON property `verb`
948
+ # @return [String]
949
+ attr_accessor :verb
950
+
951
+ def initialize(**args)
952
+ update!(**args)
953
+ end
954
+
955
+ # Update properties of this object
956
+ def update!(**args)
957
+ @api_version = args[:api_version] if args.key?(:api_version)
958
+ @create_time = args[:create_time] if args.key?(:create_time)
959
+ @end_time = args[:end_time] if args.key?(:end_time)
960
+ @endpoint = args[:endpoint] if args.key?(:endpoint)
961
+ @requested_cancellation = args[:requested_cancellation] if args.key?(:requested_cancellation)
962
+ @status_message = args[:status_message] if args.key?(:status_message)
963
+ @target = args[:target] if args.key?(:target)
964
+ @verb = args[:verb] if args.key?(:verb)
965
+ end
966
+ end
967
+
968
+ # An Identity and Access Management (IAM) policy, which specifies access
969
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
970
+ # A `binding` binds one or more `members` to a single `role`. Members can be
971
+ # user accounts, service accounts, Google groups, and domains (such as G Suite).
972
+ # A `role` is a named list of permissions; each `role` can be an IAM predefined
973
+ # role or a user-created custom role. For some types of Google Cloud resources,
974
+ # a `binding` can also specify a `condition`, which is a logical expression that
975
+ # allows access to a resource only if the expression evaluates to `true`. A
976
+ # condition can add constraints based on attributes of the request, the resource,
977
+ # or both. To learn which resources support conditions in their IAM policies,
978
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
979
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
980
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
981
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
982
+ # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
983
+ # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
984
+ # title": "expirable access", "description": "Does not grant access after Sep
985
+ # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
986
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
987
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
988
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
989
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
990
+ # roles/resourcemanager.organizationViewer condition: title: expirable access
991
+ # description: Does not grant access after Sep 2020 expression: request.time <
992
+ # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
993
+ # description of IAM and its features, see the [IAM documentation](https://cloud.
994
+ # google.com/iam/docs/).
995
+ class Policy
996
+ include Google::Apis::Core::Hashable
997
+
998
+ # Associates a list of `members` to a `role`. Optionally, may specify a `
999
+ # condition` that determines how and when the `bindings` are applied. Each of
1000
+ # the `bindings` must contain at least one member.
1001
+ # Corresponds to the JSON property `bindings`
1002
+ # @return [Array<Google::Apis::NotebooksV1::Binding>]
1003
+ attr_accessor :bindings
1004
+
1005
+ # `etag` is used for optimistic concurrency control as a way to help prevent
1006
+ # simultaneous updates of a policy from overwriting each other. It is strongly
1007
+ # suggested that systems make use of the `etag` in the read-modify-write cycle
1008
+ # to perform policy updates in order to avoid race conditions: An `etag` is
1009
+ # returned in the response to `getIamPolicy`, and systems are expected to put
1010
+ # that etag in the request to `setIamPolicy` to ensure that their change will be
1011
+ # applied to the same version of the policy. **Important:** If you use IAM
1012
+ # Conditions, you must include the `etag` field whenever you call `setIamPolicy`.
1013
+ # If you omit this field, then IAM allows you to overwrite a version `3` policy
1014
+ # with a version `1` policy, and all of the conditions in the version `3` policy
1015
+ # are lost.
1016
+ # Corresponds to the JSON property `etag`
1017
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1018
+ # @return [String]
1019
+ attr_accessor :etag
1020
+
1021
+ # Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
1022
+ # Requests that specify an invalid value are rejected. Any operation that
1023
+ # affects conditional role bindings must specify version `3`. This requirement
1024
+ # applies to the following operations: * Getting a policy that includes a
1025
+ # conditional role binding * Adding a conditional role binding to a policy *
1026
+ # Changing a conditional role binding in a policy * Removing any role binding,
1027
+ # with or without a condition, from a policy that includes conditions **
1028
+ # Important:** If you use IAM Conditions, you must include the `etag` field
1029
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
1030
+ # to overwrite a version `3` policy with a version `1` policy, and all of the
1031
+ # conditions in the version `3` policy are lost. If a policy does not include
1032
+ # any conditions, operations on that policy may specify any valid version or
1033
+ # leave the field unset. To learn which resources support conditions in their
1034
+ # IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
1035
+ # conditions/resource-policies).
1036
+ # Corresponds to the JSON property `version`
1037
+ # @return [Fixnum]
1038
+ attr_accessor :version
1039
+
1040
+ def initialize(**args)
1041
+ update!(**args)
1042
+ end
1043
+
1044
+ # Update properties of this object
1045
+ def update!(**args)
1046
+ @bindings = args[:bindings] if args.key?(:bindings)
1047
+ @etag = args[:etag] if args.key?(:etag)
1048
+ @version = args[:version] if args.key?(:version)
1049
+ end
1050
+ end
1051
+
1052
+ # Request for registering a notebook instance.
1053
+ class RegisterInstanceRequest
1054
+ include Google::Apis::Core::Hashable
1055
+
1056
+ # Required. User defined unique ID of this instance. The `instance_id` must be 1
1057
+ # to 63 characters long and contain only lowercase letters, numeric characters,
1058
+ # and dashes. The first character must be a lowercase letter and the last
1059
+ # character cannot be a dash.
1060
+ # Corresponds to the JSON property `instanceId`
1061
+ # @return [String]
1062
+ attr_accessor :instance_id
1063
+
1064
+ def initialize(**args)
1065
+ update!(**args)
1066
+ end
1067
+
1068
+ # Update properties of this object
1069
+ def update!(**args)
1070
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
1071
+ end
1072
+ end
1073
+
1074
+ # Request for notebook instances to report information to Notebooks API.
1075
+ class ReportInstanceInfoRequest
1076
+ include Google::Apis::Core::Hashable
1077
+
1078
+ # The metadata reported to Notebooks API. This will be merged to the instance
1079
+ # metadata store
1080
+ # Corresponds to the JSON property `metadata`
1081
+ # @return [Hash<String,String>]
1082
+ attr_accessor :metadata
1083
+
1084
+ # Required. The VM hardware token for authenticating the VM. https://cloud.
1085
+ # google.com/compute/docs/instances/verifying-instance-identity
1086
+ # Corresponds to the JSON property `vmId`
1087
+ # @return [String]
1088
+ attr_accessor :vm_id
1089
+
1090
+ def initialize(**args)
1091
+ update!(**args)
1092
+ end
1093
+
1094
+ # Update properties of this object
1095
+ def update!(**args)
1096
+ @metadata = args[:metadata] if args.key?(:metadata)
1097
+ @vm_id = args[:vm_id] if args.key?(:vm_id)
1098
+ end
1099
+ end
1100
+
1101
+ # Request for reseting a notebook instance
1102
+ class ResetInstanceRequest
1103
+ include Google::Apis::Core::Hashable
1104
+
1105
+ def initialize(**args)
1106
+ update!(**args)
1107
+ end
1108
+
1109
+ # Update properties of this object
1110
+ def update!(**args)
1111
+ end
1112
+ end
1113
+
1114
+ # Request message for `SetIamPolicy` method.
1115
+ class SetIamPolicyRequest
1116
+ include Google::Apis::Core::Hashable
1117
+
1118
+ # An Identity and Access Management (IAM) policy, which specifies access
1119
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
1120
+ # A `binding` binds one or more `members` to a single `role`. Members can be
1121
+ # user accounts, service accounts, Google groups, and domains (such as G Suite).
1122
+ # A `role` is a named list of permissions; each `role` can be an IAM predefined
1123
+ # role or a user-created custom role. For some types of Google Cloud resources,
1124
+ # a `binding` can also specify a `condition`, which is a logical expression that
1125
+ # allows access to a resource only if the expression evaluates to `true`. A
1126
+ # condition can add constraints based on attributes of the request, the resource,
1127
+ # or both. To learn which resources support conditions in their IAM policies,
1128
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
1129
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
1130
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
1131
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
1132
+ # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
1133
+ # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
1134
+ # title": "expirable access", "description": "Does not grant access after Sep
1135
+ # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
1136
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
1137
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
1138
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
1139
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
1140
+ # roles/resourcemanager.organizationViewer condition: title: expirable access
1141
+ # description: Does not grant access after Sep 2020 expression: request.time <
1142
+ # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
1143
+ # description of IAM and its features, see the [IAM documentation](https://cloud.
1144
+ # google.com/iam/docs/).
1145
+ # Corresponds to the JSON property `policy`
1146
+ # @return [Google::Apis::NotebooksV1::Policy]
1147
+ attr_accessor :policy
1148
+
1149
+ def initialize(**args)
1150
+ update!(**args)
1151
+ end
1152
+
1153
+ # Update properties of this object
1154
+ def update!(**args)
1155
+ @policy = args[:policy] if args.key?(:policy)
1156
+ end
1157
+ end
1158
+
1159
+ # Request for setting instance accelerator.
1160
+ class SetInstanceAcceleratorRequest
1161
+ include Google::Apis::Core::Hashable
1162
+
1163
+ # Required. Count of cores of this accelerator. Note that not all combinations
1164
+ # of `type` and `core_count` are valid. Check [GPUs on Compute Engine](https://
1165
+ # cloud.google.com/compute/docs/gpus/#gpus-list) to find a valid combination.
1166
+ # TPUs are not supported.
1167
+ # Corresponds to the JSON property `coreCount`
1168
+ # @return [Fixnum]
1169
+ attr_accessor :core_count
1170
+
1171
+ # Required. Type of this accelerator.
1172
+ # Corresponds to the JSON property `type`
1173
+ # @return [String]
1174
+ attr_accessor :type
1175
+
1176
+ def initialize(**args)
1177
+ update!(**args)
1178
+ end
1179
+
1180
+ # Update properties of this object
1181
+ def update!(**args)
1182
+ @core_count = args[:core_count] if args.key?(:core_count)
1183
+ @type = args[:type] if args.key?(:type)
1184
+ end
1185
+ end
1186
+
1187
+ # Request for setting instance labels.
1188
+ class SetInstanceLabelsRequest
1189
+ include Google::Apis::Core::Hashable
1190
+
1191
+ # Labels to apply to this instance. These can be later modified by the setLabels
1192
+ # method
1193
+ # Corresponds to the JSON property `labels`
1194
+ # @return [Hash<String,String>]
1195
+ attr_accessor :labels
1196
+
1197
+ def initialize(**args)
1198
+ update!(**args)
1199
+ end
1200
+
1201
+ # Update properties of this object
1202
+ def update!(**args)
1203
+ @labels = args[:labels] if args.key?(:labels)
1204
+ end
1205
+ end
1206
+
1207
+ # Request for setting instance machine type.
1208
+ class SetInstanceMachineTypeRequest
1209
+ include Google::Apis::Core::Hashable
1210
+
1211
+ # Required. The [Compute Engine machine type](https://cloud.google.com/compute/
1212
+ # docs/machine-types).
1213
+ # Corresponds to the JSON property `machineType`
1214
+ # @return [String]
1215
+ attr_accessor :machine_type
1216
+
1217
+ def initialize(**args)
1218
+ update!(**args)
1219
+ end
1220
+
1221
+ # Update properties of this object
1222
+ def update!(**args)
1223
+ @machine_type = args[:machine_type] if args.key?(:machine_type)
1224
+ end
1225
+ end
1226
+
1227
+ # Request for starting a notebook instance
1228
+ class StartInstanceRequest
1229
+ include Google::Apis::Core::Hashable
1230
+
1231
+ def initialize(**args)
1232
+ update!(**args)
1233
+ end
1234
+
1235
+ # Update properties of this object
1236
+ def update!(**args)
1237
+ end
1238
+ end
1239
+
1240
+ # The `Status` type defines a logical error model that is suitable for different
1241
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1242
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1243
+ # data: error code, error message, and error details. You can find out more
1244
+ # about this error model and how to work with it in the [API Design Guide](https:
1245
+ # //cloud.google.com/apis/design/errors).
1246
+ class Status
1247
+ include Google::Apis::Core::Hashable
1248
+
1249
+ # The status code, which should be an enum value of google.rpc.Code.
1250
+ # Corresponds to the JSON property `code`
1251
+ # @return [Fixnum]
1252
+ attr_accessor :code
1253
+
1254
+ # A list of messages that carry the error details. There is a common set of
1255
+ # message types for APIs to use.
1256
+ # Corresponds to the JSON property `details`
1257
+ # @return [Array<Hash<String,Object>>]
1258
+ attr_accessor :details
1259
+
1260
+ # A developer-facing error message, which should be in English. Any user-facing
1261
+ # error message should be localized and sent in the google.rpc.Status.details
1262
+ # field, or localized by the client.
1263
+ # Corresponds to the JSON property `message`
1264
+ # @return [String]
1265
+ attr_accessor :message
1266
+
1267
+ def initialize(**args)
1268
+ update!(**args)
1269
+ end
1270
+
1271
+ # Update properties of this object
1272
+ def update!(**args)
1273
+ @code = args[:code] if args.key?(:code)
1274
+ @details = args[:details] if args.key?(:details)
1275
+ @message = args[:message] if args.key?(:message)
1276
+ end
1277
+ end
1278
+
1279
+ # Request for stopping a notebook instance
1280
+ class StopInstanceRequest
1281
+ include Google::Apis::Core::Hashable
1282
+
1283
+ def initialize(**args)
1284
+ update!(**args)
1285
+ end
1286
+
1287
+ # Update properties of this object
1288
+ def update!(**args)
1289
+ end
1290
+ end
1291
+
1292
+ # Request message for `TestIamPermissions` method.
1293
+ class TestIamPermissionsRequest
1294
+ include Google::Apis::Core::Hashable
1295
+
1296
+ # The set of permissions to check for the `resource`. Permissions with wildcards
1297
+ # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
1298
+ # Overview](https://cloud.google.com/iam/docs/overview#permissions).
1299
+ # Corresponds to the JSON property `permissions`
1300
+ # @return [Array<String>]
1301
+ attr_accessor :permissions
1302
+
1303
+ def initialize(**args)
1304
+ update!(**args)
1305
+ end
1306
+
1307
+ # Update properties of this object
1308
+ def update!(**args)
1309
+ @permissions = args[:permissions] if args.key?(:permissions)
1310
+ end
1311
+ end
1312
+
1313
+ # Response message for `TestIamPermissions` method.
1314
+ class TestIamPermissionsResponse
1315
+ include Google::Apis::Core::Hashable
1316
+
1317
+ # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
1318
+ # Corresponds to the JSON property `permissions`
1319
+ # @return [Array<String>]
1320
+ attr_accessor :permissions
1321
+
1322
+ def initialize(**args)
1323
+ update!(**args)
1324
+ end
1325
+
1326
+ # Update properties of this object
1327
+ def update!(**args)
1328
+ @permissions = args[:permissions] if args.key?(:permissions)
1329
+ end
1330
+ end
1331
+
1332
+ #
1333
+ class UpgradeHistoryEntry
1334
+ include Google::Apis::Core::Hashable
1335
+
1336
+ # The container image before this instance upgrade.
1337
+ # Corresponds to the JSON property `containerImage`
1338
+ # @return [String]
1339
+ attr_accessor :container_image
1340
+
1341
+ # The time that this instance upgrade history entry is created.
1342
+ # Corresponds to the JSON property `createTime`
1343
+ # @return [String]
1344
+ attr_accessor :create_time
1345
+
1346
+ # The framework of this notebook instance.
1347
+ # Corresponds to the JSON property `framework`
1348
+ # @return [String]
1349
+ attr_accessor :framework
1350
+
1351
+ # The snapshot of the boot disk of this notebook instance before upgrade.
1352
+ # Corresponds to the JSON property `snapshot`
1353
+ # @return [String]
1354
+ attr_accessor :snapshot
1355
+
1356
+ # The state of this instance upgrade history entry.
1357
+ # Corresponds to the JSON property `state`
1358
+ # @return [String]
1359
+ attr_accessor :state
1360
+
1361
+ # The version of the notebook instance before this upgrade.
1362
+ # Corresponds to the JSON property `version`
1363
+ # @return [String]
1364
+ attr_accessor :version
1365
+
1366
+ # The VM image before this instance upgrade.
1367
+ # Corresponds to the JSON property `vmImage`
1368
+ # @return [String]
1369
+ attr_accessor :vm_image
1370
+
1371
+ def initialize(**args)
1372
+ update!(**args)
1373
+ end
1374
+
1375
+ # Update properties of this object
1376
+ def update!(**args)
1377
+ @container_image = args[:container_image] if args.key?(:container_image)
1378
+ @create_time = args[:create_time] if args.key?(:create_time)
1379
+ @framework = args[:framework] if args.key?(:framework)
1380
+ @snapshot = args[:snapshot] if args.key?(:snapshot)
1381
+ @state = args[:state] if args.key?(:state)
1382
+ @version = args[:version] if args.key?(:version)
1383
+ @vm_image = args[:vm_image] if args.key?(:vm_image)
1384
+ end
1385
+ end
1386
+
1387
+ # Request for upgrading a notebook instance from within the VM
1388
+ class UpgradeInstanceInternalRequest
1389
+ include Google::Apis::Core::Hashable
1390
+
1391
+ # Required. The VM hardware token for authenticating the VM. https://cloud.
1392
+ # google.com/compute/docs/instances/verifying-instance-identity
1393
+ # Corresponds to the JSON property `vmId`
1394
+ # @return [String]
1395
+ attr_accessor :vm_id
1396
+
1397
+ def initialize(**args)
1398
+ update!(**args)
1399
+ end
1400
+
1401
+ # Update properties of this object
1402
+ def update!(**args)
1403
+ @vm_id = args[:vm_id] if args.key?(:vm_id)
1404
+ end
1405
+ end
1406
+
1407
+ # Request for upgrading a notebook instance
1408
+ class UpgradeInstanceRequest
1409
+ include Google::Apis::Core::Hashable
1410
+
1411
+ def initialize(**args)
1412
+ update!(**args)
1413
+ end
1414
+
1415
+ # Update properties of this object
1416
+ def update!(**args)
1417
+ end
1418
+ end
1419
+
1420
+ # Definition of a custom Compute Engine virtual machine image for starting a
1421
+ # notebook instance with the environment installed directly on the VM.
1422
+ class VmImage
1423
+ include Google::Apis::Core::Hashable
1424
+
1425
+ # Use this VM image family to find the image; the newest image in this family
1426
+ # will be used.
1427
+ # Corresponds to the JSON property `imageFamily`
1428
+ # @return [String]
1429
+ attr_accessor :image_family
1430
+
1431
+ # Use VM image name to find the image.
1432
+ # Corresponds to the JSON property `imageName`
1433
+ # @return [String]
1434
+ attr_accessor :image_name
1435
+
1436
+ # Required. The name of the Google Cloud project that this VM image belongs to.
1437
+ # Format: `projects/`project_id``
1438
+ # Corresponds to the JSON property `project`
1439
+ # @return [String]
1440
+ attr_accessor :project
1441
+
1442
+ def initialize(**args)
1443
+ update!(**args)
1444
+ end
1445
+
1446
+ # Update properties of this object
1447
+ def update!(**args)
1448
+ @image_family = args[:image_family] if args.key?(:image_family)
1449
+ @image_name = args[:image_name] if args.key?(:image_name)
1450
+ @project = args[:project] if args.key?(:project)
1451
+ end
1452
+ end
1453
+ end
1454
+ end
1455
+ end