google-apis-healthcare_v1 0.69.0 → 0.70.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 362e6c37c6f7dd8d57489e53e6fc59bcd37378147a0d6c1dfc5f50acc86f8815
4
- data.tar.gz: 6669659f957569daea9efb495df8c897ac0a592b4aad0fe1833bb310d000a4d7
3
+ metadata.gz: 5c91b47e3aa1385e9898b9830d9ca1739db9647ee51b05b5f5d7500f46e1259e
4
+ data.tar.gz: bb1474d3499e0f124f9cbf1b7b5451f188827da613c8b06d8c193bf34d33ed96
5
5
  SHA512:
6
- metadata.gz: 3809fdd31b1b97bbdf9b578acc4dae120d07ea2a2a5539eccfc2bfe7a16e065928cbe10b8fc08a1636ebd8053edeb1dcf047ef6b61adc16a17c3a63994890b88
7
- data.tar.gz: 9b478d76753e468cff93d8a0db58b3f0b32d1e35b706fce83d93b0f4755f9cb412909b2cc7a91277ead1a9caa31d9d742aaab9bf568ba0da9ca7e96ad615647e
6
+ metadata.gz: c3190995c70d3c93cf2d58e2debc337bf6a447eb3853adda7dfe523860ac8d9f8d791be328c44f53d40fc0dcabf58dcad3e747c228de1f6599d72aef797f608b
7
+ data.tar.gz: c6f118a92f7ba94c5efa27a99b551389ea9f1cb431171ab5978186060385710aab99283a4beb2ff938d469e09a691567df6e8ce7dd67ff6aa4613fa1eb8d254c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-healthcare_v1
2
2
 
3
+ ### v0.70.0 (2024-12-15)
4
+
5
+ * Regenerated from discovery document revision 20241205
6
+
3
7
  ### v0.69.0 (2024-12-02)
4
8
 
5
9
  * Regenerated from discovery document revision 20241115
@@ -22,6 +22,29 @@ module Google
22
22
  module Apis
23
23
  module HealthcareV1
24
24
 
25
+ # Configures consent audit log config for FHIR create, read, update, and delete (
26
+ # CRUD) operations. Cloud audit log for healthcare API must be [enabled](https://
27
+ # cloud.google.com/logging/docs/audit/configure-data-access#config-console-
28
+ # enable). The consent-related logs are included as part of `protoPayload.
29
+ # metadata`.
30
+ class AccessDeterminationLogConfig
31
+ include Google::Apis::Core::Hashable
32
+
33
+ # Optional. Controls the amount of detail to include as part of the audit logs.
34
+ # Corresponds to the JSON property `logLevel`
35
+ # @return [String]
36
+ attr_accessor :log_level
37
+
38
+ def initialize(**args)
39
+ update!(**args)
40
+ end
41
+
42
+ # Update properties of this object
43
+ def update!(**args)
44
+ @log_level = args[:log_level] if args.key?(:log_level)
45
+ end
46
+ end
47
+
25
48
  # Activates the latest revision of the specified Consent by committing a new
26
49
  # revision with `state` updated to `ACTIVE`. If the latest revision of the given
27
50
  # Consent is in the `ACTIVE` state, no new revision is committed. A
@@ -61,6 +84,30 @@ module Google
61
84
  end
62
85
  end
63
86
 
87
+ # List of admin Consent resources to be applied.
88
+ class AdminConsents
89
+ include Google::Apis::Core::Hashable
90
+
91
+ # Optional. The versioned names of the admin Consent resource(s), in the format `
92
+ # projects/`project_id`/locations/`location`/datasets/`dataset_id`/fhirStores/`
93
+ # fhir_store_id`/fhir/Consent/`resource_id`/_history/`version_id``. For FHIR
94
+ # stores with `disable_resource_versioning=true`, the format is `projects/`
95
+ # project_id`/locations/`location`/datasets/`dataset_id`/fhirStores/`
96
+ # fhir_store_id`/fhir/Consent/`resource_id``.
97
+ # Corresponds to the JSON property `names`
98
+ # @return [Array<String>]
99
+ attr_accessor :names
100
+
101
+ def initialize(**args)
102
+ update!(**args)
103
+ end
104
+
105
+ # Update properties of this object
106
+ def update!(**args)
107
+ @names = args[:names] if args.key?(:names)
108
+ end
109
+ end
110
+
64
111
  # The request to analyze healthcare entities in a document.
65
112
  class AnalyzeEntitiesRequest
66
113
  include Google::Apis::Core::Hashable
@@ -135,6 +182,194 @@ module Google
135
182
  end
136
183
  end
137
184
 
