Azure Healthcare API /Patient/$export not working
I have 4.0.264 version of FHIR server installed. <FhirUrl>/Patient/$export is NOT working.
However <FhirUrl>/$export and <FhirUrl>/Group/<groupId>/$export IS working as expected.
Any suggestions on how I can resolve this?
Thank you.
Azure Health Data Services
-
JananiRamesh-MSFT 27,826 Reputation points
2024-10-22T06:38:15.2666667+00:00 @Lakshmi Thanks for reaching out. When you say <FhirUrl>/Patient/$export is NOT working do you see any error message?
-
Lakshmi 0 Reputation points
2024-10-22T12:49:13.3266667+00:00 - @JananiRamesh-MSFT The http response code is a 202 with a location URL to poll. The polling URL continues to return a 202. There is no 200 response code. However, when I call $export, instead of Patient/$export, the response is as expected.
-
JananiRamesh-MSFT 27,826 Reputation points
2024-10-22T14:04:14.65+00:00 @Lakshmi Thanks for getting back, Can you please refer to my private comment and share the details to assist you further
-
JananiRamesh-MSFT 27,826 Reputation points
2024-10-24T23:20:26.12+00:00 @Lakshmi Thanks for sharing the requested details, please find the below details as per the analysis in our backend logs
the regular $export requests are working as expected, But the Patient/$export requests work a little different then the regular $export.
Patient/$export will always return HTTP202, and as part of the request it'll return a
Content-Location
header. TheContent-Location
header is a link for the url with the status of the job request.Why this behavior? This is our implementation following the bulk data spec from HL7, as mentioned here: HL7.FHIR.UV.BULKDATA\Bulk Data IG Home Page - FHIR v4.0.1
for
GET $export/<id>
requests, our service returns the status of the job as expected. The status code can vary from HTTP200, HTTP202, etc.for
GET Patient/$export
requests, the status will always be HTTP202, and as part of the request a headerContent-Location
will be returned, containing the URL for status of that specific$export
request.After an $export (Bulk Data) has started, you can get the status request by polling the status URL provided in the Content-Location header.
below is the list of export jobs and they are completing with status 200.
from this list I see that you're querying the status of export, getting a few HTTP202 (while the job is processing), then finally getting a HTTP200.
do let me know incase of further queries, I would be happy to assist you.
-
Lakshmi 0 Reputation points
2024-10-25T13:39:21.3533333+00:00 I understand on calling {fhirurl}}/Patient/$export, the expected response code is 202. However on polling the status URL, after a few minutes 200 is expected. I never get a 200 back, I continue to get a 202.
-
JananiRamesh-MSFT 27,826 Reputation points
2024-10-25T14:09:46.35+00:00 @Lakshmi Thanks for getting back, please refer the above shared logs i see it is getting 200 response code and data fetched is for 24/10.
-
Lakshmi 0 Reputation points
2024-10-25T15:19:15.7066667+00:00 Maybe I am missing something, aren't the above logs referring to the requests after calling $export , not Patient/$export ?
-
Lakshmi 0 Reputation points
2024-10-25T15:25:14.7066667+00:00 - @JananiRamesh-MSFT The 200 responses that you have above are for <fhirURL>/$export , NOT for Patient/$export .
-
JananiRamesh-MSFT 27,826 Reputation points
2024-10-25T16:04:58.29+00:00 @Lakshmi please see the below,
I had verified for the job id 3758 its still in progress could you please confirm if it is a bigger job?
-
Lakshmi 0 Reputation points
2024-10-25T17:09:26.5966667+00:00 It is not. It should have completed in a few minutes
-
JananiRamesh-MSFT 27,826 Reputation points
2024-10-28T08:17:39.51+00:00 Lakshmi Thanks for your patience, After going through the logs i see 3758 job created a child job 3759 and that child job completed. This need Product group team involvement to investigate further.
I would suggest you to open a support ticket to troubleshoot this issue further. If you don't have a support plan, please let me know
Sign in to comment