Azure Health Data Services is a set of managed API services based on open standards and frameworks for the healthcare industry. They enable you to build scalable and secure healthcare solutions by bringing protected health information (PHI) datasets together and connecting them end-to-end with tools for machine learning, analytics, and AI. This document provides details about the features and enhancements made to Azure Health Data Services including the different service types (FHIR service, DICOM service, and MedTech service) that seamlessly work with one another.
December 2022
Azure Health Data Services
Azure Health Data services General Available (GA) in new regions
General availability (GA) of Azure Health Data services in France Central, North Central US and Qatar Central Regions.
DICOM service
DICOM Events available in public preview
Azure Health Data Services Events now include a public preview of two new event types for the DICOM service. These new event types enable applications that use Event Grid to use event-driven workflows when DICOM images are created or deleted.
November 2022
FHIR service
Fixed the Error generated when resource is updated using if-match header and PATCH
Bug is now fixed and Resource will be updated if matches the Etag header. For details , see #2877
Toolkit and Samples Open Source
Azure Health Data Services Toolkit is released
The Azure Health Data Services Toolkit, which was previously in a pre-release state, is now in Public Preview . The toolkit is open-source project and allows customers to more easily customize and extend the functionality of their Azure Health Data Services implementations. The NuGet packages of the toolkit are available for download from the NuGet gallery, and you can find links to them from the repo documentation.
Customers can now determine if their mappings are working as intended, as they can now see dropped events as a metric to ensure that data is flowing through accurately.
September 2022
Azure Health Data Services
Bug Fixes
Bug Fix
Related information
Querying with :not operator was returning more results than expected
The issue is now fixed and querying with :not operator should provide correct results. For more information, see #2790.
Known Issues
Known Issue
Description
Using token type fields of length more than 128 characters can result in undesired behavior on create, search, update, and delete operations
No workaround.
FHIR Service
Bug Fixes
Bug Fix
Related information
Error message is provided for failure in export resulting from long time span
With failure in export job due to a long time span, customer will see RequestEntityTooLarge HTTP status code. For more information, see #2790.
In a query sort, functionality throws an error when chained search is performed with same field value.
Sort functionality returns a response. For more information, see #2794.
Server doesn't indicate _text not supported
When passed as URL parameter,_text returns an error in response when using the Prefer heading with value handling=strict. For more information, see #2779.
Verbose error message is not provided for invalid resource type
Verbose error message is added when resource type is invalid or empty for _include and _revinclude searches. For more information, see #2776.
DICOM service
Features
Enhancements/Improvements
Related information
Export is GA
The export feature for the DICOM service is now generally available. Export enables a user-supplied list of studies, series, and/or instances to be exported in bulk to an Azure Storage account. Learn more about the export feature.
Improved deployment performance
Performance improvements have cut the time to deploy new instances of the DICOM service by more than 55% at the 50th percentile.
Reduced strictness when validating STOW requests
Some customers have run into issues storing DICOM files that do not perfectly conform to the specification. To enable those files to be stored in the DICOM service, we have reduced the strictness of the validation performed on STOW.
The service will now accept the following:
DICOM UIDs that contain trailing whitespace
IS, DS, SV, and UV VRs that are not valid numbers
Invalid private creator tags
Toolkit and Samples Open Source
Features
Enhancements/Improvements
Related information
Azure Health Data Services Toolkit
The Azure Health Data Services Toolkit is now in the public preview. The toolkit is open-source and allows to easily customize and extend the functionality of their Azure Health Data Services implementations.
August 2022
FHIR service
Features
Enhancements
Related information
Azure Health Data services availability expands to new regions
Azure Health Data services is now available in the following regions: Central India, Korea Central, and Sweden Central.
$import is generally available.
$import API is now generally available in Azure Health Data Services API version 2022-06-01. See Executing the import by invoking the $import operation on FHIR service in Azure Health Data Services.
Analytics pipeline can process FHIR extensions to generate parquet data. See FHIR-Analytics-Pipelines_Process in pipeline.md at main.
Bug fixes
Bug fixes
Related information
History bundles were sorted with the oldest version first
We've recently identified an issue with the sorting order of history bundles on FHIR® server. History bundles were sorted with the oldest version first. Per FHIR specification, the sorting of versions defaults to the oldest version last.
This bug fix, addresses FHIR server behavior for sorting history bundle.
We understand if you would like to keep the sorting per existing behavior (oldest version first). To support existing behavior, we recommend you append _sort=_lastUpdated to the HTTP GET command utilized for retrieving history.
For example: <server URL>/_history?_sort=_lastUpdated
Queries not providing consistent result count after appended with _sort operator.
Issue is now fixed and queries should provide consistent result count, with and without sort operator.
Known issues
Known Issue
Description
Using token type fields of more than 128 characters in length can result in undesired behavior on create, search, update, and delete operations.
Currently, no workaround available.
For more information about the currently known issues with the FHIR service, see Known issues: FHIR service.
MedTech service
Features and enhancements
Enhancements
Related information
New Metric Chart
Customers can now see predefined metrics graphs in the MedTech landing page, complete with alerts to ease customers' burden of monitoring their MedTech service.
Availability of Diagnostic Logs
There are now pre-defined queries with relevant logs for common issues so that customers can easily debug and diagnose issues in their MedTech service.
DICOM service
Features and enhancements
Enhancements
Related information
Modality worklists (UPS-RS) is GA.
The modality worklists (UPS-RS) service is now generally available. Learn more about the worklists service.
July 2022
FHIR service
Bug fixes
Bug fixes
Related information
(Open Source) History bundles were sorted with the oldest version first.
We've recently identified an issue with the sorting order of history bundles on FHIR® server. History bundles were sorted with the oldest version first. Per FHIR specification, the sorting of versions defaults to the oldest version last. This bug fix, addresses FHIR server behavior for sorting history bundle.
We understand if you would like to keep the sorting per existing behavior (oldest version first). To support existing behavior, we recommend you append _sort=_lastUpdated to the HTTP GET command utilized for retrieving history.
For example: <server URL>/_history?_sort=_lastUpdated
DICOM Service availability expands to new regions.
The DICOM Service is now available in the following regions: Southeast Asia, Central India, Korea Central, and Switzerland North.
Fast retrieval of individual DICOM frames
For DICOM images containing multiple frames, performance improvements have been made to enable fast retrieval of individual frames (60 KB frames as fast as 60 MS). These improved performance characteristics enable workflows such as viewing digital pathology images, which require rapid retrieval of individual frames.
June 2022
FHIR service
Bug fixes
Bug fixes
Related information
Export Job not being queued for execution.
Fixes issue with export job not being queued due to duplicate job definition caused due to reference to container URL. For more information, see #2648.
Queries not providing consistent result count after appended with the _sort operator.
Fixes the issue with the help of distinct operator to resolve inconsistency and record duplication in response. For more information, see #2680.
May 2022
FHIR service
Bug fixes
Bug fixes
Related information
Removes SQL retry on upsert
Removes retry on SQL command for upsert. The error still occurs, but data is saved correctly in success cases. For more information, see #2571.
Added handling for SqlTruncate errors
Added a check for SqlTruncate exceptions and tests. In particular, exceptions and tests will catch SqlTruncate exceptions for Decimal type based on the specified precision and scale. For more information, see #2553.
DICOM service
Features
Enhancements
Related information
DICOM service supports cross-origin resource sharing (CORS)
DICOM service now supports CORS. CORS allows you to configure settings so that applications from one domain (origin) can access resources from a different domain, known as a cross-domain request.
DICOMcast supports Private Link
DICOMcast has been updated to support Azure Health Data Services workspaces that have been configured to use Private Link.
UPS-RS supports Change and Retrieve work item
Modality worklist (UPS-RS) endpoints have been added to support Change and Retrieve operations for work items.
API version is now required as part of the URI
All REST API requests to the DICOM service must now include the API version in the URI. For more information, see API versioning for DICOM service.
Bug fixes
Bug fixes
Related information
Index the first value for DICOM tags that incorrectly specify multiple values
Attributes that are defined to have a single value but have specified multiple values will now be leniently accepted. The first value for such attributes will be indexed.
April 2022
FHIR service
Features and enhancements
Enhancements
Related information
FHIRPath Patch
FHIRPath Patch was added as a feature to both the Azure API for FHIR. This implements FHIRPath Patch as defined on the HL7 website.
Handles invalid header on versioned update
When the versioning policy is set to "versioned-update", we required that the most recent version of the resource is provided in the request's if-match header on an update. The specified version must be in ETag format. Previously, a 500 would be returned if the version was invalid or in an incorrect format. This update now returns a 400 Bad Request. For more information, see PR #2467.
Bulk import in public preview
The bulk-import feature enables importing FHIR data to the FHIR server at high throughput using the $import operation. It's designed for initial data load into the FHIR server. For more information, see Bulk-import FHIR data (Preview).
Bug fixes
Bug fixes
Related information
Adds core to resource path
Part of the path to a string resource was accidentally removed in the versioning policy. This fix adds it back in. For more information, see PR #2470.
Known issues
For more information about the currently known issues with the FHIR service, see Known issues: FHIR service.
DICOM service
Bug fixes
Bug fixes
Related information
Reduce the strictness of validation applied to incoming DICOM files
When value representation (VR) is a decimal string (DS)/ integer string (IS), fo-dicom serialization treats value as a number. Customer DICOM files could be old and contains invalid numbers. Our service blocks such file upload due to the serialization exception. For more information, see PR #1450.
Correctly parse a range of input in the content negotiation headers
Currently, WADO with Accept: multipart/related; type=application/dicom will throw an error. It will accept Accept: multipart/related; type="application/dicom", but they should be equivalent. For more information, see PR #1462.
Fixed an issue where parallel upload of images in a study could fail under certain circumstances
Handle race conditions during parallel instance inserts in the same study. For more information, see PR #1491 and PR #1496.
March 2022
Azure Health Data Services
Features
Feature
Related information
Private Link
The Private Link feature is now available. With Private Link, you can access Azure Health Data Services securely from your VNet as a first-party service without having to go through a public Domain Name System (DNS). For more information, see Configure Private Link for Azure Health Data Services.
Previously, a SQL timeout would return a 500. Now a timeout in SQL will return a FHIR OperationOutcome with a 408 status code. For more information, see PR #2497.
Duplicate resources in search with _include
Fixed issue where a single resource can be returned twice in a search that has _include. For more information, see PR #2448.
PUT creates on versioned update
Fixed issue where creates with PUT resulted in an error when the versioning policy is configured to versioned-update. For more information, see PR #2457.
Invalid header handling on versioned update
Fixed issue where invalid if-match header would result in an HTTP 500 error. Now an HTTP Bad Request is returned instead. For more information, see PR #2467.
MedTech service
Features and enhancements
Enhancements
Related information
Events
The Events feature within Health Data Services is now generally available (GA). The Events feature allows customers to receive notifications and triggers when FHIR observations are created, updated, or deleted. For more information, see Events message structure and What are events?.
Events documentation for Azure Health Data Services
Updated docs to allow for better understanding, knowledge, and help for Events as it went GA. Updated troubleshooting for ease of use for the customer.
One touch deploy button for MedTech service launch in the portal
Enables easier deployment and use of MedTech service for customers without the need to go back and forth between pages or interfaces.
Customers can define their own query tags using the Extended Query Tags feature
With Extended Query Tags feature, customers now efficiently query non-DICOM metadata for capabilities like multi-tenancy and cohorts. It's available for all customers in Azure Health Data Services.
December 2021
Azure Health Data Services
Features and enhancements
Enhancements
Related information
Quota details for support requests
We've updated the quota details for customer support requests with the latest information.
Local RBAC
We've updated the local RBAC documentation to clarify the use of the secondary tenant and the steps to disable it.
Deploy and configure Azure Health Data Services using scripts
We've started the process of providing PowerShell, CLI scripts, and ARM templates to configure app registration and role assignments. Scripts for deploying Azure Health Data Services will be available after GA.
FHIR service
Features and enhancements
Enhancements
Related information
Added Publisher to CapabilityStatement.name
You can now find the publisher in the capability statement at CapabilityStatement.name. #2319
Log FhirOperation linked to anonymous calls to Request metrics
We weren't logging operations that didn’t require authentication. We extended the ability to get FhirOperation type in RequestMetrics for anonymous calls. #2295
Bug fixes
Bug fixes
Related information
Fixed 500 error when SearchParameter Code is null
Fixed an issue with SearchParameter if it had a null value for Code, the result would be a 500. Now it will result in an InvalidResourceException like the other values do. #2343
Returned BadRequestException with valid message when input JSON body is invalid
For invalid JSON body requests, the FHIR server was returning a 500 error. Now we'll return a BadRequestException with a valid message instead of 500. #2239
Handled SQL Timeout issue
If SQL Server timed out, the PUT /resource{id} returned a 500 error. Now we handle the 500 error and return a timeout exception with an operation outcome. #2290
November 2021
FHIR service
Feature enhancements
Enhancements
Related information
Process Patient-everything links
We've expanded the Patient-everything capabilities to process patient links #2305. For more information, see Patient-everything in FHIR documentation.
Added software name and version to capability statement.
In the capability statement, the software name now distinguishes if you're using Azure API for FHIR or Azure Health Data Services. The software version will now specify which open-source release package is live in the managed service #2294. Addresses: #1778 and #2241
Compress continuation tokens
In certain instances, the continuation token was too long to be able to follow the next link in searches and would result in a 404. To resolve this, we compressed the continuation token to ensure it stays below the size limit #2279. Addresses issue #2250.
FHIR service autoscale
The FHIR service autoscale is designed to provide optimized service scalability automatically to meet customer demands when they perform data transactions in consistent or various workloads at any time. It's available in all regions where the FHIR service is supported.
Bug fixes
Bug fixes
Related information
Resolved 500 error when the date was passed with a time zone.
This fix addresses a 500 error when a date with a time zone was passed into a datetime field #2270.
Resolved issue when posting a bundle with incorrect Media Type returned a 500 error.
Previously when posting a search with a key that contains certain characters, a 500 error is returned. This fixes issue #2264 and addresses #2148.
DICOM service
Feature enhancements
Enhancements
Related information
Content-Type header now includes transfer-syntax.
This enhancement enables the user to know which transfer syntax is used in case multiple accept headers are being supplied.
October 2021
Azure Health Data Services
Feature enhancements
Enhancements
Related information
Test Data Generator tool
We've updated Azure Health Data Services GitHub samples repo to include a Test Data Generator tool using Synthea data. This tool is an improvement to the open source public test projects, based on Apache JMeter that can be deployed to Azure AKS for performance tests.
Resolved 500 error possibly caused by a malformed transaction body in a bundle POST. We've added a check that the URL is populated in the transaction bundle requests.
In this article, you learned about the features and enhancements made to Azure Health Data Services. For more information about the known issues with Azure Health Data Services, see