185
+ # Contains the error details of the unsupported admin Consent resources for when
186
+ # the ApplyAdminConsents method fails to apply one or more Consent resources.
187
+ class ApplyAdminConsentsErrorDetail
188
+ include Google::Apis::Core::Hashable
189
+
190
+ # The list of Consent resources that are unsupported or cannot be applied and
191
+ # the error associated with each of them.
192
+ # Corresponds to the JSON property `consentErrors`
193
+ # @return [Array<Google::Apis::HealthcareV1::ConsentErrors>]
194
+ attr_accessor :consent_errors
195
+
196
+ # The currently in progress non-validate-only ApplyAdminConsents operation ID if
197
+ # exist.
198
+ # Corresponds to the JSON property `existingOperationId`
199
+ # @return [Fixnum]
200
+ attr_accessor :existing_operation_id
201
+
202
+ def initialize(**args)
203
+ update!(**args)
204
+ end
205
+
206
+ # Update properties of this object
207
+ def update!(**args)
208
+ @consent_errors = args[:consent_errors] if args.key?(:consent_errors)
209
+ @existing_operation_id = args[:existing_operation_id] if args.key?(:existing_operation_id)
210
+ end
211
+ end
212
+
213
+ # Request to apply the admin Consent resources for the specified FHIR store.
214
+ class ApplyAdminConsentsRequest
215
+ include Google::Apis::Core::Hashable
216
+
217
+ # List of admin Consent resources to be applied.
218
+ # Corresponds to the JSON property `newConsentsList`
219
+ # @return [Google::Apis::HealthcareV1::AdminConsents]
220
+ attr_accessor :new_consents_list
221
+
222
+ # Optional. If true, the method only validates Consent resources to make sure
223
+ # they are supported. Otherwise, the method applies the aggregate consent
224
+ # information to update the enforcement model and reindex the FHIR resources. If
225
+ # all Consent resources can be applied successfully, the
226
+ # ApplyAdminConsentsResponse is returned containing the following fields: * `
227
+ # consent_apply_success` to indicate the number of Consent resources applied. * `
228
+ # affected_resources` to indicate the number of resources that might have had
229
+ # their consent access changed. If, however, one or more Consent resources are
230
+ # unsupported or cannot be applied, the method fails and
231
+ # ApplyAdminConsentsErrorDetail is is returned with details about the
232
+ # unsupported Consent resources.
233
+ # Corresponds to the JSON property `validateOnly`
234
+ # @return [Boolean]
235
+ attr_accessor :validate_only
236
+ alias_method :validate_only?, :validate_only
237
+
238
+ def initialize(**args)
239
+ update!(**args)
240
+ end
241
+
242
+ # Update properties of this object
243
+ def update!(**args)
244
+ @new_consents_list = args[:new_consents_list] if args.key?(:new_consents_list)
245
+ @validate_only = args[:validate_only] if args.key?(:validate_only)
246
+ end
247
+ end
248
+
249
+ # Response when all admin Consent resources in scope were processed and all
250
+ # affected resources were reindexed successfully. This structure will be
251
+ # included in the response when the operation finishes successfully.
252
+ class ApplyAdminConsentsResponse
253
+ include Google::Apis::Core::Hashable
254
+
255
+ # The number of resources (including the Consent resources) that may have
256
+ # consent access change.
257
+ # Corresponds to the JSON property `affectedResources`
258
+ # @return [Fixnum]
259
+ attr_accessor :affected_resources
260
+
261
+ # If `validate_only=false` in ApplyAdminConsentsRequest, this counter contains
262
+ # the number of Consent resources that were successfully applied. Otherwise, it
263
+ # is the number of Consent resources that are supported.
264
+ # Corresponds to the JSON property `consentApplySuccess`
265
+ # @return [Fixnum]
266
+ attr_accessor :consent_apply_success
267
+
268
+ # The number of resources (including the Consent resources) that
269
+ # ApplyAdminConsents failed to re-index.
270
+ # Corresponds to the JSON property `failedResources`
271
+ # @return [Fixnum]
272
+ attr_accessor :failed_resources
273
+
274
+ def initialize(**args)
275
+ update!(**args)
276
+ end
277
+
278
+ # Update properties of this object
279
+ def update!(**args)
280
+ @affected_resources = args[:affected_resources] if args.key?(:affected_resources)
281
+ @consent_apply_success = args[:consent_apply_success] if args.key?(:consent_apply_success)
282
+ @failed_resources = args[:failed_resources] if args.key?(:failed_resources)
283
+ end
284
+ end
285
+
286
+ # Request to apply the Consent resources for the specified FHIR store.
287
+ class ApplyConsentsRequest
288
+ include Google::Apis::Core::Hashable
289
+
290
+ # Apply consents given by a list of patients.
291
+ # Corresponds to the JSON property `patientScope`
292
+ # @return [Google::Apis::HealthcareV1::PatientScope]
293
+ attr_accessor :patient_scope
294
+
295
+ # Apply consents given by patients whose most recent consent changes are in the
296
+ # time range. Note that after identifying these patients, the server applies all
297
+ # Consent resources given by those patients, not just the Consent resources
298
+ # within the timestamp in the range.
299
+ # Corresponds to the JSON property `timeRange`
300
+ # @return [Google::Apis::HealthcareV1::TimeRange]
301
+ attr_accessor :time_range
302
+
303
+ # Optional. If true, the method only validates Consent resources to make sure
304
+ # they are supported. When the operation completes, ApplyConsentsResponse is
305
+ # returned where `consent_apply_success` and `consent_apply_failure` indicate
306
+ # supported and unsupported (or invalid) Consent resources, respectively.
307
+ # Otherwise, the method propagates the aggregate consensual information to the
308
+ # patient's resources. Upon success, `affected_resources` in the
309
+ # ApplyConsentsResponse indicates the number of resources that may have
310
+ # consensual access changed.
311
+ # Corresponds to the JSON property `validateOnly`
312
+ # @return [Boolean]
313
+ attr_accessor :validate_only
314
+ alias_method :validate_only?, :validate_only
315
+
316
+ def initialize(**args)
317
+ update!(**args)
318
+ end
319
+
320
+ # Update properties of this object
321
+ def update!(**args)
322
+ @patient_scope = args[:patient_scope] if args.key?(:patient_scope)
323
+ @time_range = args[:time_range] if args.key?(:time_range)
324
+ @validate_only = args[:validate_only] if args.key?(:validate_only)
325
+ end
326
+ end
327
+
328
+ # Response when all Consent resources in scope were processed and all affected
329
+ # resources were reindexed successfully. This structure is included in the
330
+ # response when the operation finishes successfully.
331
+ class ApplyConsentsResponse
332
+ include Google::Apis::Core::Hashable
333
+
334
+ # The number of resources (including the Consent resources) that may have
335
+ # consensual access change.
336
+ # Corresponds to the JSON property `affectedResources`
337
+ # @return [Fixnum]
338
+ attr_accessor :affected_resources
339
+
340
+ # If `validate_only = false` in ApplyConsentsRequest, this counter is the number
341
+ # of Consent resources that were failed to apply. Otherwise, it is the number of
342
+ # Consent resources that are not supported or invalid.
343
+ # Corresponds to the JSON property `consentApplyFailure`
344
+ # @return [Fixnum]
345
+ attr_accessor :consent_apply_failure
346
+
347
+ # If `validate_only = false` in ApplyConsentsRequest, this counter is the number
348
+ # of Consent resources that were successfully applied. Otherwise, it is the
349
+ # number of Consent resources that are supported.
350
+ # Corresponds to the JSON property `consentApplySuccess`
351
+ # @return [Fixnum]
352
+ attr_accessor :consent_apply_success
353
+
354
+ # The number of resources (including the Consent resources) that ApplyConsents
355
+ # failed to re-index.
356
+ # Corresponds to the JSON property `failedResources`
357
+ # @return [Fixnum]
358
+ attr_accessor :failed_resources
359
+
360
+ def initialize(**args)
361
+ update!(**args)
362
+ end
363
+
364
+ # Update properties of this object
365
+ def update!(**args)
366
+ @affected_resources = args[:affected_resources] if args.key?(:affected_resources)
367
+ @consent_apply_failure = args[:consent_apply_failure] if args.key?(:consent_apply_failure)
368
+ @consent_apply_success = args[:consent_apply_success] if args.key?(:consent_apply_success)
369
+ @failed_resources = args[:failed_resources] if args.key?(:failed_resources)
370
+ end
371
+ end
372
+
138
373
  # Archives the specified User data mapping.
139
374
  class ArchiveUserDataMappingRequest
140
375
  include Google::Apis::Core::Hashable
@@ -662,6 +897,41 @@ module Google
662
897
  end
663
898
  end
664
899
 
900
+ # The accessor scope that describes who can access, for what purpose, in which
901
+ # environment.
902
+ class ConsentAccessorScope
903
+ include Google::Apis::Core::Hashable
904
+
905
+ # An individual, group, or access role that identifies the accessor or a
906
+ # characteristic of the accessor. This can be a resource ID (such as ``
907
+ # resourceType`/`id``) or an external URI. This value must be present.
908
+ # Corresponds to the JSON property `actor`
909
+ # @return [String]
910
+ attr_accessor :actor
911
+
912
+ # An abstract identifier that describes the environment or conditions under
913
+ # which the accessor is acting. Can be "*" if it applies to all environments.
914
+ # Corresponds to the JSON property `environment`
915
+ # @return [String]
916
+ attr_accessor :environment
917
+
918
+ # The intent of data use. Can be "*" if it applies to all purposes.
919
+ # Corresponds to the JSON property `purpose`
920
+ # @return [String]
921
+ attr_accessor :purpose
922
+
923
+ def initialize(**args)
924
+ update!(**args)
925
+ end
926
+
927
+ # Update properties of this object
928
+ def update!(**args)
929
+ @actor = args[:actor] if args.key?(:actor)
930
+ @environment = args[:environment] if args.key?(:environment)
931
+ @purpose = args[:purpose] if args.key?(:purpose)
932
+ end
933
+ end
934
+
665
935
  # Documentation of a user's consent.
666
936
  class ConsentArtifact
667
937
  include Google::Apis::Core::Hashable
@@ -729,6 +999,100 @@ module Google
729
999
  end
730
1000
  end
731
1001
 
