I am not querying modalities but Orthanc itself. For that, I have added Orthanc as DICOM modality in Orthanc.config file.
That allows to query as shown in my screenshot - and that is working as expected.
The result allows me to GET the tags and meta data of the instance with …/answers/0/content
but I need to extract the ID of the instance with which I can then get the preview - and I have no clue how to get it from the query result.
So, here is what I am doing in detail:
do the query on instance level, query for instances of patient named "Potter*:
$ curl --request POST \
--url http://localhost:8042/modalities/local/query \
--data '{"Level":"Instance","Query": {"PatientID":"","StudyDescription":"","PatientName":"Potter*"}}'
this delivers
{
“ID” : “1B249CFC-1E71-4661-9A18-0E38D2D42C18”,
“Path” : “/queries/1B249CFC-1E71-4661-9A18-0E38D2D42C18”
}
The ID is not an instance ID but the ID of the query result.
I then use the “Path” from above in order to get the query results:
$ curl --request GET \
--url http://localhost:8042/queries/1B249CFC-1E71-4661-9A18-0E38D2D42C18
this delivers
[ “answers”, “level”, “modality”, “query”, “retrieve” ]
I have tried them all
/retrieve delivers nothing
/answers delivers an array like [“0”, “1”, “2”,…“389”]
/answers/0/ delivers [ “content”, “retrieve” ]
/answers/0/retrieve delivers nothing
/answers/0/content delivers this here
{
“0002,0003” : {
“Name” : “MediaStorageSOPInstanceUID”,
“Type” : “String”,
“Value” : “1.2.392.200036.9125.0.19950720112207”
},
“0008,0005” : {
“Name” : “SpecificCharacterSet”,
“Type” : “String”,
“Value” : “ISO_IR 192”
},
“0008,0018” : {
“Name” : “SOPInstanceUID”,
“Type” : “String”,
“Value” : “1.2.392.200036.9125.0.19950720112207”
},
“0008,0050” : {
“Name” : “AccessionNumber”,
“Type” : “String”,
“Value” : “127”
},
“0008,0052” : {
“Name” : “QueryRetrieveLevel”,
“Type” : “String”,
“Value” : “INSTANCE”
},
“0008,1030” : {
“Name” : “StudyDescription”,
“Type” : “String”,
“Value” : “”
},
“0010,0010” : {
“Name” : “PatientName”,
“Type” : “String”,
“Value” : “POTTER^HARRY”
},
“0010,0020” : {
“Name” : “PatientID”,
“Type” : “String”,
“Value” : “000001”
},
“0020,000d” : {
“Name” : “StudyInstanceUID”,
“Type” : “String”,
“Value” : “127”
},
“0020,000e” : {
“Name” : “SeriesInstanceUID”,
“Type” : “String”,
“Value” : “1.2.392.200036.9125.0.199302241758.16”
}
}
but I don’t see how I can GET the instance ID that will allow me to load the preview then with
$ curl --request GET \
--url http://localhost:8042/instances/[ID]