google-api-client 0.34.1 → 0.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (312) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +16 -3
  3. data/CHANGELOG.md +114 -0
  4. data/OVERVIEW.md +36 -0
  5. data/README.md +49 -1
  6. data/Rakefile +1 -1
  7. data/docs/api-keys.md +20 -0
  8. data/docs/auth.md +53 -0
  9. data/docs/client-secrets.md +69 -0
  10. data/docs/getting-started.md +340 -0
  11. data/docs/installation.md +0 -0
  12. data/docs/logging.md +34 -0
  13. data/docs/media-upload.md +25 -0
  14. data/docs/oauth-installed.md +191 -0
  15. data/docs/oauth-server.md +135 -0
  16. data/docs/oauth-web.md +280 -0
  17. data/docs/oauth.md +268 -0
  18. data/docs/pagination.md +29 -0
  19. data/docs/performance.md +25 -0
  20. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  21. data/generated/google/apis/adexchangebuyer_v1_3.rb +1 -1
  22. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +9 -0
  23. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +1 -0
  24. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  25. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +9 -0
  26. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +1 -0
  27. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  28. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  29. data/generated/google/apis/androidpublisher_v3/classes.rb +93 -0
  30. data/generated/google/apis/androidpublisher_v3/representations.rb +49 -0
  31. data/generated/google/apis/appengine_v1.rb +1 -1
  32. data/generated/google/apis/appengine_v1beta.rb +1 -1
  33. data/generated/google/apis/appsmarket_v2.rb +1 -1
  34. data/generated/google/apis/bigquery_v2.rb +1 -1
  35. data/generated/google/apis/bigquery_v2/classes.rb +46 -4
  36. data/generated/google/apis/bigquery_v2/representations.rb +17 -0
  37. data/generated/google/apis/bigquery_v2/service.rb +1 -5
  38. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  39. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -5
  40. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  41. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +30 -4
  42. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  43. data/generated/google/apis/bigqueryreservation_v1/classes.rb +0 -21
  44. data/generated/google/apis/bigqueryreservation_v1/representations.rb +0 -13
  45. data/generated/google/apis/bigqueryreservation_v1alpha2.rb +1 -1
  46. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +116 -1
  47. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +35 -0
  48. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +71 -0
  49. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  50. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +61 -77
  51. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +16 -17
  52. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +112 -78
  53. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  54. data/generated/google/apis/bigtableadmin_v1/classes.rb +1 -1
  55. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  56. data/generated/google/apis/bigtableadmin_v2/classes.rb +1 -1
  57. data/generated/google/apis/bigtableadmin_v2/service.rb +1 -1
  58. data/generated/google/apis/{sqladmin_v1beta4.rb → billingbudgets_v1beta1.rb} +10 -13
  59. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +392 -0
  60. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +191 -0
  61. data/generated/google/apis/billingbudgets_v1beta1/service.rb +233 -0
  62. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  63. data/generated/google/apis/binaryauthorization_v1/classes.rb +6 -5
  64. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  65. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +6 -5
  66. data/generated/google/apis/books_v1.rb +1 -1
  67. data/generated/google/apis/books_v1/classes.rb +20 -0
  68. data/generated/google/apis/books_v1/representations.rb +3 -0
  69. data/generated/google/apis/calendar_v3.rb +1 -1
  70. data/generated/google/apis/calendar_v3/classes.rb +1 -1
  71. data/generated/google/apis/calendar_v3/service.rb +18 -30
  72. data/generated/google/apis/civicinfo_v2.rb +1 -1
  73. data/generated/google/apis/civicinfo_v2/classes.rb +0 -156
  74. data/generated/google/apis/civicinfo_v2/representations.rb +0 -58
  75. data/generated/google/apis/cloudasset_v1.rb +1 -1
  76. data/generated/google/apis/cloudasset_v1/classes.rb +6 -5
  77. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  78. data/generated/google/apis/cloudasset_v1beta1/classes.rb +6 -5
  79. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  80. data/generated/google/apis/cloudbilling_v1/classes.rb +17 -0
  81. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  82. data/generated/google/apis/cloudbuild_v1/classes.rb +8 -2
  83. data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
  84. data/generated/google/apis/cloudbuild_v1/service.rb +18 -18
  85. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  86. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +8 -2
  87. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +1 -0
  88. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +4 -1
  89. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  90. data/generated/google/apis/cloudfunctions_v1/classes.rb +13 -5
  91. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  92. data/generated/google/apis/cloudfunctions_v1/service.rb +3 -1
  93. data/generated/google/apis/cloudiot_v1.rb +1 -1
  94. data/generated/google/apis/cloudiot_v1/classes.rb +6 -5
  95. data/generated/google/apis/cloudkms_v1.rb +1 -1
  96. data/generated/google/apis/cloudkms_v1/classes.rb +6 -5
  97. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1.rb +1 -1
  98. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/classes.rb +6 -5
  99. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  100. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +6 -5
  101. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  102. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +6 -5
  103. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  104. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +6 -5
  105. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  106. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +6 -5
  107. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  108. data/generated/google/apis/cloudscheduler_v1/classes.rb +2 -1
  109. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  110. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +2 -1
  111. data/generated/google/apis/cloudsearch_v1.rb +8 -8
  112. data/generated/google/apis/cloudsearch_v1/classes.rb +5 -130
  113. data/generated/google/apis/cloudsearch_v1/representations.rb +0 -75
  114. data/generated/google/apis/cloudsearch_v1/service.rb +42 -7
  115. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  116. data/generated/google/apis/cloudtasks_v2/classes.rb +212 -5
  117. data/generated/google/apis/cloudtasks_v2/representations.rb +50 -0
  118. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  119. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +6 -5
  120. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  121. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +6 -5
  122. data/generated/google/apis/commentanalyzer_v1alpha1.rb +1 -1
  123. data/generated/google/apis/commentanalyzer_v1alpha1/classes.rb +14 -19
  124. data/generated/google/apis/compute_alpha.rb +1 -1
  125. data/generated/google/apis/compute_alpha/classes.rb +75 -12
  126. data/generated/google/apis/compute_alpha/representations.rb +2 -0
  127. data/generated/google/apis/compute_beta.rb +1 -1
  128. data/generated/google/apis/compute_beta/classes.rb +54 -10
  129. data/generated/google/apis/compute_v1.rb +1 -1
  130. data/generated/google/apis/compute_v1/classes.rb +54 -10
  131. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  132. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +6 -5
  133. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  134. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +6 -5
  135. data/generated/google/apis/content_v2.rb +1 -1
  136. data/generated/google/apis/content_v2/classes.rb +13 -4
  137. data/generated/google/apis/content_v2_1.rb +1 -1
  138. data/generated/google/apis/content_v2_1/classes.rb +13 -4
  139. data/generated/google/apis/datacatalog_v1beta1.rb +35 -0
  140. data/generated/google/apis/datacatalog_v1beta1/classes.rb +1646 -0
  141. data/generated/google/apis/datacatalog_v1beta1/representations.rb +700 -0
  142. data/generated/google/apis/datacatalog_v1beta1/service.rb +1982 -0
  143. data/generated/google/apis/dataproc_v1.rb +1 -1
  144. data/generated/google/apis/dataproc_v1/classes.rb +75 -4
  145. data/generated/google/apis/dataproc_v1/representations.rb +22 -0
  146. data/generated/google/apis/dataproc_v1/service.rb +14 -7
  147. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  148. data/generated/google/apis/dataproc_v1beta2/classes.rb +2 -4
  149. data/generated/google/apis/dataproc_v1beta2/service.rb +14 -7
  150. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  151. data/generated/google/apis/dfareporting_v3_3/classes.rb +21 -1
  152. data/generated/google/apis/dfareporting_v3_3/service.rb +6 -6
  153. data/generated/google/apis/dfareporting_v3_4.rb +40 -0
  154. data/generated/google/apis/dfareporting_v3_4/classes.rb +12717 -0
  155. data/generated/google/apis/dfareporting_v3_4/representations.rb +4595 -0
  156. data/generated/google/apis/dfareporting_v3_4/service.rb +8685 -0
  157. data/generated/google/apis/dialogflow_v2.rb +1 -1
  158. data/generated/google/apis/dialogflow_v2/classes.rb +484 -1
  159. data/generated/google/apis/dialogflow_v2/representations.rb +220 -0
  160. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  161. data/generated/google/apis/dialogflow_v2beta1/classes.rb +497 -1
  162. data/generated/google/apis/dialogflow_v2beta1/representations.rb +221 -0
  163. data/generated/google/apis/dlp_v2.rb +1 -1
  164. data/generated/google/apis/dlp_v2/classes.rb +68 -25
  165. data/generated/google/apis/dlp_v2/representations.rb +9 -4
  166. data/generated/google/apis/dlp_v2/service.rb +1925 -193
  167. data/generated/google/apis/dns_v1beta2.rb +1 -1
  168. data/generated/google/apis/dns_v1beta2/classes.rb +47 -0
  169. data/generated/google/apis/dns_v1beta2/representations.rb +17 -0
  170. data/generated/google/apis/docs_v1.rb +1 -1
  171. data/generated/google/apis/docs_v1/classes.rb +4 -8
  172. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  173. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +34 -0
  174. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +826 -0
  175. data/generated/google/apis/doubleclickbidmanager_v1_1/representations.rb +372 -0
  176. data/generated/google/apis/doubleclickbidmanager_v1_1/service.rb +371 -0
  177. data/generated/google/apis/drive_v3.rb +1 -1
  178. data/generated/google/apis/drive_v3/classes.rb +12 -3
  179. data/generated/google/apis/fcm_v1.rb +1 -1
  180. data/generated/google/apis/fcm_v1/classes.rb +15 -0
  181. data/generated/google/apis/fcm_v1/representations.rb +2 -0
  182. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  183. data/generated/google/apis/firebase_v1beta1/classes.rb +3 -4
  184. data/generated/google/apis/firebase_v1beta1/service.rb +6 -6
  185. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  186. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +25 -0
  187. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +15 -0
  188. data/generated/google/apis/firebasehosting_v1beta1/service.rb +47 -0
  189. data/generated/google/apis/firebaserules_v1.rb +1 -1
  190. data/generated/google/apis/firebaserules_v1/classes.rb +26 -0
  191. data/generated/google/apis/firebaserules_v1/representations.rb +15 -0
  192. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  193. data/generated/google/apis/genomics_v2alpha1/classes.rb +32 -0
  194. data/generated/google/apis/genomics_v2alpha1/representations.rb +16 -0
  195. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  196. data/generated/google/apis/healthcare_v1beta1/classes.rb +8 -7
  197. data/generated/google/apis/homegraph_v1.rb +1 -1
  198. data/generated/google/apis/homegraph_v1/classes.rb +15 -1
  199. data/generated/google/apis/homegraph_v1/representations.rb +2 -1
  200. data/generated/google/apis/iam_v1.rb +1 -1
  201. data/generated/google/apis/iam_v1/classes.rb +6 -5
  202. data/generated/google/apis/logging_v2.rb +1 -1
  203. data/generated/google/apis/logging_v2/classes.rb +18 -2
  204. data/generated/google/apis/logging_v2/representations.rb +2 -0
  205. data/generated/google/apis/ml_v1.rb +1 -1
  206. data/generated/google/apis/ml_v1/classes.rb +173 -97
  207. data/generated/google/apis/ml_v1/representations.rb +58 -0
  208. data/generated/google/apis/ml_v1/service.rb +37 -0
  209. data/generated/google/apis/monitoring_v3.rb +1 -1
  210. data/generated/google/apis/monitoring_v3/classes.rb +780 -6
  211. data/generated/google/apis/monitoring_v3/representations.rb +347 -0
  212. data/generated/google/apis/monitoring_v3/service.rb +382 -0
  213. data/generated/google/apis/pagespeedonline_v5.rb +1 -1
  214. data/generated/google/apis/pagespeedonline_v5/classes.rb +8 -0
  215. data/generated/google/apis/pagespeedonline_v5/representations.rb +1 -0
  216. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  217. data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +6 -5
  218. data/generated/google/apis/pubsub_v1.rb +1 -1
  219. data/generated/google/apis/pubsub_v1/classes.rb +8 -6
  220. data/generated/google/apis/pubsub_v1/service.rb +6 -7
  221. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  222. data/generated/google/apis/pubsub_v1beta2/classes.rb +6 -5
  223. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  224. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  225. data/generated/google/apis/recommender_v1beta1/service.rb +10 -8
  226. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  227. data/generated/google/apis/remotebuildexecution_v1/classes.rb +33 -0
  228. data/generated/google/apis/remotebuildexecution_v1/representations.rb +15 -0
  229. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  230. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +33 -0
  231. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +15 -0
  232. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  233. data/generated/google/apis/remotebuildexecution_v2/classes.rb +33 -0
  234. data/generated/google/apis/remotebuildexecution_v2/representations.rb +15 -0
  235. data/generated/google/apis/run_v1.rb +1 -1
  236. data/generated/google/apis/run_v1/classes.rb +8 -169
  237. data/generated/google/apis/run_v1/representations.rb +0 -71
  238. data/generated/google/apis/run_v1/service.rb +229 -1207
  239. data/generated/google/apis/run_v1alpha1.rb +1 -1
  240. data/generated/google/apis/run_v1alpha1/classes.rb +9 -9
  241. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  242. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +6 -5
  243. data/generated/google/apis/securitycenter_v1.rb +1 -1
  244. data/generated/google/apis/securitycenter_v1/classes.rb +66 -11
  245. data/generated/google/apis/securitycenter_v1/representations.rb +19 -0
  246. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  247. data/generated/google/apis/securitycenter_v1beta1/classes.rb +16 -13
  248. data/generated/google/apis/servicebroker_v1.rb +1 -1
  249. data/generated/google/apis/servicebroker_v1/classes.rb +6 -5
  250. data/generated/google/apis/servicebroker_v1alpha1.rb +1 -1
  251. data/generated/google/apis/servicebroker_v1alpha1/classes.rb +6 -5
  252. data/generated/google/apis/servicebroker_v1beta1.rb +1 -1
  253. data/generated/google/apis/servicebroker_v1beta1/classes.rb +6 -5
  254. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  255. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +3 -2
  256. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  257. data/generated/google/apis/servicecontrol_v1/classes.rb +8 -1
  258. data/generated/google/apis/servicecontrol_v1/representations.rb +1 -0
  259. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  260. data/generated/google/apis/servicemanagement_v1/classes.rb +12 -9
  261. data/generated/google/apis/servicemanagement_v1/service.rb +1 -9
  262. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  263. data/generated/google/apis/servicenetworking_v1/classes.rb +130 -13
  264. data/generated/google/apis/servicenetworking_v1/representations.rb +58 -0
  265. data/generated/google/apis/servicenetworking_v1/service.rb +42 -3
  266. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  267. data/generated/google/apis/servicenetworking_v1beta/classes.rb +3 -2
  268. data/generated/google/apis/serviceusage_v1.rb +1 -1
  269. data/generated/google/apis/serviceusage_v1/classes.rb +3 -2
  270. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  271. data/generated/google/apis/serviceusage_v1beta1/classes.rb +3 -2
  272. data/generated/google/apis/sheets_v4.rb +1 -1
  273. data/generated/google/apis/spanner_v1.rb +1 -1
  274. data/generated/google/apis/spanner_v1/classes.rb +70 -30
  275. data/generated/google/apis/spanner_v1/service.rb +270 -0
  276. data/generated/google/apis/speech_v1.rb +1 -1
  277. data/generated/google/apis/speech_v1/classes.rb +6 -0
  278. data/generated/google/apis/speech_v1/representations.rb +1 -0
  279. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  280. data/generated/google/apis/speech_v1p1beta1/classes.rb +6 -0
  281. data/generated/google/apis/speech_v1p1beta1/representations.rb +1 -0
  282. data/generated/google/apis/sql_v1beta4.rb +1 -1
  283. data/generated/google/apis/sql_v1beta4/service.rb +59 -10
  284. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  285. data/generated/google/apis/videointelligence_v1.rb +1 -1
  286. data/generated/google/apis/videointelligence_v1/classes.rb +112 -0
  287. data/generated/google/apis/videointelligence_v1/representations.rb +62 -0
  288. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  289. data/generated/google/apis/videointelligence_v1beta2/classes.rb +112 -0
  290. data/generated/google/apis/videointelligence_v1beta2/representations.rb +62 -0
  291. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  292. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +112 -0
  293. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +62 -0
  294. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  295. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +112 -0
  296. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +62 -0
  297. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  298. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +112 -0
  299. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +62 -0
  300. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  301. data/lib/google/apis/core/api_command.rb +3 -0
  302. data/lib/google/apis/core/http_command.rb +10 -8
  303. data/lib/google/apis/version.rb +1 -1
  304. data/rakelib/devsite/devsite_builder.rb +1 -1
  305. metadata +33 -11
  306. data/generated/google/apis/sqladmin_v1beta4/classes.rb +0 -2633
  307. data/generated/google/apis/sqladmin_v1beta4/representations.rb +0 -1110
  308. data/generated/google/apis/sqladmin_v1beta4/service.rb +0 -1793
  309. data/generated/google/apis/storage_v1beta1.rb +0 -40
  310. data/generated/google/apis/storage_v1beta1/classes.rb +0 -616
  311. data/generated/google/apis/storage_v1beta1/representations.rb +0 -249
  312. data/generated/google/apis/storage_v1beta1/service.rb +0 -1032
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/container-analysis/api/reference/rest/
27
27
  module ContaineranalysisV1alpha1