1002
+ # Configures whether to enforce consent for the FHIR store and which consent
1003
+ # enforcement version is being used.
1004
+ class ConsentConfig
1005
+ include Google::Apis::Core::Hashable
1006
+
1007
+ # Configures consent audit log config for FHIR create, read, update, and delete (
1008
+ # CRUD) operations. Cloud audit log for healthcare API must be [enabled](https://
1009
+ # cloud.google.com/logging/docs/audit/configure-data-access#config-console-
1010
+ # enable). The consent-related logs are included as part of `protoPayload.
1011
+ # metadata`.
1012
+ # Corresponds to the JSON property `accessDeterminationLogConfig`
1013
+ # @return [Google::Apis::HealthcareV1::AccessDeterminationLogConfig]
1014
+ attr_accessor :access_determination_log_config
1015
+
1016
+ # Optional. The default value is false. If set to true, when accessing FHIR
1017
+ # resources, the consent headers will be verified against consents given by
1018
+ # patients. See the ConsentEnforcementVersion for the supported consent headers.
1019
+ # Corresponds to the JSON property `accessEnforced`
1020
+ # @return [Boolean]
1021
+ attr_accessor :access_enforced
1022
+ alias_method :access_enforced?, :access_enforced
1023
+
1024
+ # How the server handles the consent header.
1025
+ # Corresponds to the JSON property `consentHeaderHandling`
1026
+ # @return [Google::Apis::HealthcareV1::ConsentHeaderHandling]
1027
+ attr_accessor :consent_header_handling
1028
+
1029
+ # Output only. The versioned names of the enforced admin Consent resource(s), in
1030
+ # the format `projects/`project_id`/locations/`location`/datasets/`dataset_id`/
1031
+ # fhirStores/`fhir_store_id`/fhir/Consent/`resource_id`/_history/`version_id``.
1032
+ # For FHIR stores with `disable_resource_versioning=true`, the format is `
1033
+ # projects/`project_id`/locations/`location`/datasets/`dataset_id`/fhirStores/`
1034
+ # fhir_store_id`/fhir/Consent/`resource_id``. This field can only be updated
1035
+ # using ApplyAdminConsents.
1036
+ # Corresponds to the JSON property `enforcedAdminConsents`
1037
+ # @return [Array<String>]
1038
+ attr_accessor :enforced_admin_consents
1039
+
1040
+ # Required. Specifies which consent enforcement version is being used for this
1041
+ # FHIR store. This field can only be set once by either CreateFhirStore or
1042
+ # UpdateFhirStore. After that, you must call ApplyConsents to change the version.
1043
+ # Corresponds to the JSON property `version`
1044
+ # @return [String]
1045
+ attr_accessor :version
1046
+
1047
+ def initialize(**args)
1048
+ update!(**args)
1049
+ end
1050
+
1051
+ # Update properties of this object
1052
+ def update!(**args)
1053
+ @access_determination_log_config = args[:access_determination_log_config] if args.key?(:access_determination_log_config)
1054
+ @access_enforced = args[:access_enforced] if args.key?(:access_enforced)
1055
+ @consent_header_handling = args[:consent_header_handling] if args.key?(:consent_header_handling)
1056
+ @enforced_admin_consents = args[:enforced_admin_consents] if args.key?(:enforced_admin_consents)
1057
+ @version = args[:version] if args.key?(:version)
1058
+ end
1059
+ end
1060
+
1061
+ # The Consent resource name and error.
1062
+ class ConsentErrors
1063
+ include Google::Apis::Core::Hashable
1064
+
1065
+ # The `Status` type defines a logical error model that is suitable for different
1066
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1067
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1068
+ # data: error code, error message, and error details. You can find out more
1069
+ # about this error model and how to work with it in the [API Design Guide](https:
1070
+ # //cloud.google.com/apis/design/errors).
1071
+ # Corresponds to the JSON property `error`
1072
+ # @return [Google::Apis::HealthcareV1::Status]
1073
+ attr_accessor :error
1074
+
1075
+ # The versioned name of the admin Consent resource, in the format `projects/`
1076
+ # project_id`/locations/`location`/datasets/`dataset_id`/fhirStores/`
1077
+ # fhir_store_id`/fhir/Consent/`resource_id`/_history/`version_id``. For FHIR
1078
+ # stores with `disable_resource_versioning=true`, the format is `projects/`
1079
+ # project_id`/locations/`location`/datasets/`dataset_id`/fhirStores/`
1080
+ # fhir_store_id`/fhir/Consent/`resource_id``.
1081
+ # Corresponds to the JSON property `name`
1082
+ # @return [String]
1083
+ attr_accessor :name
1084
+
1085
+ def initialize(**args)
1086
+ update!(**args)
1087
+ end
1088
+
1089
+ # Update properties of this object
1090
+ def update!(**args)
1091
+ @error = args[:error] if args.key?(:error)
1092
+ @name = args[:name] if args.key?(:name)
1093
+ end
1094
+ end
1095
+
732
1096
  # The detailed evaluation of a particular Consent.
733
1097
  class ConsentEvaluation
734
1098
  include Google::Apis::Core::Hashable
@@ -748,6 +1112,26 @@ module Google
748
1112
  end
749
1113
  end
750
1114
 
1115
+ # How the server handles the consent header.
1116
+ class ConsentHeaderHandling
1117
+ include Google::Apis::Core::Hashable
1118
+
1119
+ # Optional. Specifies the default server behavior when the header is empty. If
1120
+ # not specified, the `ScopeProfile.PERMIT_EMPTY_SCOPE` option is used.
1121
+ # Corresponds to the JSON property `profile`
1122
+ # @return [String]
1123
+ attr_accessor :profile
1124
+
1125
+ def initialize(**args)
1126
+ update!(**args)
1127
+ end
1128
+
1129
+ # Update properties of this object
1130
+ def update!(**args)
1131
+ @profile = args[:profile] if args.key?(:profile)
1132
+ end
1133
+ end
1134
+
751
1135
  # List of resource names of Consent resources.
752
1136
  class ConsentList
753
1137
  include Google::Apis::Core::Hashable
@@ -1627,6 +2011,139 @@ module Google
1627
2011
  end
1628
2012
  end
1629
2013
 
