Helix AU Core
0.1.0 - ci-build
Helix AU Core - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
The Helix FHIR API is still under active development and subject to change as the project progresses.
Feedback from partners is a critical part of the development process so we encourage partners to provide feedback to our partner support team via appropriate channels.
Partners should use their Helix staging area to execute Helix workflows to generate necessary resources. In case of specific resource creation requirements, the partner support team is able to provide assistance.
Partners will be provided with a client id and client secret which can be used for OAuth2 client credential flow for authentication against the Helix FHIR authorisation server.
More details can be found here Client Credentials Flow.
The provided credentials will only permit access to the corresponding partner tenant.
The following example shows an application making a request to the Authorization Server to grant a new Access Token using the client credentials Grant. This flow should not be used for insecure applications (such as single page web apps) as those clients are unable to secure the client secret.
POST /oauth/token
Accept: application/json
Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials
&client_id=1234-5678
&client_secret=your-client-secret
An example Postman collection can be found here that illustrates the OAuth2 client credential flow.
Partners should be aware of the Authoring Key identifier for each resource. This mechanism enables Helix to monitor FHIR resources and maintain the synchronization with the corresponding Helix resources.
Partners should store the Authoring Key within their systems and use it as a reference when interacting with resources in the Helix FHIR API. This eliminates the necessity for partners to store the internal FHIR resource ID.
The Authoring Key can be used to look up a specific resource. For example:
https://<fhir-server>/<tenant>/Patient?identifier=http://medicaldirector.com/fhir/id/authoring-key|AcmePatient~123456
This doesn't preclude partners using the FHIR resource id for reference lookups, but the FHIR resource id should not be considered a stable identifier. The Authoring Key represents the business identity of a resource in Helix independent of the FHIR resource in any given FHIR server.
Using FHIR it is possible to load related resources as part of a single fetch operation. The related resources will then be returned as part of the search bundle.
More information can be found in the FHIR search documentation.
Examples include:
https://<fhir-server>/<tenant>/Observation?identifier=Helix-PatientHistory-PhysicalActivity~ab2ff5df-20e5-4cfd-961d-917aad822568&_include=Observation:patient
While the FHIR resources should generally be stable it is possible that they will change over time as new features are added to Helix. These changes will typically be made in a backwards compatible way so as not to break existing integrations.
Partners can access the underlying Helix version via an extension on the Metadata for each resource. We don't anticipate partners needing to use the version number. If you have a workflow that requires it please discuss with us.
"meta": {
"extension": [
{
"url": "http://medicaldirector.com/fhir/helix-base/StructureDefinition/helix-version",
"valueString": "96.1.1.0"
}
]
}
In the future, the Helix FHIR API will enforce adherence to the Helix Australia FHIR Implementation Guide. Currently this is disabled as the FHIR API is mostly read-only.
Not all FHIR search parameters are enabled. Partners should contact the partner support team to get required search parameters enabled as we are interested in understanding the workflow behind the use of any search parameters.
Please see SMART on FHIR
When accessing FHIR resources that reference file or binary content, such as DocumentReference or DiagnosticReport, there will likely be a URL referencing the content within the Helix tenant's blob storage. In order to retrieve the content from blob storage a SAS token is required by calling the following:
https://<fhir-server>/<tenant>/DocumentReference/$requestSasToken?url=https://acmestorage.blob.core.windows.net/dms-2024-06-13/08162af9-c169-490e-a6f1-5a427bb6baf5
Note: The content can not be loaded into a browser directly from the Helix tenant's blob storage url.