google-api-client 0.32.1 → 0.40.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 (948) hide show
  1. checksums.yaml +5 -5
  2. data/.kokoro/continuous/linux.cfg +2 -2
  3. data/.kokoro/continuous/post.cfg +30 -0
  4. data/.kokoro/presubmit/linux.cfg +1 -1
  5. data/.kokoro/release.cfg +94 -0
  6. data/.repo-metadata.json +5 -0
  7. data/.rubocop.yml +5 -0
  8. data/.yardopts +16 -2
  9. data/CHANGELOG.md +1354 -0
  10. data/Gemfile +1 -0
  11. data/OVERVIEW.md +36 -0
  12. data/README.md +50 -2
  13. data/Rakefile +71 -2
  14. data/api_list_config.yaml +1 -0
  15. data/api_names.yaml +2 -0
  16. data/bin/generate-api +10 -2
  17. data/docs/api-keys.md +20 -0
  18. data/docs/auth.md +53 -0
  19. data/docs/client-secrets.md +69 -0
  20. data/docs/getting-started.md +340 -0
  21. data/docs/installation.md +0 -0
  22. data/docs/logging.md +34 -0
  23. data/docs/media-upload.md +25 -0
  24. data/docs/oauth-installed.md +191 -0
  25. data/docs/oauth-server.md +135 -0
  26. data/docs/oauth-web.md +280 -0
  27. data/docs/oauth.md +268 -0
  28. data/docs/pagination.md +29 -0
  29. data/docs/performance.md +25 -0
  30. data/generated/google/apis/abusiveexperiencereport_v1.rb +1 -4
  31. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +1 -1
  32. data/generated/google/apis/accessapproval_v1/classes.rb +417 -0
  33. data/generated/google/apis/accessapproval_v1/representations.rb +203 -0
  34. data/generated/google/apis/accessapproval_v1/service.rb +869 -0
  35. data/generated/google/apis/{servicebroker_v1.rb → accessapproval_v1.rb} +8 -10
  36. data/generated/google/apis/accessapproval_v1beta1/classes.rb +35 -2
  37. data/generated/google/apis/accessapproval_v1beta1/representations.rb +13 -0
  38. data/generated/google/apis/accessapproval_v1beta1/service.rb +108 -6
  39. data/generated/google/apis/accessapproval_v1beta1.rb +1 -1
  40. data/generated/google/apis/accesscontextmanager_v1/classes.rb +357 -56
  41. data/generated/google/apis/accesscontextmanager_v1/representations.rb +137 -6
  42. data/generated/google/apis/accesscontextmanager_v1/service.rb +143 -5
  43. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  44. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +133 -125
  45. data/generated/google/apis/accesscontextmanager_v1beta/representations.rb +21 -27
  46. data/generated/google/apis/accesscontextmanager_v1beta/service.rb +6 -5
  47. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  48. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +35 -5
  49. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +4 -0
  50. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  51. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +24 -2
  52. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +1 -0
  53. data/generated/google/apis/adexchangebuyer_v1_3.rb +1 -1
  54. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +25 -3
  55. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +1 -0
  56. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  57. data/generated/google/apis/adexperiencereport_v1.rb +1 -4
  58. data/generated/google/apis/admin_datatransfer_v1/classes.rb +5 -5
  59. data/generated/google/apis/admin_datatransfer_v1/service.rb +2 -2
  60. data/generated/google/apis/admin_datatransfer_v1.rb +1 -1
  61. data/generated/google/apis/admin_directory_v1/classes.rb +4 -150
  62. data/generated/google/apis/admin_directory_v1/representations.rb +0 -54
  63. data/generated/google/apis/admin_directory_v1/service.rb +0 -60
  64. data/generated/google/apis/admin_directory_v1.rb +4 -1
  65. data/generated/google/apis/admin_reports_v1/classes.rb +87 -44
  66. data/generated/google/apis/admin_reports_v1/service.rb +310 -64
  67. data/generated/google/apis/admin_reports_v1.rb +2 -2
  68. data/generated/google/apis/admob_v1/classes.rb +951 -0
  69. data/generated/google/apis/admob_v1/representations.rb +378 -0
  70. data/generated/google/apis/admob_v1/service.rb +196 -0
  71. data/generated/google/apis/{analytics_v2_4/classes.rb → admob_v1.rb} +11 -6
  72. data/generated/google/apis/adsense_v1_4.rb +1 -1
  73. data/generated/google/apis/adsensehost_v4_1/service.rb +5 -1
  74. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  75. data/generated/google/apis/alertcenter_v1beta1/classes.rb +259 -7
  76. data/generated/google/apis/alertcenter_v1beta1/representations.rb +126 -0
  77. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  78. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  79. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +2 -2
  80. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  81. data/generated/google/apis/androidenterprise_v1/classes.rb +39 -60
  82. data/generated/google/apis/androidenterprise_v1/representations.rb +1 -0
  83. data/generated/google/apis/androidenterprise_v1/service.rb +0 -403
  84. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  85. data/generated/google/apis/androidmanagement_v1/classes.rb +203 -6
  86. data/generated/google/apis/androidmanagement_v1/representations.rb +68 -0
  87. data/generated/google/apis/androidmanagement_v1/service.rb +6 -1
  88. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  89. data/generated/google/apis/androidpublisher_v1/classes.rb +0 -41
  90. data/generated/google/apis/androidpublisher_v1/representations.rb +0 -16
  91. data/generated/google/apis/androidpublisher_v1/service.rb +1 -81
  92. data/generated/google/apis/androidpublisher_v1.rb +1 -4
  93. data/generated/google/apis/androidpublisher_v1_1/classes.rb +0 -41
  94. data/generated/google/apis/androidpublisher_v1_1/representations.rb +0 -16
  95. data/generated/google/apis/androidpublisher_v1_1/service.rb +0 -80
  96. data/generated/google/apis/androidpublisher_v1_1.rb +1 -1
  97. data/generated/google/apis/androidpublisher_v2/classes.rb +37 -1755
  98. data/generated/google/apis/androidpublisher_v2/representations.rb +15 -804
  99. data/generated/google/apis/androidpublisher_v2/service.rb +0 -2359
  100. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  101. data/generated/google/apis/androidpublisher_v3/classes.rb +404 -65
  102. data/generated/google/apis/androidpublisher_v3/representations.rb +180 -27
  103. data/generated/google/apis/androidpublisher_v3/service.rb +162 -3
  104. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  105. data/generated/google/apis/apigee_v1/classes.rb +4928 -0
  106. data/generated/google/apis/apigee_v1/representations.rb +1822 -0
  107. data/generated/google/apis/apigee_v1/service.rb +5578 -0
  108. data/generated/google/apis/apigee_v1.rb +40 -0
  109. data/generated/google/apis/appengine_v1/classes.rb +7 -0
  110. data/generated/google/apis/appengine_v1/representations.rb +1 -0
  111. data/generated/google/apis/appengine_v1/service.rb +10 -6
  112. data/generated/google/apis/appengine_v1.rb +1 -1
  113. data/generated/google/apis/appengine_v1alpha.rb +1 -1
  114. data/generated/google/apis/appengine_v1beta/classes.rb +7 -38
  115. data/generated/google/apis/appengine_v1beta/representations.rb +1 -17
  116. data/generated/google/apis/appengine_v1beta/service.rb +10 -6
  117. data/generated/google/apis/appengine_v1beta.rb +1 -1
  118. data/generated/google/apis/appsactivity_v1.rb +1 -1
  119. data/generated/google/apis/appsmarket_v2.rb +1 -1
  120. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1 → artifactregistry_v1beta1}/classes.rb +591 -765
  121. data/generated/google/apis/{servicebroker_v1alpha1 → artifactregistry_v1beta1}/representations.rb +128 -115
  122. data/generated/google/apis/artifactregistry_v1beta1/service.rb +957 -0
  123. data/generated/google/apis/artifactregistry_v1beta1.rb +38 -0
  124. data/generated/google/apis/bigquery_v2/classes.rb +993 -43
  125. data/generated/google/apis/bigquery_v2/representations.rb +273 -2
  126. data/generated/google/apis/bigquery_v2/service.rb +137 -4
  127. data/generated/google/apis/bigquery_v2.rb +1 -1
  128. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +149 -59
  129. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +2 -0
  130. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +11 -10
  131. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  132. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +49 -0
  133. data/generated/google/apis/bigquerydatatransfer_v1/representations.rb +19 -0
  134. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +90 -34
  135. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  136. data/generated/google/apis/bigqueryreservation_v1/classes.rb +392 -16
  137. data/generated/google/apis/bigqueryreservation_v1/representations.rb +174 -6
  138. data/generated/google/apis/bigqueryreservation_v1/service.rb +758 -0
  139. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  140. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +109 -10
  141. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +26 -3
  142. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +71 -0
  143. data/generated/google/apis/bigqueryreservation_v1alpha2.rb +1 -1
  144. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +166 -160
  145. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +49 -38
  146. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +257 -146
  147. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  148. data/generated/google/apis/bigtableadmin_v1/classes.rb +21 -18
  149. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  150. data/generated/google/apis/bigtableadmin_v2/classes.rb +189 -82
  151. data/generated/google/apis/bigtableadmin_v2/service.rb +170 -58
  152. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  153. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +413 -0
  154. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +197 -0
  155. data/generated/google/apis/billingbudgets_v1beta1/service.rb +244 -0
  156. data/generated/google/apis/{servicebroker_v1beta1.rb → billingbudgets_v1beta1.rb} +9 -10
  157. data/generated/google/apis/binaryauthorization_v1/classes.rb +143 -58
  158. data/generated/google/apis/binaryauthorization_v1/service.rb +10 -2
  159. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  160. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +139 -57
  161. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +10 -2
  162. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  163. data/generated/google/apis/blogger_v2/classes.rb +297 -45
  164. data/generated/google/apis/blogger_v2/representations.rb +105 -26
  165. data/generated/google/apis/blogger_v2/service.rb +79 -134
  166. data/generated/google/apis/blogger_v2.rb +5 -4
  167. data/generated/google/apis/blogger_v3/classes.rb +60 -53
  168. data/generated/google/apis/blogger_v3/representations.rb +10 -18
  169. data/generated/google/apis/blogger_v3/service.rb +183 -463
  170. data/generated/google/apis/blogger_v3.rb +4 -3
  171. data/generated/google/apis/books_v1/classes.rb +494 -242
  172. data/generated/google/apis/books_v1/representations.rb +145 -72
  173. data/generated/google/apis/books_v1/service.rb +354 -484
  174. data/generated/google/apis/books_v1.rb +3 -3
  175. data/generated/google/apis/calendar_v3/classes.rb +8 -21
  176. data/generated/google/apis/calendar_v3/service.rb +18 -30
  177. data/generated/google/apis/calendar_v3.rb +1 -1
  178. data/generated/google/apis/chat_v1/classes.rb +29 -3
  179. data/generated/google/apis/chat_v1/representations.rb +3 -0
  180. data/generated/google/apis/chat_v1/service.rb +5 -2
  181. data/generated/google/apis/chat_v1.rb +1 -1
  182. data/generated/google/apis/chromeuxreport_v1/classes.rb +297 -0
  183. data/generated/google/apis/chromeuxreport_v1/representations.rb +147 -0
  184. data/generated/google/apis/chromeuxreport_v1/service.rb +92 -0
  185. data/generated/google/apis/{pagespeedonline_v1.rb → chromeuxreport_v1.rb} +9 -9
  186. data/generated/google/apis/civicinfo_v2/classes.rb +0 -156
  187. data/generated/google/apis/civicinfo_v2/representations.rb +2 -60
  188. data/generated/google/apis/civicinfo_v2.rb +1 -1
  189. data/generated/google/apis/classroom_v1/classes.rb +14 -14
  190. data/generated/google/apis/classroom_v1/service.rb +11 -11
  191. data/generated/google/apis/classroom_v1.rb +1 -1
  192. data/generated/google/apis/cloudasset_v1/classes.rb +917 -195
  193. data/generated/google/apis/cloudasset_v1/representations.rb +234 -6
  194. data/generated/google/apis/cloudasset_v1/service.rb +363 -12
  195. data/generated/google/apis/cloudasset_v1.rb +2 -2
  196. data/generated/google/apis/cloudasset_v1beta1/classes.rb +139 -57
  197. data/generated/google/apis/cloudasset_v1beta1/service.rb +13 -4
  198. data/generated/google/apis/cloudasset_v1beta1.rb +2 -2
  199. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +701 -0
  200. data/generated/google/apis/cloudasset_v1p1beta1/representations.rb +201 -0
  201. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +189 -0
  202. data/generated/google/apis/cloudasset_v1p1beta1.rb +34 -0
  203. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +924 -0
  204. data/generated/google/apis/cloudasset_v1p4beta1/representations.rb +377 -0
  205. data/generated/google/apis/cloudasset_v1p4beta1/service.rb +217 -0
  206. data/generated/google/apis/cloudasset_v1p4beta1.rb +34 -0
  207. data/generated/google/apis/cloudbilling_v1/classes.rb +179 -68
  208. data/generated/google/apis/cloudbilling_v1/representations.rb +0 -1
  209. data/generated/google/apis/cloudbilling_v1/service.rb +16 -9
  210. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  211. data/generated/google/apis/cloudbuild_v1/classes.rb +55 -10
  212. data/generated/google/apis/cloudbuild_v1/representations.rb +5 -0
  213. data/generated/google/apis/cloudbuild_v1/service.rb +139 -18
  214. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  215. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +170 -5
  216. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +63 -0
  217. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +121 -5
  218. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  219. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +1283 -0
  220. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +491 -0
  221. data/generated/google/apis/cloudbuild_v1alpha2/service.rb +353 -0
  222. data/generated/google/apis/cloudbuild_v1alpha2.rb +34 -0
  223. data/generated/google/apis/clouddebugger_v2/classes.rb +34 -0
  224. data/generated/google/apis/clouddebugger_v2/representations.rb +4 -0
  225. data/generated/google/apis/clouddebugger_v2/service.rb +24 -17
  226. data/generated/google/apis/clouddebugger_v2.rb +2 -2
  227. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +1 -1
  228. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +13 -13
  229. data/generated/google/apis/clouderrorreporting_v1beta1.rb +2 -2
  230. data/generated/google/apis/cloudfunctions_v1/classes.rb +161 -59
  231. data/generated/google/apis/cloudfunctions_v1/representations.rb +3 -0
  232. data/generated/google/apis/cloudfunctions_v1/service.rb +13 -4
  233. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  234. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +7 -0
  235. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +1 -0
  236. data/generated/google/apis/cloudfunctions_v1beta2/service.rb +10 -4
  237. data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
  238. data/generated/google/apis/cloudidentity_v1/classes.rb +11 -8
  239. data/generated/google/apis/cloudidentity_v1/service.rb +22 -14
  240. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  241. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +1009 -69
  242. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +390 -0
  243. data/generated/google/apis/cloudidentity_v1beta1/service.rb +189 -78
  244. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  245. data/generated/google/apis/cloudiot_v1/classes.rb +142 -57
  246. data/generated/google/apis/cloudiot_v1.rb +1 -1
  247. data/generated/google/apis/cloudkms_v1/classes.rb +461 -61
  248. data/generated/google/apis/cloudkms_v1/representations.rb +33 -0
  249. data/generated/google/apis/cloudkms_v1/service.rb +15 -3
  250. data/generated/google/apis/cloudkms_v1.rb +1 -1
  251. data/generated/google/apis/cloudprofiler_v2.rb +1 -1
  252. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +155 -71
  253. data/generated/google/apis/cloudresourcemanager_v1/service.rb +6 -3
  254. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  255. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +143 -59
  256. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +1 -1
  257. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  258. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +147 -67
  259. data/generated/google/apis/cloudresourcemanager_v2/service.rb +11 -13
  260. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  261. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +147 -67
  262. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +11 -13
  263. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  264. data/generated/google/apis/cloudscheduler_v1/classes.rb +3 -2
  265. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  266. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +3 -2
  267. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  268. data/generated/google/apis/cloudsearch_v1/classes.rb +86 -195
  269. data/generated/google/apis/cloudsearch_v1/representations.rb +1 -75
  270. data/generated/google/apis/cloudsearch_v1/service.rb +62 -10
  271. data/generated/google/apis/cloudsearch_v1.rb +8 -8
  272. data/generated/google/apis/cloudshell_v1/classes.rb +24 -1
  273. data/generated/google/apis/cloudshell_v1/representations.rb +3 -0
  274. data/generated/google/apis/cloudshell_v1.rb +1 -1
  275. data/generated/google/apis/cloudshell_v1alpha1/classes.rb +30 -1
  276. data/generated/google/apis/cloudshell_v1alpha1/representations.rb +5 -0
  277. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  278. data/generated/google/apis/cloudtasks_v2/classes.rb +388 -70
  279. data/generated/google/apis/cloudtasks_v2/representations.rb +65 -0
  280. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  281. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +148 -66
  282. data/generated/google/apis/cloudtasks_v2beta2/service.rb +6 -1
  283. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  284. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +156 -74
  285. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  286. data/generated/google/apis/cloudtrace_v1/service.rb +10 -4
  287. data/generated/google/apis/cloudtrace_v1.rb +5 -5
  288. data/generated/google/apis/cloudtrace_v2/classes.rb +8 -7
  289. data/generated/google/apis/cloudtrace_v2/service.rb +8 -4
  290. data/generated/google/apis/cloudtrace_v2.rb +5 -5
  291. data/generated/google/apis/cloudtrace_v2beta1/classes.rb +143 -0
  292. data/generated/google/apis/{oauth2_v1 → cloudtrace_v2beta1}/representations.rb +36 -27
  293. data/generated/google/apis/cloudtrace_v2beta1/service.rb +258 -0
  294. data/generated/google/apis/cloudtrace_v2beta1.rb +44 -0
  295. data/generated/google/apis/composer_v1/classes.rb +180 -0
  296. data/generated/google/apis/composer_v1/representations.rb +54 -0
  297. data/generated/google/apis/composer_v1.rb +1 -1
  298. data/generated/google/apis/composer_v1beta1/classes.rb +152 -5
  299. data/generated/google/apis/composer_v1beta1/representations.rb +64 -0
  300. data/generated/google/apis/composer_v1beta1/service.rb +5 -0
  301. data/generated/google/apis/composer_v1beta1.rb +1 -1
  302. data/generated/google/apis/compute_alpha/classes.rb +3252 -973
  303. data/generated/google/apis/compute_alpha/representations.rb +634 -69
  304. data/generated/google/apis/compute_alpha/service.rb +9085 -6210
  305. data/generated/google/apis/compute_alpha.rb +1 -1
  306. data/generated/google/apis/compute_beta/classes.rb +4787 -1066
  307. data/generated/google/apis/compute_beta/representations.rb +1394 -31
  308. data/generated/google/apis/compute_beta/service.rb +8858 -5018
  309. data/generated/google/apis/compute_beta.rb +1 -1
  310. data/generated/google/apis/compute_v1/classes.rb +2976 -599
  311. data/generated/google/apis/compute_v1/representations.rb +850 -0
  312. data/generated/google/apis/compute_v1/service.rb +4634 -2481
  313. data/generated/google/apis/compute_v1.rb +1 -1
  314. data/generated/google/apis/container_v1/classes.rb +925 -164
  315. data/generated/google/apis/container_v1/representations.rb +278 -0
  316. data/generated/google/apis/container_v1/service.rb +175 -158
  317. data/generated/google/apis/container_v1.rb +1 -1
  318. data/generated/google/apis/container_v1beta1/classes.rb +803 -340
  319. data/generated/google/apis/container_v1beta1/representations.rb +185 -39
  320. data/generated/google/apis/container_v1beta1/service.rb +294 -277
  321. data/generated/google/apis/container_v1beta1.rb +1 -1
  322. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +142 -57
  323. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  324. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +478 -59
  325. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +159 -0
  326. data/generated/google/apis/containeranalysis_v1beta1/service.rb +26 -20
  327. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  328. data/generated/google/apis/content_v2/classes.rb +1566 -634
  329. data/generated/google/apis/content_v2/representations.rb +78 -115
  330. data/generated/google/apis/content_v2/service.rb +81 -206
  331. data/generated/google/apis/content_v2.rb +1 -1
  332. data/generated/google/apis/content_v2_1/classes.rb +2706 -683
  333. data/generated/google/apis/content_v2_1/representations.rb +551 -0
  334. data/generated/google/apis/content_v2_1/service.rb +520 -46
  335. data/generated/google/apis/content_v2_1.rb +1 -1
  336. data/generated/google/apis/customsearch_v1/classes.rb +1194 -353
  337. data/generated/google/apis/customsearch_v1/representations.rb +166 -95
  338. data/generated/google/apis/customsearch_v1/service.rb +373 -104
  339. data/generated/google/apis/customsearch_v1.rb +3 -3
  340. data/generated/google/apis/datacatalog_v1beta1/classes.rb +1907 -0
  341. data/generated/google/apis/datacatalog_v1beta1/representations.rb +739 -0
  342. data/generated/google/apis/datacatalog_v1beta1/service.rb +2247 -0
  343. data/generated/google/apis/{cloudprivatecatalog_v1beta1.rb → datacatalog_v1beta1.rb} +9 -9
  344. data/generated/google/apis/dataflow_v1b3/classes.rb +786 -11
  345. data/generated/google/apis/dataflow_v1b3/representations.rb +377 -1
  346. data/generated/google/apis/dataflow_v1b3/service.rb +626 -0
  347. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  348. data/generated/google/apis/datafusion_v1beta1/classes.rb +245 -362
  349. data/generated/google/apis/datafusion_v1beta1/representations.rb +29 -112
  350. data/generated/google/apis/datafusion_v1beta1/service.rb +15 -2
  351. data/generated/google/apis/datafusion_v1beta1.rb +1 -1
  352. data/generated/google/apis/dataproc_v1/classes.rb +533 -177
  353. data/generated/google/apis/dataproc_v1/representations.rb +85 -0
  354. data/generated/google/apis/dataproc_v1/service.rb +102 -36
  355. data/generated/google/apis/dataproc_v1.rb +1 -1
  356. data/generated/google/apis/dataproc_v1beta2/classes.rb +477 -182
  357. data/generated/google/apis/dataproc_v1beta2/representations.rb +81 -0
  358. data/generated/google/apis/dataproc_v1beta2/service.rb +199 -43
  359. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  360. data/generated/google/apis/datastore_v1/classes.rb +17 -23
  361. data/generated/google/apis/datastore_v1/service.rb +93 -9
  362. data/generated/google/apis/datastore_v1.rb +1 -1
  363. data/generated/google/apis/datastore_v1beta1.rb +1 -1
  364. data/generated/google/apis/datastore_v1beta3/classes.rb +6 -5
  365. data/generated/google/apis/datastore_v1beta3/service.rb +7 -7
  366. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  367. data/generated/google/apis/deploymentmanager_alpha/classes.rb +362 -176
  368. data/generated/google/apis/deploymentmanager_alpha/representations.rb +22 -4
  369. data/generated/google/apis/deploymentmanager_alpha/service.rb +198 -311
  370. data/generated/google/apis/deploymentmanager_alpha.rb +1 -1
  371. data/generated/google/apis/deploymentmanager_v2/classes.rb +295 -146
  372. data/generated/google/apis/deploymentmanager_v2/representations.rb +17 -1
  373. data/generated/google/apis/deploymentmanager_v2/service.rb +101 -99
  374. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  375. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +350 -170
  376. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +18 -1
  377. data/generated/google/apis/deploymentmanager_v2beta/service.rb +154 -152
  378. data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
  379. data/generated/google/apis/dfareporting_v3_3/classes.rb +39 -13
  380. data/generated/google/apis/dfareporting_v3_3/service.rb +9 -8
  381. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  382. data/generated/google/apis/{dfareporting_v3_2 → dfareporting_v3_4}/classes.rb +1361 -813
  383. data/generated/google/apis/{dfareporting_v3_2 → dfareporting_v3_4}/representations.rb +639 -396
  384. data/generated/google/apis/{dfareporting_v3_2 → dfareporting_v3_4}/service.rb +969 -1076
  385. data/generated/google/apis/{dfareporting_v3_2.rb → dfareporting_v3_4.rb} +6 -6
  386. data/generated/google/apis/dialogflow_v2/classes.rb +1778 -219
  387. data/generated/google/apis/dialogflow_v2/representations.rb +603 -0
  388. data/generated/google/apis/dialogflow_v2/service.rb +849 -158
  389. data/generated/google/apis/dialogflow_v2.rb +1 -1
  390. data/generated/google/apis/dialogflow_v2beta1/classes.rb +1776 -242
  391. data/generated/google/apis/dialogflow_v2beta1/representations.rb +592 -0
  392. data/generated/google/apis/dialogflow_v2beta1/service.rb +436 -172
  393. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  394. data/generated/google/apis/dialogflow_v3alpha1/classes.rb +5579 -0
  395. data/generated/google/apis/dialogflow_v3alpha1/representations.rb +2295 -0
  396. data/generated/google/apis/dialogflow_v3alpha1/service.rb +296 -0
  397. data/generated/google/apis/dialogflow_v3alpha1.rb +38 -0
  398. data/generated/google/apis/digitalassetlinks_v1.rb +1 -1
  399. data/generated/google/apis/displayvideo_v1/classes.rb +7527 -0
  400. data/generated/google/apis/displayvideo_v1/representations.rb +3034 -0
  401. data/generated/google/apis/displayvideo_v1/service.rb +3126 -0
  402. data/generated/google/apis/displayvideo_v1.rb +38 -0
  403. data/generated/google/apis/dlp_v2/classes.rb +798 -130
  404. data/generated/google/apis/dlp_v2/representations.rb +277 -3
  405. data/generated/google/apis/dlp_v2/service.rb +2074 -231
  406. data/generated/google/apis/dlp_v2.rb +1 -1
  407. data/generated/google/apis/dns_v1/classes.rb +220 -251
  408. data/generated/google/apis/dns_v1/representations.rb +49 -0
  409. data/generated/google/apis/dns_v1/service.rb +21 -141
  410. data/generated/google/apis/dns_v1.rb +1 -1
  411. data/generated/google/apis/dns_v1beta2/classes.rb +224 -261
  412. data/generated/google/apis/dns_v1beta2/representations.rb +49 -0
  413. data/generated/google/apis/dns_v1beta2/service.rb +21 -141
  414. data/generated/google/apis/dns_v1beta2.rb +1 -1
  415. data/generated/google/apis/dns_v2beta1/classes.rb +220 -251
  416. data/generated/google/apis/dns_v2beta1/representations.rb +49 -0
  417. data/generated/google/apis/dns_v2beta1/service.rb +21 -141
  418. data/generated/google/apis/dns_v2beta1.rb +1 -1
  419. data/generated/google/apis/docs_v1/classes.rb +608 -2
  420. data/generated/google/apis/docs_v1/representations.rb +211 -0
  421. data/generated/google/apis/docs_v1.rb +1 -1
  422. data/generated/google/apis/domainsrdap_v1.rb +1 -1
  423. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +1 -1
  424. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  425. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +860 -0
  426. data/generated/google/apis/doubleclickbidmanager_v1_1/representations.rb +388 -0
  427. data/generated/google/apis/{surveys_v2 → doubleclickbidmanager_v1_1}/service.rb +140 -110
  428. data/generated/google/apis/{proximitybeacon_v1beta1.rb → doubleclickbidmanager_v1_1.rb} +11 -11
  429. data/generated/google/apis/doubleclicksearch_v2/service.rb +0 -55
  430. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  431. data/generated/google/apis/drive_v2/classes.rb +58 -5
  432. data/generated/google/apis/drive_v2/representations.rb +18 -0
  433. data/generated/google/apis/drive_v2/service.rb +92 -118
  434. data/generated/google/apis/drive_v2.rb +1 -1
  435. data/generated/google/apis/drive_v3/classes.rb +66 -5
  436. data/generated/google/apis/drive_v3/representations.rb +18 -0
  437. data/generated/google/apis/drive_v3/service.rb +46 -14
  438. data/generated/google/apis/drive_v3.rb +1 -1
  439. data/generated/google/apis/driveactivity_v2/classes.rb +15 -5
  440. data/generated/google/apis/driveactivity_v2/representations.rb +2 -0
  441. data/generated/google/apis/driveactivity_v2.rb +1 -1
  442. data/generated/google/apis/factchecktools_v1alpha1.rb +1 -1
  443. data/generated/google/apis/fcm_v1/classes.rb +15 -0
  444. data/generated/google/apis/fcm_v1/representations.rb +2 -0
  445. data/generated/google/apis/fcm_v1.rb +1 -1
  446. data/generated/google/apis/file_v1/classes.rb +1235 -158
  447. data/generated/google/apis/file_v1/representations.rb +401 -22
  448. data/generated/google/apis/file_v1/service.rb +14 -10
  449. data/generated/google/apis/file_v1.rb +1 -1
  450. data/generated/google/apis/file_v1beta1/classes.rb +1236 -159
  451. data/generated/google/apis/file_v1beta1/representations.rb +401 -22
  452. data/generated/google/apis/file_v1beta1/service.rb +18 -11
  453. data/generated/google/apis/file_v1beta1.rb +1 -1
  454. data/generated/google/apis/firebase_v1beta1/classes.rb +20 -16
  455. data/generated/google/apis/firebase_v1beta1/representations.rb +2 -0
  456. data/generated/google/apis/firebase_v1beta1/service.rb +22 -16
  457. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  458. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  459. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +174 -1
  460. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +65 -0
  461. data/generated/google/apis/firebasehosting_v1beta1/service.rb +805 -2
  462. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  463. data/generated/google/apis/firebaseml_v1/classes.rb +213 -0
  464. data/generated/google/apis/{servicebroker_v1 → firebaseml_v1}/representations.rb +26 -28
  465. data/generated/google/apis/firebaseml_v1/service.rb +181 -0
  466. data/generated/google/apis/firebaseml_v1.rb +34 -0
  467. data/generated/google/apis/firebaseml_v1beta2/classes.rb +344 -0
  468. data/generated/google/apis/{cloudprivatecatalog_v1beta1 → firebaseml_v1beta2}/representations.rb +62 -31
  469. data/generated/google/apis/firebaseml_v1beta2/service.rb +267 -0
  470. data/generated/google/apis/firebaseml_v1beta2.rb +34 -0
  471. data/generated/google/apis/firebaserules_v1/classes.rb +113 -0
  472. data/generated/google/apis/firebaserules_v1/representations.rb +52 -0
  473. data/generated/google/apis/firebaserules_v1.rb +1 -1
  474. data/generated/google/apis/firestore_v1/classes.rb +16 -5
  475. data/generated/google/apis/firestore_v1/representations.rb +2 -0
  476. data/generated/google/apis/firestore_v1/service.rb +26 -24
  477. data/generated/google/apis/firestore_v1.rb +1 -1
  478. data/generated/google/apis/firestore_v1beta1/classes.rb +16 -5
  479. data/generated/google/apis/firestore_v1beta1/representations.rb +2 -0
  480. data/generated/google/apis/firestore_v1beta1/service.rb +18 -16
  481. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  482. data/generated/google/apis/firestore_v1beta2.rb +1 -1
  483. data/generated/google/apis/fitness_v1/classes.rb +189 -153
  484. data/generated/google/apis/fitness_v1/service.rb +192 -198
  485. data/generated/google/apis/fitness_v1.rb +14 -14
  486. data/generated/google/apis/games_configuration_v1configuration/classes.rb +38 -53
  487. data/generated/google/apis/games_configuration_v1configuration/service.rb +58 -169
  488. data/generated/google/apis/games_configuration_v1configuration.rb +4 -3
  489. data/generated/google/apis/games_management_v1management/classes.rb +50 -109
  490. data/generated/google/apis/games_management_v1management/representations.rb +0 -30
  491. data/generated/google/apis/games_management_v1management/service.rb +116 -452
  492. data/generated/google/apis/games_management_v1management.rb +6 -4
  493. data/generated/google/apis/games_v1/classes.rb +14 -293
  494. data/generated/google/apis/games_v1/representations.rb +2 -98
  495. data/generated/google/apis/games_v1/service.rb +3 -135
  496. data/generated/google/apis/games_v1.rb +1 -1
  497. data/generated/google/apis/gameservices_v1beta/classes.rb +2354 -0
  498. data/generated/google/apis/gameservices_v1beta/representations.rb +971 -0
  499. data/generated/google/apis/gameservices_v1beta/service.rb +1472 -0
  500. data/generated/google/apis/gameservices_v1beta.rb +34 -0
  501. data/generated/google/apis/genomics_v1.rb +1 -1
  502. data/generated/google/apis/genomics_v1alpha2.rb +1 -1
  503. data/generated/google/apis/genomics_v2alpha1/classes.rb +32 -0
  504. data/generated/google/apis/genomics_v2alpha1/representations.rb +16 -0
  505. data/generated/google/apis/genomics_v2alpha1/service.rb +34 -0
  506. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  507. data/generated/google/apis/gmail_v1/classes.rb +6 -2
  508. data/generated/google/apis/gmail_v1/service.rb +1 -1
  509. data/generated/google/apis/gmail_v1.rb +13 -1
  510. data/generated/google/apis/healthcare_v1/classes.rb +2659 -0
  511. data/generated/google/apis/healthcare_v1/representations.rb +1114 -0
  512. data/generated/google/apis/healthcare_v1/service.rb +3439 -0
  513. data/generated/google/apis/healthcare_v1.rb +34 -0
  514. data/generated/google/apis/healthcare_v1beta1/classes.rb +1013 -128
  515. data/generated/google/apis/healthcare_v1beta1/representations.rb +341 -1
  516. data/generated/google/apis/healthcare_v1beta1/service.rb +762 -275
  517. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  518. data/generated/google/apis/homegraph_v1/classes.rb +79 -56
  519. data/generated/google/apis/homegraph_v1/representations.rb +2 -1
  520. data/generated/google/apis/homegraph_v1/service.rb +43 -47
  521. data/generated/google/apis/homegraph_v1.rb +1 -1
  522. data/generated/google/apis/iam_v1/classes.rb +201 -169
  523. data/generated/google/apis/iam_v1/representations.rb +1 -6
  524. data/generated/google/apis/iam_v1/service.rb +18 -21
  525. data/generated/google/apis/iam_v1.rb +1 -1
  526. data/generated/google/apis/iamcredentials_v1/classes.rb +40 -8
  527. data/generated/google/apis/iamcredentials_v1/service.rb +4 -4
  528. data/generated/google/apis/iamcredentials_v1.rb +1 -1
  529. data/generated/google/apis/iap_v1/classes.rb +691 -59
  530. data/generated/google/apis/iap_v1/representations.rb +254 -0
  531. data/generated/google/apis/iap_v1/service.rb +362 -0
  532. data/generated/google/apis/iap_v1.rb +1 -1
  533. data/generated/google/apis/iap_v1beta1/classes.rb +144 -59
  534. data/generated/google/apis/iap_v1beta1.rb +1 -1
  535. data/generated/google/apis/indexing_v3.rb +1 -1
  536. data/generated/google/apis/jobs_v2/classes.rb +167 -0
  537. data/generated/google/apis/jobs_v2/representations.rb +40 -0
  538. data/generated/google/apis/jobs_v2.rb +1 -1
  539. data/generated/google/apis/jobs_v3/classes.rb +180 -0
  540. data/generated/google/apis/jobs_v3/representations.rb +41 -0
  541. data/generated/google/apis/jobs_v3.rb +1 -1
  542. data/generated/google/apis/jobs_v3p1beta1/classes.rb +187 -2
  543. data/generated/google/apis/jobs_v3p1beta1/representations.rb +41 -0
  544. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  545. data/generated/google/apis/kgsearch_v1.rb +1 -1
  546. data/generated/google/apis/language_v1/classes.rb +6 -6
  547. data/generated/google/apis/language_v1.rb +1 -1
  548. data/generated/google/apis/language_v1beta1/classes.rb +5 -5
  549. data/generated/google/apis/language_v1beta1.rb +1 -1
  550. data/generated/google/apis/language_v1beta2/classes.rb +23 -7
  551. data/generated/google/apis/language_v1beta2/representations.rb +2 -0
  552. data/generated/google/apis/language_v1beta2.rb +1 -1
  553. data/generated/google/apis/libraryagent_v1.rb +1 -1
  554. data/generated/google/apis/licensing_v1/classes.rb +15 -7
  555. data/generated/google/apis/licensing_v1/service.rb +81 -37
  556. data/generated/google/apis/licensing_v1.rb +4 -4
  557. data/generated/google/apis/lifesciences_v2beta/classes.rb +1329 -0
  558. data/generated/google/apis/lifesciences_v2beta/representations.rb +533 -0
  559. data/generated/google/apis/lifesciences_v2beta/service.rb +303 -0
  560. data/generated/google/apis/lifesciences_v2beta.rb +35 -0
  561. data/generated/google/apis/logging_v2/classes.rb +292 -91
  562. data/generated/google/apis/logging_v2/representations.rb +51 -0
  563. data/generated/google/apis/logging_v2/service.rb +888 -15
  564. data/generated/google/apis/logging_v2.rb +6 -6
  565. data/generated/google/apis/managedidentities_v1/classes.rb +1571 -0
  566. data/generated/google/apis/managedidentities_v1/representations.rb +560 -0
  567. data/generated/google/apis/managedidentities_v1/service.rb +779 -0
  568. data/generated/google/apis/managedidentities_v1.rb +35 -0
  569. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +1570 -0
  570. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +560 -0
  571. data/generated/google/apis/managedidentities_v1alpha1/service.rb +782 -0
  572. data/generated/google/apis/{servicebroker_v1alpha1.rb → managedidentities_v1alpha1.rb} +9 -10
  573. data/generated/google/apis/managedidentities_v1beta1/classes.rb +1568 -0
  574. data/generated/google/apis/managedidentities_v1beta1/representations.rb +560 -0
  575. data/generated/google/apis/managedidentities_v1beta1/service.rb +778 -0
  576. data/generated/google/apis/managedidentities_v1beta1.rb +35 -0
  577. data/generated/google/apis/manufacturers_v1/classes.rb +7 -0
  578. data/generated/google/apis/manufacturers_v1/representations.rb +1 -0
  579. data/generated/google/apis/manufacturers_v1.rb +1 -1
  580. data/generated/google/apis/memcache_v1beta2/classes.rb +1587 -0
  581. data/generated/google/apis/memcache_v1beta2/representations.rb +557 -0
  582. data/generated/google/apis/memcache_v1beta2/service.rb +677 -0
  583. data/generated/google/apis/memcache_v1beta2.rb +35 -0
  584. data/generated/google/apis/ml_v1/classes.rb +1518 -233
  585. data/generated/google/apis/ml_v1/representations.rb +559 -0
  586. data/generated/google/apis/ml_v1/service.rb +560 -25
  587. data/generated/google/apis/ml_v1.rb +5 -2
  588. data/generated/google/apis/monitoring_v1/classes.rb +1231 -0
  589. data/generated/google/apis/monitoring_v1/representations.rb +513 -0
  590. data/generated/google/apis/monitoring_v1/service.rb +246 -0
  591. data/generated/google/apis/monitoring_v1.rb +47 -0
  592. data/generated/google/apis/monitoring_v3/classes.rb +1330 -172
  593. data/generated/google/apis/monitoring_v3/representations.rb +482 -1
  594. data/generated/google/apis/monitoring_v3/service.rb +614 -162
  595. data/generated/google/apis/monitoring_v3.rb +7 -8
  596. data/generated/google/apis/networkmanagement_v1/classes.rb +1868 -0
  597. data/generated/google/apis/networkmanagement_v1/representations.rb +661 -0
  598. data/generated/google/apis/networkmanagement_v1/service.rb +667 -0
  599. data/generated/google/apis/networkmanagement_v1.rb +35 -0
  600. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +1868 -0
  601. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +661 -0
  602. data/generated/google/apis/networkmanagement_v1beta1/service.rb +667 -0
  603. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1.rb → networkmanagement_v1beta1.rb} +9 -9
  604. data/generated/google/apis/oauth2_v2/classes.rb +1 -81
  605. data/generated/google/apis/oauth2_v2/representations.rb +2 -36
  606. data/generated/google/apis/oauth2_v2/service.rb +10 -42
  607. data/generated/google/apis/oauth2_v2.rb +5 -5
  608. data/generated/google/apis/osconfig_v1/classes.rb +1225 -0
  609. data/generated/google/apis/osconfig_v1/representations.rb +506 -0
  610. data/generated/google/apis/osconfig_v1/service.rb +386 -0
  611. data/generated/google/apis/osconfig_v1.rb +35 -0
  612. data/generated/google/apis/osconfig_v1beta/classes.rb +2362 -0
  613. data/generated/google/apis/osconfig_v1beta/representations.rb +966 -0
  614. data/generated/google/apis/osconfig_v1beta/service.rb +605 -0
  615. data/generated/google/apis/osconfig_v1beta.rb +35 -0
  616. data/generated/google/apis/oslogin_v1/classes.rb +1 -1
  617. data/generated/google/apis/oslogin_v1/service.rb +10 -7
  618. data/generated/google/apis/oslogin_v1.rb +1 -2
  619. data/generated/google/apis/oslogin_v1alpha/service.rb +0 -1
  620. data/generated/google/apis/oslogin_v1alpha.rb +1 -2
  621. data/generated/google/apis/oslogin_v1beta/classes.rb +1 -1
  622. data/generated/google/apis/oslogin_v1beta/service.rb +9 -6
  623. data/generated/google/apis/oslogin_v1beta.rb +1 -2
  624. data/generated/google/apis/pagespeedonline_v5/classes.rb +534 -495
  625. data/generated/google/apis/pagespeedonline_v5/representations.rb +226 -221
  626. data/generated/google/apis/pagespeedonline_v5/service.rb +22 -24
  627. data/generated/google/apis/pagespeedonline_v5.rb +9 -4
  628. data/generated/google/apis/people_v1/classes.rb +104 -81
  629. data/generated/google/apis/people_v1/representations.rb +1 -0
  630. data/generated/google/apis/people_v1/service.rb +72 -79
  631. data/generated/google/apis/people_v1.rb +10 -1
  632. data/generated/google/apis/policytroubleshooter_v1/classes.rb +765 -0
  633. data/generated/google/apis/policytroubleshooter_v1/representations.rb +203 -0
  634. data/generated/google/apis/policytroubleshooter_v1/service.rb +90 -0
  635. data/generated/google/apis/policytroubleshooter_v1.rb +34 -0
  636. data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +254 -111
  637. data/generated/google/apis/policytroubleshooter_v1beta/service.rb +2 -3
  638. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  639. data/generated/google/apis/poly_v1.rb +1 -1
  640. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +1137 -0
  641. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +532 -0
  642. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +1676 -0
  643. data/generated/google/apis/{pagespeedonline_v4.rb → prod_tt_sasportal_v1alpha1.rb} +12 -10
  644. data/generated/google/apis/pubsub_v1/classes.rb +248 -76
  645. data/generated/google/apis/pubsub_v1/representations.rb +18 -0
  646. data/generated/google/apis/pubsub_v1/service.rb +43 -31
  647. data/generated/google/apis/pubsub_v1.rb +1 -1
  648. data/generated/google/apis/pubsub_v1beta1a.rb +1 -1
  649. data/generated/google/apis/pubsub_v1beta2/classes.rb +144 -59
  650. data/generated/google/apis/pubsub_v1beta2/service.rb +10 -2
  651. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  652. data/generated/google/apis/recommender_v1beta1/classes.rb +221 -7
  653. data/generated/google/apis/recommender_v1beta1/representations.rb +96 -0
  654. data/generated/google/apis/recommender_v1beta1/service.rb +146 -19
  655. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  656. data/generated/google/apis/redis_v1/classes.rb +48 -18
  657. data/generated/google/apis/redis_v1/representations.rb +14 -0
  658. data/generated/google/apis/redis_v1/service.rb +41 -5
  659. data/generated/google/apis/redis_v1.rb +1 -1
  660. data/generated/google/apis/redis_v1beta1/classes.rb +48 -18
  661. data/generated/google/apis/redis_v1beta1/representations.rb +14 -0
  662. data/generated/google/apis/redis_v1beta1/service.rb +41 -5
  663. data/generated/google/apis/redis_v1beta1.rb +1 -1
  664. data/generated/google/apis/remotebuildexecution_v1/classes.rb +352 -37
  665. data/generated/google/apis/remotebuildexecution_v1/representations.rb +99 -0
  666. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  667. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +352 -37
  668. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +99 -0
  669. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  670. data/generated/google/apis/remotebuildexecution_v2/classes.rb +362 -45
  671. data/generated/google/apis/remotebuildexecution_v2/representations.rb +100 -0
  672. data/generated/google/apis/remotebuildexecution_v2/service.rb +5 -1
  673. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  674. data/generated/google/apis/reseller_v1/service.rb +1 -1
  675. data/generated/google/apis/reseller_v1.rb +1 -1
  676. data/generated/google/apis/run_v1/classes.rb +308 -325
  677. data/generated/google/apis/run_v1/representations.rb +63 -103
  678. data/generated/google/apis/run_v1/service.rb +336 -933
  679. data/generated/google/apis/run_v1.rb +1 -1
  680. data/generated/google/apis/run_v1alpha1/classes.rb +1045 -392
  681. data/generated/google/apis/run_v1alpha1/representations.rb +343 -144
  682. data/generated/google/apis/run_v1alpha1/service.rb +1735 -492
  683. data/generated/google/apis/run_v1alpha1.rb +1 -1
  684. data/generated/google/apis/run_v1beta1/classes.rb +1 -1
  685. data/generated/google/apis/run_v1beta1.rb +4 -1
  686. data/generated/google/apis/runtimeconfig_v1.rb +1 -1
  687. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +139 -57
  688. data/generated/google/apis/runtimeconfig_v1beta1/service.rb +8 -5
  689. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  690. data/generated/google/apis/safebrowsing_v4/classes.rb +2 -2
  691. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  692. data/generated/google/apis/sasportal_v1alpha1/classes.rb +1137 -0
  693. data/generated/google/apis/sasportal_v1alpha1/representations.rb +532 -0
  694. data/generated/google/apis/sasportal_v1alpha1/service.rb +1676 -0
  695. data/generated/google/apis/{pagespeedonline_v2.rb → sasportal_v1alpha1.rb} +12 -10
  696. data/generated/google/apis/script_v1/classes.rb +4 -22
  697. data/generated/google/apis/script_v1.rb +1 -1
  698. data/generated/google/apis/searchconsole_v1.rb +1 -1
  699. data/generated/google/apis/secretmanager_v1/classes.rb +982 -0
  700. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1 → secretmanager_v1}/representations.rb +105 -116
  701. data/generated/google/apis/secretmanager_v1/service.rb +681 -0
  702. data/generated/google/apis/secretmanager_v1.rb +35 -0
  703. data/generated/google/apis/secretmanager_v1beta1/classes.rb +982 -0
  704. data/generated/google/apis/{servicebroker_v1beta1 → secretmanager_v1beta1}/representations.rb +114 -142
  705. data/generated/google/apis/secretmanager_v1beta1/service.rb +681 -0
  706. data/generated/google/apis/secretmanager_v1beta1.rb +35 -0
  707. data/generated/google/apis/securitycenter_v1/classes.rb +862 -138
  708. data/generated/google/apis/securitycenter_v1/representations.rb +221 -0
  709. data/generated/google/apis/securitycenter_v1/service.rb +225 -21
  710. data/generated/google/apis/securitycenter_v1.rb +4 -4
  711. data/generated/google/apis/securitycenter_v1beta1/classes.rb +782 -125
  712. data/generated/google/apis/securitycenter_v1beta1/representations.rb +192 -2
  713. data/generated/google/apis/securitycenter_v1beta1/service.rb +53 -51
  714. data/generated/google/apis/securitycenter_v1beta1.rb +4 -4
  715. data/generated/google/apis/securitycenter_v1p1alpha1/classes.rb +568 -0
  716. data/generated/google/apis/securitycenter_v1p1alpha1/representations.rb +190 -0
  717. data/generated/google/apis/securitycenter_v1p1alpha1/service.rb +3 -3
  718. data/generated/google/apis/securitycenter_v1p1alpha1.rb +4 -4
  719. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +2205 -0
  720. data/generated/google/apis/securitycenter_v1p1beta1/representations.rb +751 -0
  721. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +1329 -0
  722. data/generated/google/apis/securitycenter_v1p1beta1.rb +35 -0
  723. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +419 -64
  724. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +98 -0
  725. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  726. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +4159 -0
  727. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +1307 -0
  728. data/generated/google/apis/serviceconsumermanagement_v1beta1/service.rb +428 -0
  729. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +34 -0
  730. data/generated/google/apis/servicecontrol_v1/classes.rb +255 -20
  731. data/generated/google/apis/servicecontrol_v1/representations.rb +87 -1
  732. data/generated/google/apis/servicecontrol_v1/service.rb +2 -1
  733. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  734. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +816 -0
  735. data/generated/google/apis/{surveys_v2 → servicedirectory_v1beta1}/representations.rb +103 -104
  736. data/generated/google/apis/servicedirectory_v1beta1/service.rb +992 -0
  737. data/generated/google/apis/servicedirectory_v1beta1.rb +35 -0
  738. data/generated/google/apis/servicemanagement_v1/classes.rb +459 -125
  739. data/generated/google/apis/servicemanagement_v1/representations.rb +61 -0
  740. data/generated/google/apis/servicemanagement_v1/service.rb +40 -29
  741. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  742. data/generated/google/apis/servicenetworking_v1/classes.rb +986 -68
  743. data/generated/google/apis/servicenetworking_v1/representations.rb +403 -0
  744. data/generated/google/apis/servicenetworking_v1/service.rb +351 -23
  745. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  746. data/generated/google/apis/servicenetworking_v1beta/classes.rb +575 -57
  747. data/generated/google/apis/servicenetworking_v1beta/representations.rb +223 -0
  748. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  749. data/generated/google/apis/serviceusage_v1/classes.rb +417 -64
  750. data/generated/google/apis/serviceusage_v1/representations.rb +110 -0
  751. data/generated/google/apis/serviceusage_v1/service.rb +42 -0
  752. data/generated/google/apis/serviceusage_v1.rb +1 -1
  753. data/generated/google/apis/serviceusage_v1beta1/classes.rb +644 -64
  754. data/generated/google/apis/serviceusage_v1beta1/representations.rb +198 -0
  755. data/generated/google/apis/serviceusage_v1beta1/service.rb +472 -0
  756. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  757. data/generated/google/apis/sheets_v4/classes.rb +1741 -253
  758. data/generated/google/apis/sheets_v4/representations.rb +283 -0
  759. data/generated/google/apis/sheets_v4/service.rb +9 -11
  760. data/generated/google/apis/sheets_v4.rb +1 -1
  761. data/generated/google/apis/slides_v1/classes.rb +1 -1
  762. data/generated/google/apis/slides_v1/service.rb +1 -1
  763. data/generated/google/apis/slides_v1.rb +1 -1
  764. data/generated/google/apis/sourcerepo_v1/classes.rb +173 -67
  765. data/generated/google/apis/sourcerepo_v1/service.rb +9 -1
  766. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  767. data/generated/google/apis/spanner_v1/classes.rb +706 -71
  768. data/generated/google/apis/spanner_v1/representations.rb +194 -0
  769. data/generated/google/apis/spanner_v1/service.rb +770 -7
  770. data/generated/google/apis/spanner_v1.rb +1 -1
  771. data/generated/google/apis/speech_v1/classes.rb +15 -11
  772. data/generated/google/apis/speech_v1/representations.rb +2 -1
  773. data/generated/google/apis/speech_v1.rb +1 -1
  774. data/generated/google/apis/speech_v1p1beta1/classes.rb +197 -11
  775. data/generated/google/apis/speech_v1p1beta1/representations.rb +79 -1
  776. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  777. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/classes.rb +16 -8
  778. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/representations.rb +7 -6
  779. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/service.rb +13 -13
  780. data/generated/google/apis/{speech_v2beta.rb → speech_v2beta1.rb} +6 -6
  781. data/generated/google/apis/{sqladmin_v1beta4 → sql_v1beta4}/classes.rb +701 -383
  782. data/generated/google/apis/{sqladmin_v1beta4 → sql_v1beta4}/representations.rb +209 -104
  783. data/generated/google/apis/{sqladmin_v1beta4 → sql_v1beta4}/service.rb +579 -597
  784. data/generated/google/apis/{sqladmin_v1beta4.rb → sql_v1beta4.rb} +7 -8
  785. data/generated/google/apis/storage_v1/classes.rb +73 -7
  786. data/generated/google/apis/storage_v1/representations.rb +10 -0
  787. data/generated/google/apis/storage_v1/service.rb +29 -4
  788. data/generated/google/apis/storage_v1.rb +1 -1
  789. data/generated/google/apis/storage_v1beta2/service.rb +1 -1
  790. data/generated/google/apis/storage_v1beta2.rb +1 -1
  791. data/generated/google/apis/storagetransfer_v1/classes.rb +280 -79
  792. data/generated/google/apis/storagetransfer_v1/representations.rb +52 -0
  793. data/generated/google/apis/storagetransfer_v1/service.rb +19 -41
  794. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  795. data/generated/google/apis/streetviewpublish_v1/classes.rb +1 -1
  796. data/generated/google/apis/streetviewpublish_v1/service.rb +1 -1
  797. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  798. data/generated/google/apis/tagmanager_v1/classes.rb +2 -0
  799. data/generated/google/apis/tagmanager_v1/service.rb +1 -1
  800. data/generated/google/apis/tagmanager_v1.rb +1 -1
  801. data/generated/google/apis/tagmanager_v2/classes.rb +170 -0
  802. data/generated/google/apis/tagmanager_v2/representations.rb +49 -0
  803. data/generated/google/apis/tagmanager_v2/service.rb +1 -1
  804. data/generated/google/apis/tagmanager_v2.rb +1 -1
  805. data/generated/google/apis/tasks_v1/classes.rb +26 -25
  806. data/generated/google/apis/tasks_v1/representations.rb +4 -8
  807. data/generated/google/apis/tasks_v1/service.rb +78 -124
  808. data/generated/google/apis/tasks_v1.rb +3 -3
  809. data/generated/google/apis/testing_v1/classes.rb +187 -1
  810. data/generated/google/apis/testing_v1/representations.rb +93 -0
  811. data/generated/google/apis/testing_v1.rb +1 -1
  812. data/generated/google/apis/texttospeech_v1.rb +1 -1
  813. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  814. data/generated/google/apis/toolresults_v1beta3/classes.rb +2061 -1133
  815. data/generated/google/apis/toolresults_v1beta3/representations.rb +723 -13
  816. data/generated/google/apis/toolresults_v1beta3/service.rb +663 -591
  817. data/generated/google/apis/toolresults_v1beta3.rb +2 -2
  818. data/generated/google/apis/tpu_v1/classes.rb +3 -4
  819. data/generated/google/apis/tpu_v1.rb +1 -1
  820. data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -4
  821. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  822. data/generated/google/apis/translate_v3/classes.rb +946 -0
  823. data/generated/google/apis/translate_v3/representations.rb +439 -0
  824. data/generated/google/apis/translate_v3/service.rb +781 -0
  825. data/generated/google/apis/translate_v3.rb +37 -0
  826. data/generated/google/apis/translate_v3beta1.rb +1 -1
  827. data/generated/google/apis/vault_v1/classes.rb +10 -7
  828. data/generated/google/apis/vault_v1/service.rb +7 -7
  829. data/generated/google/apis/vault_v1.rb +1 -1
  830. data/generated/google/apis/verifiedaccess_v1/service.rb +2 -2
  831. data/generated/google/apis/verifiedaccess_v1.rb +3 -3
  832. data/generated/google/apis/videointelligence_v1/classes.rb +1205 -118
  833. data/generated/google/apis/videointelligence_v1/representations.rb +492 -0
  834. data/generated/google/apis/videointelligence_v1.rb +1 -1
  835. data/generated/google/apis/videointelligence_v1beta2/classes.rb +1205 -118
  836. data/generated/google/apis/videointelligence_v1beta2/representations.rb +492 -0
  837. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  838. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +1216 -129
  839. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +492 -0
  840. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  841. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +1205 -118
  842. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +492 -0
  843. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  844. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +1290 -116
  845. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +526 -0
  846. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  847. data/generated/google/apis/vision_v1/classes.rb +67 -1
  848. data/generated/google/apis/vision_v1/representations.rb +32 -0
  849. data/generated/google/apis/vision_v1/service.rb +1 -1
  850. data/generated/google/apis/vision_v1.rb +1 -1
  851. data/generated/google/apis/vision_v1p1beta1/classes.rb +67 -1
  852. data/generated/google/apis/vision_v1p1beta1/representations.rb +32 -0
  853. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  854. data/generated/google/apis/vision_v1p2beta1/classes.rb +67 -1
  855. data/generated/google/apis/vision_v1p2beta1/representations.rb +32 -0
  856. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  857. data/generated/google/apis/websecurityscanner_v1/classes.rb +75 -4
  858. data/generated/google/apis/websecurityscanner_v1/representations.rb +32 -0
  859. data/generated/google/apis/websecurityscanner_v1/service.rb +1 -1
  860. data/generated/google/apis/websecurityscanner_v1.rb +2 -2
  861. data/generated/google/apis/websecurityscanner_v1alpha/classes.rb +5 -4
  862. data/generated/google/apis/websecurityscanner_v1alpha/service.rb +1 -1
  863. data/generated/google/apis/websecurityscanner_v1alpha.rb +2 -2
  864. data/generated/google/apis/websecurityscanner_v1beta/classes.rb +77 -6
  865. data/generated/google/apis/websecurityscanner_v1beta/representations.rb +32 -0
  866. data/generated/google/apis/websecurityscanner_v1beta/service.rb +1 -1
  867. data/generated/google/apis/websecurityscanner_v1beta.rb +2 -2
  868. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  869. data/generated/google/apis/youtube_analytics_v2.rb +1 -1
  870. data/generated/google/apis/youtube_partner_v1/service.rb +2 -2
  871. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  872. data/generated/google/apis/youtube_v3/classes.rb +1376 -1262
  873. data/generated/google/apis/youtube_v3/representations.rb +99 -191
  874. data/generated/google/apis/youtube_v3/service.rb +1829 -2150
  875. data/generated/google/apis/youtube_v3.rb +8 -5
  876. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  877. data/google-api-client.gemspec +6 -3
  878. data/lib/google/apis/core/api_command.rb +7 -0
  879. data/lib/google/apis/core/base_service.rb +1 -1
  880. data/lib/google/apis/core/http_command.rb +11 -10
  881. data/lib/google/apis/core/upload.rb +4 -0
  882. data/lib/google/apis/generator/annotator.rb +1 -1
  883. data/lib/google/apis/version.rb +9 -4
  884. data/rakelib/devsite/devsite_builder.rb +126 -0
  885. data/rakelib/devsite/link_checker.rb +64 -0
  886. data/rakelib/devsite/repo_metadata.rb +56 -0
  887. metadata +193 -110
  888. data/generated/google/apis/analytics_v2_4/representations.rb +0 -26
  889. data/generated/google/apis/analytics_v2_4/service.rb +0 -331
  890. data/generated/google/apis/analytics_v2_4.rb +0 -37
  891. data/generated/google/apis/cloudprivatecatalog_v1beta1/classes.rb +0 -358
  892. data/generated/google/apis/cloudprivatecatalog_v1beta1/service.rb +0 -486
  893. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/service.rb +0 -1081
  894. data/generated/google/apis/commentanalyzer_v1alpha1/classes.rb +0 -485
  895. data/generated/google/apis/commentanalyzer_v1alpha1/representations.rb +0 -210
  896. data/generated/google/apis/commentanalyzer_v1alpha1/service.rb +0 -124
  897. data/generated/google/apis/commentanalyzer_v1alpha1.rb +0 -39
  898. data/generated/google/apis/fusiontables_v1/classes.rb +0 -977
  899. data/generated/google/apis/fusiontables_v1/representations.rb +0 -449
  900. data/generated/google/apis/fusiontables_v1/service.rb +0 -1307
  901. data/generated/google/apis/fusiontables_v1.rb +0 -37
  902. data/generated/google/apis/fusiontables_v2/classes.rb +0 -1049
  903. data/generated/google/apis/fusiontables_v2/representations.rb +0 -457
  904. data/generated/google/apis/fusiontables_v2/service.rb +0 -1431
  905. data/generated/google/apis/fusiontables_v2.rb +0 -37
  906. data/generated/google/apis/mirror_v1/classes.rb +0 -1072
  907. data/generated/google/apis/mirror_v1/representations.rb +0 -390
  908. data/generated/google/apis/mirror_v1/service.rb +0 -928
  909. data/generated/google/apis/mirror_v1.rb +0 -37
  910. data/generated/google/apis/oauth2_v1/classes.rb +0 -197
  911. data/generated/google/apis/oauth2_v1/service.rb +0 -160
  912. data/generated/google/apis/oauth2_v1.rb +0 -40
  913. data/generated/google/apis/pagespeedonline_v1/classes.rb +0 -542
  914. data/generated/google/apis/pagespeedonline_v1/representations.rb +0 -258
  915. data/generated/google/apis/pagespeedonline_v1/service.rb +0 -116
  916. data/generated/google/apis/pagespeedonline_v2/classes.rb +0 -621
  917. data/generated/google/apis/pagespeedonline_v2/representations.rb +0 -273
  918. data/generated/google/apis/pagespeedonline_v2/service.rb +0 -116
  919. data/generated/google/apis/pagespeedonline_v4/classes.rb +0 -795
  920. data/generated/google/apis/pagespeedonline_v4/representations.rb +0 -335
  921. data/generated/google/apis/pagespeedonline_v4/service.rb +0 -125
  922. data/generated/google/apis/plus_domains_v1/classes.rb +0 -2609
  923. data/generated/google/apis/plus_domains_v1/representations.rb +0 -1111
  924. data/generated/google/apis/plus_domains_v1/service.rb +0 -489
  925. data/generated/google/apis/plus_domains_v1.rb +0 -55
  926. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +0 -845
  927. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +0 -350
  928. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +0 -933
  929. data/generated/google/apis/replicapool_v1beta1/classes.rb +0 -918
  930. data/generated/google/apis/replicapool_v1beta1/representations.rb +0 -409
  931. data/generated/google/apis/replicapool_v1beta1/service.rb +0 -489
  932. data/generated/google/apis/replicapool_v1beta1.rb +0 -50
  933. data/generated/google/apis/servicebroker_v1/classes.rb +0 -333
  934. data/generated/google/apis/servicebroker_v1/service.rb +0 -177
  935. data/generated/google/apis/servicebroker_v1alpha1/classes.rb +0 -1037
  936. data/generated/google/apis/servicebroker_v1alpha1/service.rb +0 -737
  937. data/generated/google/apis/servicebroker_v1beta1/classes.rb +0 -1173
  938. data/generated/google/apis/servicebroker_v1beta1/service.rb +0 -926
  939. data/generated/google/apis/storage_v1beta1/classes.rb +0 -616
  940. data/generated/google/apis/storage_v1beta1/representations.rb +0 -249
  941. data/generated/google/apis/storage_v1beta1/service.rb +0 -1032
  942. data/generated/google/apis/storage_v1beta1.rb +0 -40
  943. data/generated/google/apis/surveys_v2/classes.rb +0 -691
  944. data/generated/google/apis/surveys_v2.rb +0 -40
  945. data/generated/google/apis/urlshortener_v1/classes.rb +0 -246
  946. data/generated/google/apis/urlshortener_v1/representations.rb +0 -121
  947. data/generated/google/apis/urlshortener_v1/service.rb +0 -169
  948. data/generated/google/apis/urlshortener_v1.rb +0 -34