2014
+ # The enforcing consent's metadata.
2015
+ class ExplainDataAccessConsentInfo
2016
+ include Google::Apis::Core::Hashable
2017
+
2018
+ # The compartment base resources that matched a cascading policy. Each resource
2019
+ # has the following format: `projects/`project_id`/locations/`location_id`/
2020
+ # datasets/`dataset_id`/fhirStores/`fhir_store_id`/fhir/`resource_type`/`
2021
+ # resource_id``
2022
+ # Corresponds to the JSON property `cascadeOrigins`
2023
+ # @return [Array<String>]
2024
+ attr_accessor :cascade_origins
2025
+
2026
+ # The resource name of this consent resource, in the format: `projects/`
2027
+ # project_id`/locations/`location`/datasets/`dataset_id`/fhirStores/`
2028
+ # fhir_store_id`/fhir/Consent/`resource_id``.
2029
+ # Corresponds to the JSON property `consentResource`
2030
+ # @return [String]
2031
+ attr_accessor :consent_resource
2032
+
2033
+ # Last enforcement timestamp of this consent resource.
2034
+ # Corresponds to the JSON property `enforcementTime`
2035
+ # @return [String]
2036
+ attr_accessor :enforcement_time
2037
+
2038
+ # A list of all the matching accessor scopes of this consent policy that
2039
+ # enforced ExplainDataAccessConsentScope.accessor_scope.
2040
+ # Corresponds to the JSON property `matchingAccessorScopes`
2041
+ # @return [Array<Google::Apis::HealthcareV1::ConsentAccessorScope>]
2042
+ attr_accessor :matching_accessor_scopes
2043
+
2044
+ # The patient owning the consent (only applicable for patient consents), in the
2045
+ # format: `projects/`project_id`/locations/`location_id`/datasets/`dataset_id`/
2046
+ # fhirStores/`fhir_store_id`/fhir/Patient/`patient_id``
2047
+ # Corresponds to the JSON property `patientConsentOwner`
2048
+ # @return [String]
2049
+ attr_accessor :patient_consent_owner
2050
+
2051
+ # The policy type of consent resource (e.g. PATIENT, ADMIN).
2052
+ # Corresponds to the JSON property `type`
2053
+ # @return [String]
2054
+ attr_accessor :type
2055
+
2056
+ # The consent's variant combinations. A single consent may have multiple
2057
+ # variants.
2058
+ # Corresponds to the JSON property `variants`
2059
+ # @return [Array<String>]
2060
+ attr_accessor :variants
2061
+
2062
+ def initialize(**args)
2063
+ update!(**args)
2064
+ end
2065
+
2066
+ # Update properties of this object
2067
+ def update!(**args)
2068
+ @cascade_origins = args[:cascade_origins] if args.key?(:cascade_origins)
2069
+ @consent_resource = args[:consent_resource] if args.key?(:consent_resource)
2070
+ @enforcement_time = args[:enforcement_time] if args.key?(:enforcement_time)
2071
+ @matching_accessor_scopes = args[:matching_accessor_scopes] if args.key?(:matching_accessor_scopes)
2072
+ @patient_consent_owner = args[:patient_consent_owner] if args.key?(:patient_consent_owner)
2073
+ @type = args[:type] if args.key?(:type)
2074
+ @variants = args[:variants] if args.key?(:variants)
2075
+ end
2076
+ end
2077
+
2078
+ # A single consent scope that provides info on who has access to the requested
2079
+ # resource scope for a particular purpose and environment, enforced by which
2080
+ # consent.
2081
+ class ExplainDataAccessConsentScope
2082
+ include Google::Apis::Core::Hashable
2083
+
2084
+ # The accessor scope that describes who can access, for what purpose, in which
2085
+ # environment.
2086
+ # Corresponds to the JSON property `accessorScope`
2087
+ # @return [Google::Apis::HealthcareV1::ConsentAccessorScope]
2088
+ attr_accessor :accessor_scope
2089
+
2090
+ # Whether the current consent scope is permitted or denied access on the
2091
+ # requested resource.
2092
+ # Corresponds to the JSON property `decision`
2093
+ # @return [String]
2094
+ attr_accessor :decision
2095
+
2096
+ # Metadata of the consent resources that enforce the consent scope's access.
2097
+ # Corresponds to the JSON property `enforcingConsents`
2098
+ # @return [Array<Google::Apis::HealthcareV1::ExplainDataAccessConsentInfo>]
2099
+ attr_accessor :enforcing_consents
2100
+
2101
+ # Other consent scopes that created exceptions within this scope.
2102
+ # Corresponds to the JSON property `exceptions`
2103
+ # @return [Array<Google::Apis::HealthcareV1::ExplainDataAccessConsentScope>]
2104
+ attr_accessor :exceptions
2105
+
2106
+ def initialize(**args)
2107
+ update!(**args)
2108
+ end
2109
+
2110
+ # Update properties of this object
2111
+ def update!(**args)
2112
+ @accessor_scope = args[:accessor_scope] if args.key?(:accessor_scope)
2113
+ @decision = args[:decision] if args.key?(:decision)
2114
+ @enforcing_consents = args[:enforcing_consents] if args.key?(:enforcing_consents)
2115
+ @exceptions = args[:exceptions] if args.key?(:exceptions)
2116
+ end
2117
+ end
2118
+
2119
+ # List of consent scopes that are applicable to the explained access on a given
2120
+ # resource.
2121
+ class ExplainDataAccessResponse
2122
+ include Google::Apis::Core::Hashable
2123
+
2124
+ # List of applicable consent scopes. Sorted in order of actor such that scopes
2125
+ # belonging to the same actor will be adjacent to each other in the list.
2126
+ # Corresponds to the JSON property `consentScopes`
2127
+ # @return [Array<Google::Apis::HealthcareV1::ExplainDataAccessConsentScope>]
2128
+ attr_accessor :consent_scopes
2129
+
2130
+ # Warnings associated with this response. It inform user with exceeded scope
2131
+ # limit errors.
2132
+ # Corresponds to the JSON property `warning`
2133
+ # @return [String]
2134
+ attr_accessor :warning
2135
+
2136
+ def initialize(**args)
2137
+ update!(**args)
2138
+ end
2139
+
2140
+ # Update properties of this object
2141
+ def update!(**args)
2142
+ @consent_scopes = args[:consent_scopes] if args.key?(:consent_scopes)
2143
+ @warning = args[:warning] if args.key?(:warning)
2144
+ end
2145
+ end
2146
+
1630
2147
  # Exports data from the specified DICOM store. If a given resource, such as a
1631
2148
  # DICOM object with the same SOPInstance UID, already exists in the output, it
1632
2149
  # is overwritten with the version in the source dataset. Exported DICOM data
@@ -2034,6 +2551,12 @@ module Google
2034
2551
  # @return [String]
2035
2552
  attr_accessor :complex_data_type_reference_parsing
2036
2553
 
2554
+ # Configures whether to enforce consent for the FHIR store and which consent
2555
+ # enforcement version is being used.
2556
+ # Corresponds to the JSON property `consentConfig`
2557
+ # @return [Google::Apis::HealthcareV1::ConsentConfig]
2558
+ attr_accessor :consent_config
2559
+
2037
2560
  # Optional. If true, overrides the default search behavior for this FHIR store
2038
2561
  # to `handling=strict` which returns an error for unrecognized search parameters.
2039
2562
  # If false, uses the FHIR specification default `handling=lenient` which
@@ -2147,6 +2670,7 @@ module Google
2147
2670
  # Update properties of this object
2148
2671
  def update!(**args)
2149
2672
  @complex_data_type_reference_parsing = args[:complex_data_type_reference_parsing] if args.key?(:complex_data_type_reference_parsing)
2673
+ @consent_config = args[:consent_config] if args.key?(:consent_config)
2150
2674
  @default_search_handling_strict = args[:default_search_handling_strict] if args.key?(:default_search_handling_strict)
2151
2675
  @disable_referential_integrity = args[:disable_referential_integrity] if args.key?(:disable_referential_integrity)
2152
2676
  @disable_resource_versioning = args[:disable_resource_versioning] if args.key?(:disable_resource_versioning)
@@ -4059,6 +4583,27 @@ module Google
4059
4583
  end
4060
4584
  end
4061
4585
 
4586
+ # Apply consents given by a list of patients.
4587
+ class PatientScope
4588
+ include Google::Apis::Core::Hashable
4589
+
4590
+ # Optional. The list of patient IDs whose Consent resources will be enforced. At
4591
+ # most 10,000 patients can be specified. An empty list is equivalent to all
4592
+ # patients (meaning the entire FHIR store).
4593
+ # Corresponds to the JSON property `patientIds`
4594
+ # @return [Array<String>]
4595
+ attr_accessor :patient_ids
4596
+
4597
+ def initialize(**args)
4598
+ update!(**args)
4599
+ end
4600
+
4601
+ # Update properties of this object
4602
+ def update!(**args)
4603
+ @patient_ids = args[:patient_ids] if args.key?(:patient_ids)
4604
+ end
4605
+ end
4606
+
4062
4607
  # An Identity and Access Management (IAM) policy, which specifies access
4063
4608
  # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
4064
4609
  # A `binding` binds one or more `members`, or principals, to a single `role`.
@@ -5362,6 +5907,36 @@ module Google
5362
5907
  end
5363
5908
  end
5364
5909
 