28
28
  VERSION = 'V1alpha1'
29
- REVISION = '20190930'
29
+ REVISION = '20191118'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -2006,8 +2006,8 @@ module Google
2006
2006
  # ensure that their change will be applied to the same version of the policy.
2007
2007
  # If no `etag` is provided in the call to `setIamPolicy`, then the existing
2008
2008
  # policy is overwritten. Due to blind-set semantics of an etag-less policy,
2009
- # 'setIamPolicy' will not fail even if either of incoming or stored policy
2010
- # does not meet the version requirements.
2009
+ # 'setIamPolicy' will not fail even if the incoming policy version does not
2010
+ # meet the requirements for modifying the stored policy.
2011
2011
  # Corresponds to the JSON property `etag`
2012
2012
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
2013
2013
  # @return [String]
@@ -2018,11 +2018,12 @@ module Google
2018
2018
  # rejected.
2019
2019
  # Operations affecting conditional bindings must specify version 3. This can
2020
2020
  # be either setting a conditional policy, modifying a conditional binding,
2021
- # or removing a conditional binding from the stored conditional policy.
2021
+ # or removing a binding (conditional or unconditional) from the stored
2022
+ # conditional policy.
2022
2023
  # Operations on non-conditional policies may specify any valid value or
2023
2024
  # leave the field unset.
2024
- # If no etag is provided in the call to `setIamPolicy`, any version
2025
- # compliance checks on the incoming and/or stored policy is skipped.
2025
+ # If no etag is provided in the call to `setIamPolicy`, version compliance
2026
+ # checks against the stored policy is skipped.
2026
2027
  # Corresponds to the JSON property `version`
2027
2028
  # @return [Fixnum]
2028
2029
  attr_accessor :version
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/container-analysis/api/reference/rest/
27
27
  module ContaineranalysisV1beta1
28
28
  VERSION = 'V1beta1'
29
- REVISION = '20190930'
29
+ REVISION = '20191118'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -2194,8 +2194,8 @@ module Google
2194
2194
  # ensure that their change will be applied to the same version of the policy.
2195
2195
  # If no `etag` is provided in the call to `setIamPolicy`, then the existing
2196
2196
  # policy is overwritten. Due to blind-set semantics of an etag-less policy,
2197
- # 'setIamPolicy' will not fail even if either of incoming or stored policy
2198
- # does not meet the version requirements.
2197
+ # 'setIamPolicy' will not fail even if the incoming policy version does not
2198
+ # meet the requirements for modifying the stored policy.
2199
2199
  # Corresponds to the JSON property `etag`
2200
2200
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
2201
2201
  # @return [String]
@@ -2206,11 +2206,12 @@ module Google
2206
2206
  # rejected.
2207
2207
  # Operations affecting conditional bindings must specify version 3. This can
2208
2208
  # be either setting a conditional policy, modifying a conditional binding,
2209
- # or removing a conditional binding from the stored conditional policy.
2209
+ # or removing a binding (conditional or unconditional) from the stored
2210
+ # conditional policy.
2210
2211
  # Operations on non-conditional policies may specify any valid value or
2211
2212
  # leave the field unset.
2212
- # If no etag is provided in the call to `setIamPolicy`, any version
2213
- # compliance checks on the incoming and/or stored policy is skipped.
2213
+ # If no etag is provided in the call to `setIamPolicy`, version compliance
2214
+ # checks against the stored policy is skipped.
2214
2215
  # Corresponds to the JSON property `version`
2215
2216
  # @return [Fixnum]
2216
2217
  attr_accessor :version
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/shopping-content
27
27
  module ContentV2
28
28
  VERSION = 'V2'
29
- REVISION = '20191008'
29
+ REVISION = '20191107'
30
30
 
31
31
  # Manage your product listings and accounts for Google Shopping
32
32
  AUTH_CONTENT = 'https://www.googleapis.com/auth/content'
@@ -4277,7 +4277,7 @@ module Google
4277
4277
  # @return [Fixnum]
4278
4278
  attr_accessor :quantity
4279
4279
 
4280
- # The reason for the cancellation. Orders that are cancelled with a noInventory
4280
+ # The reason for the cancellation. Orders that are canceled with a noInventory
4281
4281
  # reason will lead to the removal of the product from Shopping Actions until you
4282
4282
  # make an update to that product. This will not affect your Shopping ads.
4283
4283
  # Corresponds to the JSON property `reason`
@@ -5271,7 +5271,15 @@ module Google
5271
5271
  # - "mpx"
5272
5272
  # - "uds"
5273
5273
  # - "efw"
5274
- # - "jd logistics"
5274
+ # - "yunexpress"
5275
+ # - "china post"
5276
+ # - "china ems"
5277
+ # - "singapore post"
5278
+ # - "pos malaysia"
5279
+ # - "postnl"
5280
+ # - "ptt"
5281
+ # - "eub"
5282
+ # - "chukou1"
5275
5283
  # Acceptable values for FR are:
5276
5284
  # - "colissimo"
5277
5285
  # - "chronopost"
@@ -5283,6 +5291,7 @@ module Google
5283
5291
  # - "geodis"
5284
5292
  # - "tnt"
5285
5293
  # - "la poste"
5294
+ # - "ups"
5286
5295
  # Corresponds to the JSON property `carrier`
5287
5296
  # @return [String]
5288
5297
  attr_accessor :carrier
@@ -5338,8 +5347,8 @@ module Google
5338
5347
  class OrderShipmentLineItemShipment
5339
5348
  include Google::Apis::Core::Hashable