@@ -0,0 +1,2659 @@
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 HealthcareV1
24
+
25
+ # Specifies the audit configuration for a service.
26
+ # The configuration determines which permission types are logged, and what
27
+ # identities, if any, are exempted from logging.
28
+ # An AuditConfig must have one or more AuditLogConfigs.
29
+ # If there are AuditConfigs for both `allServices` and a specific service,
30
+ # the union of the two AuditConfigs is used for that service: the log_types
31
+ # specified in each AuditConfig are enabled, and the exempted_members in each
32
+ # AuditLogConfig are exempted.
33
+ # Example Policy with multiple AuditConfigs:
34
+ # `
35
+ # "audit_configs": [
36
+ # `
37
+ # "service": "allServices"
38
+ # "audit_log_configs": [
39
+ # `
40
+ # "log_type": "DATA_READ",
41
+ # "exempted_members": [
42
+ # "user:jose@example.com"
43
+ # ]
44
+ # `,
45
+ # `
46
+ # "log_type": "DATA_WRITE",
47
+ # `,
48
+ # `
49
+ # "log_type": "ADMIN_READ",
50
+ # `
51
+ # ]
52
+ # `,
53
+ # `
54
+ # "service": "sampleservice.googleapis.com"
55
+ # "audit_log_configs": [
56
+ # `
57
+ # "log_type": "DATA_READ",
58
+ # `,
59
+ # `
60
+ # "log_type": "DATA_WRITE",
61
+ # "exempted_members": [
62
+ # "user:aliya@example.com"
63
+ # ]
64
+ # `
65
+ # ]
66
+ # `
67
+ # ]
68
+ # `
69
+ # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
70
+ # logging. It also exempts jose@example.com from DATA_READ logging, and
71
+ # aliya@example.com from DATA_WRITE logging.
72
+ class AuditConfig
73
+ include Google::Apis::Core::Hashable
74
+
75
+ # The configuration for logging of each type of permission.
76
+ # Corresponds to the JSON property `auditLogConfigs`
77
+ # @return [Array<Google::Apis::HealthcareV1::AuditLogConfig>]
78
+ attr_accessor :audit_log_configs
79
+
80
+ # Specifies a service that will be enabled for audit logging.
81
+ # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
82
+ # `allServices` is a special value that covers all services.
83
+ # Corresponds to the JSON property `service`
84
+ # @return [String]
85
+ attr_accessor :service
86
+
87
+ def initialize(**args)
88
+ update!(**args)
89
+ end
90
+
91
+ # Update properties of this object
92
+ def update!(**args)
93
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
94
+ @service = args[:service] if args.key?(:service)
95
+ end
96
+ end
97
+
98
+ # Provides the configuration for logging a type of permissions.
99
+ # Example:
100
+ # `
101
+ # "audit_log_configs": [
102
+ # `
103
+ # "log_type": "DATA_READ",
104
+ # "exempted_members": [
105
+ # "user:jose@example.com"
106
+ # ]
107
+ # `,
108
+ # `
109
+ # "log_type": "DATA_WRITE",
110
+ # `
111
+ # ]
112
+ # `
113
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
114
+ # jose@example.com from DATA_READ logging.
115
+ class AuditLogConfig
116
+ include Google::Apis::Core::Hashable
117
+
118
+ # Specifies the identities that do not cause logging for this type of
119
+ # permission.
120
+ # Follows the same format of Binding.members.
121
+ # Corresponds to the JSON property `exemptedMembers`
122
+ # @return [Array<String>]
123
+ attr_accessor :exempted_members
124
+
125
+ # The log type that this config enables.
126
+ # Corresponds to the JSON property `logType`
127
+ # @return [String]
128
+ attr_accessor :log_type
129
+
130
+ def initialize(**args)
131
+ update!(**args)
132
+ end
133
+
134
+ # Update properties of this object
135
+ def update!(**args)
136
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
137
+ @log_type = args[:log_type] if args.key?(:log_type)
138
+ end
139
+ end
140
+
141
+ # Associates `members` with a `role`.
142
+ class Binding
143
+ include Google::Apis::Core::Hashable
144
+
145
+ # Represents a textual expression in the Common Expression Language (CEL)
146
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
147
+ # are documented at https://github.com/google/cel-spec.
148
+ # Example (Comparison):
149
+ # title: "Summary size limit"
150
+ # description: "Determines if a summary is less than 100 chars"
151
+ # expression: "document.summary.size() < 100"
152
+ # Example (Equality):
153
+ # title: "Requestor is owner"
154
+ # description: "Determines if requestor is the document owner"
155
+ # expression: "document.owner == request.auth.claims.email"
156
+ # Example (Logic):
157
+ # title: "Public documents"
158
+ # description: "Determine whether the document should be publicly visible"
159
+ # expression: "document.type != 'private' && document.type != 'internal'"
160
+ # Example (Data Manipulation):
161
+ # title: "Notification string"
162
+ # description: "Create a notification string with a timestamp."
163
+ # expression: "'New message received at ' + string(document.create_time)"
164
+ # The exact variables and functions that may be referenced within an expression
165
+ # are determined by the service that evaluates it. See the service
166
+ # documentation for additional information.
167
+ # Corresponds to the JSON property `condition`
168
+ # @return [Google::Apis::HealthcareV1::Expr]
169
+ attr_accessor :condition
170
+
171
+ # Specifies the identities requesting access for a Cloud Platform resource.
172
+ # `members` can have the following values:
173
+ # * `allUsers`: A special identifier that represents anyone who is
174
+ # on the internet; with or without a Google account.
175
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
176
+ # who is authenticated with a Google account or a service account.
177
+ # * `user:`emailid``: An email address that represents a specific Google
178
+ # account. For example, `alice@example.com` .
179
+ # * `serviceAccount:`emailid``: An email address that represents a service
180
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
181
+ # * `group:`emailid``: An email address that represents a Google group.
182
+ # For example, `admins@example.com`.
183
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
184
+ # identifier) representing a user that has been recently deleted. For
185
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
186
+ # recovered, this value reverts to `user:`emailid`` and the recovered user
187
+ # retains the role in the binding.
188
+ # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus
189
+ # unique identifier) representing a service account that has been recently
190
+ # deleted. For example,
191
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
192
+ # If the service account is undeleted, this value reverts to
193
+ # `serviceAccount:`emailid`` and the undeleted service account retains the
194
+ # role in the binding.
195
+ # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
196
+ # identifier) representing a Google group that has been recently
197
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
198
+ # the group is recovered, this value reverts to `group:`emailid`` and the
199
+ # recovered group retains the role in the binding.
200
+ # * `domain:`domain``: The G Suite domain (primary) that represents all the
201
+ # users of that domain. For example, `google.com` or `example.com`.
202
+ # Corresponds to the JSON property `members`
203
+ # @return [Array<String>]
204
+ attr_accessor :members
205
+
206
+ # Role that is assigned to `members`.
207
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
208
+ # Corresponds to the JSON property `role`
209
+ # @return [String]
210
+ attr_accessor :role
211
+
212
+ def initialize(**args)
213
+ update!(**args)
214
+ end
215
+
216
+ # Update properties of this object
217
+ def update!(**args)
218
+ @condition = args[:condition] if args.key?(:condition)
219
+ @members = args[:members] if args.key?(:members)
220
+ @role = args[:role] if args.key?(:role)
221
+ end
222
+ end
223
+
224
+ # The request message for Operations.CancelOperation.
225
+ class CancelOperationRequest
226
+ include Google::Apis::Core::Hashable
227
+
228
+ def initialize(**args)
229
+ update!(**args)
230
+ end
231
+
232
+ # Update properties of this object
233
+ def update!(**args)
234
+ end
235
+ end
236
+
237
+ # Mask a string by replacing its characters with a fixed character.
238
+ class CharacterMaskConfig
239
+ include Google::Apis::Core::Hashable
240
+
241
+ # Character to mask the sensitive values. If not supplied, defaults to "*".
242
+ # Corresponds to the JSON property `maskingCharacter`
243
+ # @return [String]
244
+ attr_accessor :masking_character
245
+
246
+ def initialize(**args)
247
+ update!(**args)
248
+ end
249
+
250
+ # Update properties of this object
251
+ def update!(**args)
252
+ @masking_character = args[:masking_character] if args.key?(:masking_character)
253
+ end
254
+ end
255
+
256
+ # Creates a new message.
257
+ class CreateMessageRequest
258
+ include Google::Apis::Core::Hashable
259
+
260
+ # A complete HL7v2 message.
261
+ # See [Introduction to HL7 Standards]
262
+ # (https://www.hl7.org/implement/standards/index.cfm?ref=common) for
263
+ # details on the standard.
264
+ # Corresponds to the JSON property `message`
265
+ # @return [Google::Apis::HealthcareV1::Message]
266
+ attr_accessor :message
267
+
268
+ def initialize(**args)
269
+ update!(**args)
270
+ end
271
+
272
+ # Update properties of this object
273
+ def update!(**args)
274
+ @message = args[:message] if args.key?(:message)
275
+ end
276
+ end
277
+
278
+ # Pseudonymization method that generates surrogates via cryptographic hashing.
279
+ # Uses SHA-256.
280
+ # Outputs a base64-encoded representation of the hashed output
281
+ # (for example, `L7k0BHmF1ha5U3NfGykjro4xWi1MPVQPjhMAZbSV9mM=`).
282
+ class CryptoHashConfig
283
+ include Google::Apis::Core::Hashable
284
+
285
+ # An AES 128/192/256 bit key. Causes the hash to be computed based on this
286
+ # key. A default key is generated for each Deidentify operation and is used
287
+ # wherever crypto_key is not specified.
288
+ # Corresponds to the JSON property `cryptoKey`
289
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
290
+ # @return [String]
291
+ attr_accessor :crypto_key
292
+
293
+ def initialize(**args)
294
+ update!(**args)
295
+ end
296
+
297
+ # Update properties of this object
298
+ def update!(**args)
299
+ @crypto_key = args[:crypto_key] if args.key?(:crypto_key)
300
+ end
301
+ end
302
+
303
+ # A message representing a health dataset.
304
+ # A health dataset represents a collection of healthcare data pertaining to one
305
+ # or more patients. This may include multiple modalities of healthcare data,
306
+ # such as electronic medical records or medical imaging data.
307
+ class Dataset
308
+ include Google::Apis::Core::Hashable
309
+
310
+ # Output only. Resource name of the dataset, of the form
311
+ # `projects/`project_id`/locations/`location_id`/datasets/`dataset_id``.
312
+ # Corresponds to the JSON property `name`
313
+ # @return [String]
314
+ attr_accessor :name
315
+
316
+ # The default timezone used by this dataset. Must be a either a valid IANA
317
+ # time zone name such as "America/New_York" or empty, which defaults to UTC.
318
+ # This is used for parsing times in resources, such as HL7 messages, where no
319
+ # explicit timezone is specified.
320
+ # Corresponds to the JSON property `timeZone`
321
+ # @return [String]
322
+ attr_accessor :time_zone
323
+
324
+ def initialize(**args)
325
+ update!(**args)
326
+ end
327
+
328
+ # Update properties of this object
329
+ def update!(**args)
330
+ @name = args[:name] if args.key?(:name)
331
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
332
+ end
333
+ end
334
+
335
+ # Shift a date forward or backward in time by a random amount which is
336
+ # consistent for a given patient and crypto key combination.
337
+ class DateShiftConfig
338
+ include Google::Apis::Core::Hashable
339
+
340
+ # An AES 128/192/256 bit key. Causes the shift to be computed based on this
341
+ # key and the patient ID. A default key is generated for each
342
+ # Deidentify operation and is used wherever crypto_key is not specified.
343
+ # Corresponds to the JSON property `cryptoKey`
344
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
345
+ # @return [String]
346
+ attr_accessor :crypto_key
347
+
348
+ def initialize(**args)
349
+ update!(**args)
350
+ end
351
+
352
+ # Update properties of this object
353
+ def update!(**args)
354
+ @crypto_key = args[:crypto_key] if args.key?(:crypto_key)
355
+ end
356
+ end
357
+
358
+ # Configures de-id options specific to different types of content.
359
+ # Each submessage customizes the handling of an
360
+ # https://tools.ietf.org/html/rfc6838 media type or subtype. Configs are
361
+ # applied in a nested manner at runtime.
362
+ class DeidentifyConfig
363
+ include Google::Apis::Core::Hashable
364
+
365
+ # Specifies the parameters needed for de-identification of DICOM stores.
366
+ # Corresponds to the JSON property `dicom`
367
+ # @return [Google::Apis::HealthcareV1::DicomConfig]
368
+ attr_accessor :dicom
369
+
370
+ # Specifies how to handle de-identification of a FHIR store.
371
+ # Corresponds to the JSON property `fhir`
372
+ # @return [Google::Apis::HealthcareV1::FhirConfig]
373
+ attr_accessor :fhir
374
+
375
+ # Specifies how to handle de-identification of image pixels.
376
+ # Corresponds to the JSON property `image`
377
+ # @return [Google::Apis::HealthcareV1::ImageConfig]
378
+ attr_accessor :image
379
+
380
+ # Configures de-identification of text wherever it is found in the
381
+ # source_dataset.
382
+ # Corresponds to the JSON property `text`
383
+ # @return [Google::Apis::HealthcareV1::TextConfig]
384
+ attr_accessor :text
385
+
386
+ def initialize(**args)
387
+ update!(**args)
388
+ end
389
+
390
+ # Update properties of this object
391
+ def update!(**args)
392
+ @dicom = args[:dicom] if args.key?(:dicom)
393
+ @fhir = args[:fhir] if args.key?(:fhir)
394
+ @image = args[:image] if args.key?(:image)
395
+ @text = args[:text] if args.key?(:text)
396
+ end
397
+ end
398
+
399
+ # Redacts identifying information from the specified dataset.
400
+ class DeidentifyDatasetRequest
401
+ include Google::Apis::Core::Hashable
402
+
403
+ # Configures de-id options specific to different types of content.
404
+ # Each submessage customizes the handling of an
405
+ # https://tools.ietf.org/html/rfc6838 media type or subtype. Configs are
406
+ # applied in a nested manner at runtime.
407
+ # Corresponds to the JSON property `config`
408
+ # @return [Google::Apis::HealthcareV1::DeidentifyConfig]
409
+ attr_accessor :config
410
+
411
+ # The name of the dataset resource to create and write the redacted data to.
412
+ # * The destination dataset must not exist.
413
+ # * The destination dataset must be in the same project and location as the
414
+ # source dataset. De-identifying data across multiple projects or locations
415
+ # is not supported.
416
+ # Corresponds to the JSON property `destinationDataset`
417
+ # @return [String]
418
+ attr_accessor :destination_dataset
419
+
420
+ def initialize(**args)
421
+ update!(**args)
422
+ end
423
+
424
+ # Update properties of this object
425
+ def update!(**args)
426
+ @config = args[:config] if args.key?(:config)
427
+ @destination_dataset = args[:destination_dataset] if args.key?(:destination_dataset)
428
+ end
429
+ end
430
+
431
+ # Creates a new DICOM store with sensitive information de-identified.
432
+ class DeidentifyDicomStoreRequest
433
+ include Google::Apis::Core::Hashable
434
+
435
+ # Configures de-id options specific to different types of content.
436
+ # Each submessage customizes the handling of an
437
+ # https://tools.ietf.org/html/rfc6838 media type or subtype. Configs are
438
+ # applied in a nested manner at runtime.
439
+ # Corresponds to the JSON property `config`
440
+ # @return [Google::Apis::HealthcareV1::DeidentifyConfig]
441
+ attr_accessor :config
442
+
443
+ # The name of the DICOM store to create and write the redacted data to.
444
+ # For example,
445
+ # `projects/`project_id`/locations/`location_id`/datasets/`dataset_id`/
446
+ # dicomStores/`dicom_store_id``.
447
+ # * The destination dataset must exist.
448
+ # * The source dataset and destination dataset must both reside in the same
449
+ # project. De-identifying data across multiple projects is not supported.
450
+ # * The destination DICOM store must not exist.
451
+ # * The caller must have the necessary permissions to create the destination
452
+ # DICOM store.
453
+ # Corresponds to the JSON property `destinationStore`
454
+ # @return [String]
455
+ attr_accessor :destination_store
456
+
457
+ # Specifies the filter configuration for DICOM resources.
458
+ # Corresponds to the JSON property `filterConfig`
459
+ # @return [Google::Apis::HealthcareV1::DicomFilterConfig]
460
+ attr_accessor :filter_config
461
+
462
+ def initialize(**args)
463
+ update!(**args)
464
+ end
465
+
466
+ # Update properties of this object
467
+ def update!(**args)
468
+ @config = args[:config] if args.key?(:config)
469
+ @destination_store = args[:destination_store] if args.key?(:destination_store)
470
+ @filter_config = args[:filter_config] if args.key?(:filter_config)
471
+ end
472
+ end
473
+
474
+ # Creates a new FHIR store with sensitive information de-identified.
475
+ class DeidentifyFhirStoreRequest
476
+ include Google::Apis::Core::Hashable
477
+
478
+ # Configures de-id options specific to different types of content.
479
+ # Each submessage customizes the handling of an
480
+ # https://tools.ietf.org/html/rfc6838 media type or subtype. Configs are
481
+ # applied in a nested manner at runtime.
482
+ # Corresponds to the JSON property `config`
483
+ # @return [Google::Apis::HealthcareV1::DeidentifyConfig]
484
+ attr_accessor :config
485
+
486
+ # The name of the FHIR store to create and write the redacted data to.
487
+ # For example,
488
+ # `projects/`project_id`/locations/`location_id`/datasets/`dataset_id`/
489
+ # fhirStores/`fhir_store_id``.
490
+ # * The destination dataset must exist.
491
+ # * The source dataset and destination dataset must both reside in the same
492
+ # project. De-identifying data across multiple projects is not supported.
493
+ # * The destination FHIR store must exist.
494
+ # * The caller must have the healthcare.fhirResources.update permission to
495
+ # write to the destination FHIR store.
496
+ # Corresponds to the JSON property `destinationStore`
497
+ # @return [String]
498
+ attr_accessor :destination_store
499
+
500
+ # Filter configuration.
501
+ # Corresponds to the JSON property `resourceFilter`
502
+ # @return [Google::Apis::HealthcareV1::FhirFilter]
503
+ attr_accessor :resource_filter
504
+
505
+ def initialize(**args)
506
+ update!(**args)
507
+ end
508
+
509
+ # Update properties of this object
510
+ def update!(**args)
511
+ @config = args[:config] if args.key?(:config)
512
+ @destination_store = args[:destination_store] if args.key?(:destination_store)
513
+ @resource_filter = args[:resource_filter] if args.key?(:resource_filter)
514
+ end
515
+ end
516
+
517
+ # Contains a summary of the Deidentify operation.
518
+ class DeidentifySummary
519
+ include Google::Apis::Core::Hashable
520
+
521
+ def initialize(**args)
522
+ update!(**args)
523
+ end
524
+
525
+ # Update properties of this object
526
+ def update!(**args)
527
+ end
528
+ end
529
+
530
+ # Specifies the parameters needed for de-identification of DICOM stores.
531
+ class DicomConfig
532
+ include Google::Apis::Core::Hashable
533
+
534
+ # Tag filtering profile that determines which tags to keep/remove.
535
+ # Corresponds to the JSON property `filterProfile`
536
+ # @return [String]
537
+ attr_accessor :filter_profile
538
+
539
+ # List of tags to be filtered.
540
+ # Corresponds to the JSON property `keepList`
541
+ # @return [Google::Apis::HealthcareV1::TagFilterList]
542
+ attr_accessor :keep_list
543
+
544
+ # List of tags to be filtered.
545
+ # Corresponds to the JSON property `removeList`
546
+ # @return [Google::Apis::HealthcareV1::TagFilterList]
547
+ attr_accessor :remove_list
548
+
549
+ # If true, skip replacing StudyInstanceUID, SeriesInstanceUID,
550
+ # SOPInstanceUID, and MediaStorageSOPInstanceUID and leave them untouched.
551
+ # The Cloud Healthcare API regenerates these UIDs by default based on the
552
+ # DICOM Standard's reasoning: "Whilst these UIDs cannot be mapped directly
553
+ # to an individual out of context, given access to the original images, or
554
+ # to a database of the original images containing the UIDs, it would be
555
+ # possible to recover the individual's identity."
556
+ # http://dicom.nema.org/medical/dicom/current/output/chtml/part15/sect_E.3.9.
557
+ # html
558
+ # Corresponds to the JSON property `skipIdRedaction`
559
+ # @return [Boolean]
560
+ attr_accessor :skip_id_redaction
561
+ alias_method :skip_id_redaction?, :skip_id_redaction
562
+
563
+ def initialize(**args)
564
+ update!(**args)
565
+ end
566
+
567
+ # Update properties of this object
568
+ def update!(**args)
569
+ @filter_profile = args[:filter_profile] if args.key?(:filter_profile)
570
+ @keep_list = args[:keep_list] if args.key?(:keep_list)
571
+ @remove_list = args[:remove_list] if args.key?(:remove_list)
572
+ @skip_id_redaction = args[:skip_id_redaction] if args.key?(:skip_id_redaction)
573
+ end
574
+ end
575
+
576
+ # Specifies the filter configuration for DICOM resources.
577
+ class DicomFilterConfig
578
+ include Google::Apis::Core::Hashable
579
+
580
+ # The Cloud Storage location of the filter configuration file.
581
+ # The `gcs_uri` must be in the format `gs://bucket/path/to/object`.
582
+ # The filter configuration file must contain a list of resource paths
583
+ # separated by newline characters (\n or \r\n). Each resource path
584
+ # must be in the format
585
+ # "/studies/`studyUID`[/series/`seriesUID`[/instances/`instanceUID`]]"
586
+ # The Cloud Healthcare API service account must have the
587
+ # `roles/storage.objectViewer` Cloud IAM role for this Cloud Storage
588
+ # location.
589
+ # Corresponds to the JSON property `resourcePathsGcsUri`
590
+ # @return [String]
591
+ attr_accessor :resource_paths_gcs_uri
592
+
593
+ def initialize(**args)
594
+ update!(**args)
595
+ end
596
+
597
+ # Update properties of this object
598
+ def update!(**args)
599
+ @resource_paths_gcs_uri = args[:resource_paths_gcs_uri] if args.key?(:resource_paths_gcs_uri)
600
+ end
601
+ end
602
+
603
+ # Represents a DICOM store.
604
+ class DicomStore
605
+ include Google::Apis::Core::Hashable
606
+
607
+ # User-supplied key-value pairs used to organize DICOM stores.
608
+ # Label keys must be between 1 and 63 characters long, have a UTF-8 encoding
609
+ # of maximum 128 bytes, and must conform to the
610
+ # following PCRE regular expression:
611
+ # \p`Ll`\p`Lo``0,62`
612
+ # Label values are optional, must be between 1 and 63 characters long, have
613
+ # a UTF-8 encoding of maximum 128 bytes, and must conform to the
614
+ # following PCRE regular expression: [\p`Ll`\p`Lo`\p`N`_-]`0,63`
615
+ # No more than 64 labels can be associated with a given store.
616
+ # Corresponds to the JSON property `labels`
617
+ # @return [Hash<String,String>]
618
+ attr_accessor :labels
619
+
620
+ # Output only. Resource name of the DICOM store, of the form
621
+ # `projects/`project_id`/locations/`location_id`/datasets/`dataset_id`/
622
+ # dicomStores/`dicom_store_id``.
623
+ # Corresponds to the JSON property `name`
624
+ # @return [String]
625
+ attr_accessor :name
626
+
627
+ # Specifies where to send notifications upon changes to a data store.
628
+ # Corresponds to the JSON property `notificationConfig`
629
+ # @return [Google::Apis::HealthcareV1::NotificationConfig]
630
+ attr_accessor :notification_config
631
+
632
+ def initialize(**args)
633
+ update!(**args)
634
+ end
635
+
636
+ # Update properties of this object
637
+ def update!(**args)
638
+ @labels = args[:labels] if args.key?(:labels)
639
+ @name = args[:name] if args.key?(:name)
640
+ @notification_config = args[:notification_config] if args.key?(:notification_config)
641
+ end
642
+ end
643
+
644
+ # A generic empty message that you can re-use to avoid defining duplicated
645
+ # empty messages in your APIs. A typical example is to use it as the request
646
+ # or the response type of an API method. For instance:
647
+ # service Foo `
648
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
649
+ # `
650
+ # The JSON representation for `Empty` is empty JSON object ````.
651
+ class Empty
652
+ include Google::Apis::Core::Hashable
653
+
654
+ def initialize(**args)
655
+ update!(**args)
656
+ end
657
+
658
+ # Update properties of this object
659
+ def update!(**args)
660
+ end
661
+ end
662
+
663
+ # Exports data from the specified DICOM store.
664
+ # If a given resource, such as a DICOM object with the same SOPInstance UID,
665
+ # already exists in the output, it is overwritten with the version
666
+ # in the source dataset.
667
+ # Exported DICOM data persists when the DICOM store from which it was
668
+ # exported is deleted.
669
+ class ExportDicomDataRequest
670
+ include Google::Apis::Core::Hashable
671
+
672
+ # The BigQuery table where the server writes the output.
673
+ # Corresponds to the JSON property `bigqueryDestination`
674
+ # @return [Google::Apis::HealthcareV1::GoogleCloudHealthcareV1DicomBigQueryDestination]
675
+ attr_accessor :bigquery_destination
676
+
677
+ # The Cloud Storage location where the server writes the output and the export
678
+ # configuration.
679
+ # Corresponds to the JSON property `gcsDestination`
680
+ # @return [Google::Apis::HealthcareV1::GoogleCloudHealthcareV1DicomGcsDestination]
681
+ attr_accessor :gcs_destination
682
+
683
+ def initialize(**args)
684
+ update!(**args)
685
+ end
686
+
687
+ # Update properties of this object
688
+ def update!(**args)
689
+ @bigquery_destination = args[:bigquery_destination] if args.key?(:bigquery_destination)
690
+ @gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination)
691
+ end
692
+ end
693
+
694
+ # Returns additional information in regards to a completed DICOM store export.
695
+ class ExportDicomDataResponse
696
+ include Google::Apis::Core::Hashable
697
+
698
+ def initialize(**args)
699
+ update!(**args)
700
+ end
701
+
702
+ # Update properties of this object
703
+ def update!(**args)
704
+ end
705
+ end
706
+
707
+ # Request to export resources.
708
+ class ExportResourcesRequest
709
+ include Google::Apis::Core::Hashable
710
+
711
+ # The configuration for exporting to BigQuery.
712
+ # Corresponds to the JSON property `bigqueryDestination`
713
+ # @return [Google::Apis::HealthcareV1::GoogleCloudHealthcareV1FhirBigQueryDestination]
714
+ attr_accessor :bigquery_destination
715
+
716
+ # The configuration for exporting to Cloud Storage.
717
+ # Corresponds to the JSON property `gcsDestination`
718
+ # @return [Google::Apis::HealthcareV1::GoogleCloudHealthcareV1FhirGcsDestination]
719
+ attr_accessor :gcs_destination
720
+
721
+ def initialize(**args)
722
+ update!(**args)
723
+ end
724
+
725
+ # Update properties of this object
726
+ def update!(**args)
727
+ @bigquery_destination = args[:bigquery_destination] if args.key?(:bigquery_destination)
728
+ @gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination)
729
+ end
730
+ end
731
+
732
+ # Response when all resources export successfully.
733
+ # This structure is included in the
734
+ # response to describe the detailed
735
+ # outcome after the operation finishes successfully.
736
+ class ExportResourcesResponse
737
+ include Google::Apis::Core::Hashable
738
+
739
+ def initialize(**args)
740
+ update!(**args)
741
+ end
742
+
743
+ # Update properties of this object
744
+ def update!(**args)
745
+ end
746
+ end
747
+
748
+ # Represents a textual expression in the Common Expression Language (CEL)
749
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
750
+ # are documented at https://github.com/google/cel-spec.
751
+ # Example (Comparison):
752
+ # title: "Summary size limit"
753
+ # description: "Determines if a summary is less than 100 chars"
754
+ # expression: "document.summary.size() < 100"
755
+ # Example (Equality):
756
+ # title: "Requestor is owner"
757
+ # description: "Determines if requestor is the document owner"
758
+ # expression: "document.owner == request.auth.claims.email"
759
+ # Example (Logic):
760
+ # title: "Public documents"
761
+ # description: "Determine whether the document should be publicly visible"
762
+ # expression: "document.type != 'private' && document.type != 'internal'"
763
+ # Example (Data Manipulation):
764
+ # title: "Notification string"
765
+ # description: "Create a notification string with a timestamp."
766
+ # expression: "'New message received at ' + string(document.create_time)"
767
+ # The exact variables and functions that may be referenced within an expression
768
+ # are determined by the service that evaluates it. See the service
769
+ # documentation for additional information.
770
+ class Expr
771
+ include Google::Apis::Core::Hashable
772
+
773
+ # Optional. Description of the expression. This is a longer text which
774
+ # describes the expression, e.g. when hovered over it in a UI.
775
+ # Corresponds to the JSON property `description`
776
+ # @return [String]
777
+ attr_accessor :description
778
+
779
+ # Textual representation of an expression in Common Expression Language
780
+ # syntax.
781
+ # Corresponds to the JSON property `expression`
782
+ # @return [String]
783
+ attr_accessor :expression
784
+
785
+ # Optional. String indicating the location of the expression for error
786
+ # reporting, e.g. a file name and a position in the file.
787
+ # Corresponds to the JSON property `location`
788
+ # @return [String]
789
+ attr_accessor :location
790
+
791
+ # Optional. Title for the expression, i.e. a short string describing
792
+ # its purpose. This can be used e.g. in UIs which allow to enter the
793
+ # expression.
794
+ # Corresponds to the JSON property `title`
795
+ # @return [String]
796
+ attr_accessor :title
797
+
798
+ def initialize(**args)
799
+ update!(**args)
800
+ end
801
+
802
+ # Update properties of this object
803
+ def update!(**args)
804
+ @description = args[:description] if args.key?(:description)
805
+ @expression = args[:expression] if args.key?(:expression)
806
+ @location = args[:location] if args.key?(:location)
807
+ @title = args[:title] if args.key?(:title)
808
+ end
809
+ end
810
+
811
+ # Specifies how to handle de-identification of a FHIR store.
812
+ class FhirConfig
813
+ include Google::Apis::Core::Hashable
814
+
815
+ # Specifies FHIR paths to match and how to transform them. Any field that
816
+ # is not matched by a FieldMetadata is passed through to the output
817
+ # dataset unmodified. All extensions are removed in the output.
818
+ # Corresponds to the JSON property `fieldMetadataList`
819
+ # @return [Array<Google::Apis::HealthcareV1::FieldMetadata>]
820
+ attr_accessor :field_metadata_list
821
+
822
+ def initialize(**args)
823
+ update!(**args)
824
+ end
825
+
826
+ # Update properties of this object
827
+ def update!(**args)
828
+ @field_metadata_list = args[:field_metadata_list] if args.key?(:field_metadata_list)
829
+ end
830
+ end
831
+
832
+ # Filter configuration.
833
+ class FhirFilter
834
+ include Google::Apis::Core::Hashable
835
+
836
+ # A list of FHIR resources.
837
+ # Corresponds to the JSON property `resources`
838
+ # @return [Google::Apis::HealthcareV1::Resources]
839
+ attr_accessor :resources
840
+
841
+ def initialize(**args)
842
+ update!(**args)
843
+ end
844
+
845
+ # Update properties of this object
846
+ def update!(**args)
847
+ @resources = args[:resources] if args.key?(:resources)
848
+ end
849
+ end
850
+
851
+ # Represents a FHIR store.
852
+ class FhirStore
853
+ include Google::Apis::Core::Hashable
854
+
855
+ # Whether to disable referential integrity in this FHIR store. This field is
856
+ # immutable after FHIR store creation.
857
+ # The default value is false, meaning that the API enforces referential
858
+ # integrity and fails the requests that result in inconsistent state in
859
+ # the FHIR store.
860
+ # When this field is set to true, the API skips referential integrity
861
+ # checks. Consequently, operations that rely on references, such as
862
+ # GetPatientEverything, do not return all the results if broken references
863
+ # exist.
864
+ # Corresponds to the JSON property `disableReferentialIntegrity`
865
+ # @return [Boolean]
866
+ attr_accessor :disable_referential_integrity
867
+ alias_method :disable_referential_integrity?, :disable_referential_integrity
868
+
869
+ # Whether to disable resource versioning for this FHIR store. This field can
870
+ # not be changed after the creation of FHIR store.
871
+ # If set to false, which is the default behavior, all write operations
872
+ # cause historical versions to be recorded automatically. The historical
873
+ # versions can be fetched through the history APIs, but cannot be updated.
874
+ # If set to true, no historical versions are kept. The server sends
875
+ # errors for attempts to read the historical versions.
876
+ # Corresponds to the JSON property `disableResourceVersioning`
877
+ # @return [Boolean]
878
+ attr_accessor :disable_resource_versioning
879
+ alias_method :disable_resource_versioning?, :disable_resource_versioning
880
+
881
+ # Whether this FHIR store has the [updateCreate
882
+ # capability](https://www.hl7.org/fhir/capabilitystatement-definitions.html#
883
+ # CapabilityStatement.rest.resource.updateCreate).
884
+ # This determines if the client can use an Update operation to create a new
885
+ # resource with a client-specified ID. If false, all IDs are server-assigned
886
+ # through the Create operation and attempts to update a non-existent resource
887
+ # return errors. Please treat the audit logs with appropriate levels of
888
+ # care if client-specified resource IDs contain sensitive data such as
889
+ # patient identifiers, those IDs are part of the FHIR resource path
890
+ # recorded in Cloud audit logs and Cloud Pub/Sub notifications.
891
+ # Corresponds to the JSON property `enableUpdateCreate`
892
+ # @return [Boolean]
893
+ attr_accessor :enable_update_create
894
+ alias_method :enable_update_create?, :enable_update_create
895
+
896
+ # User-supplied key-value pairs used to organize FHIR stores.
897
+ # Label keys must be between 1 and 63 characters long, have a UTF-8 encoding
898
+ # of maximum 128 bytes, and must conform to the
899
+ # following PCRE regular expression:
900
+ # \p`Ll`\p`Lo``0,62`
901
+ # Label values are optional, must be between 1 and 63 characters long, have
902
+ # a UTF-8 encoding of maximum 128 bytes, and must conform to the
903
+ # following PCRE regular expression: [\p`Ll`\p`Lo`\p`N`_-]`0,63`
904
+ # No more than 64 labels can be associated with a given store.
905
+ # Corresponds to the JSON property `labels`
906
+ # @return [Hash<String,String>]
907
+ attr_accessor :labels
908
+
909
+ # Output only. Resource name of the FHIR store, of the form
910
+ # `projects/`project_id`/datasets/`dataset_id`/fhirStores/`fhir_store_id``.
911
+ # Corresponds to the JSON property `name`
912
+ # @return [String]
913
+ attr_accessor :name
914
+
915
+ # Specifies where to send notifications upon changes to a data store.
916
+ # Corresponds to the JSON property `notificationConfig`
917
+ # @return [Google::Apis::HealthcareV1::NotificationConfig]
918
+ attr_accessor :notification_config
919
+
920
+ # A list of streaming configs that configure the destinations of streaming
921
+ # export for every resource mutation in this FHIR store. Each store is
922
+ # allowed to have up to 10 streaming configs.
923
+ # After a new config is added, the next resource mutation is streamed to
924
+ # the new location in addition to the existing ones.
925
+ # When a location is removed from the list, the server stops
926
+ # streaming to that location. Before adding a new config, you must add the
927
+ # required
928
+ # [`bigquery.dataEditor`](https://cloud.google.com/bigquery/docs/access-control#
929
+ # bigquery.dataEditor)
930
+ # role to your project's **Cloud Healthcare Service Agent**
931
+ # [service account](https://cloud.google.com/iam/docs/service-accounts).
932
+ # Some lag (typically on the order of dozens of seconds) is expected before
933
+ # the results show up in the streaming destination.
934
+ # Corresponds to the JSON property `streamConfigs`
935
+ # @return [Array<Google::Apis::HealthcareV1::StreamConfig>]
936
+ attr_accessor :stream_configs
937
+
938
+ # The FHIR specification version that this FHIR store supports natively. This
939
+ # field is immutable after store creation. Requests are rejected if they
940
+ # contain FHIR resources of a different version.
941
+ # Corresponds to the JSON property `version`
942
+ # @return [String]
943
+ attr_accessor :version
944
+
945
+ def initialize(**args)
946
+ update!(**args)
947
+ end
948
+
949
+ # Update properties of this object
950
+ def update!(**args)
951
+ @disable_referential_integrity = args[:disable_referential_integrity] if args.key?(:disable_referential_integrity)
952
+ @disable_resource_versioning = args[:disable_resource_versioning] if args.key?(:disable_resource_versioning)
953
+ @enable_update_create = args[:enable_update_create] if args.key?(:enable_update_create)
954
+ @labels = args[:labels] if args.key?(:labels)
955
+ @name = args[:name] if args.key?(:name)
956
+ @notification_config = args[:notification_config] if args.key?(:notification_config)
957
+ @stream_configs = args[:stream_configs] if args.key?(:stream_configs)
958
+ @version = args[:version] if args.key?(:version)
959
+ end
960
+ end
961
+
962
+ # Specifies FHIR paths to match, and how to handle de-identification of
963
+ # matching fields.
964
+ class FieldMetadata
965
+ include Google::Apis::Core::Hashable
966
+
967
+ # Deidentify action for one field.
968
+ # Corresponds to the JSON property `action`
969
+ # @return [String]
970
+ attr_accessor :action
971
+
972
+ # List of paths to FHIR fields to be redacted. Each path is a
973
+ # period-separated list where each component is either a field name or
974
+ # FHIR type name, for example: Patient, HumanName.
975
+ # For "choice" types (those defined in the FHIR spec with the form:
976
+ # field[x]) we use two separate components. For example,
977
+ # "deceasedAge.unit" is matched by "Deceased.Age.unit".
978
+ # Supported types are: AdministrativeGenderCode, Code, Date, DateTime,
979
+ # Decimal, HumanName, Id, LanguageCode, Markdown, Oid, String, Uri, Uuid,
980
+ # Xhtml.
981
+ # Base64Binary is also supported, but may only be kept as-is or have all
982
+ # the content removed.
983
+ # Corresponds to the JSON property `paths`
984
+ # @return [Array<String>]
985
+ attr_accessor :paths
986
+
987
+ def initialize(**args)
988
+ update!(**args)
989
+ end
990
+
991
+ # Update properties of this object
992
+ def update!(**args)
993
+ @action = args[:action] if args.key?(:action)
994
+ @paths = args[:paths] if args.key?(:paths)
995
+ end
996
+ end
997
+
998
+ # Contains a summary of the DeidentifyDicomStore operation.
999
+ class GoogleCloudHealthcareV1DeidentifyDeidentifyDicomStoreSummary
1000
+ include Google::Apis::Core::Hashable
1001
+
1002
+ def initialize(**args)
1003
+ update!(**args)
1004
+ end
1005
+
1006
+ # Update properties of this object
1007
+ def update!(**args)
1008
+ end
1009
+ end
1010
+
1011
+ # Contains a summary of the DeidentifyFhirStore operation.
1012
+ class GoogleCloudHealthcareV1DeidentifyDeidentifyFhirStoreSummary
1013
+ include Google::Apis::Core::Hashable
1014
+
1015
+ def initialize(**args)
1016
+ update!(**args)
1017
+ end
1018
+
1019
+ # Update properties of this object
1020
+ def update!(**args)
1021
+ end
1022
+ end
1023
+
1024
+ # The BigQuery table where the server writes the output.
1025
+ class GoogleCloudHealthcareV1DicomBigQueryDestination
1026
+ include Google::Apis::Core::Hashable
1027
+
1028
+ # If the destination table already exists and this flag is `TRUE`, the table
1029
+ # is overwritten by the contents of the DICOM store. If the flag is not
1030
+ # set and the destination table already exists, the export call returns an
1031
+ # error.
1032
+ # Corresponds to the JSON property `force`
1033
+ # @return [Boolean]
1034
+ attr_accessor :force
1035
+ alias_method :force?, :force
1036
+
1037
+ # BigQuery URI to a table, up to 2000 characters long, in the format
1038
+ # `bq://projectId.bqDatasetId.tableId`
1039
+ # Corresponds to the JSON property `tableUri`
1040
+ # @return [String]
1041
+ attr_accessor :table_uri
1042
+
1043
+ def initialize(**args)
1044
+ update!(**args)
1045
+ end
1046
+
1047
+ # Update properties of this object
1048
+ def update!(**args)
1049
+ @force = args[:force] if args.key?(:force)
1050
+ @table_uri = args[:table_uri] if args.key?(:table_uri)
1051
+ end
1052
+ end
1053
+
1054
+ # The Cloud Storage location where the server writes the output and the export
1055
+ # configuration.
1056
+ class GoogleCloudHealthcareV1DicomGcsDestination
1057
+ include Google::Apis::Core::Hashable
1058
+
1059
+ # MIME types supported by DICOM spec.
1060
+ # Each file is written in the following format:
1061
+ # `.../`study_id`/`series_id`/`instance_id`[/`frame_number`].`extension``
1062
+ # The frame_number component exists only for multi-frame instances.
1063
+ # Supported MIME types are consistent with supported formats in DICOMweb:
1064
+ # https://cloud.google.com/healthcare/docs/dicom#retrieve_transaction.
1065
+ # Specifically, the following are supported:
1066
+ # - application/dicom; transfer-syntax=1.2.840.10008.1.2.1
1067
+ # (uncompressed DICOM)
1068
+ # - application/dicom; transfer-syntax=1.2.840.10008.1.2.4.50
1069
+ # (DICOM with embedded JPEG Baseline)
1070
+ # - application/dicom; transfer-syntax=1.2.840.10008.1.2.4.90
1071
+ # (DICOM with embedded JPEG 2000 Lossless Only)
1072
+ # - application/dicom; transfer-syntax=1.2.840.10008.1.2.4.91
1073
+ # (DICOM with embedded JPEG 2000)
1074
+ # - application/dicom; transfer-syntax=*
1075
+ # (DICOM with no transcoding)
1076
+ # - application/octet-stream; transfer-syntax=1.2.840.10008.1.2.1
1077
+ # (raw uncompressed PixelData)
1078
+ # - application/octet-stream; transfer-syntax=*
1079
+ # (raw PixelData in whatever format it was uploaded in)
1080
+ # - image/jpeg; transfer-syntax=1.2.840.10008.1.2.4.50
1081
+ # (Consumer JPEG)
1082
+ # - image/png
1083
+ # The following extensions are used for output files:
1084
+ # - application/dicom -> .dcm
1085
+ # - image/jpeg -> .jpg
1086
+ # - image/png -> .png
1087
+ # - application/octet-stream -> no extension
1088
+ # If unspecified, the instances are exported in the original
1089
+ # DICOM format they were uploaded in.
1090
+ # Corresponds to the JSON property `mimeType`
1091
+ # @return [String]
1092
+ attr_accessor :mime_type
1093
+
1094
+ # The Cloud Storage destination to export to.
1095
+ # URI for a Cloud Storage directory where the server writes the result files,
1096
+ # in the format `gs://`bucket-id`/`path/to/destination/dir``). If there is no
1097
+ # trailing slash, the service appends one when composing the object path.
1098
+ # The user is responsible for creating the Cloud Storage bucket referenced in
1099
+ # `uri_prefix`.
1100
+ # Corresponds to the JSON property `uriPrefix`
1101
+ # @return [String]
1102
+ attr_accessor :uri_prefix
1103
+
1104
+ def initialize(**args)
1105
+ update!(**args)
1106
+ end
1107
+
1108
+ # Update properties of this object
1109
+ def update!(**args)
1110
+ @mime_type = args[:mime_type] if args.key?(:mime_type)
1111
+ @uri_prefix = args[:uri_prefix] if args.key?(:uri_prefix)
1112
+ end
1113
+ end
1114
+
1115
+ # Specifies the configuration for importing data from Cloud Storage.
1116
+ class GoogleCloudHealthcareV1DicomGcsSource
1117
+ include Google::Apis::Core::Hashable
1118
+
1119
+ # Points to a Cloud Storage URI containing file(s) with
1120
+ # content only. The URI must be in the following format:
1121
+ # `gs://`bucket_id`/`object_id``. The URI can include wildcards in
1122
+ # `object_id` and thus identify multiple files. Supported wildcards:
1123
+ # '*' to match 0 or more non-separator characters
1124
+ # '**' to match 0 or more characters (including separators). Must be used at
1125
+ # the end of a path and with no other wildcards in the
1126
+ # path. Can also be used with a file extension (such as .dcm), which
1127
+ # imports all files with the extension in the specified directory and
1128
+ # its sub-directories. For example,
1129
+ # `gs://my-bucket/my-directory/**.dcm` imports all files with .dcm
1130
+ # extensions in `my-directory/` and its sub-directories.
1131
+ # '?' to match 1 character
1132
+ # All other URI formats are invalid.
1133
+ # Files matching the wildcard are expected to contain content only, no
1134
+ # metadata.
1135
+ # Corresponds to the JSON property `uri`
1136
+ # @return [String]
1137
+ attr_accessor :uri
1138
+
1139
+ def initialize(**args)
1140
+ update!(**args)
1141
+ end
1142
+
1143
+ # Update properties of this object
1144
+ def update!(**args)
1145
+ @uri = args[:uri] if args.key?(:uri)
1146
+ end
1147
+ end
1148
+
1149
+ # The configuration for exporting to BigQuery.
1150
+ class GoogleCloudHealthcareV1FhirBigQueryDestination
1151
+ include Google::Apis::Core::Hashable
1152
+
1153
+ # BigQuery URI to a dataset, up to 2000 characters long, in the format
1154
+ # `bq://projectId.bqDatasetId`
1155
+ # Corresponds to the JSON property `datasetUri`
1156
+ # @return [String]
1157
+ attr_accessor :dataset_uri
1158
+
1159
+ # If this flag is `TRUE`, all tables are deleted from the dataset before
1160
+ # the new exported tables are written. If the flag is not set and the
1161
+ # destination dataset contains tables, the export call returns an error.
1162
+ # Corresponds to the JSON property `force`
1163
+ # @return [Boolean]
1164
+ attr_accessor :force
1165
+ alias_method :force?, :force
1166
+
1167
+ # Configuration for the FHIR BigQuery schema. Determines how the server
1168
+ # generates the schema.
1169
+ # Corresponds to the JSON property `schemaConfig`
1170
+ # @return [Google::Apis::HealthcareV1::SchemaConfig]
1171
+ attr_accessor :schema_config
1172
+
1173
+ def initialize(**args)
1174
+ update!(**args)
1175
+ end
1176
+
1177
+ # Update properties of this object
1178
+ def update!(**args)
1179
+ @dataset_uri = args[:dataset_uri] if args.key?(:dataset_uri)
1180
+ @force = args[:force] if args.key?(:force)
1181
+ @schema_config = args[:schema_config] if args.key?(:schema_config)
1182
+ end
1183
+ end
1184
+
1185
+ # The configuration for exporting to Cloud Storage.
1186
+ class GoogleCloudHealthcareV1FhirGcsDestination
1187
+ include Google::Apis::Core::Hashable
1188
+
1189
+ # URI for a Cloud Storage directory where result files should be written, in
1190
+ # the format of `gs://`bucket-id`/`path/to/destination/dir``. If there is no
1191
+ # trailing slash, the service appends one when composing the object path.
1192
+ # The user is responsible for creating the Cloud Storage bucket referenced in
1193
+ # `uri_prefix`.
1194
+ # Corresponds to the JSON property `uriPrefix`
1195
+ # @return [String]
1196
+ attr_accessor :uri_prefix
1197
+
1198
+ def initialize(**args)
1199
+ update!(**args)
1200
+ end
1201
+
1202
+ # Update properties of this object
1203
+ def update!(**args)
1204
+ @uri_prefix = args[:uri_prefix] if args.key?(:uri_prefix)
1205
+ end
1206
+ end
1207
+
1208
+ # Specifies the configuration for importing data from Cloud Storage.
1209
+ class GoogleCloudHealthcareV1FhirGcsSource
1210
+ include Google::Apis::Core::Hashable
1211
+
1212
+ # Points to a Cloud Storage URI containing file(s) to import.
1213
+ # The URI must be in the following format: `gs://`bucket_id`/`object_id``.
1214
+ # The URI can include wildcards in `object_id` and thus identify multiple
1215
+ # files. Supported wildcards:
1216
+ # * `*` to match 0 or more non-separator characters
1217
+ # * `**` to match 0 or more characters (including separators). Must be used
1218
+ # at the end of a path and with no other wildcards in the
1219
+ # path. Can also be used with a file extension (such as .ndjson), which
1220
+ # imports all files with the extension in the specified directory and
1221
+ # its sub-directories. For example, `gs://my-bucket/my-directory/**.ndjson`
1222
+ # imports all files with `.ndjson` extensions in `my-directory/` and its
1223
+ # sub-directories.
1224
+ # * `?` to match 1 character
1225
+ # Files matching the wildcard are expected to contain content only, no
1226
+ # metadata.
1227
+ # Corresponds to the JSON property `uri`
1228
+ # @return [String]
1229
+ attr_accessor :uri
1230
+
1231
+ def initialize(**args)
1232
+ update!(**args)
1233
+ end
1234
+
1235
+ # Update properties of this object
1236
+ def update!(**args)
1237
+ @uri = args[:uri] if args.key?(:uri)
1238
+ end
1239
+ end
1240
+
1241
+ # Specifies where and whether to send notifications upon changes to a
1242
+ # data store.
1243
+ class Hl7V2NotificationConfig
1244
+ include Google::Apis::Core::Hashable
1245
+
1246
+ # Restricts notifications sent for messages matching a filter. If this is
1247
+ # empty, all messages are matched. Syntax:
1248
+ # https://cloud.google.com/appengine/docs/standard/python/search/query_strings
1249
+ # The following fields and functions are available for filtering:
1250
+ # * `message_type`, from the MSH-9.1 field. For example,
1251
+ # `NOT message_type = "ADT"`.
1252
+ # * `send_date` or `sendDate`, the YYYY-MM-DD date the message was sent in
1253
+ # the dataset's time_zone, from the MSH-7 segment. For example,
1254
+ # `send_date < "2017-01-02"`.
1255
+ # * `send_time`, the timestamp when the message was sent, using the
1256
+ # RFC3339 time format for comparisons, from the MSH-7 segment. For example,
1257
+ # `send_time < "2017-01-02T00:00:00-05:00"`.
1258
+ # * `send_facility`, the care center that the message came from, from the
1259
+ # MSH-4 segment. For example, `send_facility = "ABC"`.
1260
+ # * `PatientId(value, type)`, which matches if the message lists a patient
1261
+ # having an ID of the given value and type in the PID-2, PID-3, or PID-4
1262
+ # segments. For example, `PatientId("123456", "MRN")`.
1263
+ # * `labels.x`, a string value of the label with key `x` as set using the
1264
+ # Message.labels
1265
+ # map. For example, `labels."priority"="high"`. The operator `:*` can be
1266
+ # used to assert the existence of a label. For example,
1267
+ # `labels."priority":*`.
1268
+ # Corresponds to the JSON property `filter`
1269
+ # @return [String]
1270
+ attr_accessor :filter
1271
+
1272
+ # The [Cloud Pub/Sub](https://cloud.google.com/pubsub/docs/) topic that
1273
+ # notifications of changes are published on. Supplied by the client.
1274
+ # The notification is a `PubsubMessage` with the following fields:
1275
+ # * `PubsubMessage.Data` contains the resource name.
1276
+ # * `PubsubMessage.MessageId` is the ID of this notification. It's
1277
+ # guaranteed to be unique within the topic.
1278
+ # * `PubsubMessage.PublishTime` is the time when the message was
1279
+ # published.
1280
+ # Note that notifications are only sent if the topic is non-empty. [Topic
1281
+ # names](https://cloud.google.com/pubsub/docs/overview#names) must be
1282
+ # scoped to a project.
1283
+ # The Cloud Healthcare API service account,
1284
+ # service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com,
1285
+ # must have
1286
+ # publisher permissions on the given Pub/Sub topic. Not having adequate
1287
+ # permissions causes the calls that send notifications to fail.
1288
+ # If a notification cannot be published to Cloud Pub/Sub, errors are
1289
+ # logged to Cloud Logging. For more information, see
1290
+ # [Viewing error logs in Cloud Logging](/healthcare/docs/how-tos/logging)).
1291
+ # Corresponds to the JSON property `pubsubTopic`
1292
+ # @return [String]
1293
+ attr_accessor :pubsub_topic
1294
+
1295
+ def initialize(**args)
1296
+ update!(**args)
1297
+ end
1298
+
1299
+ # Update properties of this object
1300
+ def update!(**args)
1301
+ @filter = args[:filter] if args.key?(:filter)
1302
+ @pubsub_topic = args[:pubsub_topic] if args.key?(:pubsub_topic)
1303
+ end
1304
+ end
1305
+
1306
+ # Represents an HL7v2 store.
1307
+ class Hl7V2Store
1308
+ include Google::Apis::Core::Hashable
1309
+
1310
+ # User-supplied key-value pairs used to organize HL7v2 stores.
1311
+ # Label keys must be between 1 and 63 characters long, have a UTF-8 encoding
1312
+ # of maximum 128 bytes, and must conform to the
1313
+ # following PCRE regular expression:
1314
+ # \p`Ll`\p`Lo``0,62`
1315
+ # Label values are optional, must be between 1 and 63 characters long, have
1316
+ # a UTF-8 encoding of maximum 128 bytes, and must conform to the
1317
+ # following PCRE regular expression: [\p`Ll`\p`Lo`\p`N`_-]`0,63`
1318
+ # No more than 64 labels can be associated with a given store.
1319
+ # Corresponds to the JSON property `labels`
1320
+ # @return [Hash<String,String>]
1321
+ attr_accessor :labels
1322
+
1323
+ # Output only. Resource name of the HL7v2 store, of the form
1324
+ # `projects/`project_id`/datasets/`dataset_id`/hl7V2Stores/`hl7v2_store_id``.
1325
+ # Corresponds to the JSON property `name`
1326
+ # @return [String]
1327
+ attr_accessor :name
1328
+
1329
+ # A list of notification configs. Each configuration uses a filter to
1330
+ # determine whether to publish a message (both Ingest & Create) on
1331
+ # the corresponding notification destination. Only the message name is sent
1332
+ # as part of the notification. Supplied by the client.
1333
+ # Corresponds to the JSON property `notificationConfigs`
1334
+ # @return [Array<Google::Apis::HealthcareV1::Hl7V2NotificationConfig>]
1335
+ attr_accessor :notification_configs
1336
+
1337
+ # The configuration for the parser. It determines how the server parses the
1338
+ # messages.
1339
+ # Corresponds to the JSON property `parserConfig`
1340
+ # @return [Google::Apis::HealthcareV1::ParserConfig]
1341
+ attr_accessor :parser_config
1342
+
1343
+ # Determines whether to reject duplicate messages. A duplicate
1344
+ # message is a message with the same raw bytes as a message that has already
1345
+ # been ingested/created in this HL7v2 store.
1346
+ # The default value is false, meaning that the store accepts the duplicate
1347
+ # messages and it also returns the same ACK message in the
1348
+ # IngestMessageResponse as has been returned previously. Note that only
1349
+ # one resource is created in the store.
1350
+ # When this field is set to true,
1351
+ # CreateMessage/IngestMessage
1352
+ # requests with a duplicate message will be rejected by the store, and
1353
+ # IngestMessageErrorDetail returns a NACK message upon rejection.
1354
+ # Corresponds to the JSON property `rejectDuplicateMessage`
1355
+ # @return [Boolean]
1356
+ attr_accessor :reject_duplicate_message
1357
+ alias_method :reject_duplicate_message?, :reject_duplicate_message
1358
+
1359
+ def initialize(**args)
1360
+ update!(**args)
1361
+ end
1362
+
1363
+ # Update properties of this object
1364
+ def update!(**args)
1365
+ @labels = args[:labels] if args.key?(:labels)
1366
+ @name = args[:name] if args.key?(:name)
1367
+ @notification_configs = args[:notification_configs] if args.key?(:notification_configs)
1368
+ @parser_config = args[:parser_config] if args.key?(:parser_config)
1369
+ @reject_duplicate_message = args[:reject_duplicate_message] if args.key?(:reject_duplicate_message)
1370
+ end
1371
+ end
1372
+
1373
+ # Message that represents an arbitrary HTTP body. It should only be used for
1374
+ # payload formats that can't be represented as JSON, such as raw binary or
1375
+ # an HTML page.
1376
+ # This message can be used both in streaming and non-streaming API methods in
1377
+ # the request as well as the response.
1378
+ # It can be used as a top-level request field, which is convenient if one
1379
+ # wants to extract parameters from either the URL or HTTP template into the
1380
+ # request fields and also want access to the raw HTTP body.
1381
+ # Example:
1382
+ # message GetResourceRequest `
1383
+ # // A unique request id.
1384
+ # string request_id = 1;
1385
+ # // The raw HTTP body is bound to this field.
1386
+ # google.api.HttpBody http_body = 2;
1387
+ # `
1388
+ # service ResourceService `
1389
+ # rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);
1390
+ # rpc UpdateResource(google.api.HttpBody) returns
1391
+ # (google.protobuf.Empty);
1392
+ # `
1393
+ # Example with streaming methods:
1394
+ # service CaldavService `
1395
+ # rpc GetCalendar(stream google.api.HttpBody)
1396
+ # returns (stream google.api.HttpBody);
1397
+ # rpc UpdateCalendar(stream google.api.HttpBody)
1398
+ # returns (stream google.api.HttpBody);
1399
+ # `
1400
+ # Use of this type only changes how the request and response bodies are
1401
+ # handled, all other features will continue to work unchanged.
1402
+ class HttpBody
1403
+ include Google::Apis::Core::Hashable
1404
+
1405
+ # The HTTP Content-Type header value specifying the content type of the body.
1406
+ # Corresponds to the JSON property `contentType`
1407
+ # @return [String]
1408
+ attr_accessor :content_type
1409
+
1410
+ # The HTTP request/response body as raw binary.
1411
+ # Corresponds to the JSON property `data`
1412
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1413
+ # @return [String]
1414
+ attr_accessor :data
1415
+
1416
+ # Application specific response metadata. Must be set in the first response
1417
+ # for streaming APIs.
1418
+ # Corresponds to the JSON property `extensions`
1419
+ # @return [Array<Hash<String,Object>>]
1420
+ attr_accessor :extensions
1421
+
1422
+ def initialize(**args)
1423
+ update!(**args)
1424
+ end
1425
+
1426
+ # Update properties of this object
1427
+ def update!(**args)
1428
+ @content_type = args[:content_type] if args.key?(:content_type)
1429
+ @data = args[:data] if args.key?(:data)
1430
+ @extensions = args[:extensions] if args.key?(:extensions)
1431
+ end
1432
+ end
1433
+
1434
+ # Specifies how to handle de-identification of image pixels.
1435
+ class ImageConfig
1436
+ include Google::Apis::Core::Hashable
1437
+
1438
+ # Determines how to redact text from image.
1439
+ # Corresponds to the JSON property `textRedactionMode`
1440
+ # @return [String]
1441
+ attr_accessor :text_redaction_mode
1442
+
1443
+ def initialize(**args)
1444
+ update!(**args)
1445
+ end
1446
+
1447
+ # Update properties of this object
1448
+ def update!(**args)
1449
+ @text_redaction_mode = args[:text_redaction_mode] if args.key?(:text_redaction_mode)
1450
+ end
1451
+ end
1452
+
1453
+ # Imports data into the specified DICOM store.
1454
+ # Returns an error if any of the files to import are not DICOM files. This
1455
+ # API accepts duplicate DICOM instances by ignoring the newly-pushed instance.
1456
+ # It does not overwrite.
1457
+ class ImportDicomDataRequest
1458
+ include Google::Apis::Core::Hashable
1459
+
1460
+ # Specifies the configuration for importing data from Cloud Storage.
1461
+ # Corresponds to the JSON property `gcsSource`
1462
+ # @return [Google::Apis::HealthcareV1::GoogleCloudHealthcareV1DicomGcsSource]
1463
+ attr_accessor :gcs_source
1464
+
1465
+ def initialize(**args)
1466
+ update!(**args)
1467
+ end
1468
+
1469
+ # Update properties of this object
1470
+ def update!(**args)
1471
+ @gcs_source = args[:gcs_source] if args.key?(:gcs_source)
1472
+ end
1473
+ end
1474
+
1475
+ # Returns additional information in regards to a completed DICOM store import.
1476
+ class ImportDicomDataResponse
1477
+ include Google::Apis::Core::Hashable
1478
+
1479
+ def initialize(**args)
1480
+ update!(**args)
1481
+ end
1482
+
1483
+ # Update properties of this object
1484
+ def update!(**args)
1485
+ end
1486
+ end
1487
+
1488
+ # Request to import resources.
1489
+ class ImportResourcesRequest
1490
+ include Google::Apis::Core::Hashable
1491
+
1492
+ # The content structure in the source location. If not specified, the server
1493
+ # treats the input source files as BUNDLE.
1494
+ # Corresponds to the JSON property `contentStructure`
1495
+ # @return [String]
1496
+ attr_accessor :content_structure
1497
+
1498
+ # Specifies the configuration for importing data from Cloud Storage.
1499
+ # Corresponds to the JSON property `gcsSource`
1500
+ # @return [Google::Apis::HealthcareV1::GoogleCloudHealthcareV1FhirGcsSource]
1501
+ attr_accessor :gcs_source
1502
+
1503
+ def initialize(**args)
1504
+ update!(**args)
1505
+ end
1506
+
1507
+ # Update properties of this object
1508
+ def update!(**args)
1509
+ @content_structure = args[:content_structure] if args.key?(:content_structure)
1510
+ @gcs_source = args[:gcs_source] if args.key?(:gcs_source)
1511
+ end
1512
+ end
1513
+
1514
+ # Final response of importing resources.
1515
+ # This structure is included in the
1516
+ # response to describe the detailed
1517
+ # outcome after the operation finishes successfully.
1518
+ class ImportResourcesResponse
1519
+ include Google::Apis::Core::Hashable
1520
+
1521
+ def initialize(**args)
1522
+ update!(**args)
1523
+ end
1524
+
1525
+ # Update properties of this object
1526
+ def update!(**args)
1527
+ end
1528
+ end
1529
+
1530
+ # A transformation to apply to text that is identified as a specific
1531
+ # info_type.
1532
+ class InfoTypeTransformation
1533
+ include Google::Apis::Core::Hashable
1534
+
1535
+ # Mask a string by replacing its characters with a fixed character.
1536
+ # Corresponds to the JSON property `characterMaskConfig`
1537
+ # @return [Google::Apis::HealthcareV1::CharacterMaskConfig]
1538
+ attr_accessor :character_mask_config
1539
+
1540
+ # Pseudonymization method that generates surrogates via cryptographic hashing.
1541
+ # Uses SHA-256.
1542
+ # Outputs a base64-encoded representation of the hashed output
1543
+ # (for example, `L7k0BHmF1ha5U3NfGykjro4xWi1MPVQPjhMAZbSV9mM=`).
1544
+ # Corresponds to the JSON property `cryptoHashConfig`
1545
+ # @return [Google::Apis::HealthcareV1::CryptoHashConfig]
1546
+ attr_accessor :crypto_hash_config
1547
+
1548
+ # Shift a date forward or backward in time by a random amount which is
1549
+ # consistent for a given patient and crypto key combination.
1550
+ # Corresponds to the JSON property `dateShiftConfig`
1551
+ # @return [Google::Apis::HealthcareV1::DateShiftConfig]
1552
+ attr_accessor :date_shift_config
1553
+
1554
+ # InfoTypes to apply this transformation to. If this is not specified, the
1555
+ # transformation applies to any info_type.
1556
+ # Corresponds to the JSON property `infoTypes`
1557
+ # @return [Array<String>]
1558
+ attr_accessor :info_types
1559
+
1560
+ # Define how to redact sensitive values. Default behaviour is erase.
1561
+ # For example, "My name is Jane." becomes "My name is ."
1562
+ # Corresponds to the JSON property `redactConfig`
1563
+ # @return [Google::Apis::HealthcareV1::RedactConfig]
1564
+ attr_accessor :redact_config
1565
+
1566
+ # When using the
1567
+ # INSPECT_AND_TRANSFORM
1568
+ # action, each match is replaced with the name of the info_type. For example,
1569
+ # "My name is Jane" becomes "My name is [PERSON_NAME]." The
1570
+ # TRANSFORM
1571
+ # action is equivalent to redacting.
1572
+ # Corresponds to the JSON property `replaceWithInfoTypeConfig`
1573
+ # @return [Google::Apis::HealthcareV1::ReplaceWithInfoTypeConfig]
1574
+ attr_accessor :replace_with_info_type_config
1575
+
1576
+ def initialize(**args)
1577
+ update!(**args)
1578
+ end
1579
+
1580
+ # Update properties of this object
1581
+ def update!(**args)
1582
+ @character_mask_config = args[:character_mask_config] if args.key?(:character_mask_config)
1583
+ @crypto_hash_config = args[:crypto_hash_config] if args.key?(:crypto_hash_config)
1584
+ @date_shift_config = args[:date_shift_config] if args.key?(:date_shift_config)
1585
+ @info_types = args[:info_types] if args.key?(:info_types)
1586
+ @redact_config = args[:redact_config] if args.key?(:redact_config)
1587
+ @replace_with_info_type_config = args[:replace_with_info_type_config] if args.key?(:replace_with_info_type_config)
1588
+ end
1589
+ end
1590
+
1591
+ # Ingests a message into the specified HL7v2 store.
1592
+ class IngestMessageRequest
1593
+ include Google::Apis::Core::Hashable
1594
+
1595
+ # A complete HL7v2 message.
1596
+ # See [Introduction to HL7 Standards]
1597
+ # (https://www.hl7.org/implement/standards/index.cfm?ref=common) for
1598
+ # details on the standard.
1599
+ # Corresponds to the JSON property `message`
1600
+ # @return [Google::Apis::HealthcareV1::Message]
1601
+ attr_accessor :message
1602
+
1603
+ def initialize(**args)
1604
+ update!(**args)
1605
+ end
1606
+
1607
+ # Update properties of this object
1608
+ def update!(**args)
1609
+ @message = args[:message] if args.key?(:message)
1610
+ end
1611
+ end
1612
+
1613
+ # Acknowledges that a message has been ingested into the specified
1614
+ # HL7v2 store.
1615
+ class IngestMessageResponse
1616
+ include Google::Apis::Core::Hashable
1617
+
1618
+ # HL7v2 ACK message.
1619
+ # Corresponds to the JSON property `hl7Ack`
1620
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1621
+ # @return [String]
1622
+ attr_accessor :hl7_ack
1623
+
1624
+ # A complete HL7v2 message.
1625
+ # See [Introduction to HL7 Standards]
1626
+ # (https://www.hl7.org/implement/standards/index.cfm?ref=common) for
1627
+ # details on the standard.
1628
+ # Corresponds to the JSON property `message`
1629
+ # @return [Google::Apis::HealthcareV1::Message]
1630
+ attr_accessor :message
1631
+
1632
+ def initialize(**args)
1633
+ update!(**args)
1634
+ end
1635
+
1636
+ # Update properties of this object
1637
+ def update!(**args)
1638
+ @hl7_ack = args[:hl7_ack] if args.key?(:hl7_ack)
1639
+ @message = args[:message] if args.key?(:message)
1640
+ end
1641
+ end
1642
+
1643
+ # Lists the available datasets.
1644
+ class ListDatasetsResponse
1645
+ include Google::Apis::Core::Hashable
1646
+
1647
+ # The first page of datasets.
1648
+ # Corresponds to the JSON property `datasets`
1649
+ # @return [Array<Google::Apis::HealthcareV1::Dataset>]
1650
+ attr_accessor :datasets
1651
+
1652
+ # Token to retrieve the next page of results, or empty if there are no
1653
+ # more results in the list.
1654
+ # Corresponds to the JSON property `nextPageToken`
1655
+ # @return [String]
1656
+ attr_accessor :next_page_token
1657
+
1658
+ def initialize(**args)
1659
+ update!(**args)
1660
+ end
1661
+
1662
+ # Update properties of this object
1663
+ def update!(**args)
1664
+ @datasets = args[:datasets] if args.key?(:datasets)
1665
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1666
+ end
1667
+ end
1668
+
1669
+ # Lists the DICOM stores in the given dataset.
1670
+ class ListDicomStoresResponse
1671
+ include Google::Apis::Core::Hashable
1672
+
1673
+ # The returned DICOM stores. Won't be more DICOM stores than the value of
1674
+ # page_size in the request.
1675
+ # Corresponds to the JSON property `dicomStores`
1676
+ # @return [Array<Google::Apis::HealthcareV1::DicomStore>]
1677
+ attr_accessor :dicom_stores
1678
+
1679
+ # Token to retrieve the next page of results or empty if there are no more
1680
+ # results in the list.
1681
+ # Corresponds to the JSON property `nextPageToken`
1682
+ # @return [String]
1683
+ attr_accessor :next_page_token
1684
+
1685
+ def initialize(**args)
1686
+ update!(**args)
1687
+ end
1688
+
1689
+ # Update properties of this object
1690
+ def update!(**args)
1691
+ @dicom_stores = args[:dicom_stores] if args.key?(:dicom_stores)
1692
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1693
+ end
1694
+ end
1695
+
1696
+ # Lists the FHIR stores in the given dataset.
1697
+ class ListFhirStoresResponse
1698
+ include Google::Apis::Core::Hashable
1699
+
1700
+ # The returned FHIR stores. Won't be more FHIR stores than the value of
1701
+ # page_size in the request.
1702
+ # Corresponds to the JSON property `fhirStores`
1703
+ # @return [Array<Google::Apis::HealthcareV1::FhirStore>]
1704
+ attr_accessor :fhir_stores
1705
+
1706
+ # Token to retrieve the next page of results or empty if there are no more
1707
+ # results in the list.
1708
+ # Corresponds to the JSON property `nextPageToken`
1709
+ # @return [String]
1710
+ attr_accessor :next_page_token
1711
+
1712
+ def initialize(**args)
1713
+ update!(**args)
1714
+ end
1715
+
1716
+ # Update properties of this object
1717
+ def update!(**args)
1718
+ @fhir_stores = args[:fhir_stores] if args.key?(:fhir_stores)
1719
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1720
+ end
1721
+ end
1722
+
1723
+ # Lists the HL7v2 stores in the given dataset.
1724
+ class ListHl7V2StoresResponse
1725
+ include Google::Apis::Core::Hashable
1726
+
1727
+ # The returned HL7v2 stores. Won't be more HL7v2 stores than the value of
1728
+ # page_size in the request.
1729
+ # Corresponds to the JSON property `hl7V2Stores`
1730
+ # @return [Array<Google::Apis::HealthcareV1::Hl7V2Store>]
1731
+ attr_accessor :hl7_v2_stores
1732
+
1733
+ # Token to retrieve the next page of results or empty if there are no more
1734
+ # results in the list.
1735
+ # Corresponds to the JSON property `nextPageToken`
1736
+ # @return [String]
1737
+ attr_accessor :next_page_token
1738
+
1739
+ def initialize(**args)
1740
+ update!(**args)
1741
+ end
1742
+
1743
+ # Update properties of this object
1744
+ def update!(**args)
1745
+ @hl7_v2_stores = args[:hl7_v2_stores] if args.key?(:hl7_v2_stores)
1746
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1747
+ end
1748
+ end
1749
+
1750
+ # Lists the messages in the specified HL7v2 store.
1751
+ class ListMessagesResponse
1752
+ include Google::Apis::Core::Hashable
1753
+
1754
+ # The returned Messages. Won't be more Messages than the value of
1755
+ # page_size in the request. See
1756
+ # view for
1757
+ # populated fields.
1758
+ # Corresponds to the JSON property `hl7V2Messages`
1759
+ # @return [Array<Google::Apis::HealthcareV1::Message>]
1760
+ attr_accessor :hl7_v2_messages
1761
+
1762
+ # Token to retrieve the next page of results or empty if there are no more
1763
+ # results in the list.
1764
+ # Corresponds to the JSON property `nextPageToken`
1765
+ # @return [String]
1766
+ attr_accessor :next_page_token
1767
+
1768
+ def initialize(**args)
1769
+ update!(**args)
1770
+ end
1771
+
1772
+ # Update properties of this object
1773
+ def update!(**args)
1774
+ @hl7_v2_messages = args[:hl7_v2_messages] if args.key?(:hl7_v2_messages)
1775
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1776
+ end
1777
+ end
1778
+
1779
+ # The response message for Operations.ListOperations.
1780
+ class ListOperationsResponse
1781
+ include Google::Apis::Core::Hashable
1782
+
1783
+ # The standard List next-page token.
1784
+ # Corresponds to the JSON property `nextPageToken`
1785
+ # @return [String]
1786
+ attr_accessor :next_page_token
1787
+
1788
+ # A list of operations that matches the specified filter in the request.
1789
+ # Corresponds to the JSON property `operations`
1790
+ # @return [Array<Google::Apis::HealthcareV1::Operation>]
1791
+ attr_accessor :operations
1792
+
1793
+ def initialize(**args)
1794
+ update!(**args)
1795
+ end
1796
+
1797
+ # Update properties of this object
1798
+ def update!(**args)
1799
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1800
+ @operations = args[:operations] if args.key?(:operations)
1801
+ end
1802
+ end
1803
+
1804
+ # A complete HL7v2 message.
1805
+ # See [Introduction to HL7 Standards]
1806
+ # (https://www.hl7.org/implement/standards/index.cfm?ref=common) for
1807
+ # details on the standard.
1808
+ class Message
1809
+ include Google::Apis::Core::Hashable
1810
+
1811
+ # Output only. The datetime when the message was created. Set by the server.
1812
+ # Corresponds to the JSON property `createTime`
1813
+ # @return [String]
1814
+ attr_accessor :create_time
1815
+
1816
+ # Raw message bytes.
1817
+ # Corresponds to the JSON property `data`
1818
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1819
+ # @return [String]
1820
+ attr_accessor :data
1821
+
1822
+ # User-supplied key-value pairs used to organize HL7v2 stores.
1823
+ # Label keys must be between 1 and 63 characters long, have a UTF-8 encoding
1824
+ # of maximum 128 bytes, and must conform to the
1825
+ # following PCRE regular expression:
1826
+ # \p`Ll`\p`Lo``0,62`
1827
+ # Label values are optional, must be between 1 and 63 characters long, have
1828
+ # a UTF-8 encoding of maximum 128 bytes, and must conform to the
1829
+ # following PCRE regular expression: [\p`Ll`\p`Lo`\p`N`_-]`0,63`
1830
+ # No more than 64 labels can be associated with a given store.
1831
+ # Corresponds to the JSON property `labels`
1832
+ # @return [Hash<String,String>]
1833
+ attr_accessor :labels
1834
+
1835
+ # The message type for this message. MSH-9.1.
1836
+ # Corresponds to the JSON property `messageType`
1837
+ # @return [String]
1838
+ attr_accessor :message_type
1839
+
1840
+ # Resource name of the Message, of the form
1841
+ # `projects/`project_id`/datasets/`dataset_id`/hl7V2Stores/`hl7_v2_store_id`/
1842
+ # messages/`message_id``.
1843
+ # Assigned by the server.
1844
+ # Corresponds to the JSON property `name`
1845
+ # @return [String]
1846
+ attr_accessor :name
1847
+
1848
+ # The content of a HL7v2 message in a structured format.
1849
+ # Corresponds to the JSON property `parsedData`
1850
+ # @return [Google::Apis::HealthcareV1::ParsedData]
1851
+ attr_accessor :parsed_data
1852
+
1853
+ # All patient IDs listed in the PID-2, PID-3, and PID-4 segments of this
1854
+ # message.
1855
+ # Corresponds to the JSON property `patientIds`
1856
+ # @return [Array<Google::Apis::HealthcareV1::PatientId>]
1857
+ attr_accessor :patient_ids
1858
+
1859
+ # The hospital that this message came from. MSH-4.
1860
+ # Corresponds to the JSON property `sendFacility`
1861
+ # @return [String]
1862
+ attr_accessor :send_facility
1863
+
1864
+ # The datetime the sending application sent this message. MSH-7.
1865
+ # Corresponds to the JSON property `sendTime`
1866
+ # @return [String]
1867
+ attr_accessor :send_time
1868
+
1869
+ def initialize(**args)
1870
+ update!(**args)
1871
+ end
1872
+
1873
+ # Update properties of this object
1874
+ def update!(**args)
1875
+ @create_time = args[:create_time] if args.key?(:create_time)
1876
+ @data = args[:data] if args.key?(:data)
1877
+ @labels = args[:labels] if args.key?(:labels)
1878
+ @message_type = args[:message_type] if args.key?(:message_type)
1879
+ @name = args[:name] if args.key?(:name)
1880
+ @parsed_data = args[:parsed_data] if args.key?(:parsed_data)
1881
+ @patient_ids = args[:patient_ids] if args.key?(:patient_ids)
1882
+ @send_facility = args[:send_facility] if args.key?(:send_facility)
1883
+ @send_time = args[:send_time] if args.key?(:send_time)
1884
+ end
1885
+ end
1886
+
1887
+ # Specifies where to send notifications upon changes to a data store.
1888
+ class NotificationConfig
1889
+ include Google::Apis::Core::Hashable
1890
+
1891
+ # The [Cloud Pub/Sub](https://cloud.google.com/pubsub/docs/) topic that
1892
+ # notifications of changes are published on. Supplied by the client.
1893
+ # PubsubMessage.Data contains the resource name.
1894
+ # PubsubMessage.MessageId is the ID of this message. It is guaranteed to be
1895
+ # unique within the topic.
1896
+ # PubsubMessage.PublishTime is the time at which the message was published.
1897
+ # Notifications are only sent if the topic is
1898
+ # non-empty. [Topic
1899
+ # names](https://cloud.google.com/pubsub/docs/overview#names) must be scoped
1900
+ # to a project. Cloud Healthcare API service account must have publisher
1901
+ # permissions on the given Cloud Pub/Sub topic. Not having adequate
1902
+ # permissions causes the calls that send notifications to fail.
1903
+ # If a notification can't be published to Cloud Pub/Sub, errors are logged to
1904
+ # Cloud Logging (see [Viewing
1905
+ # logs](/healthcare/docs/how-tos/logging)). If the number of
1906
+ # errors exceeds a certain rate, some aren't submitted.
1907
+ # Corresponds to the JSON property `pubsubTopic`
1908
+ # @return [String]
1909
+ attr_accessor :pubsub_topic
1910
+
1911
+ def initialize(**args)
1912
+ update!(**args)
1913
+ end
1914
+
1915
+ # Update properties of this object
1916
+ def update!(**args)
1917
+ @pubsub_topic = args[:pubsub_topic] if args.key?(:pubsub_topic)
1918
+ end
1919
+ end
1920
+
1921
+ # This resource represents a long-running operation that is the result of a
1922
+ # network API call.
1923
+ class Operation
1924
+ include Google::Apis::Core::Hashable
1925
+
1926
+ # If the value is `false`, it means the operation is still in progress.
1927
+ # If `true`, the operation is completed, and either `error` or `response` is
1928
+ # available.
1929
+ # Corresponds to the JSON property `done`
1930
+ # @return [Boolean]
1931
+ attr_accessor :done
1932
+ alias_method :done?, :done
1933
+
1934
+ # The `Status` type defines a logical error model that is suitable for
1935
+ # different programming environments, including REST APIs and RPC APIs. It is
1936
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1937
+ # three pieces of data: error code, error message, and error details.
1938
+ # You can find out more about this error model and how to work with it in the
1939
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
1940
+ # Corresponds to the JSON property `error`
1941
+ # @return [Google::Apis::HealthcareV1::Status]
1942
+ attr_accessor :error
1943
+
1944
+ # Service-specific metadata associated with the operation. It typically
1945
+ # contains progress information and common metadata such as create time.
1946
+ # Some services might not provide such metadata. Any method that returns a
1947
+ # long-running operation should document the metadata type, if any.
1948
+ # Corresponds to the JSON property `metadata`
1949
+ # @return [Hash<String,Object>]
1950
+ attr_accessor :metadata
1951
+
1952
+ # The server-assigned name, which is only unique within the same service that
1953
+ # originally returns it. If you use the default HTTP mapping, the
1954
+ # `name` should be a resource name ending with `operations/`unique_id``.
1955
+ # Corresponds to the JSON property `name`
1956
+ # @return [String]
1957
+ attr_accessor :name
1958
+
1959
+ # The normal response of the operation in case of success. If the original
1960
+ # method returns no data on success, such as `Delete`, the response is
1961
+ # `google.protobuf.Empty`. If the original method is standard
1962
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
1963
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
1964
+ # is the original method name. For example, if the original method name
1965
+ # is `TakeSnapshot()`, the inferred response type is
1966
+ # `TakeSnapshotResponse`.
1967
+ # Corresponds to the JSON property `response`
1968
+ # @return [Hash<String,Object>]
1969
+ attr_accessor :response
1970
+
1971
+ def initialize(**args)
1972
+ update!(**args)
1973
+ end
1974
+
1975
+ # Update properties of this object
1976
+ def update!(**args)
1977
+ @done = args[:done] if args.key?(:done)
1978
+ @error = args[:error] if args.key?(:error)
1979
+ @metadata = args[:metadata] if args.key?(:metadata)
1980
+ @name = args[:name] if args.key?(:name)
1981
+ @response = args[:response] if args.key?(:response)
1982
+ end
1983
+ end
1984
+
1985
+ # OperationMetadata provides information about the operation execution.
1986
+ # Returned in the long-running operation's metadata field.
1987
+ class OperationMetadata
1988
+ include Google::Apis::Core::Hashable
1989
+
1990
+ # The name of the API method that initiated the operation.
1991
+ # Corresponds to the JSON property `apiMethodName`
1992
+ # @return [String]
1993
+ attr_accessor :api_method_name
1994
+
1995
+ # Specifies if cancellation was requested for the operation.
1996
+ # Corresponds to the JSON property `cancelRequested`
1997
+ # @return [Boolean]
1998
+ attr_accessor :cancel_requested
1999
+ alias_method :cancel_requested?, :cancel_requested
2000
+
2001
+ # ProgressCounter provides counters to describe an operation's progress.
2002
+ # Corresponds to the JSON property `counter`
2003
+ # @return [Google::Apis::HealthcareV1::ProgressCounter]
2004
+ attr_accessor :counter
2005
+
2006
+ # The time at which the operation was created by the API.
2007
+ # Corresponds to the JSON property `createTime`
2008
+ # @return [String]
2009
+ attr_accessor :create_time
2010
+
2011
+ # The time at which execution was completed.
2012
+ # Corresponds to the JSON property `endTime`
2013
+ # @return [String]
2014
+ attr_accessor :end_time
2015
+
2016
+ # A link to audit and error logs in the log viewer. Error logs are generated
2017
+ # only by some operations, listed at
2018
+ # [Viewing logs](/healthcare/docs/how-tos/logging).
2019
+ # Corresponds to the JSON property `logsUrl`
2020
+ # @return [String]
2021
+ attr_accessor :logs_url
2022
+
2023
+ def initialize(**args)
2024
+ update!(**args)
2025
+ end
2026
+
2027
+ # Update properties of this object
2028
+ def update!(**args)
2029
+ @api_method_name = args[:api_method_name] if args.key?(:api_method_name)
2030
+ @cancel_requested = args[:cancel_requested] if args.key?(:cancel_requested)
2031
+ @counter = args[:counter] if args.key?(:counter)
2032
+ @create_time = args[:create_time] if args.key?(:create_time)
2033
+ @end_time = args[:end_time] if args.key?(:end_time)
2034
+ @logs_url = args[:logs_url] if args.key?(:logs_url)
2035
+ end
2036
+ end
2037
+
2038
+ # The content of a HL7v2 message in a structured format.
2039
+ class ParsedData
2040
+ include Google::Apis::Core::Hashable
2041
+
2042
+ #
2043
+ # Corresponds to the JSON property `segments`
2044
+ # @return [Array<Google::Apis::HealthcareV1::Segment>]
2045
+ attr_accessor :segments
2046
+
2047
+ def initialize(**args)
2048
+ update!(**args)
2049
+ end
2050
+
2051
+ # Update properties of this object
2052
+ def update!(**args)
2053
+ @segments = args[:segments] if args.key?(:segments)
2054
+ end
2055
+ end
2056
+
2057
+ # The configuration for the parser. It determines how the server parses the
2058
+ # messages.
2059
+ class ParserConfig
2060
+ include Google::Apis::Core::Hashable
2061
+
2062
+ # Determines whether messages with no header are allowed.
2063
+ # Corresponds to the JSON property `allowNullHeader`
2064
+ # @return [Boolean]
2065
+ attr_accessor :allow_null_header
2066
+ alias_method :allow_null_header?, :allow_null_header
2067
+
2068
+ # Byte(s) to use as the segment terminator. If this is unset, '\r' is
2069
+ # used as segment terminator.
2070
+ # Corresponds to the JSON property `segmentTerminator`
2071
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
2072
+ # @return [String]
2073
+ attr_accessor :segment_terminator
2074
+
2075
+ def initialize(**args)
2076
+ update!(**args)
2077
+ end
2078
+
2079
+ # Update properties of this object
2080
+ def update!(**args)
2081
+ @allow_null_header = args[:allow_null_header] if args.key?(:allow_null_header)
2082
+ @segment_terminator = args[:segment_terminator] if args.key?(:segment_terminator)
2083
+ end
2084
+ end
2085
+
2086
+ # A patient identifier and associated type.
2087
+ class PatientId
2088
+ include Google::Apis::Core::Hashable
2089
+
2090
+ # ID type. For example, MRN or NHS.
2091
+ # Corresponds to the JSON property `type`
2092
+ # @return [String]
2093
+ attr_accessor :type
2094
+
2095
+ # The patient's unique identifier.
2096
+ # Corresponds to the JSON property `value`
2097
+ # @return [String]
2098
+ attr_accessor :value
2099
+
2100
+ def initialize(**args)
2101
+ update!(**args)
2102
+ end
2103
+
2104
+ # Update properties of this object
2105
+ def update!(**args)
2106
+ @type = args[:type] if args.key?(:type)
2107
+ @value = args[:value] if args.key?(:value)
2108
+ end
2109
+ end
2110
+
2111
+ # An Identity and Access Management (IAM) policy, which specifies access
2112
+ # controls for Google Cloud resources.
2113
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more
2114
+ # `members` to a single `role`. Members can be user accounts, service accounts,
2115
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
2116
+ # permissions; each `role` can be an IAM predefined role or a user-created
2117
+ # custom role.
2118
+ # For some types of Google Cloud resources, a `binding` can also specify a
2119
+ # `condition`, which is a logical expression that allows access to a resource
2120
+ # only if the expression evaluates to `true`. A condition can add constraints
2121
+ # based on attributes of the request, the resource, or both. To learn which
2122
+ # resources support conditions in their IAM policies, see the
2123
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
2124
+ # policies).
2125
+ # **JSON example:**
2126
+ # `
2127
+ # "bindings": [
2128
+ # `
2129
+ # "role": "roles/resourcemanager.organizationAdmin",
2130
+ # "members": [
2131
+ # "user:mike@example.com",
2132
+ # "group:admins@example.com",
2133
+ # "domain:google.com",
2134
+ # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
2135
+ # ]
2136
+ # `,
2137
+ # `
2138
+ # "role": "roles/resourcemanager.organizationViewer",
2139
+ # "members": [
2140
+ # "user:eve@example.com"
2141
+ # ],
2142
+ # "condition": `
2143
+ # "title": "expirable access",
2144
+ # "description": "Does not grant access after Sep 2020",
2145
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
2146
+ # ",
2147
+ # `
2148
+ # `
2149
+ # ],
2150
+ # "etag": "BwWWja0YfJA=",
2151
+ # "version": 3
2152
+ # `
2153
+ # **YAML example:**
2154
+ # bindings:
2155
+ # - members:
2156
+ # - user:mike@example.com
2157
+ # - group:admins@example.com
2158
+ # - domain:google.com
2159
+ # - serviceAccount:my-project-id@appspot.gserviceaccount.com
2160
+ # role: roles/resourcemanager.organizationAdmin
2161
+ # - members:
2162
+ # - user:eve@example.com
2163
+ # role: roles/resourcemanager.organizationViewer
2164
+ # condition:
2165
+ # title: expirable access
2166
+ # description: Does not grant access after Sep 2020
2167
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
2168
+ # - etag: BwWWja0YfJA=
2169
+ # - version: 3
2170
+ # For a description of IAM and its features, see the
2171
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
2172
+ class Policy
2173
+ include Google::Apis::Core::Hashable
2174
+
2175
+ # Specifies cloud audit logging configuration for this policy.
2176
+ # Corresponds to the JSON property `auditConfigs`
2177
+ # @return [Array<Google::Apis::HealthcareV1::AuditConfig>]
2178
+ attr_accessor :audit_configs
2179
+
2180
+ # Associates a list of `members` to a `role`. Optionally, may specify a
2181
+ # `condition` that determines how and when the `bindings` are applied. Each
2182
+ # of the `bindings` must contain at least one member.
2183
+ # Corresponds to the JSON property `bindings`
2184
+ # @return [Array<Google::Apis::HealthcareV1::Binding>]
2185
+ attr_accessor :bindings
2186
+
2187
+ # `etag` is used for optimistic concurrency control as a way to help
2188
+ # prevent simultaneous updates of a policy from overwriting each other.
2189
+ # It is strongly suggested that systems make use of the `etag` in the
2190
+ # read-modify-write cycle to perform policy updates in order to avoid race
2191
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
2192
+ # systems are expected to put that etag in the request to `setIamPolicy` to
2193
+ # ensure that their change will be applied to the same version of the policy.
2194
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
2195
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
2196
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
2197
+ # the conditions in the version `3` policy are lost.
2198
+ # Corresponds to the JSON property `etag`
2199
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
2200
+ # @return [String]
2201
+ attr_accessor :etag
2202
+
2203
+ # Specifies the format of the policy.
2204
+ # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
2205
+ # are rejected.
2206
+ # Any operation that affects conditional role bindings must specify version
2207
+ # `3`. This requirement applies to the following operations:
2208
+ # * Getting a policy that includes a conditional role binding
2209
+ # * Adding a conditional role binding to a policy
2210
+ # * Changing a conditional role binding in a policy
2211
+ # * Removing any role binding, with or without a condition, from a policy
2212
+ # that includes conditions
2213
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
2214
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
2215
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
2216
+ # the conditions in the version `3` policy are lost.
2217
+ # If a policy does not include any conditions, operations on that policy may
2218
+ # specify any valid version or leave the field unset.
2219
+ # To learn which resources support conditions in their IAM policies, see the
2220
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
2221
+ # policies).
2222
+ # Corresponds to the JSON property `version`
2223
+ # @return [Fixnum]
2224
+ attr_accessor :version
2225
+
2226
+ def initialize(**args)
2227
+ update!(**args)
2228
+ end
2229
+
2230
+ # Update properties of this object
2231
+ def update!(**args)
2232
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
2233
+ @bindings = args[:bindings] if args.key?(:bindings)
2234
+ @etag = args[:etag] if args.key?(:etag)
2235
+ @version = args[:version] if args.key?(:version)
2236
+ end
2237
+ end
2238
+
2239
+ # ProgressCounter provides counters to describe an operation's progress.
2240
+ class ProgressCounter
2241
+ include Google::Apis::Core::Hashable
2242
+
2243
+ # The number of units that failed in the operation.
2244
+ # Corresponds to the JSON property `failure`
2245
+ # @return [Fixnum]
2246
+ attr_accessor :failure
2247
+
2248
+ # The number of units that are pending in the operation.
2249
+ # Corresponds to the JSON property `pending`
2250
+ # @return [Fixnum]
2251
+ attr_accessor :pending
2252
+
2253
+ # The number of units that succeeded in the operation.
2254
+ # Corresponds to the JSON property `success`
2255
+ # @return [Fixnum]
2256
+ attr_accessor :success
2257
+
2258
+ def initialize(**args)
2259
+ update!(**args)
2260
+ end
2261
+
2262
+ # Update properties of this object
2263
+ def update!(**args)
2264
+ @failure = args[:failure] if args.key?(:failure)
2265
+ @pending = args[:pending] if args.key?(:pending)
2266
+ @success = args[:success] if args.key?(:success)
2267
+ end
2268
+ end
2269
+
2270
+ # Define how to redact sensitive values. Default behaviour is erase.
2271
+ # For example, "My name is Jane." becomes "My name is ."
2272
+ class RedactConfig
2273
+ include Google::Apis::Core::Hashable
2274
+
2275
+ def initialize(**args)
2276
+ update!(**args)
2277
+ end
2278
+
2279
+ # Update properties of this object
2280
+ def update!(**args)
2281
+ end
2282
+ end
2283
+
2284
+ # When using the
2285
+ # INSPECT_AND_TRANSFORM
2286
+ # action, each match is replaced with the name of the info_type. For example,
2287
+ # "My name is Jane" becomes "My name is [PERSON_NAME]." The
2288
+ # TRANSFORM
2289
+ # action is equivalent to redacting.
2290
+ class ReplaceWithInfoTypeConfig
2291
+ include Google::Apis::Core::Hashable
2292
+
2293
+ def initialize(**args)
2294
+ update!(**args)
2295
+ end
2296
+
2297
+ # Update properties of this object
2298
+ def update!(**args)
2299
+ end
2300
+ end
2301
+
2302
+ # A list of FHIR resources.
2303
+ class Resources
2304
+ include Google::Apis::Core::Hashable
2305
+
2306
+ # List of resources IDs. For example, "Patient/1234".
2307
+ # Corresponds to the JSON property `resources`
2308
+ # @return [Array<String>]
2309
+ attr_accessor :resources
2310
+
2311
+ def initialize(**args)
2312
+ update!(**args)
2313
+ end
2314
+
2315
+ # Update properties of this object
2316
+ def update!(**args)
2317
+ @resources = args[:resources] if args.key?(:resources)
2318
+ end
2319
+ end
2320
+
2321
+ # Configuration for the FHIR BigQuery schema. Determines how the server
2322
+ # generates the schema.
2323
+ class SchemaConfig
2324
+ include Google::Apis::Core::Hashable
2325
+
2326
+ # The depth for all recursive structures in the output analytics
2327
+ # schema. For example, `concept` in the CodeSystem resource is a recursive
2328
+ # structure; when the depth is 2, the CodeSystem table will have a column
2329
+ # called `concept.concept` but not `concept.concept.concept`. If not
2330
+ # specified or set to 0, the server will use the default value 2. The
2331
+ # maximum depth allowed is 5.
2332
+ # Corresponds to the JSON property `recursiveStructureDepth`
2333
+ # @return [Fixnum]
2334
+ attr_accessor :recursive_structure_depth
2335
+
2336
+ # Specifies the output schema type.
2337
+ # Corresponds to the JSON property `schemaType`
2338
+ # @return [String]
2339
+ attr_accessor :schema_type
2340
+
2341
+ def initialize(**args)
2342
+ update!(**args)
2343
+ end
2344
+
2345
+ # Update properties of this object
2346
+ def update!(**args)
2347
+ @recursive_structure_depth = args[:recursive_structure_depth] if args.key?(:recursive_structure_depth)
2348
+ @schema_type = args[:schema_type] if args.key?(:schema_type)
2349
+ end
2350
+ end
2351
+
2352
+ # Request to search the resources in the specified FHIR store.
2353
+ class SearchResourcesRequest
2354
+ include Google::Apis::Core::Hashable
2355
+
2356
+ # The FHIR resource type to search, such as Patient or Observation. For a
2357
+ # complete list, see the FHIR Resource Index
2358
+ # ([DSTU2](http://hl7.org/implement/standards/fhir/DSTU2/resourcelist.html),
2359
+ # [STU3](http://hl7.org/implement/standards/fhir/STU3/resourcelist.html),
2360
+ # [R4](http://hl7.org/implement/standards/fhir/R4/resourcelist.html)).
2361
+ # Corresponds to the JSON property `resourceType`
2362
+ # @return [String]
2363
+ attr_accessor :resource_type
2364
+
2365
+ def initialize(**args)
2366
+ update!(**args)
2367
+ end
2368
+
2369
+ # Update properties of this object
2370
+ def update!(**args)
2371
+ @resource_type = args[:resource_type] if args.key?(:resource_type)
2372
+ end
2373
+ end
2374
+
2375
+ # A segment in a structured format.
2376
+ class Segment
2377
+ include Google::Apis::Core::Hashable
2378
+
2379
+ # A mapping from the positional location to the value.
2380
+ # The key string uses zero-based indexes separated by dots to identify
2381
+ # Fields, components and sub-components. A bracket notation is also used to
2382
+ # identify different instances of a repeated field.
2383
+ # Regex for key: (\d+)(\[\d+\])?(.\d+)?(.\d+)?
2384
+ # Examples of (key, value) pairs:
2385
+ # * (0.1, "hemoglobin") denotes that the first component of Field 0 has the
2386
+ # value "hemoglobin".
2387
+ # * (1.1.2, "CBC") denotes that the second sub-component of the first
2388
+ # component of Field 1 has the value "CBC".
2389
+ # * (1[0].1, "HbA1c") denotes that the first component of the
2390
+ # first Instance of Field 1, which is repeated, has the value "HbA1c".
2391
+ # Corresponds to the JSON property `fields`
2392
+ # @return [Hash<String,String>]
2393
+ attr_accessor :fields
2394
+
2395
+ # A string that indicates the type of segment. For example, EVN or PID.
2396
+ # Corresponds to the JSON property `segmentId`
2397
+ # @return [String]
2398
+ attr_accessor :segment_id
2399
+
2400
+ # Set ID for segments that can be in a set. This can be empty if it's
2401
+ # missing or isn't applicable.
2402
+ # Corresponds to the JSON property `setId`
2403
+ # @return [String]
2404
+ attr_accessor :set_id
2405
+
2406
+ def initialize(**args)
2407
+ update!(**args)
2408
+ end
2409
+
2410
+ # Update properties of this object
2411
+ def update!(**args)
2412
+ @fields = args[:fields] if args.key?(:fields)
2413
+ @segment_id = args[:segment_id] if args.key?(:segment_id)
2414
+ @set_id = args[:set_id] if args.key?(:set_id)
2415
+ end
2416
+ end
2417
+
2418
+ # Request message for `SetIamPolicy` method.
2419
+ class SetIamPolicyRequest
2420
+ include Google::Apis::Core::Hashable
2421
+
2422
+ # An Identity and Access Management (IAM) policy, which specifies access
2423
+ # controls for Google Cloud resources.
2424
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more
2425
+ # `members` to a single `role`. Members can be user accounts, service accounts,
2426
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
2427
+ # permissions; each `role` can be an IAM predefined role or a user-created
2428
+ # custom role.
2429
+ # For some types of Google Cloud resources, a `binding` can also specify a
2430
+ # `condition`, which is a logical expression that allows access to a resource
2431
+ # only if the expression evaluates to `true`. A condition can add constraints
2432
+ # based on attributes of the request, the resource, or both. To learn which
2433
+ # resources support conditions in their IAM policies, see the
2434
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
2435
+ # policies).
2436
+ # **JSON example:**
2437
+ # `
2438
+ # "bindings": [
2439
+ # `
2440
+ # "role": "roles/resourcemanager.organizationAdmin",
2441
+ # "members": [
2442
+ # "user:mike@example.com",
2443
+ # "group:admins@example.com",
2444
+ # "domain:google.com",
2445
+ # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
2446
+ # ]
2447
+ # `,
2448
+ # `
2449
+ # "role": "roles/resourcemanager.organizationViewer",
2450
+ # "members": [
2451
+ # "user:eve@example.com"
2452
+ # ],
2453
+ # "condition": `
2454
+ # "title": "expirable access",
2455
+ # "description": "Does not grant access after Sep 2020",
2456
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
2457
+ # ",
2458
+ # `
2459
+ # `
2460
+ # ],
2461
+ # "etag": "BwWWja0YfJA=",
2462
+ # "version": 3
2463
+ # `
2464
+ # **YAML example:**
2465
+ # bindings:
2466
+ # - members:
2467
+ # - user:mike@example.com
2468
+ # - group:admins@example.com
2469
+ # - domain:google.com
2470
+ # - serviceAccount:my-project-id@appspot.gserviceaccount.com
2471
+ # role: roles/resourcemanager.organizationAdmin
2472
+ # - members:
2473
+ # - user:eve@example.com
2474
+ # role: roles/resourcemanager.organizationViewer
2475
+ # condition:
2476
+ # title: expirable access
2477
+ # description: Does not grant access after Sep 2020
2478
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
2479
+ # - etag: BwWWja0YfJA=
2480
+ # - version: 3
2481
+ # For a description of IAM and its features, see the
2482
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
2483
+ # Corresponds to the JSON property `policy`
2484
+ # @return [Google::Apis::HealthcareV1::Policy]
2485
+ attr_accessor :policy
2486
+
2487
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
2488
+ # the fields in the mask will be modified. If no mask is provided, the
2489
+ # following default mask is used:
2490
+ # `paths: "bindings, etag"`
2491
+ # Corresponds to the JSON property `updateMask`
2492
+ # @return [String]
2493
+ attr_accessor :update_mask
2494
+
2495
+ def initialize(**args)
2496
+ update!(**args)
2497
+ end
2498
+
2499
+ # Update properties of this object
2500
+ def update!(**args)
2501
+ @policy = args[:policy] if args.key?(:policy)
2502
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
2503
+ end
2504
+ end
2505
+
2506
+ # The `Status` type defines a logical error model that is suitable for
2507
+ # different programming environments, including REST APIs and RPC APIs. It is
2508
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
2509
+ # three pieces of data: error code, error message, and error details.
2510
+ # You can find out more about this error model and how to work with it in the
2511
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
2512
+ class Status
2513
+ include Google::Apis::Core::Hashable
2514
+
2515
+ # The status code, which should be an enum value of google.rpc.Code.
2516
+ # Corresponds to the JSON property `code`
2517
+ # @return [Fixnum]
2518
+ attr_accessor :code
2519
+
2520
+ # A list of messages that carry the error details. There is a common set of
2521
+ # message types for APIs to use.
2522
+ # Corresponds to the JSON property `details`
2523
+ # @return [Array<Hash<String,Object>>]
2524
+ attr_accessor :details
2525
+
2526
+ # A developer-facing error message, which should be in English. Any
2527
+ # user-facing error message should be localized and sent in the
2528
+ # google.rpc.Status.details field, or localized by the client.
2529
+ # Corresponds to the JSON property `message`
2530
+ # @return [String]
2531
+ attr_accessor :message
2532
+
2533
+ def initialize(**args)
2534
+ update!(**args)
2535
+ end
2536
+
2537
+ # Update properties of this object
2538
+ def update!(**args)
2539
+ @code = args[:code] if args.key?(:code)
2540
+ @details = args[:details] if args.key?(:details)
2541
+ @message = args[:message] if args.key?(:message)
2542
+ end
2543
+ end
2544
+
2545
+ # Contains configuration for streaming FHIR export.
2546
+ class StreamConfig
2547
+ include Google::Apis::Core::Hashable
2548
+
2549
+ # The configuration for exporting to BigQuery.
2550
+ # Corresponds to the JSON property `bigqueryDestination`
2551
+ # @return [Google::Apis::HealthcareV1::GoogleCloudHealthcareV1FhirBigQueryDestination]
2552
+ attr_accessor :bigquery_destination
2553
+
2554
+ # Supply a FHIR resource type (such as "Patient" or "Observation").
2555
+ # See https://www.hl7.org/fhir/valueset-resource-types.html for a list of
2556
+ # all FHIR resource types.
2557
+ # The server treats an empty list as an intent to stream all the
2558
+ # supported resource types in this FHIR store.
2559
+ # Corresponds to the JSON property `resourceTypes`
2560
+ # @return [Array<String>]
2561
+ attr_accessor :resource_types
2562
+
2563
+ def initialize(**args)
2564
+ update!(**args)
2565
+ end
2566
+
2567
+ # Update properties of this object
2568
+ def update!(**args)
2569
+ @bigquery_destination = args[:bigquery_destination] if args.key?(:bigquery_destination)
2570
+ @resource_types = args[:resource_types] if args.key?(:resource_types)
2571
+ end
2572
+ end
2573
+
2574
+ # List of tags to be filtered.
2575
+ class TagFilterList
2576
+ include Google::Apis::Core::Hashable
2577
+
2578
+ # Tags to be filtered. Tags must be DICOM Data Elements, File Meta
2579
+ # Elements, or Directory Structuring Elements, as defined at:
2580
+ # http://dicom.nema.org/medical/dicom/current/output/html/part06.html#table_6-1,.
2581
+ # They may be provided by "Keyword" or "Tag". For example "PatientID",
2582
+ # "00100010".
2583
+ # Corresponds to the JSON property `tags`
2584
+ # @return [Array<String>]
2585
+ attr_accessor :tags
2586
+
2587
+ def initialize(**args)
2588
+ update!(**args)
2589
+ end
2590
+
2591
+ # Update properties of this object
2592
+ def update!(**args)
2593
+ @tags = args[:tags] if args.key?(:tags)
2594
+ end
2595
+ end
2596
+
2597
+ # Request message for `TestIamPermissions` method.
2598
+ class TestIamPermissionsRequest
2599
+ include Google::Apis::Core::Hashable
2600
+
2601
+ # The set of permissions to check for the `resource`. Permissions with
2602
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
2603
+ # information see
2604
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
2605
+ # Corresponds to the JSON property `permissions`
2606
+ # @return [Array<String>]
2607
+ attr_accessor :permissions
2608
+
2609
+ def initialize(**args)
2610
+ update!(**args)
2611
+ end
2612
+
2613
+ # Update properties of this object
2614
+ def update!(**args)
2615
+ @permissions = args[:permissions] if args.key?(:permissions)
2616
+ end
2617
+ end
2618
+
2619
+ # Response message for `TestIamPermissions` method.
2620
+ class TestIamPermissionsResponse
2621
+ include Google::Apis::Core::Hashable
2622
+
2623
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
2624
+ # allowed.
2625
+ # Corresponds to the JSON property `permissions`
2626
+ # @return [Array<String>]
2627
+ attr_accessor :permissions
2628
+
2629
+ def initialize(**args)
2630
+ update!(**args)
2631
+ end
2632
+
2633
+ # Update properties of this object
2634
+ def update!(**args)
2635
+ @permissions = args[:permissions] if args.key?(:permissions)
2636
+ end
2637
+ end
2638
+
2639
+ #
2640
+ class TextConfig
2641
+ include Google::Apis::Core::Hashable
2642
+
2643
+ # The transformations to apply to the detected data.
2644
+ # Corresponds to the JSON property `transformations`
2645
+ # @return [Array<Google::Apis::HealthcareV1::InfoTypeTransformation>]
2646
+ attr_accessor :transformations
2647
+
2648
+ def initialize(**args)
2649
+ update!(**args)
2650
+ end
2651
+
2652
+ # Update properties of this object
2653
+ def update!(**args)
2654
+ @transformations = args[:transformations] if args.key?(:transformations)
2655
+ end
2656
+ end
2657
+ end
2658
+ end
2659
+ end