5910
+ # Apply consents given by patients whose most recent consent changes are in the
5911
+ # time range. Note that after identifying these patients, the server applies all
5912
+ # Consent resources given by those patients, not just the Consent resources
5913
+ # within the timestamp in the range.
5914
+ class TimeRange
5915
+ include Google::Apis::Core::Hashable
5916
+
5917
+ # Optional. The latest consent change time, in format YYYY-MM-DDThh:mm:ss.sss+zz:
5918
+ # zz If not specified, the system uses the time when ApplyConsents was called.
5919
+ # Corresponds to the JSON property `end`
5920
+ # @return [String]
5921
+ attr_accessor :end
5922
+
5923
+ # Optional. The earliest consent change time, in format YYYY-MM-DDThh:mm:ss.sss+
5924
+ # zz:zz If not specified, the system uses the FHIR store creation time.
5925
+ # Corresponds to the JSON property `start`
5926
+ # @return [String]
5927
+ attr_accessor :start
5928
+
5929
+ def initialize(**args)
5930
+ update!(**args)
5931
+ end
5932
+
5933
+ # Update properties of this object
5934
+ def update!(**args)
5935
+ @end = args[:end] if args.key?(:end)
5936
+ @start = args[:start] if args.key?(:start)
5937
+ end
5938
+ end
5939
+
5365
5940
  # A type definition for some HL7v2 type (incl. Segments and Datatypes).
5366
5941
  class Type
5367
5942
  include Google::Apis::Core::Hashable
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module HealthcareV1
18
18
  # Version of the google-apis-healthcare_v1 gem
19
- GEM_VERSION = "0.69.0"
19
+ GEM_VERSION = "0.70.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.15.1"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20241115"
25
+ REVISION = "20241205"
26
26
  end
27
27
  end
28
28
  end
@@ -22,12 +22,24 @@ module Google
22
22
  module Apis
23
23
  module HealthcareV1
24
24
 
25
+ class AccessDeterminationLogConfig
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
25
31
  class ActivateConsentRequest
26
32
  class Representation < Google::Apis::Core::JsonRepresentation; end
27
33
 
28
34
  include Google::Apis::Core::JsonObjectSupport
29
35
  end
30
36
 
37
+ class AdminConsents
38
+ class Representation < Google::Apis::Core::JsonRepresentation; end
39
+
40
+ include Google::Apis::Core::JsonObjectSupport
41
+ end
42
+
31
43
  class AnalyzeEntitiesRequest
32
44
  class Representation < Google::Apis::Core::JsonRepresentation; end
33
45
 
@@ -40,6 +52,36 @@ module Google
40
52
  include Google::Apis::Core::JsonObjectSupport
41
53
  end
42
54
 
55
+ class ApplyAdminConsentsErrorDetail
56
+ class Representation < Google::Apis::Core::JsonRepresentation; end
57
+
58
+ include Google::Apis::Core::JsonObjectSupport
59
+ end
60
+
61
+ class ApplyAdminConsentsRequest
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
67
+ class ApplyAdminConsentsResponse
68
+ class Representation < Google::Apis::Core::JsonRepresentation; end
69
+
70
+ include Google::Apis::Core::JsonObjectSupport
71
+ end
72
+
73
+ class ApplyConsentsRequest
74
+ class Representation < Google::Apis::Core::JsonRepresentation; end
75
+
76
+ include Google::Apis::Core::JsonObjectSupport
77
+ end
78
+
79
+ class ApplyConsentsResponse
80
+ class Representation < Google::Apis::Core::JsonRepresentation; end
81
+
82
+ include Google::Apis::Core::JsonObjectSupport
83
+ end
84
+
43
85
  class ArchiveUserDataMappingRequest
44
86
  class Representation < Google::Apis::Core::JsonRepresentation; end
45
87
 
@@ -124,18 +166,42 @@ module Google
124
166
  include Google::Apis::Core::JsonObjectSupport
125
167
  end
126
168
 
169
+ class ConsentAccessorScope
170
+ class Representation < Google::Apis::Core::JsonRepresentation; end
171
+
172
+ include Google::Apis::Core::JsonObjectSupport
173
+ end
174
+
127
175
  class ConsentArtifact
128
176
  class Representation < Google::Apis::Core::JsonRepresentation; end
129
177
 
130
178
  include Google::Apis::Core::JsonObjectSupport
131
179
  end
132
180
 
181
+ class ConsentConfig
182
+ class Representation < Google::Apis::Core::JsonRepresentation; end
183
+
184
+ include Google::Apis::Core::JsonObjectSupport
185
+ end
186
+
187
+ class ConsentErrors
188
+ class Representation < Google::Apis::Core::JsonRepresentation; end
189
+
190
+ include Google::Apis::Core::JsonObjectSupport
191
+ end
192
+
133
193
  class ConsentEvaluation
134
194
  class Representation < Google::Apis::Core::JsonRepresentation; end
135
195
 
136
196
  include Google::Apis::Core::JsonObjectSupport
137
197
  end
138
198
 
199
+ class ConsentHeaderHandling
200
+ class Representation < Google::Apis::Core::JsonRepresentation; end
201
+
202
+ include Google::Apis::Core::JsonObjectSupport
203
+ end
204
+
139
205
  class ConsentList
140
206
  class Representation < Google::Apis::Core::JsonRepresentation; end
141
207
 
@@ -274,6 +340,24 @@ module Google
274
340
  include Google::Apis::Core::JsonObjectSupport
275
341
  end
276
342
 
343
+ class ExplainDataAccessConsentInfo
344
+ class Representation < Google::Apis::Core::JsonRepresentation; end
345
+
346
+ include Google::Apis::Core::JsonObjectSupport
347
+ end
348
+
349
+ class ExplainDataAccessConsentScope
350
+ class Representation < Google::Apis::Core::JsonRepresentation; end
351
+
352
+ include Google::Apis::Core::JsonObjectSupport
353
+ end
354
+
355
+ class ExplainDataAccessResponse
356
+ class Representation < Google::Apis::Core::JsonRepresentation; end
357
+
358
+ include Google::Apis::Core::JsonObjectSupport
359
+ end
360
+
277
361
  class ExportDicomDataRequest
278
362
  class Representation < Google::Apis::Core::JsonRepresentation; end
279
363
 
@@ -700,6 +784,12 @@ module Google
700
784
  include Google::Apis::Core::JsonObjectSupport
701
785
  end
702
786
 
787
+ class PatientScope
788
+ class Representation < Google::Apis::Core::JsonRepresentation; end
789
+
790
+ include Google::Apis::Core::JsonObjectSupport
791
+ end
792
+
703
793
  class Policy
704
794
  class Representation < Google::Apis::Core::JsonRepresentation; end
705
795
 
@@ -940,6 +1030,12 @@ module Google
940
1030
  include Google::Apis::Core::JsonObjectSupport
941
1031
  end
942
1032
 
1033
+ class TimeRange
1034
+ class Representation < Google::Apis::Core::JsonRepresentation; end
1035
+
1036
+ include Google::Apis::Core::JsonObjectSupport
1037
+ end
1038
+
943
1039
  class Type
944
1040
  class Representation < Google::Apis::Core::JsonRepresentation; end
945
1041
 
@@ -964,6 +1060,13 @@ module Google
964
1060
  include Google::Apis::Core::JsonObjectSupport
965
1061
  end
966
1062
 
1063
+ class AccessDeterminationLogConfig
1064
+ # @private
1065
+ class Representation < Google::Apis::Core::JsonRepresentation
1066
+ property :log_level, as: 'logLevel'
1067
+ end
1068
+ end
1069
+
967
1070
  class ActivateConsentRequest
968
1071
  # @private
969
1072
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -973,6 +1076,13 @@ module Google
973
1076
  end
974
1077
  end
975
1078
 
1079
+ class AdminConsents
1080
+ # @private
1081
+ class Representation < Google::Apis::Core::JsonRepresentation
1082
+ collection :names, as: 'names'
1083
+ end
1084
+ end
1085
+
976
1086
  class AnalyzeEntitiesRequest
977
1087
  # @private