5340
5349
 
5341
- # The ID of the line item that is shipped. Either lineItemId or productId is
5342
- # required.
5350
+ # The ID of the line item that is shipped. This value is assigned by Google when
5351
+ # an order is created. Either lineItemId or productId is required.
5343
5352
  # Corresponds to the JSON property `lineItemId`
5344
5353
  # @return [String]
5345
5354
  attr_accessor :line_item_id
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/shopping-content
27
27
  module ContentV2_1
28
28
  VERSION = 'V2_1'
29
- REVISION = '20191008'
29
+ REVISION = '20191107'
30
30
 
31
31
  # Manage your product listings and accounts for Google Shopping
32
32
  AUTH_CONTENT = 'https://www.googleapis.com/auth/content'
@@ -3648,7 +3648,7 @@ module Google
3648
3648
  # @return [Fixnum]
3649
3649
  attr_accessor :quantity
3650
3650
 
3651
- # The reason for the cancellation. Orders that are cancelled with a noInventory
3651
+ # The reason for the cancellation. Orders that are canceled with a noInventory
3652
3652
  # reason will lead to the removal of the product from Shopping Actions until you
3653
3653
  # make an update to that product. This will not affect your Shopping ads.
3654
3654
  # Corresponds to the JSON property `reason`
@@ -4659,7 +4659,15 @@ module Google
4659
4659
  # - "mpx"
4660
4660
  # - "uds"
4661
4661
  # - "efw"
4662
- # - "jd logistics"
4662
+ # - "yunexpress"
4663
+ # - "china post"
4664
+ # - "china ems"
4665
+ # - "singapore post"
4666
+ # - "pos malaysia"
4667
+ # - "postnl"
4668
+ # - "ptt"
4669
+ # - "eub"
4670
+ # - "chukou1"
4663
4671
  # Acceptable values for FR are:
4664
4672
  # - "colissimo"
4665
4673
  # - "chronopost"
@@ -4671,6 +4679,7 @@ module Google
4671
4679
  # - "geodis"
4672
4680
  # - "tnt"
4673
4681
  # - "la poste"
4682
+ # - "ups"
4674
4683
  # Corresponds to the JSON property `carrier`
4675
4684
  # @return [String]
4676
4685
  attr_accessor :carrier
@@ -4732,8 +4741,8 @@ module Google
4732
4741
  class OrderShipmentLineItemShipment
4733
4742
  include Google::Apis::Core::Hashable
4734
4743
 
4735
- # The ID of the line item that is shipped. Either lineItemId or productId is
4736
- # required.
4744
+ # The ID of the line item that is shipped. This value is assigned by Google when
4745
+ # an order is created. Either lineItemId or productId is required.
4737
4746
  # Corresponds to the JSON property `lineItemId`
4738
4747
  # @return [String]
4739
4748
  attr_accessor :line_item_id
