google-api-client 0.29.1 → 0.29.2

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