978
1088
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -995,6 +1105,54 @@ module Google
995
1105
  end
996
1106
  end
997
1107
 
1108
+ class ApplyAdminConsentsErrorDetail
1109
+ # @private
1110
+ class Representation < Google::Apis::Core::JsonRepresentation
1111
+ collection :consent_errors, as: 'consentErrors', class: Google::Apis::HealthcareV1::ConsentErrors, decorator: Google::Apis::HealthcareV1::ConsentErrors::Representation
1112
+
1113
+ property :existing_operation_id, :numeric_string => true, as: 'existingOperationId'
1114
+ end
1115
+ end
1116
+
1117
+ class ApplyAdminConsentsRequest
1118
+ # @private
1119
+ class Representation < Google::Apis::Core::JsonRepresentation
1120
+ property :new_consents_list, as: 'newConsentsList', class: Google::Apis::HealthcareV1::AdminConsents, decorator: Google::Apis::HealthcareV1::AdminConsents::Representation
1121
+
1122
+ property :validate_only, as: 'validateOnly'
1123
+ end
1124
+ end
1125
+
1126
+ class ApplyAdminConsentsResponse
1127
+ # @private
1128
+ class Representation < Google::Apis::Core::JsonRepresentation
1129
+ property :affected_resources, :numeric_string => true, as: 'affectedResources'
1130
+ property :consent_apply_success, :numeric_string => true, as: 'consentApplySuccess'
1131
+ property :failed_resources, :numeric_string => true, as: 'failedResources'
1132
+ end
1133
+ end
1134
+
1135
+ class ApplyConsentsRequest
1136
+ # @private
1137
+ class Representation < Google::Apis::Core::JsonRepresentation
1138
+ property :patient_scope, as: 'patientScope', class: Google::Apis::HealthcareV1::PatientScope, decorator: Google::Apis::HealthcareV1::PatientScope::Representation
1139
+
1140
+ property :time_range, as: 'timeRange', class: Google::Apis::HealthcareV1::TimeRange, decorator: Google::Apis::HealthcareV1::TimeRange::Representation
1141
+
1142
+ property :validate_only, as: 'validateOnly'
1143
+ end
1144
+ end
1145
+
1146
+ class ApplyConsentsResponse
1147
+ # @private
1148
+ class Representation < Google::Apis::Core::JsonRepresentation
1149
+ property :affected_resources, :numeric_string => true, as: 'affectedResources'
1150
+ property :consent_apply_failure, :numeric_string => true, as: 'consentApplyFailure'
1151
+ property :consent_apply_success, :numeric_string => true, as: 'consentApplySuccess'
1152
+ property :failed_resources, :numeric_string => true, as: 'failedResources'
1153
+ end
1154
+ end
1155
+
998
1156
  class ArchiveUserDataMappingRequest
999
1157
  # @private
1000
1158
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1120,6 +1278,15 @@ module Google
1120
1278
  end
1121
1279
  end
1122
1280
 
1281
+ class ConsentAccessorScope
1282
+ # @private
1283
+ class Representation < Google::Apis::Core::JsonRepresentation
1284
+ property :actor, as: 'actor'
1285
+ property :environment, as: 'environment'
1286
+ property :purpose, as: 'purpose'
1287
+ end
1288
+ end
1289
+
1123
1290
  class ConsentArtifact
1124
1291
  # @private
1125
1292
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1138,6 +1305,28 @@ module Google
1138
1305
  end
1139
1306
  end
1140
1307
 
1308
+ class ConsentConfig
1309
+ # @private
1310
+ class Representation < Google::Apis::Core::JsonRepresentation
1311
+ property :access_determination_log_config, as: 'accessDeterminationLogConfig', class: Google::Apis::HealthcareV1::AccessDeterminationLogConfig, decorator: Google::Apis::HealthcareV1::AccessDeterminationLogConfig::Representation
1312
+
1313
+ property :access_enforced, as: 'accessEnforced'
1314
+ property :consent_header_handling, as: 'consentHeaderHandling', class: Google::Apis::HealthcareV1::ConsentHeaderHandling, decorator: Google::Apis::HealthcareV1::ConsentHeaderHandling::Representation
1315
+
1316
+ collection :enforced_admin_consents, as: 'enforcedAdminConsents'
1317
+ property :version, as: 'version'
1318
+ end
1319
+ end
1320
+
1321
+ class ConsentErrors
1322
+ # @private
1323
+ class Representation < Google::Apis::Core::JsonRepresentation
1324
+ property :error, as: 'error', class: Google::Apis::HealthcareV1::Status, decorator: Google::Apis::HealthcareV1::Status::Representation
1325
+
1326
+ property :name, as: 'name'
1327
+ end
1328
+ end
1329
+
1141
1330
  class ConsentEvaluation
1142
1331
  # @private
1143
1332
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1145,6 +1334,13 @@ module Google
1145
1334
  end
1146
1335
  end
1147
1336
 
1337
+ class ConsentHeaderHandling
1338
+ # @private
1339
+ class Representation < Google::Apis::Core::JsonRepresentation
1340
+ property :profile, as: 'profile'
1341
+ end
1342
+ end
1343
+
1148
1344
  class ConsentList
1149
1345
  # @private
1150
1346
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1379,6 +1575,42 @@ module Google
1379
1575
  end
1380
1576
  end
1381
1577
 
1578
+ class ExplainDataAccessConsentInfo
1579
+ # @private
1580
+ class Representation < Google::Apis::Core::JsonRepresentation
1581
+ collection :cascade_origins, as: 'cascadeOrigins'
1582
+ property :consent_resource, as: 'consentResource'
1583
+ property :enforcement_time, as: 'enforcementTime'
1584
+ collection :matching_accessor_scopes, as: 'matchingAccessorScopes', class: Google::Apis::HealthcareV1::ConsentAccessorScope, decorator: Google::Apis::HealthcareV1::ConsentAccessorScope::Representation
1585
+
1586
+ property :patient_consent_owner, as: 'patientConsentOwner'
1587
+ property :type, as: 'type'
1588
+ collection :variants, as: 'variants'
1589
+ end
1590
+ end
1591
+
1592
+ class ExplainDataAccessConsentScope
1593
+ # @private
1594
+ class Representation < Google::Apis::Core::JsonRepresentation
1595
+ property :accessor_scope, as: 'accessorScope', class: Google::Apis::HealthcareV1::ConsentAccessorScope, decorator: Google::Apis::HealthcareV1::ConsentAccessorScope::Representation
1596
+
1597
+ property :decision, as: 'decision'
1598
+ collection :enforcing_consents, as: 'enforcingConsents', class: Google::Apis::HealthcareV1::ExplainDataAccessConsentInfo, decorator: Google::Apis::HealthcareV1::ExplainDataAccessConsentInfo::Representation
1599
+
1600
+ collection :exceptions, as: 'exceptions', class: Google::Apis::HealthcareV1::ExplainDataAccessConsentScope, decorator: Google::Apis::HealthcareV1::ExplainDataAccessConsentScope::Representation
1601
+
1602
+ end
1603
+ end
1604
+
1605
+ class ExplainDataAccessResponse
1606
+ # @private
1607
+ class Representation < Google::Apis::Core::JsonRepresentation
1608
+ collection :consent_scopes, as: 'consentScopes', class: Google::Apis::HealthcareV1::ExplainDataAccessConsentScope, decorator: Google::Apis::HealthcareV1::ExplainDataAccessConsentScope::Representation
1609
+
1610
+ property :warning, as: 'warning'
1611
+ end
1612
+ end
1613
+
1382
1614
  class ExportDicomDataRequest
1383
1615
  # @private
1384
1616
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1480,6 +1712,8 @@ module Google
1480
1712
  # @private