@@ -0,0 +1,35 @@
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/datacatalog_v1beta1/service.rb'
16
+ require 'google/apis/datacatalog_v1beta1/classes.rb'
17
+ require 'google/apis/datacatalog_v1beta1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Google Cloud Data Catalog API
22
+ #
23
+ # A fully managed and highly scalable data discovery and metadata management
24
+ # service.
25
+ #
26
+ # @see https://cloud.google.com/data-catalog/docs/
27
+ module DatacatalogV1beta1
28
+ VERSION = 'V1beta1'
29
+ REVISION = '20191118'
30
+
31
+ # View and manage your data across Google Cloud Platform services
32
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,1646 @@
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 DatacatalogV1beta1
24
+
25
+ # Associates `members` with a `role`.
26
+ class Binding
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Represents an expression text. Example:
30
+ # title: "User account presence"
31
+ # description: "Determines whether the request has a user account"
32
+ # expression: "size(request.user) > 0"
33
+ # Corresponds to the JSON property `condition`
34
+ # @return [Google::Apis::DatacatalogV1beta1::Expr]
35
+ attr_accessor :condition
36
+
37
+ # Specifies the identities requesting access for a Cloud Platform resource.
38
+ # `members` can have the following values:
39
+ # * `allUsers`: A special identifier that represents anyone who is
40
+ # on the internet; with or without a Google account.
41
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
42
+ # who is authenticated with a Google account or a service account.
43
+ # * `user:`emailid``: An email address that represents a specific Google
44
+ # account. For example, `alice@example.com` .
45
+ # * `serviceAccount:`emailid``: An email address that represents a service
46
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
47
+ # * `group:`emailid``: An email address that represents a Google group.
48
+ # For example, `admins@example.com`.
49
+ # * `domain:`domain``: The G Suite domain (primary) that represents all the
50
+ # users of that domain. For example, `google.com` or `example.com`.
51
+ # Corresponds to the JSON property `members`
52
+ # @return [Array<String>]
53
+ attr_accessor :members
54
+
55
+ # Role that is assigned to `members`.
56
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
57
+ # Corresponds to the JSON property `role`
58
+ # @return [String]
59
+ attr_accessor :role
60
+
61
+ def initialize(**args)
62
+ update!(**args)
63
+ end
64
+
65
+ # Update properties of this object
66
+ def update!(**args)
67
+ @condition = args[:condition] if args.key?(:condition)
68
+ @members = args[:members] if args.key?(:members)
69
+ @role = args[:role] if args.key?(:role)
70
+ end
71
+ end
72
+
73
+ # A generic empty message that you can re-use to avoid defining duplicated
74
+ # empty messages in your APIs. A typical example is to use it as the request
75
+ # or the response type of an API method. For instance:
76
+ # service Foo `
77
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
78
+ # `
79
+ # The JSON representation for `Empty` is empty JSON object ````.
80
+ class Empty
81
+ include Google::Apis::Core::Hashable
82
+
83
+ def initialize(**args)
84
+ update!(**args)
85
+ end
86
+
87
+ # Update properties of this object
88
+ def update!(**args)
89
+ end
90
+ end
91
+
92
+ # Represents an expression text. Example:
93
+ # title: "User account presence"
94
+ # description: "Determines whether the request has a user account"
95
+ # expression: "size(request.user) > 0"
96
+ class Expr
97
+ include Google::Apis::Core::Hashable
98
+
99
+ # An optional description of the expression. This is a longer text which
100
+ # describes the expression, e.g. when hovered over it in a UI.
101
+ # Corresponds to the JSON property `description`
102
+ # @return [String]
103
+ attr_accessor :description
104
+
105
+ # Textual representation of an expression in
106
+ # Common Expression Language syntax.
107
+ # The application context of the containing message determines which
108
+ # well-known feature set of CEL is supported.
109
+ # Corresponds to the JSON property `expression`
110
+ # @return [String]
111
+ attr_accessor :expression
112
+
113
+ # An optional string indicating the location of the expression for error
114
+ # reporting, e.g. a file name and a position in the file.
115
+ # Corresponds to the JSON property `location`
116
+ # @return [String]
117
+ attr_accessor :location
118
+
119
+ # An optional title for the expression, i.e. a short string describing
120
+ # its purpose. This can be used e.g. in UIs which allow to enter the
121
+ # expression.
122
+ # Corresponds to the JSON property `title`
123
+ # @return [String]
124
+ attr_accessor :title
125
+
126
+ def initialize(**args)
127
+ update!(**args)
128
+ end
129
+
130
+ # Update properties of this object
131
+ def update!(**args)
132
+ @description = args[:description] if args.key?(:description)
133
+ @expression = args[:expression] if args.key?(:expression)
134
+ @location = args[:location] if args.key?(:location)
135
+ @title = args[:title] if args.key?(:title)
136
+ end
137
+ end
138
+
139
+ # Request message for `GetIamPolicy` method.
140
+ class GetIamPolicyRequest
141
+ include Google::Apis::Core::Hashable
142
+
143
+ # Encapsulates settings provided to GetIamPolicy.
144
+ # Corresponds to the JSON property `options`
145
+ # @return [Google::Apis::DatacatalogV1beta1::GetPolicyOptions]
146
+ attr_accessor :options
147
+
148
+ def initialize(**args)
149
+ update!(**args)
150
+ end
151
+
152
+ # Update properties of this object
153
+ def update!(**args)
154
+ @options = args[:options] if args.key?(:options)
155
+ end
156
+ end
157
+
158
+ # Encapsulates settings provided to GetIamPolicy.
159
+ class GetPolicyOptions
160
+ include Google::Apis::Core::Hashable
161
+
162
+ # Optional. The policy format version to be returned.
163
+ # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
164
+ # rejected.
165
+ # Requests for policies with any conditional bindings must specify version 3.
166
+ # Policies without any conditional bindings may specify any valid value or
167
+ # leave the field unset.
168
+ # Corresponds to the JSON property `requestedPolicyVersion`
169
+ # @return [Fixnum]
170
+ attr_accessor :requested_policy_version
171
+
172
+ def initialize(**args)
173
+ update!(**args)
174
+ end
175
+
176
+ # Update properties of this object
177
+ def update!(**args)
178
+ @requested_policy_version = args[:requested_policy_version] if args.key?(:requested_policy_version)
179
+ end
180
+ end
181
+
182
+ # Spec for a group of BigQuery tables with name pattern `[prefix]YYYYMMDD`.
183
+ # Context:
184
+ # https://cloud.google.com/bigquery/docs/partitioned-tables#
185
+ # partitioning_versus_sharding
186
+ class GoogleCloudDatacatalogV1beta1BigQueryDateShardedSpec
187
+ include Google::Apis::Core::Hashable
188
+
189
+ # Output only. The Data Catalog resource name of the dataset entry the current
190
+ # table
191
+ # belongs to, for example,
192
+ # `projects/`project_id`/locations/`location`/entrygroups/`entry_group_id`/
193
+ # entries/`entry_id``.
194
+ # Corresponds to the JSON property `dataset`
195
+ # @return [String]
196
+ attr_accessor :dataset
197
+
198
+ # Output only. Total number of shards.
199
+ # Corresponds to the JSON property `shardCount`
200
+ # @return [Fixnum]
201
+ attr_accessor :shard_count
202
+
203
+ # Output only. The table name prefix of the shards. The name of any given shard
204
+ # is
205
+ # `[table_prefix]YYYYMMDD`, for example, for shard `MyTable20180101`, the
206
+ # `table_prefix` is `MyTable`.
207
+ # Corresponds to the JSON property `tablePrefix`
208
+ # @return [String]
209
+ attr_accessor :table_prefix
210
+
211
+ def initialize(**args)
212
+ update!(**args)
213
+ end
214
+
215
+ # Update properties of this object
216
+ def update!(**args)
217
+ @dataset = args[:dataset] if args.key?(:dataset)
218
+ @shard_count = args[:shard_count] if args.key?(:shard_count)
219
+ @table_prefix = args[:table_prefix] if args.key?(:table_prefix)
220
+ end
221
+ end
222
+
223
+ # Describes a BigQuery table.
224
+ class GoogleCloudDatacatalogV1beta1BigQueryTableSpec
225
+ include Google::Apis::Core::Hashable
226
+
227
+ # Output only. The table source type.
228
+ # Corresponds to the JSON property `tableSourceType`
229
+ # @return [String]
230
+ attr_accessor :table_source_type
231
+
232
+ # Normal BigQuery table spec.
233
+ # Corresponds to the JSON property `tableSpec`
234
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1TableSpec]
235
+ attr_accessor :table_spec
236
+
237
+ # Table view specification.
238
+ # Corresponds to the JSON property `viewSpec`
239
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1ViewSpec]
240
+ attr_accessor :view_spec
241
+
242
+ def initialize(**args)
243
+ update!(**args)
244
+ end
245
+
246
+ # Update properties of this object
247
+ def update!(**args)
248
+ @table_source_type = args[:table_source_type] if args.key?(:table_source_type)
249
+ @table_spec = args[:table_spec] if args.key?(:table_spec)
250
+ @view_spec = args[:view_spec] if args.key?(:view_spec)
251
+ end
252
+ end
253
+
254
+ # Representation of a column within a schema. Columns could be nested inside
255
+ # other columns.
256
+ class GoogleCloudDatacatalogV1beta1ColumnSchema
257
+ include Google::Apis::Core::Hashable
258
+
259
+ # Required. Name of the column.
260
+ # Corresponds to the JSON property `column`
261
+ # @return [String]
262
+ attr_accessor :column
263
+
264
+ # Optional. Description of the column. Default value is an empty string.
265
+ # Corresponds to the JSON property `description`
266
+ # @return [String]
267
+ attr_accessor :description
268
+
269
+ # Optional. A column's mode indicates whether the values in this column are
270
+ # required,
271
+ # nullable, etc. Only `NULLABLE`, `REQUIRED` and `REPEATED` are supported.
272
+ # Default mode is `NULLABLE`.
273
+ # Corresponds to the JSON property `mode`
274
+ # @return [String]
275
+ attr_accessor :mode
276
+
277
+ # Optional. Schema of sub-columns. A column can have zero or more sub-columns.
278
+ # Corresponds to the JSON property `subcolumns`
279
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1ColumnSchema>]
280
+ attr_accessor :subcolumns
281
+
282
+ # Required. Type of the column.
283
+ # Corresponds to the JSON property `type`
284
+ # @return [String]
285
+ attr_accessor :type
286
+
287
+ def initialize(**args)
288
+ update!(**args)
289
+ end
290
+
291
+ # Update properties of this object
292
+ def update!(**args)
293
+ @column = args[:column] if args.key?(:column)
294
+ @description = args[:description] if args.key?(:description)
295
+ @mode = args[:mode] if args.key?(:mode)
296
+ @subcolumns = args[:subcolumns] if args.key?(:subcolumns)
297
+ @type = args[:type] if args.key?(:type)
298
+ end
299
+ end
300
+
301
+ # Entry Metadata.
302
+ # A Data Catalog Entry resource represents another resource in Google
303
+ # Cloud Platform, such as a BigQuery dataset or a Cloud Pub/Sub topic.
304
+ # Clients can use the `linked_resource` field in the Entry resource to refer to
305
+ # the original resource ID of the source system.
306
+ # An Entry resource contains resource details, such as its schema. An Entry can
307
+ # also be used to attach flexible metadata, such as a
308
+ # Tag.
309
+ class GoogleCloudDatacatalogV1beta1Entry
310
+ include Google::Apis::Core::Hashable
311
+
312
+ # Spec for a group of BigQuery tables with name pattern `[prefix]YYYYMMDD`.
313
+ # Context:
314
+ # https://cloud.google.com/bigquery/docs/partitioned-tables#
315
+ # partitioning_versus_sharding
316
+ # Corresponds to the JSON property `bigqueryDateShardedSpec`
317
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1BigQueryDateShardedSpec]
318
+ attr_accessor :bigquery_date_sharded_spec
319
+
320
+ # Describes a BigQuery table.
321
+ # Corresponds to the JSON property `bigqueryTableSpec`
322
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1BigQueryTableSpec]
323
+ attr_accessor :bigquery_table_spec
324
+
325
+ # Entry description, which can consist of several sentences or paragraphs
326
+ # that describe entry contents. Default value is an empty string.
327
+ # Corresponds to the JSON property `description`
328
+ # @return [String]
329
+ attr_accessor :description
330
+
331
+ # Display information such as title and description. A short name to identify
332
+ # the entry, for example, "Analytics Data - Jan 2011". Default value is an
333
+ # empty string.
334
+ # Corresponds to the JSON property `displayName`
335
+ # @return [String]
336
+ attr_accessor :display_name
337
+
338
+ # Describes a Cloud Storage fileset entry.
339
+ # Corresponds to the JSON property `gcsFilesetSpec`
340
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1GcsFilesetSpec]
341
+ attr_accessor :gcs_fileset_spec
342
+
343
+ # Output only. The resource this metadata entry refers to.
344
+ # For Google Cloud Platform resources, `linked_resource` is the [full name of
345
+ # the
346
+ # resource](https://cloud.google.com/apis/design/resource_names#
347
+ # full_resource_name).
348
+ # For example, the `linked_resource` for a table resource from BigQuery is:
349
+ # * //bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/
350
+ # tableId
351
+ # Corresponds to the JSON property `linkedResource`
352
+ # @return [String]
353
+ attr_accessor :linked_resource
354
+
355
+ # The Data Catalog resource name of the entry in URL format. Example:
356
+ # * projects/`project_id`/locations/`location`/entryGroups/`entry_group_id`/
357
+ # entries/`entry_id`
358
+ # Note that this Entry and its child resources may not actually be stored in
359
+ # the location in this name.
360
+ # Corresponds to the JSON property `name`
361
+ # @return [String]
362
+ attr_accessor :name
363
+
364
+ # Represents a schema (e.g. BigQuery, GoogleSQL, Avro schema).
365
+ # Corresponds to the JSON property `schema`
366
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1Schema]
367
+ attr_accessor :schema
368
+
369
+ # Timestamps about this resource according to a particular system.
370
+ # Corresponds to the JSON property `sourceSystemTimestamps`
371
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1SystemTimestamps]
372
+ attr_accessor :source_system_timestamps
373
+
374
+ # The type of the entry.
375
+ # Corresponds to the JSON property `type`
376
+ # @return [String]
377
+ attr_accessor :type
378
+
379
+ def initialize(**args)
380
+ update!(**args)
381
+ end
382
+
383
+ # Update properties of this object
384
+ def update!(**args)
385
+ @bigquery_date_sharded_spec = args[:bigquery_date_sharded_spec] if args.key?(:bigquery_date_sharded_spec)
386
+ @bigquery_table_spec = args[:bigquery_table_spec] if args.key?(:bigquery_table_spec)
387
+ @description = args[:description] if args.key?(:description)
388
+ @display_name = args[:display_name] if args.key?(:display_name)
389
+ @gcs_fileset_spec = args[:gcs_fileset_spec] if args.key?(:gcs_fileset_spec)
390
+ @linked_resource = args[:linked_resource] if args.key?(:linked_resource)
391
+ @name = args[:name] if args.key?(:name)
392
+ @schema = args[:schema] if args.key?(:schema)
393
+ @source_system_timestamps = args[:source_system_timestamps] if args.key?(:source_system_timestamps)
394
+ @type = args[:type] if args.key?(:type)
395
+ end
396
+ end
397
+
398
+ # EntryGroup Metadata.
399
+ # An EntryGroup resource represents a logical grouping of zero or more
400
+ # Data Catalog Entry resources.
401
+ class GoogleCloudDatacatalogV1beta1EntryGroup
402
+ include Google::Apis::Core::Hashable
403
+
404
+ # Timestamps about this resource according to a particular system.
405
+ # Corresponds to the JSON property `dataCatalogTimestamps`
406
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1SystemTimestamps]
407
+ attr_accessor :data_catalog_timestamps
408
+
409
+ # Entry group description, which can consist of several sentences or
410
+ # paragraphs that describe entry group contents. Default value is an empty
411
+ # string.
412
+ # Corresponds to the JSON property `description`
413
+ # @return [String]
414
+ attr_accessor :description
415
+
416
+ # A short name to identify the entry group, for example,
417
+ # "analytics data - jan 2011". Default value is an empty string.
418
+ # Corresponds to the JSON property `displayName`
419
+ # @return [String]
420
+ attr_accessor :display_name
421
+
422
+ # The resource name of the entry group in URL format. Example:
423
+ # * projects/`project_id`/locations/`location`/entryGroups/`entry_group_id`
424
+ # Note that this EntryGroup and its child resources may not actually be
425
+ # stored in the location in this name.
426
+ # Corresponds to the JSON property `name`
427
+ # @return [String]
428
+ attr_accessor :name
429
+
430
+ def initialize(**args)
431
+ update!(**args)
432
+ end
433
+
434
+ # Update properties of this object
435
+ def update!(**args)
436
+ @data_catalog_timestamps = args[:data_catalog_timestamps] if args.key?(:data_catalog_timestamps)
437
+ @description = args[:description] if args.key?(:description)
438
+ @display_name = args[:display_name] if args.key?(:display_name)
439
+ @name = args[:name] if args.key?(:name)
440
+ end
441
+ end
442
+
443
+ # Response message for
444
+ # ExportTaxonomies.
445
+ class GoogleCloudDatacatalogV1beta1ExportTaxonomiesResponse
446
+ include Google::Apis::Core::Hashable
447
+
448
+ # List of taxonomies and policy tags in a tree structure.
449
+ # Corresponds to the JSON property `taxonomies`
450
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1SerializedTaxonomy>]
451
+ attr_accessor :taxonomies
452
+
453
+ def initialize(**args)
454
+ update!(**args)
455
+ end
456
+
457
+ # Update properties of this object
458
+ def update!(**args)
459
+ @taxonomies = args[:taxonomies] if args.key?(:taxonomies)
460
+ end
461
+ end
462
+
463
+ #
464
+ class GoogleCloudDatacatalogV1beta1FieldType
465
+ include Google::Apis::Core::Hashable
466
+
467
+ # Represents an enum type.
468
+ # Corresponds to the JSON property `enumType`
469
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1FieldTypeEnumType]
470
+ attr_accessor :enum_type
471
+
472
+ # Represents primitive types - string, bool etc.
473
+ # Corresponds to the JSON property `primitiveType`
474
+ # @return [String]
475
+ attr_accessor :primitive_type
476
+
477
+ def initialize(**args)
478
+ update!(**args)
479
+ end
480
+
481
+ # Update properties of this object
482
+ def update!(**args)
483
+ @enum_type = args[:enum_type] if args.key?(:enum_type)
484
+ @primitive_type = args[:primitive_type] if args.key?(:primitive_type)
485
+ end
486
+ end
487
+
488
+ #
489
+ class GoogleCloudDatacatalogV1beta1FieldTypeEnumType
490
+ include Google::Apis::Core::Hashable
491
+
492
+ # Required on create; optional on update. The set of allowed values for
493
+ # this enum. This set must not be empty, the display names of the values in
494
+ # this set must not be empty and the display names of the values must be
495
+ # case-insensitively unique within this set. Currently, enum values can
496
+ # only be added to the list of allowed values. Deletion and renaming of
497
+ # enum values are not supported. Can have up to 500 allowed values.
498
+ # Corresponds to the JSON property `allowedValues`
499
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1FieldTypeEnumTypeEnumValue>]
500
+ attr_accessor :allowed_values
501
+
502
+ def initialize(**args)
503
+ update!(**args)
504
+ end
505
+
506
+ # Update properties of this object
507
+ def update!(**args)
508
+ @allowed_values = args[:allowed_values] if args.key?(:allowed_values)
509
+ end
510
+ end
511
+
512
+ #
513
+ class GoogleCloudDatacatalogV1beta1FieldTypeEnumTypeEnumValue
514
+ include Google::Apis::Core::Hashable
515
+
516
+ # Required. The display name of the enum value. Must not be an empty string.
517
+ # Corresponds to the JSON property `displayName`
518
+ # @return [String]
519
+ attr_accessor :display_name
520
+
521
+ def initialize(**args)
522
+ update!(**args)
523
+ end
524
+
525
+ # Update properties of this object
526
+ def update!(**args)
527
+ @display_name = args[:display_name] if args.key?(:display_name)
528
+ end
529
+ end
530
+
531
+ # Specifications of a single file in Cloud Storage.
532
+ class GoogleCloudDatacatalogV1beta1GcsFileSpec
533
+ include Google::Apis::Core::Hashable
534
+
535
+ # Required. The full file path. Example: `gs://bucket_name/a/b.txt`.
536
+ # Corresponds to the JSON property `filePath`
537
+ # @return [String]
538
+ attr_accessor :file_path
539
+
540
+ # Timestamps about this resource according to a particular system.
541
+ # Corresponds to the JSON property `gcsTimestamps`
542
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1SystemTimestamps]
543
+ attr_accessor :gcs_timestamps
544
+
545
+ # Output only. The size of the file, in bytes.
546
+ # Corresponds to the JSON property `sizeBytes`
547
+ # @return [Fixnum]
548
+ attr_accessor :size_bytes
549
+
550
+ def initialize(**args)
551
+ update!(**args)
552
+ end
553
+
554
+ # Update properties of this object
555
+ def update!(**args)
556
+ @file_path = args[:file_path] if args.key?(:file_path)
557
+ @gcs_timestamps = args[:gcs_timestamps] if args.key?(:gcs_timestamps)
558
+ @size_bytes = args[:size_bytes] if args.key?(:size_bytes)
559
+ end
560
+ end
561
+
562
+ # Describes a Cloud Storage fileset entry.
563
+ class GoogleCloudDatacatalogV1beta1GcsFilesetSpec
564
+ include Google::Apis::Core::Hashable
565
+
566
+ # Required. Patterns to identify a set of files in Google Cloud Storage. See [
567
+ # Cloud
568
+ # Storage documentation](storage/docs/gsutil/addlhelp/WildcardNames) for
569
+ # more information. Note that bucket wildcards are currently not supported.
570
+ # Examples of valid file_patterns:
571
+ # * `gs://bucket_name/dir/*`: matches all files within `bucket_name/dir`
572
+ # directory.
573
+ # * `gs://bucket_name/dir/**`: matches all files in `bucket_name/dir`
574
+ # spanning all subdirectories.
575
+ # * `gs://bucket_name/file*`: matches files prefixed by `file` in
576
+ # `bucket_name`
577
+ # * `gs://bucket_name/a/*/b`: matches all files in `bucket_name` that match
578
+ # `a/*/b` pattern, such as `a/c/b`, `a/d/b`
579
+ # * `gs://another_bucket/a.txt`: matches `gs://another_bucket/a.txt`
580
+ # Corresponds to the JSON property `filePatterns`
581
+ # @return [Array<String>]
582
+ attr_accessor :file_patterns
583
+
584
+ # Output only. Sample files contained in this fileset, not all files contained
585
+ # in this
586
+ # fileset are represented here.
587
+ # Corresponds to the JSON property `sampleGcsFileSpecs`
588
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1GcsFileSpec>]
589
+ attr_accessor :sample_gcs_file_specs
590
+
591
+ def initialize(**args)
592
+ update!(**args)
593
+ end
594
+
595
+ # Update properties of this object
596
+ def update!(**args)
597
+ @file_patterns = args[:file_patterns] if args.key?(:file_patterns)
598
+ @sample_gcs_file_specs = args[:sample_gcs_file_specs] if args.key?(:sample_gcs_file_specs)
599
+ end
600
+ end
601
+
602
+ # Request message for
603
+ # ImportTaxonomies.
604
+ class GoogleCloudDatacatalogV1beta1ImportTaxonomiesRequest
605
+ include Google::Apis::Core::Hashable
606
+
607
+ # Inline source used for taxonomies import.
608
+ # Corresponds to the JSON property `inlineSource`
609
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1InlineSource]
610
+ attr_accessor :inline_source
611
+
612
+ def initialize(**args)
613
+ update!(**args)
614
+ end
615
+
616
+ # Update properties of this object
617
+ def update!(**args)
618
+ @inline_source = args[:inline_source] if args.key?(:inline_source)
619
+ end
620
+ end
621
+
622
+ # Response message for
623
+ # ImportTaxonomies.
624
+ class GoogleCloudDatacatalogV1beta1ImportTaxonomiesResponse
625
+ include Google::Apis::Core::Hashable
626
+
627
+ # Taxonomies that were imported.
628
+ # Corresponds to the JSON property `taxonomies`
629
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1Taxonomy>]
630
+ attr_accessor :taxonomies
631
+
632
+ def initialize(**args)
633
+ update!(**args)
634
+ end
635
+
636
+ # Update properties of this object
637
+ def update!(**args)
638
+ @taxonomies = args[:taxonomies] if args.key?(:taxonomies)
639
+ end
640
+ end
641
+
642
+ # Inline source used for taxonomies import.
643
+ class GoogleCloudDatacatalogV1beta1InlineSource
644
+ include Google::Apis::Core::Hashable
645
+
646
+ # Required. Taxonomies to be imported.
647
+ # Corresponds to the JSON property `taxonomies`
648
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1SerializedTaxonomy>]
649
+ attr_accessor :taxonomies
650
+
651
+ def initialize(**args)
652
+ update!(**args)
653
+ end
654
+
655
+ # Update properties of this object
656
+ def update!(**args)
657
+ @taxonomies = args[:taxonomies] if args.key?(:taxonomies)
658
+ end
659
+ end
660
+
661
+ # Response message for
662
+ # ListPolicyTags.
663
+ class GoogleCloudDatacatalogV1beta1ListPolicyTagsResponse
664
+ include Google::Apis::Core::Hashable
665
+
666
+ # Token used to retrieve the next page of results, or empty if there are no
667
+ # more results in the list.
668
+ # Corresponds to the JSON property `nextPageToken`
669
+ # @return [String]
670
+ attr_accessor :next_page_token
671
+
672
+ # The policy tags that are in the requested taxonomy.
673
+ # Corresponds to the JSON property `policyTags`
674
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1PolicyTag>]
675
+ attr_accessor :policy_tags
676
+
677
+ def initialize(**args)
678
+ update!(**args)
679
+ end
680
+
681
+ # Update properties of this object
682
+ def update!(**args)
683
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
684
+ @policy_tags = args[:policy_tags] if args.key?(:policy_tags)
685
+ end
686
+ end
687
+
688
+ # Response message for
689
+ # ListTags.
690
+ class GoogleCloudDatacatalogV1beta1ListTagsResponse
691
+ include Google::Apis::Core::Hashable
692
+
693
+ # Token to retrieve the next page of results. It is set to empty if no items
694
+ # remain in results.
695
+ # Corresponds to the JSON property `nextPageToken`
696
+ # @return [String]
697
+ attr_accessor :next_page_token
698
+
699
+ # Tag details.
700
+ # Corresponds to the JSON property `tags`
701
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1Tag>]
702
+ attr_accessor :tags
703
+
704
+ def initialize(**args)
705
+ update!(**args)
706
+ end
707
+
708
+ # Update properties of this object
709
+ def update!(**args)
710
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
711
+ @tags = args[:tags] if args.key?(:tags)
712
+ end
713
+ end
714
+
715
+ # Response message for
716
+ # ListTaxonomies.
717
+ class GoogleCloudDatacatalogV1beta1ListTaxonomiesResponse
718
+ include Google::Apis::Core::Hashable
719
+
720
+ # Token used to retrieve the next page of results, or empty if there are no
721
+ # more results in the list.
722
+ # Corresponds to the JSON property `nextPageToken`
723
+ # @return [String]
724
+ attr_accessor :next_page_token
725
+
726
+ # Taxonomies that the project contains.
727
+ # Corresponds to the JSON property `taxonomies`
728
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1Taxonomy>]
729
+ attr_accessor :taxonomies
730
+
731
+ def initialize(**args)
732
+ update!(**args)
733
+ end
734
+
735
+ # Update properties of this object
736
+ def update!(**args)
737
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
738
+ @taxonomies = args[:taxonomies] if args.key?(:taxonomies)
739
+ end
740
+ end
741
+
742
+ # Denotes one policy tag in a taxonomy (e.g. ssn). Policy Tags can be defined
743
+ # in a hierarchy. For example, consider the following hierachy:
744
+ # Geolocation
745
+ # |
746
+ # ------------------------------------
747
+ # | | |
748
+ # LatLong City ZipCode
749
+ # PolicyTag "Geolocation" contains three child policy tags: "LatLong",
750
+ # "City", and "ZipCode".
751
+ class GoogleCloudDatacatalogV1beta1PolicyTag
752
+ include Google::Apis::Core::Hashable
753
+
754
+ # Output only. Resource names of child policy tags of this policy tag.
755
+ # Corresponds to the JSON property `childPolicyTags`
756
+ # @return [Array<String>]
757
+ attr_accessor :child_policy_tags
758
+
759
+ # Description of this policy tag. It must: contain only unicode characters,
760
+ # tabs, newlines, carriage returns and page breaks; and be at most 2000 bytes
761
+ # long when encoded in UTF-8. If not set, defaults to an empty description.
762
+ # If not set, defaults to an empty description.
763
+ # Corresponds to the JSON property `description`
764
+ # @return [String]
765
+ attr_accessor :description
766
+
767
+ # Required. User defined name of this policy tag. It must: be unique within the
768
+ # parent
769
+ # taxonomy; contain only unicode letters, numbers, underscores, dashes and
770
+ # spaces; not start or end with spaces; and be at most 200 bytes long when
771
+ # encoded in UTF-8.
772
+ # Corresponds to the JSON property `displayName`
773
+ # @return [String]
774
+ attr_accessor :display_name
775
+
776
+ # Output only. Resource name of this policy tag, whose format is:
777
+ # "projects/`project_number`/locations/`location_id`/taxonomies/`taxonomy_id`/
778
+ # policyTags/`id`".
779
+ # Corresponds to the JSON property `name`
780
+ # @return [String]
781
+ attr_accessor :name
782
+
783
+ # Resource name of this policy tag's parent policy tag (e.g. for the
784
+ # "LatLong" policy tag in the example above, this field contains the
785
+ # resource name of the "Geolocation" policy tag). If empty, it means this
786
+ # policy tag is a top level policy tag (e.g. this field is empty for the
787
+ # "Geolocation" policy tag in the example above). If not set, defaults to an
788
+ # empty string.
789
+ # Corresponds to the JSON property `parentPolicyTag`
790
+ # @return [String]
791
+ attr_accessor :parent_policy_tag
792
+
793
+ def initialize(**args)
794
+ update!(**args)
795
+ end
796
+
797
+ # Update properties of this object
798
+ def update!(**args)
799
+ @child_policy_tags = args[:child_policy_tags] if args.key?(:child_policy_tags)
800
+ @description = args[:description] if args.key?(:description)
801
+ @display_name = args[:display_name] if args.key?(:display_name)
802
+ @name = args[:name] if args.key?(:name)
803
+ @parent_policy_tag = args[:parent_policy_tag] if args.key?(:parent_policy_tag)
804
+ end
805
+ end
806
+
807
+ # Request message for
808
+ # RenameTagTemplateField.
809
+ class GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldRequest
810
+ include Google::Apis::Core::Hashable
811
+
812
+ # Required. The new ID of this tag template field. For example, `my_new_field`.
813
+ # Corresponds to the JSON property `newTagTemplateFieldId`
814
+ # @return [String]
815
+ attr_accessor :new_tag_template_field_id
816
+
817
+ def initialize(**args)
818
+ update!(**args)
819
+ end
820
+
821
+ # Update properties of this object
822
+ def update!(**args)
823
+ @new_tag_template_field_id = args[:new_tag_template_field_id] if args.key?(:new_tag_template_field_id)
824
+ end
825
+ end
826
+
827
+ # Represents a schema (e.g. BigQuery, GoogleSQL, Avro schema).
828
+ class GoogleCloudDatacatalogV1beta1Schema
829
+ include Google::Apis::Core::Hashable
830
+
831
+ # Required. Schema of columns. A maximum of 10,000 columns and sub-columns can
832
+ # be
833
+ # specified.
834
+ # Corresponds to the JSON property `columns`
835
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1ColumnSchema>]
836
+ attr_accessor :columns
837
+
838
+ def initialize(**args)
839
+ update!(**args)
840
+ end
841
+
842
+ # Update properties of this object
843
+ def update!(**args)
844
+ @columns = args[:columns] if args.key?(:columns)
845
+ end
846
+ end
847
+
848
+ # Request message for
849
+ # SearchCatalog.
850
+ class GoogleCloudDatacatalogV1beta1SearchCatalogRequest
851
+ include Google::Apis::Core::Hashable
852
+
853
+ # Specifies the ordering of results, currently supported case-sensitive
854
+ # choices are:
855
+ # * `relevance`, only supports desecending
856
+ # * `last_access_timestamp [asc|desc]`, defaults to descending if not
857
+ # specified
858
+ # * `last_modified_timestamp [asc|desc]`, defaults to descending if not
859
+ # specified
860
+ # If not specified, defaults to `relevance` descending.
861
+ # Corresponds to the JSON property `orderBy`
862
+ # @return [String]
863
+ attr_accessor :order_by
864
+
865
+ # Number of results in the search page. If <=0 then defaults to 10. Max limit
866
+ # for page_size is 1000. Throws an invalid argument for page_size > 1000.
867
+ # Corresponds to the JSON property `pageSize`
868
+ # @return [Fixnum]
869
+ attr_accessor :page_size
870
+
871
+ # Optional. Pagination token returned in an earlier
872
+ # SearchCatalogResponse.next_page_token, which
873
+ # indicates that this is a continuation of a prior
874
+ # SearchCatalogRequest
875
+ # call, and that the system should return the next page of data. If empty,
876
+ # the first page is returned.
877
+ # Corresponds to the JSON property `pageToken`
878
+ # @return [String]
879
+ attr_accessor :page_token
880
+
881
+ # Required. The query string in search query syntax. The query must be non-empty.
882
+ # Query strings can be simple as "x" or more qualified as:
883
+ # * name:x
884
+ # * column:x
885
+ # * description:y
886
+ # Note: Query tokens need to have a minimum of 3 characters for substring
887
+ # matching to work correctly. See [Data Catalog Search
888
+ # Syntax](/data-catalog/docs/how-to/search-reference) for more information.
889
+ # Corresponds to the JSON property `query`
890
+ # @return [String]
891
+ attr_accessor :query
892
+
893
+ # Required. The scope of this search request.
894
+ # Corresponds to the JSON property `scope`
895
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1SearchCatalogRequestScope]
896
+ attr_accessor :scope
897
+
898
+ def initialize(**args)
899
+ update!(**args)
900
+ end
901
+
902
+ # Update properties of this object
903
+ def update!(**args)
904
+ @order_by = args[:order_by] if args.key?(:order_by)
905
+ @page_size = args[:page_size] if args.key?(:page_size)
906
+ @page_token = args[:page_token] if args.key?(:page_token)
907
+ @query = args[:query] if args.key?(:query)
908
+ @scope = args[:scope] if args.key?(:scope)
909
+ end
910
+ end
911
+
912
+ #
913
+ class GoogleCloudDatacatalogV1beta1SearchCatalogRequestScope
914
+ include Google::Apis::Core::Hashable
915
+
916
+ # If `true`, include Google Cloud Platform (GCP) public datasets in the
917
+ # search results. Info on GCP public datasets is available at
918
+ # https://cloud.google.com/public-datasets/. By default, GCP public
919
+ # datasets are excluded.
920
+ # Corresponds to the JSON property `includeGcpPublicDatasets`
921
+ # @return [Boolean]
922
+ attr_accessor :include_gcp_public_datasets
923
+ alias_method :include_gcp_public_datasets?, :include_gcp_public_datasets
924
+
925
+ # Data Catalog tries to automatically choose the right corpus of data to
926
+ # search through. You can ensure an organization is included by adding it
927
+ # to `include_org_ids`. You can ensure a project's org is included with
928
+ # `include_project_ids`. You must specify at least one organization
929
+ # using `include_org_ids` or `include_project_ids` in all search requests.
930
+ # List of organization IDs to search within. To find your organization ID,
931
+ # follow instructions in
932
+ # https://cloud.google.com/resource-manager/docs/creating-managing-organization.
933
+ # Corresponds to the JSON property `includeOrgIds`
934
+ # @return [Array<String>]
935
+ attr_accessor :include_org_ids
936
+
937
+ # List of project IDs to search within. To learn more about the
938
+ # distinction between project names/IDs/numbers, go to
939
+ # https://cloud.google.com/docs/overview/#projects.
940
+ # Corresponds to the JSON property `includeProjectIds`
941
+ # @return [Array<String>]
942
+ attr_accessor :include_project_ids
943
+
944
+ def initialize(**args)
945
+ update!(**args)
946
+ end
947
+
948
+ # Update properties of this object
949
+ def update!(**args)
950
+ @include_gcp_public_datasets = args[:include_gcp_public_datasets] if args.key?(:include_gcp_public_datasets)
951
+ @include_org_ids = args[:include_org_ids] if args.key?(:include_org_ids)
952
+ @include_project_ids = args[:include_project_ids] if args.key?(:include_project_ids)
953
+ end
954
+ end
955
+
956
+ # Response message for
957
+ # SearchCatalog.
958
+ class GoogleCloudDatacatalogV1beta1SearchCatalogResponse
959
+ include Google::Apis::Core::Hashable
960
+
961
+ # The token that can be used to retrieve the next page of results.
962
+ # Corresponds to the JSON property `nextPageToken`
963
+ # @return [String]
964
+ attr_accessor :next_page_token
965
+
966
+ # Search results.
967
+ # Corresponds to the JSON property `results`
968
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1SearchCatalogResult>]
969
+ attr_accessor :results
970
+
971
+ def initialize(**args)
972
+ update!(**args)
973
+ end
974
+
975
+ # Update properties of this object
976
+ def update!(**args)
977
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
978
+ @results = args[:results] if args.key?(:results)
979
+ end
980
+ end
981
+
982
+ # A result that appears in the response of a search request. Each result
983
+ # captures details of one entry that matches the search.
984
+ class GoogleCloudDatacatalogV1beta1SearchCatalogResult
985
+ include Google::Apis::Core::Hashable
986
+
987
+ # The full name of the cloud resource the entry belongs to. See:
988
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name.
989
+ # Example:
990
+ # * `//bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/
991
+ # tableId`
992
+ # Corresponds to the JSON property `linkedResource`
993
+ # @return [String]
994
+ attr_accessor :linked_resource
995
+
996
+ # The relative resource name of the resource in URL format.
997
+ # Examples:
998
+ # * `projects/`project_id`/locations/`location_id`/entryGroups/`entry_group_id`/
999
+ # entries/`entry_id``
1000
+ # * `projects/`project_id`/tagTemplates/`tag_template_id``
1001
+ # Corresponds to the JSON property `relativeResourceName`
1002
+ # @return [String]
1003
+ attr_accessor :relative_resource_name
1004
+
1005
+ # Sub-type of the search result. This is a dot-delimited description of the
1006
+ # resource's full type, and is the same as the value callers would provide in
1007
+ # the "type" search facet. Examples: `entry.table`, `entry.dataStream`,
1008
+ # `tagTemplate`.
1009
+ # Corresponds to the JSON property `searchResultSubtype`
1010
+ # @return [String]
1011
+ attr_accessor :search_result_subtype
1012
+
1013
+ # Type of the search result. This field can be used to determine which Get
1014
+ # method to call to fetch the full resource.
1015
+ # Corresponds to the JSON property `searchResultType`
1016
+ # @return [String]
1017
+ attr_accessor :search_result_type
1018
+
1019
+ def initialize(**args)
1020
+ update!(**args)
1021
+ end
1022
+
1023
+ # Update properties of this object
1024
+ def update!(**args)
1025
+ @linked_resource = args[:linked_resource] if args.key?(:linked_resource)
1026
+ @relative_resource_name = args[:relative_resource_name] if args.key?(:relative_resource_name)
1027
+ @search_result_subtype = args[:search_result_subtype] if args.key?(:search_result_subtype)
1028
+ @search_result_type = args[:search_result_type] if args.key?(:search_result_type)
1029
+ end
1030
+ end
1031
+
1032
+ # Message representing one policy tag when exported as a nested proto.
1033
+ class GoogleCloudDatacatalogV1beta1SerializedPolicyTag
1034
+ include Google::Apis::Core::Hashable
1035
+
1036
+ # Children of the policy tag if any.
1037
+ # Corresponds to the JSON property `childPolicyTags`
1038
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1SerializedPolicyTag>]
1039
+ attr_accessor :child_policy_tags
1040
+
1041
+ # Description of the serialized policy tag. The length of the
1042
+ # description is limited to 2000 bytes when encoded in UTF-8. If not set,
1043
+ # defaults to an empty description.
1044
+ # Corresponds to the JSON property `description`
1045
+ # @return [String]
1046
+ attr_accessor :description
1047
+
1048
+ # Required. Display name of the policy tag. Max 200 bytes when encoded in UTF-8.
1049
+ # Corresponds to the JSON property `displayName`
1050
+ # @return [String]
1051
+ attr_accessor :display_name
1052
+
1053
+ def initialize(**args)
1054
+ update!(**args)
1055
+ end
1056
+
1057
+ # Update properties of this object
1058
+ def update!(**args)
1059
+ @child_policy_tags = args[:child_policy_tags] if args.key?(:child_policy_tags)
1060
+ @description = args[:description] if args.key?(:description)
1061
+ @display_name = args[:display_name] if args.key?(:display_name)
1062
+ end
1063
+ end
1064
+
1065
+ # Message capturing a taxonomy and its policy tag hierarchy as a nested proto.
1066
+ # Used for taxonomy import/export and mutation.
1067
+ class GoogleCloudDatacatalogV1beta1SerializedTaxonomy
1068
+ include Google::Apis::Core::Hashable
1069
+
1070
+ # Description of the serialized taxonomy. The length of the
1071
+ # description is limited to 2000 bytes when encoded in UTF-8. If not set,
1072
+ # defaults to an empty description.
1073
+ # Corresponds to the JSON property `description`
1074
+ # @return [String]
1075
+ attr_accessor :description
1076
+
1077
+ # Required. Display name of the taxonomy. Max 200 bytes when encoded in UTF-8.
1078
+ # Corresponds to the JSON property `displayName`
1079
+ # @return [String]
1080
+ attr_accessor :display_name
1081
+
1082
+ # Top level policy tags associated with the taxonomy if any.
1083
+ # Corresponds to the JSON property `policyTags`
1084
+ # @return [Array<Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1SerializedPolicyTag>]
1085
+ attr_accessor :policy_tags
1086
+
1087
+ def initialize(**args)
1088
+ update!(**args)
1089
+ end
1090
+
1091
+ # Update properties of this object
1092
+ def update!(**args)
1093
+ @description = args[:description] if args.key?(:description)
1094
+ @display_name = args[:display_name] if args.key?(:display_name)
1095
+ @policy_tags = args[:policy_tags] if args.key?(:policy_tags)
1096
+ end
1097
+ end
1098
+
1099
+ # Timestamps about this resource according to a particular system.
1100
+ class GoogleCloudDatacatalogV1beta1SystemTimestamps
1101
+ include Google::Apis::Core::Hashable
1102
+
1103
+ # The creation time of the resource within the given system.
1104
+ # Corresponds to the JSON property `createTime`
1105
+ # @return [String]
1106
+ attr_accessor :create_time
1107
+
1108
+ # Output only. The expiration time of the resource within the given system.
1109
+ # Currently only apllicable to BigQuery resources.
1110
+ # Corresponds to the JSON property `expireTime`
1111
+ # @return [String]
1112
+ attr_accessor :expire_time
1113
+
1114
+ # The last-modified time of the resource within the given system.
1115
+ # Corresponds to the JSON property `updateTime`
1116
+ # @return [String]
1117
+ attr_accessor :update_time
1118
+
1119
+ def initialize(**args)
1120
+ update!(**args)
1121
+ end
1122
+
1123
+ # Update properties of this object
1124
+ def update!(**args)
1125
+ @create_time = args[:create_time] if args.key?(:create_time)
1126
+ @expire_time = args[:expire_time] if args.key?(:expire_time)
1127
+ @update_time = args[:update_time] if args.key?(:update_time)
1128
+ end
1129
+ end
1130
+
1131
+ # Normal BigQuery table spec.
1132
+ class GoogleCloudDatacatalogV1beta1TableSpec
1133
+ include Google::Apis::Core::Hashable
1134
+
1135
+ # Output only. If the table is a dated shard, i.e., with name pattern `[prefix]
1136
+ # YYYYMMDD`,
1137
+ # `grouped_entry` is the Data Catalog resource name of the date sharded
1138
+ # grouped entry, for example,
1139
+ # `projects/`project_id`/locations/`location`/entrygroups/`entry_group_id`/
1140
+ # entries/`entry_id``.
1141
+ # Otherwise, `grouped_entry` is empty.
1142
+ # Corresponds to the JSON property `groupedEntry`
1143
+ # @return [String]
1144
+ attr_accessor :grouped_entry
1145
+
1146
+ def initialize(**args)
1147
+ update!(**args)
1148
+ end
1149
+
1150
+ # Update properties of this object
1151
+ def update!(**args)
1152
+ @grouped_entry = args[:grouped_entry] if args.key?(:grouped_entry)
1153
+ end
1154
+ end
1155
+
1156
+ # Tags are used to attach custom metadata to Data Catalog resources. Tags
1157
+ # conform to the specifications within their tag template.
1158
+ # See [Data Catalog IAM](/data-catalog/docs/concepts/iam) for information on
1159
+ # the permissions needed to create or view tags.
1160
+ class GoogleCloudDatacatalogV1beta1Tag
1161
+ include Google::Apis::Core::Hashable
1162
+
1163
+ # Resources like Entry can have schemas associated with them. This scope
1164
+ # allows users to attach tags to an individual column based on that schema.
1165
+ # For attaching a tag to a nested column, use `.` to separate the column
1166
+ # names. Example:
1167
+ # * `outer_column.inner_column`
1168
+ # Corresponds to the JSON property `column`
1169
+ # @return [String]
1170
+ attr_accessor :column
1171
+
1172
+ # Required. This maps the ID of a tag field to the value of and additional
1173
+ # information
1174
+ # about that field. Valid field IDs are defined by the tag's template. A tag
1175
+ # must have at least 1 field and at most 500 fields.
1176
+ # Corresponds to the JSON property `fields`
1177
+ # @return [Hash<String,Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1TagField>]
1178
+ attr_accessor :fields
1179
+
1180
+ # The resource name of the tag in URL format. Example:
1181
+ # * projects/`project_id`/locations/`location`/entrygroups/`entry_group_id`/
1182
+ # entries/`entry_id`/tags/`tag_id`
1183
+ # where `tag_id` is a system-generated identifier.
1184
+ # Note that this Tag may not actually be stored in the location in this name.
1185
+ # Corresponds to the JSON property `name`
1186
+ # @return [String]
1187
+ attr_accessor :name
1188
+
1189
+ # Required. The resource name of the tag template that this tag uses. Example:
1190
+ # * projects/`project_id`/locations/`location`/tagTemplates/`tag_template_id`
1191
+ # This field cannot be modified after creation.
1192
+ # Corresponds to the JSON property `template`
1193
+ # @return [String]
1194
+ attr_accessor :template
1195
+
1196
+ # Output only. The display name of the tag template.
1197
+ # Corresponds to the JSON property `templateDisplayName`
1198
+ # @return [String]
1199
+ attr_accessor :template_display_name
1200
+
1201
+ def initialize(**args)
1202
+ update!(**args)
1203
+ end
1204
+
1205
+ # Update properties of this object
1206
+ def update!(**args)
1207
+ @column = args[:column] if args.key?(:column)
1208
+ @fields = args[:fields] if args.key?(:fields)
1209
+ @name = args[:name] if args.key?(:name)
1210
+ @template = args[:template] if args.key?(:template)
1211
+ @template_display_name = args[:template_display_name] if args.key?(:template_display_name)
1212
+ end
1213
+ end
1214
+
1215
+ # Contains the value and supporting information for a field within
1216
+ # a Tag.
1217
+ class GoogleCloudDatacatalogV1beta1TagField
1218
+ include Google::Apis::Core::Hashable
1219
+
1220
+ # Holds the value for a tag field with boolean type.
1221
+ # Corresponds to the JSON property `boolValue`
1222
+ # @return [Boolean]
1223
+ attr_accessor :bool_value
1224
+ alias_method :bool_value?, :bool_value
1225
+
1226
+ # Output only. The display name of this field.
1227
+ # Corresponds to the JSON property `displayName`
1228
+ # @return [String]
1229
+ attr_accessor :display_name
1230
+
1231
+ # Holds the value for a tag field with double type.
1232
+ # Corresponds to the JSON property `doubleValue`
1233
+ # @return [Float]
1234
+ attr_accessor :double_value
1235
+
1236
+ # Holds an enum value.
1237
+ # Corresponds to the JSON property `enumValue`
1238
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1TagFieldEnumValue]
1239
+ attr_accessor :enum_value
1240
+
1241
+ # Holds the value for a tag field with string type.
1242
+ # Corresponds to the JSON property `stringValue`
1243
+ # @return [String]
1244
+ attr_accessor :string_value
1245
+
1246
+ # Holds the value for a tag field with timestamp type.
1247
+ # Corresponds to the JSON property `timestampValue`
1248
+ # @return [String]
1249
+ attr_accessor :timestamp_value
1250
+
1251
+ def initialize(**args)
1252
+ update!(**args)
1253
+ end
1254
+
1255
+ # Update properties of this object
1256
+ def update!(**args)
1257
+ @bool_value = args[:bool_value] if args.key?(:bool_value)
1258
+ @display_name = args[:display_name] if args.key?(:display_name)
1259
+ @double_value = args[:double_value] if args.key?(:double_value)
1260
+ @enum_value = args[:enum_value] if args.key?(:enum_value)
1261
+ @string_value = args[:string_value] if args.key?(:string_value)
1262
+ @timestamp_value = args[:timestamp_value] if args.key?(:timestamp_value)
1263
+ end
1264
+ end
1265
+
1266
+ # Holds an enum value.
1267
+ class GoogleCloudDatacatalogV1beta1TagFieldEnumValue
1268
+ include Google::Apis::Core::Hashable
1269
+
1270
+ # The display name of the enum value.
1271
+ # Corresponds to the JSON property `displayName`
1272
+ # @return [String]
1273
+ attr_accessor :display_name
1274
+
1275
+ def initialize(**args)
1276
+ update!(**args)
1277
+ end
1278
+
1279
+ # Update properties of this object
1280
+ def update!(**args)
1281
+ @display_name = args[:display_name] if args.key?(:display_name)
1282
+ end
1283
+ end
1284
+
1285
+ # A tag template defines the schema of the tags used to attach to Data Catalog
1286
+ # resources. It defines the mapping of accepted field names and types that can
1287
+ # be used within the tag. The tag template also controls the access to the tag.
1288
+ class GoogleCloudDatacatalogV1beta1TagTemplate
1289
+ include Google::Apis::Core::Hashable
1290
+
1291
+ # The display name for this template. Defaults to an empty string.
1292
+ # Corresponds to the JSON property `displayName`
1293
+ # @return [String]
1294
+ attr_accessor :display_name
1295
+
1296
+ # Required. Map of tag template field IDs to the settings for the field.
1297
+ # This map is an exhaustive list of the allowed fields. This map must contain
1298
+ # at least one field and at most 500 fields.
1299
+ # The keys to this map are tag template field IDs. Field IDs can contain
1300
+ # letters (both uppercase and lowercase), numbers (0-9) and underscores (_).
1301
+ # Field IDs must be at least 1 character long and at most
1302
+ # 64 characters long. Field IDs must start with a letter or underscore.
1303
+ # Corresponds to the JSON property `fields`
1304
+ # @return [Hash<String,Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1TagTemplateField>]
1305
+ attr_accessor :fields
1306
+
1307
+ # The resource name of the tag template in URL format. Example:
1308
+ # * projects/`project_id`/locations/`location`/tagTemplates/`tag_template_id`
1309
+ # Note that this TagTemplate and its child resources may not actually be
1310
+ # stored in the location in this name.
1311
+ # Corresponds to the JSON property `name`
1312
+ # @return [String]
1313
+ attr_accessor :name
1314
+
1315
+ def initialize(**args)
1316
+ update!(**args)
1317
+ end
1318
+
1319
+ # Update properties of this object
1320
+ def update!(**args)
1321
+ @display_name = args[:display_name] if args.key?(:display_name)
1322
+ @fields = args[:fields] if args.key?(:fields)
1323
+ @name = args[:name] if args.key?(:name)
1324
+ end
1325
+ end
1326
+
1327
+ # The template for an individual field within a tag template.
1328
+ class GoogleCloudDatacatalogV1beta1TagTemplateField
1329
+ include Google::Apis::Core::Hashable
1330
+
1331
+ # The display name for this field. Defaults to an empty string.
1332
+ # Corresponds to the JSON property `displayName`
1333
+ # @return [String]
1334
+ attr_accessor :display_name
1335
+
1336
+ # Output only. The resource name of the tag template field in URL format.
1337
+ # Example:
1338
+ # * projects/`project_id`/locations/`location`/tagTemplates/`tag_template`/
1339
+ # fields/`field`
1340
+ # Note that this TagTemplateField may not actually be stored in the location
1341
+ # in this name.
1342
+ # Corresponds to the JSON property `name`
1343
+ # @return [String]
1344
+ attr_accessor :name
1345
+
1346
+ # Required. The type of value this tag field can contain.
1347
+ # Corresponds to the JSON property `type`
1348
+ # @return [Google::Apis::DatacatalogV1beta1::GoogleCloudDatacatalogV1beta1FieldType]
1349
+ attr_accessor :type
1350
+
1351
+ def initialize(**args)
1352
+ update!(**args)
1353
+ end
1354
+
1355
+ # Update properties of this object
1356
+ def update!(**args)
1357
+ @display_name = args[:display_name] if args.key?(:display_name)
1358
+ @name = args[:name] if args.key?(:name)
1359
+ @type = args[:type] if args.key?(:type)
1360
+ end
1361
+ end
1362
+
1363
+ # A taxonomy is a collection of policy tags that classify data along a common
1364
+ # axis. For instance a data *sensitivity* taxonomy could contain policy tags
1365
+ # denoting PII such as age, zipcode, and SSN. A data *origin* taxonomy could
1366
+ # contain policy tags to distinguish user data, employee data, partner data,
1367
+ # public data.
1368
+ class GoogleCloudDatacatalogV1beta1Taxonomy
1369
+ include Google::Apis::Core::Hashable
1370
+
1371
+ # Optional. A list of policy types that are activated for this taxonomy. If not
1372
+ # set,
1373
+ # defaults to an empty list.
1374
+ # Corresponds to the JSON property `activatedPolicyTypes`
1375
+ # @return [Array<String>]
1376
+ attr_accessor :activated_policy_types
1377
+
1378
+ # Optional. Description of this taxonomy. It must: contain only unicode
1379
+ # characters,
1380
+ # tabs, newlines, carriage returns and page breaks; and be at most 2000 bytes
1381
+ # long when encoded in UTF-8. If not set, defaults to an empty description.
1382
+ # Corresponds to the JSON property `description`
1383
+ # @return [String]
1384
+ attr_accessor :description
1385
+
1386
+ # Required. User defined name of this taxonomy. It must: contain only unicode
1387
+ # letters,
1388
+ # numbers, underscores, dashes and spaces; not start or end with spaces; and
1389
+ # be at most 200 bytes long when encoded in UTF-8.
1390
+ # Corresponds to the JSON property `displayName`
1391
+ # @return [String]
1392
+ attr_accessor :display_name
1393
+
1394
+ # Output only. Resource name of this taxonomy, whose format is:
1395
+ # "projects/`project_number`/locations/`location_id`/taxonomies/`id`".
1396
+ # Corresponds to the JSON property `name`
1397
+ # @return [String]
1398
+ attr_accessor :name
1399
+
1400
+ def initialize(**args)
1401
+ update!(**args)
1402
+ end
1403
+
1404
+ # Update properties of this object
1405
+ def update!(**args)
1406
+ @activated_policy_types = args[:activated_policy_types] if args.key?(:activated_policy_types)
1407
+ @description = args[:description] if args.key?(:description)
1408
+ @display_name = args[:display_name] if args.key?(:display_name)
1409
+ @name = args[:name] if args.key?(:name)
1410
+ end
1411
+ end
1412
+
1413
+ # Table view specification.
1414
+ class GoogleCloudDatacatalogV1beta1ViewSpec
1415
+ include Google::Apis::Core::Hashable
1416
+
1417
+ # Output only. The query that defines the table view.
1418
+ # Corresponds to the JSON property `viewQuery`
1419
+ # @return [String]
1420
+ attr_accessor :view_query
1421
+
1422
+ def initialize(**args)
1423
+ update!(**args)
1424
+ end
1425
+
1426
+ # Update properties of this object
1427
+ def update!(**args)
1428
+ @view_query = args[:view_query] if args.key?(:view_query)
1429
+ end
1430
+ end
1431
+
1432
+ # Defines an Identity and Access Management (IAM) policy. It is used to
1433
+ # specify access control policies for Cloud Platform resources.
1434
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1435
+ # `members` to a single `role`. Members can be user accounts, service accounts,
1436
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
1437
+ # permissions (defined by IAM or configured by users). A `binding` can
1438
+ # optionally specify a `condition`, which is a logic expression that further
1439
+ # constrains the role binding based on attributes about the request and/or
1440
+ # target resource.
1441
+ # **JSON Example**
1442
+ # `
1443
+ # "bindings": [
1444
+ # `
1445
+ # "role": "roles/resourcemanager.organizationAdmin",
1446
+ # "members": [
1447
+ # "user:mike@example.com",
1448
+ # "group:admins@example.com",
1449
+ # "domain:google.com",
1450
+ # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
1451
+ # ]
1452
+ # `,
1453
+ # `
1454
+ # "role": "roles/resourcemanager.organizationViewer",
1455
+ # "members": ["user:eve@example.com"],
1456
+ # "condition": `
1457
+ # "title": "expirable access",
1458
+ # "description": "Does not grant access after Sep 2020",
1459
+ # "expression": "request.time <
1460
+ # timestamp('2020-10-01T00:00:00.000Z')",
1461
+ # `
1462
+ # `
1463
+ # ]
1464
+ # `
1465
+ # **YAML Example**
1466
+ # bindings:
1467
+ # - members:
1468
+ # - user:mike@example.com
1469
+ # - group:admins@example.com
1470
+ # - domain:google.com
1471
+ # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1472
+ # role: roles/resourcemanager.organizationAdmin
1473
+ # - members:
1474
+ # - user:eve@example.com
1475
+ # role: roles/resourcemanager.organizationViewer
1476
+ # condition:
1477
+ # title: expirable access
1478
+ # description: Does not grant access after Sep 2020
1479
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
1480
+ # For a description of IAM and its features, see the
1481
+ # [IAM developer's guide](https://cloud.google.com/iam/docs).
1482
+ class Policy
1483
+ include Google::Apis::Core::Hashable
1484
+
1485
+ # Associates a list of `members` to a `role`. Optionally may specify a
1486
+ # `condition` that determines when binding is in effect.
1487
+ # `bindings` with no members will result in an error.
1488
+ # Corresponds to the JSON property `bindings`
1489
+ # @return [Array<Google::Apis::DatacatalogV1beta1::Binding>]
1490
+ attr_accessor :bindings
1491
+
1492
+ # `etag` is used for optimistic concurrency control as a way to help
1493
+ # prevent simultaneous updates of a policy from overwriting each other.
1494
+ # It is strongly suggested that systems make use of the `etag` in the
1495
+ # read-modify-write cycle to perform policy updates in order to avoid race
1496
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1497
+ # systems are expected to put that etag in the request to `setIamPolicy` to
1498
+ # ensure that their change will be applied to the same version of the policy.
1499
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
1500
+ # policy is overwritten. Due to blind-set semantics of an etag-less policy,
1501
+ # 'setIamPolicy' will not fail even if the incoming policy version does not
1502
+ # meet the requirements for modifying the stored policy.
1503
+ # Corresponds to the JSON property `etag`
1504
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1505
+ # @return [String]
1506
+ attr_accessor :etag
1507
+
1508
+ # Specifies the format of the policy.
1509
+ # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
1510
+ # rejected.
1511
+ # Operations affecting conditional bindings must specify version 3. This can
1512
+ # be either setting a conditional policy, modifying a conditional binding,
1513
+ # or removing a binding (conditional or unconditional) from the stored
1514
+ # conditional policy.
1515
+ # Operations on non-conditional policies may specify any valid value or
1516
+ # leave the field unset.
1517
+ # If no etag is provided in the call to `setIamPolicy`, version compliance
1518
+ # checks against the stored policy is skipped.
1519
+ # Corresponds to the JSON property `version`
1520
+ # @return [Fixnum]
1521
+ attr_accessor :version
1522
+
1523
+ def initialize(**args)
1524
+ update!(**args)
1525
+ end
1526
+
1527
+ # Update properties of this object
1528
+ def update!(**args)
1529
+ @bindings = args[:bindings] if args.key?(:bindings)
1530
+ @etag = args[:etag] if args.key?(:etag)
1531
+ @version = args[:version] if args.key?(:version)
1532
+ end
1533
+ end
1534
+
1535
+ # Request message for `SetIamPolicy` method.
1536
+ class SetIamPolicyRequest
1537
+ include Google::Apis::Core::Hashable
1538
+
1539
+ # Defines an Identity and Access Management (IAM) policy. It is used to
1540
+ # specify access control policies for Cloud Platform resources.
1541
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1542
+ # `members` to a single `role`. Members can be user accounts, service accounts,
1543
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
1544
+ # permissions (defined by IAM or configured by users). A `binding` can
1545
+ # optionally specify a `condition`, which is a logic expression that further
1546
+ # constrains the role binding based on attributes about the request and/or
1547
+ # target resource.
1548
+ # **JSON Example**
1549
+ # `
1550
+ # "bindings": [
1551
+ # `
1552
+ # "role": "roles/resourcemanager.organizationAdmin",
1553
+ # "members": [
1554
+ # "user:mike@example.com",
1555
+ # "group:admins@example.com",
1556
+ # "domain:google.com",
1557
+ # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
1558
+ # ]
1559
+ # `,
1560
+ # `
1561
+ # "role": "roles/resourcemanager.organizationViewer",
1562
+ # "members": ["user:eve@example.com"],
1563
+ # "condition": `
1564
+ # "title": "expirable access",
1565
+ # "description": "Does not grant access after Sep 2020",
1566
+ # "expression": "request.time <
1567
+ # timestamp('2020-10-01T00:00:00.000Z')",
1568
+ # `
1569
+ # `
1570
+ # ]
1571
+ # `
1572
+ # **YAML Example**
1573
+ # bindings:
1574
+ # - members:
1575
+ # - user:mike@example.com
1576
+ # - group:admins@example.com
1577
+ # - domain:google.com
1578
+ # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1579
+ # role: roles/resourcemanager.organizationAdmin
1580
+ # - members:
1581
+ # - user:eve@example.com
1582
+ # role: roles/resourcemanager.organizationViewer
1583
+ # condition:
1584
+ # title: expirable access
1585
+ # description: Does not grant access after Sep 2020
1586
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
1587
+ # For a description of IAM and its features, see the
1588
+ # [IAM developer's guide](https://cloud.google.com/iam/docs).
1589
+ # Corresponds to the JSON property `policy`
1590
+ # @return [Google::Apis::DatacatalogV1beta1::Policy]
1591
+ attr_accessor :policy
1592
+
1593
+ def initialize(**args)
1594
+ update!(**args)
1595
+ end
1596
+
1597
+ # Update properties of this object
1598
+ def update!(**args)
1599
+ @policy = args[:policy] if args.key?(:policy)
1600
+ end
1601
+ end
1602
+
1603
+ # Request message for `TestIamPermissions` method.
1604
+ class TestIamPermissionsRequest
1605
+ include Google::Apis::Core::Hashable
1606
+
1607
+ # The set of permissions to check for the `resource`. Permissions with
1608
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
1609
+ # information see
1610
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
1611
+ # Corresponds to the JSON property `permissions`
1612
+ # @return [Array<String>]
1613
+ attr_accessor :permissions
1614
+
1615
+ def initialize(**args)
1616
+ update!(**args)
1617
+ end
1618
+
1619
+ # Update properties of this object
1620
+ def update!(**args)
1621
+ @permissions = args[:permissions] if args.key?(:permissions)
1622
+ end
1623
+ end
1624
+
1625
+ # Response message for `TestIamPermissions` method.
1626
+ class TestIamPermissionsResponse
1627
+ include Google::Apis::Core::Hashable
1628
+
1629
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
1630
+ # allowed.
1631
+ # Corresponds to the JSON property `permissions`
1632
+ # @return [Array<String>]
1633
+ attr_accessor :permissions
1634
+
1635
+ def initialize(**args)
1636
+ update!(**args)
1637
+ end
1638
+
1639
+ # Update properties of this object
1640
+ def update!(**args)
1641
+ @permissions = args[:permissions] if args.key?(:permissions)
1642
+ end
1643
+ end
1644
+ end
1645
+ end
1646
+ end