Creates a new FHIR store within the parent dataset.
Scopes
You will need authorization for at least one of the following scopes to make a valid call:
- https://www.googleapis.com/auth/cloud-healthcare
- https://www.googleapis.com/auth/cloud-platform
If unset, the scope for this method defaults to https://www.googleapis.com/auth/cloud-healthcare.
You can set the scope for this method like this: healthcare1-beta1 --scope <scope> projects locations-datasets-fhir-stores-create ...
Required Scalar Argument
- <parent> (string)
- Required. The name of the dataset this FHIR store belongs to.
Required Request Value
The request value is a data-structure with various fields. Each field may be a simple scalar or another data-structure. In the latter case it is advised to set the field-cursor to the data-structure's field to specify values more concisely.
For example, a structure like this:
FhirStore:
complex-data-type-reference-parsing: string
consent-config:
access-determination-log-config:
log-level: string
access-enforced: boolean
consent-header-handling:
profile: string
enforced-admin-consents: [string]
version: string
default-search-handling-strict: boolean
disable-referential-integrity: boolean
disable-resource-versioning: boolean
enable-history-modifications: boolean
enable-update-create: boolean
labels: { string: string }
name: string
notification-config:
pubsub-topic: string
send-for-bulk-import: boolean
validation-config:
disable-fhirpath-validation: boolean
disable-profile-validation: boolean
disable-reference-type-validation: boolean
disable-required-field-validation: boolean
enabled-implementation-guides: [string]
version: string
can be set completely with the following arguments which are assumed to be executed in the given order. Note how the cursor position is adjusted to the respective structures, allowing simple field names to be used most of the time.
-r . complex-data-type-reference-parsing=rebum.
- Enable parsing of references within complex FHIR data types such as Extensions. If this value is set to ENABLED, then features like referential integrity and Bundle reference rewriting apply to all references. If this flag has not been specified the behavior of the FHIR store will not change, references in complex data types will not be parsed. New stores will have this value set to ENABLED after a notification period. Warning: turning on this flag causes processing existing resources to fail if they contain references to non-existent resources.
-
consent-config.access-determination-log-config log-level=at
- Optional. Controls the amount of detail to include as part of the audit logs.
-
.. access-enforced=false
- Optional. If set to true, when accessing FHIR resources, the consent headers will be verified against consents given by patients. See the ConsentEnforcementVersion for the supported consent headers.
-
consent-header-handling profile=clita
- Optional. Specifies the default server behavior when the header is empty. If not specified, the
ScopeProfile.PERMIT_EMPTY_SCOPE
option is used.
- Optional. Specifies the default server behavior when the header is empty. If not specified, the
-
.. enforced-admin-consents=stet
- The versioned names of the enforced admin Consent resource(s), in the format
projects/{project_id}/locations/{location}/datasets/{dataset_id}/fhirStores/{fhir_store_id}/fhir/Consent/{resource_id}/_history/{version_id}
. For FHIR stores withdisable_resource_versioning=true
, the format isprojects/{project_id}/locations/{location}/datasets/{dataset_id}/fhirStores/{fhir_store_id}/fhir/Consent/{resource_id}
. This field can only be updated using ApplyAdminConsents. - Each invocation of this argument appends the given value to the array.
- The versioned names of the enforced admin Consent resource(s), in the format
-
version=aliquyam
- Required. Specifies which consent enforcement version is being used for this FHIR store. This field can only be set once by either CreateFhirStore or UpdateFhirStore. After that, you must call ApplyConsents to change the version.
-
.. default-search-handling-strict=false
- If true, overrides the default search behavior for this FHIR store to
handling=strict
which returns an error for unrecognized search parameters. If false, uses the FHIR specification defaulthandling=lenient
which ignores unrecognized search parameters. The handling can always be changed from the default on an individual API call by setting the HTTP headerPrefer: handling=strict
orPrefer: handling=lenient
.
- If true, overrides the default search behavior for this FHIR store to
disable-referential-integrity=true
- Immutable. Whether to disable referential integrity in this FHIR store. This field is immutable after FHIR store creation. The default value is false, meaning that the API enforces referential integrity and fails the requests that result in inconsistent state in the FHIR store. When this field is set to true, the API skips referential integrity checks. Consequently, operations that rely on references, such as GetPatientEverything, do not return all the results if broken references exist.
disable-resource-versioning=true
- Immutable. Whether to disable resource versioning for this FHIR store. This field can not be changed after the creation of FHIR store. If set to false, which is the default behavior, all write operations cause historical versions to be recorded automatically. The historical versions can be fetched through the history APIs, but cannot be updated. If set to true, no historical versions are kept. The server sends errors for attempts to read the historical versions.
enable-history-modifications=false
- Optional. Whether to allow ExecuteBundle to accept history bundles, and directly insert and overwrite historical resource versions into the FHIR store. If set to false, using history bundles fails with an error.
enable-update-create=false
- Whether this FHIR store has the updateCreate capability. This determines if the client can use an Update operation to create a new resource with a client-specified ID. If false, all IDs are server-assigned through the Create operation and attempts to update a non-existent resource return errors. It is strongly advised not to include or encode any sensitive data such as patient identifiers in client-specified resource IDs. Those IDs are part of the FHIR resource path recorded in Cloud audit logs and Pub/Sub notifications. Those IDs can also be contained in reference fields within other resources.
labels=key=magna
- User-supplied key-value pairs used to organize FHIR stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: \p{Ll}\p{Lo}{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63} No more than 64 labels can be associated with a given store.
- the value will be associated with the given
key
name=diam
- Output only. Identifier. Resource name of the FHIR store, of the form
projects/{project_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}
.
- Output only. Identifier. Resource name of the FHIR store, of the form
notification-config pubsub-topic=nonumy
- The Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data contains the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. Cloud Healthcare API service account must have publisher permissions on the given Pub/Sub topic. Not having adequate permissions causes the calls that send notifications to fail. If a notification can't be published to Pub/Sub, errors are logged to Cloud Logging (see Viewing error logs in Cloud Logging). If the number of errors exceeds a certain rate, some aren't submitted. Note that not all operations trigger notifications, see Configuring Pub/Sub notifications for specific details.
-
send-for-bulk-import=true
- Indicates whether or not to send Pub/Sub notifications on bulk import. Only supported for DICOM imports.
-
..validation-config disable-fhirpath-validation=true
- Whether to disable FHIRPath validation for incoming resources. Set this to true to disable checking incoming resources for conformance against FHIRPath requirement defined in the FHIR specification. This property only affects resource types that do not have profiles configured for them, any rules in enabled implementation guides will still be enforced.
disable-profile-validation=false
- Whether to disable profile validation for this FHIR store. Set this to true to disable checking incoming resources for conformance against StructureDefinitions in this FHIR store.
disable-reference-type-validation=false
- Whether to disable reference type validation for incoming resources. Set this to true to disable checking incoming resources for conformance against reference type requirement defined in the FHIR specification. This property only affects resource types that do not have profiles configured for them, any rules in enabled implementation guides will still be enforced.
disable-required-field-validation=false
- Whether to disable required fields validation for incoming resources. Set this to true to disable checking incoming resources for conformance against required fields requirement defined in the FHIR specification. This property only affects resource types that do not have profiles configured for them, any rules in enabled implementation guides will still be enforced.
-
enabled-implementation-guides=erat
- A list of ImplementationGuide URLs in this FHIR store that are used to configure the profiles to use for validation. For example, to use the US Core profiles for validation, set
enabled_implementation_guides
to["http://hl7.org/fhir/us/core/ImplementationGuide/ig"]
. Ifenabled_implementation_guides
is empty or omitted, then incoming resources are only required to conform to the base FHIR profiles. Otherwise, a resource must conform to at least one profile listed in theglobal
property of one of the enabled ImplementationGuides. The Cloud Healthcare API does not currently enforce all of the rules in a StructureDefinition. The following rules are supported: - min/max - minValue/maxValue - maxLength - type - fixed[x] - pattern[x] on simple types - slicing, when using "value" as the discriminator type When a URL cannot be resolved (for example, in a type assertion), the server does not return an error. - Each invocation of this argument appends the given value to the array.
- A list of ImplementationGuide URLs in this FHIR store that are used to configure the profiles to use for validation. For example, to use the US Core profiles for validation, set
-
.. version=justo
- Required. Immutable. The FHIR specification version that this FHIR store supports natively. This field is immutable after store creation. Requests are rejected if they contain FHIR resources of a different version. Version is required for every FHIR store.
About Cursors
The cursor position is key to comfortably set complex nested structures. The following rules apply:
- The cursor position is always set relative to the current one, unless the field name starts with the
.
character. Fields can be nested such as in-r f.s.o
. - The cursor position is set relative to the top-level structure if it starts with
.
, e.g.-r .s.s
- You can also set nested fields without setting the cursor explicitly. For example, to set a value relative to the current cursor position, you would specify
-r struct.sub_struct=bar
. - You can move the cursor one level up by using
..
. Each additional.
moves it up one additional level. E.g....
would go three levels up.
Optional Output Flags
The method's return value a JSON encoded structure, which will be written to standard output by default.
- -o out
- out specifies the destination to which to write the server's result to.
It will be a JSON-encoded structure.
The destination may be
-
to indicate standard output, or a filepath that is to contain the received bytes. If unset, it defaults to standard output.
- out specifies the destination to which to write the server's result to.
It will be a JSON-encoded structure.
The destination may be
Optional Method Properties
You may set the following properties to further configure the call. Please note that -p
is followed by one
or more key-value-pairs, and is called like this -p k1=v1 k2=v2
even though the listing below repeats the
-p
for completeness.
- -p fhir-store-id=string
- Required. The ID of the FHIR store that is being created. The string must match the following regex:
[\p{L}\p{N}_\-\.]{1,256}
.
- Required. The ID of the FHIR store that is being created. The string must match the following regex:
Optional General Properties
The following properties can configure any call, and are not specific to this method.
-
-p $-xgafv=string
- V1 error format.
-
-p access-token=string
- OAuth access token.
-
-p alt=string
- Data format for response.
-
-p callback=string
- JSONP
-
-p fields=string
- Selector specifying which fields to include in a partial response.
-
-p key=string
- API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
-
-p oauth-token=string
- OAuth 2.0 token for the current user.
-
-p pretty-print=boolean
- Returns response with indentations and line breaks.
-
-p quota-user=string
- Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
-
-p upload-type=string
- Legacy upload protocol for media (e.g. "media", "multipart").
-
-p upload-protocol=string
- Upload protocol for media (e.g. "raw", "multipart").