1481
1713
  class Representation < Google::Apis::Core::JsonRepresentation
1482
1714
  property :complex_data_type_reference_parsing, as: 'complexDataTypeReferenceParsing'
1715
+ property :consent_config, as: 'consentConfig', class: Google::Apis::HealthcareV1::ConsentConfig, decorator: Google::Apis::HealthcareV1::ConsentConfig::Representation
1716
+
1483
1717
  property :default_search_handling_strict, as: 'defaultSearchHandlingStrict'
1484
1718
  property :disable_referential_integrity, as: 'disableReferentialIntegrity'
1485
1719
  property :disable_resource_versioning, as: 'disableResourceVersioning'
@@ -2031,6 +2265,13 @@ module Google
2031
2265
  end
2032
2266
  end
2033
2267
 
2268
+ class PatientScope
2269
+ # @private
2270
+ class Representation < Google::Apis::Core::JsonRepresentation
2271
+ collection :patient_ids, as: 'patientIds'
2272
+ end
2273
+ end
2274
+
2034
2275
  class Policy
2035
2276
  # @private
2036
2277
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -2388,6 +2629,14 @@ module Google
2388
2629
  end
2389
2630
  end
2390
2631
 
2632
+ class TimeRange
2633
+ # @private
2634
+ class Representation < Google::Apis::Core::JsonRepresentation
2635
+ property :end, as: 'end'
2636
+ property :start, as: 'start'
2637
+ end
2638
+ end
2639
+
2391
2640
  class Type
2392
2641
  # @private
2393
2642
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -3548,6 +3548,101 @@ module Google
3548
3548
  execute_or_queue_command(command, &block)
3549
3549
  end
3550
3550
 
3551
+ # Applies the admin Consent resources for the FHIR store and reindexes the
3552
+ # underlying resources in the FHIR store according to the aggregate consents.
3553
+ # This method also updates the `consent_config.enforced_admin_consents` field of
3554
+ # the FhirStore unless `validate_only=true` in ApplyAdminConsentsRequest. Any
3555
+ # admin Consent resource change after this operation execution (including
3556
+ # deletion) requires you to call ApplyAdminConsents again for the change to take
3557
+ # effect. This method returns an Operation that can be used to track the
3558
+ # progress of the resources that were reindexed, by calling GetOperation. Upon
3559
+ # completion, the ApplyAdminConsentsResponse additionally contains the number of
3560
+ # resources that were reindexed. If at least one Consent resource contains an
3561
+ # error or fails be be enforced for any reason, the method returns an error
3562
+ # instead of an Operation. No resources will be reindexed and the `
3563
+ # consent_config.enforced_admin_consents` field will be unchanged. To enforce a
3564
+ # consent check for data access, `consent_config.access_enforced` must be set to
3565
+ # true for the FhirStore.
3566
+ # @param [String] name
3567
+ # Required. The name of the FHIR store to enforce, in the format `projects/`
3568
+ # project_id`/locations/`location_id`/datasets/`dataset_id`/fhirStores/`
3569
+ # fhir_store_id``.
3570
+ # @param [Google::Apis::HealthcareV1::ApplyAdminConsentsRequest] apply_admin_consents_request_object
3571
+ # @param [String] fields
3572
+ # Selector specifying which fields to include in a partial response.
3573
+ # @param [String] quota_user
3574
+ # Available to use for quota purposes for server-side applications. Can be any
3575
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
3576
+ # @param [Google::Apis::RequestOptions] options
3577
+ # Request-specific options
3578
+ #
3579
+ # @yield [result, err] Result & error if block supplied
3580
+ # @yieldparam result [Google::Apis::HealthcareV1::Operation] parsed result object
3581
+ # @yieldparam err [StandardError] error object if request failed
3582
+ #
3583
+ # @return [Google::Apis::HealthcareV1::Operation]
3584
+ #
3585
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
3586
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
3587
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
3588
+ def apply_fhir_store_admin_consents(name, apply_admin_consents_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
3589
+ command = make_simple_command(:post, 'v1/{+name}:applyAdminConsents', options)
3590
+ command.request_representation = Google::Apis::HealthcareV1::ApplyAdminConsentsRequest::Representation
3591
+ command.request_object = apply_admin_consents_request_object
3592
+ command.response_representation = Google::Apis::HealthcareV1::Operation::Representation
3593
+ command.response_class = Google::Apis::HealthcareV1::Operation
3594
+ command.params['name'] = name unless name.nil?
3595
+ command.query['fields'] = fields unless fields.nil?
3596
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
3597
+ execute_or_queue_command(command, &block)
3598
+ end
3599
+
3600
+ # Apply the Consent resources for the FHIR store and reindex the underlying
3601
+ # resources in the FHIR store according to the aggregate consent. The aggregate
3602
+ # consent of the patient in scope in this request replaces any previous call of
3603
+ # this method. Any Consent resource change after this operation execution (
3604
+ # including deletion) requires you to call ApplyConsents again to have effect.
3605
+ # This method returns an Operation that can be used to track the progress of the
3606
+ # consent resources that were processed by calling GetOperation. Upon completion,
3607
+ # the ApplyConsentsResponse additionally contains the number of resources that
3608
+ # was reindexed. Errors are logged to Cloud Logging (see [Viewing error logs in
3609
+ # Cloud Logging](https://cloud.google.com/healthcare/docs/how-tos/logging)). To
3610
+ # enforce consent check for data access, `consent_config.access_enforced` must
3611
+ # be set to true for the FhirStore.
3612
+ # @param [String] name
3613
+ # Required. The name of the FHIR store to enforce, in the format `projects/`
3614
+ # project_id`/locations/`location_id`/datasets/`dataset_id`/fhirStores/`
3615
+ # fhir_store_id``.
3616
+ # @param [Google::Apis::HealthcareV1::ApplyConsentsRequest] apply_consents_request_object
3617
+ # @param [String] fields
3618
+ # Selector specifying which fields to include in a partial response.
3619
+ # @param [String] quota_user
3620
+ # Available to use for quota purposes for server-side applications. Can be any
3621
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
3622
+ # @param [Google::Apis::RequestOptions] options
3623
+ # Request-specific options
3624
+ #
3625
+ # @yield [result, err] Result & error if block supplied
3626
+ # @yieldparam result [Google::Apis::HealthcareV1::Operation] parsed result object
3627
+ # @yieldparam err [StandardError] error object if request failed
3628
+ #
3629
+ # @return [Google::Apis::HealthcareV1::Operation]
3630
+ #
3631
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
3632
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
3633
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
3634
+ def apply_fhir_store_consents(name, apply_consents_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
3635
+ command = make_simple_command(:post, 'v1/{+name}:applyConsents', options)
3636
+ command.request_representation = Google::Apis::HealthcareV1::ApplyConsentsRequest::Representation
3637
+ command.request_object = apply_consents_request_object
3638
+ command.response_representation = Google::Apis::HealthcareV1::Operation::Representation
3639
+ command.response_class = Google::Apis::HealthcareV1::Operation
3640
+ command.params['name'] = name unless name.nil?
3641
+ command.query['fields'] = fields unless fields.nil?
3642
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
3643
+ execute_or_queue_command(command, &block)
3644
+ end
3645
+
3551
3646
  # Creates a new FHIR store within the parent dataset.
3552
3647
  # @param [String] parent
3553
3648
  # Required. The name of the dataset this FHIR store belongs to.
@@ -3654,6 +3749,43 @@ module Google
3654
3749
  execute_or_queue_command(command, &block)
3655
3750
  end
3656
3751
 
3752
+ # Explains all the permitted/denied actor, purpose and environment for a given
3753
+ # resource.
3754
+ # @param [String] name
3755
+ # Required. The name of the FHIR store to enforce, in the format `projects/`
3756
+ # project_id`/locations/`location_id`/datasets/`dataset_id`/fhirStores/`
3757
+ # fhir_store_id``.
3758
+ # @param [String] resource_id
3759
+ # Required. The ID (``resourceType`/`id``) of the resource to explain data
3760
+ # access on.
3761
+ # @param [String] fields
3762
+ # Selector specifying which fields to include in a partial response.
3763
+ # @param [String] quota_user
3764
+ # Available to use for quota purposes for server-side applications. Can be any
3765
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
3766
+ # @param [Google::Apis::RequestOptions] options
3767
+ # Request-specific options
3768
+ #
3769
+ # @yield [result, err] Result & error if block supplied
3770
+ # @yieldparam result [Google::Apis::HealthcareV1::ExplainDataAccessResponse] parsed result object
3771
+ # @yieldparam err [StandardError] error object if request failed
3772
+ #
3773
+ # @return [Google::Apis::HealthcareV1::ExplainDataAccessResponse]
3774
+ #
3775
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
3776
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
3777
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
3778
+ def explain_project_location_dataset_fhir_store_data_access(name, resource_id: nil, fields: nil, quota_user: nil, options: nil, &block)
3779
+ command = make_simple_command(:get, 'v1/{+name}:explainDataAccess', options)
3780
+ command.response_representation = Google::Apis::HealthcareV1::ExplainDataAccessResponse::Representation
3781
+ command.response_class = Google::Apis::HealthcareV1::ExplainDataAccessResponse
3782
+ command.params['name'] = name unless name.nil?
3783
+ command.query['resourceId'] = resource_id unless resource_id.nil?
3784
+ command.query['fields'] = fields unless fields.nil?
3785
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
3786
+ execute_or_queue_command(command, &block)
3787
+ end
3788
+
3657
3789
  # Export resources from the FHIR store to the specified destination. This method
3658
3790
  # returns an Operation that can be used to track the status of the export by
3659
3791
  # calling GetOperation. Immediate fatal errors appear in the error field, errors
@@ -4308,6 +4440,89 @@ module Google
4308
4440
  execute_or_queue_command(command, &block)
4309
4441
  end
4310
4442
 
4443
+ # Returns the consent enforcement status of a single consent resource. On
4444
+ # success, the response body contains a JSON-encoded representation of a `
4445
+ # Parameters` (http://hl7.org/fhir/parameters.html) FHIR resource, containing
4446
+ # the current enforcement status. Does not support DSTU2.
4447
+ # @param [String] name
4448
+ # Required. The name of the consent resource to find enforcement status, in the
4449
+ # format `projects/`project_id`/locations/`location_id`/datasets/`dataset_id`/
4450
+ # fhirStores/`fhir_store_id`/fhir/Consent/`consent_id``
4451
+ # @param [String] fields
4452
+ # Selector specifying which fields to include in a partial response.
4453
+ # @param [String] quota_user
4454
+ # Available to use for quota purposes for server-side applications. Can be any
4455
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
4456
+ # @param [Google::Apis::RequestOptions] options
4457
+ # Request-specific options
4458
+ #
4459
+ # @yield [result, err] Result & error if block supplied
4460
+ # @yieldparam result [Google::Apis::HealthcareV1::HttpBody] parsed result object
4461
+ # @yieldparam err [StandardError] error object if request failed
4462
+ #
4463
+ # @return [Google::Apis::HealthcareV1::HttpBody]
4464
+ #
4465
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
4466
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
4467
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
4468
+ def consent_project_location_dataset_fhir_store_fhir_enforcement_status(name, fields: nil, quota_user: nil, options: nil, &block)
4469
+ command = make_simple_command(:get, 'v1/{+name}/$consent-enforcement-status', options)
4470
+ command.response_representation = Google::Apis::HealthcareV1::HttpBody::Representation
4471
+ command.response_class = Google::Apis::HealthcareV1::HttpBody
4472
+ command.params['name'] = name unless name.nil?
4473
+ command.query['fields'] = fields unless fields.nil?
4474
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
4475
+ execute_or_queue_command(command, &block)
4476
+ end
4477
+
4478
+ # Returns the consent enforcement status of all consent resources for a patient.
4479
+ # On success, the response body contains a JSON-encoded representation of a
4480
+ # bundle of `Parameters` (http://hl7.org/fhir/parameters.html) FHIR resources,
4481
+ # containing the current enforcement status for each consent resource of the
4482
+ # patient. Does not support DSTU2.
4483
+ # @param [String] name
4484
+ # Required. The name of the patient to find enforcement statuses, in the format `
4485
+ # projects/`project_id`/locations/`location_id`/datasets/`dataset_id`/fhirStores/
4486
+ # `fhir_store_id`/fhir/Patient/`patient_id``
4487
+ # @param [Fixnum] _count
4488
+ # Optional. The maximum number of results on a page. If not specified, 100 is
4489
+ # used. May not be larger than 1000.
4490
+ # @param [String] _page_token
4491
+ # Optional. Used to retrieve the first, previous, next, or last page of consent
4492
+ # enforcement statuses when using pagination. Value should be set to the value
4493
+ # of `_page_token` set in next or previous page links' URLs. Next and previous
4494
+ # page are returned in the response bundle's links field, where `link.relation`
4495
+ # is "previous" or "next". Omit `_page_token` if no previous request has been
4496
+ # made.
4497
+ # @param [String] fields
4498
+ # Selector specifying which fields to include in a partial response.
4499
+ # @param [String] quota_user
4500
+ # Available to use for quota purposes for server-side applications. Can be any
4501
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
4502
+ # @param [Google::Apis::RequestOptions] options
4503
+ # Request-specific options
4504
+ #
4505
+ # @yield [result, err] Result & error if block supplied
4506
+ # @yieldparam result [Google::Apis::HealthcareV1::HttpBody] parsed result object
4507
+ # @yieldparam err [StandardError] error object if request failed
4508
+ #
4509
+ # @return [Google::Apis::HealthcareV1::HttpBody]
4510
+ #
4511
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
4512
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
4513
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
4514
+ def patient_project_location_dataset_fhir_store_fhir_consent_enforcement_status(name, _count: nil, _page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
4515
+ command = make_simple_command(:get, 'v1/{+name}/$consent-enforcement-status', options)
4516
+ command.response_representation = Google::Apis::HealthcareV1::HttpBody::Representation
4517
+ command.response_class = Google::Apis::HealthcareV1::HttpBody
4518
+ command.params['name'] = name unless name.nil?
4519
+ command.query['_count'] = _count unless _count.nil?
4520
+ command.query['_page_token'] = _page_token unless _page_token.nil?
4521
+ command.query['fields'] = fields unless fields.nil?
4522
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
4523
+ execute_or_queue_command(command, &block)
4524
+ end
4525
+
4311
4526
  # Retrieves a Patient resource and resources related to that patient. Implements
4312
4527
  # the FHIR extended operation Patient-everything ([DSTU2](http://hl7.org/
4313
4528
  # implement/standards/fhir/DSTU2/patient-operations.html#everything), [STU3](
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-healthcare_v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.69.0
4
+ version: 0.70.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-12-04 00:00:00.000000000 Z
11
+ date: 2024-12-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -58,7 +58,7 @@ licenses:
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
60
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-healthcare_v1/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-healthcare_v1/v0.69.0
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-healthcare_v1/v0.70.0
62
62
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-healthcare_v1
63
63
  post_install_message:
64
64
  rdoc_options: []
@@ -75,7 +75,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0'
77
77
  requirements: []
78
- rubygems_version: 3.5.22
78
+ rubygems_version: 3.5.23
79
79
  signing_key:
80
80
  specification_version: 4
81
81
  summary: Simple REST client for Cloud Healthcare API V1