Listing image set versions - AWS HealthImaging

Listing image set versions

You use the ListImageSetVersions action to list version history for an image set in HealthImaging. The following menus provide a procedure for the AWS Management Console and code examples for the AWS CLI and AWS SDKs. For more information, see ListImageSetVersions in the AWS HealthImaging API Reference.

Note

AWS HealthImaging records every change made to an image set. Updating image set metadata creates a new version in the image set history. For more information, see Updating image set metadata.

To list versions for an image set

Choose a menu based on your access preference to AWS HealthImaging.

  1. Open the HealthImaging console Data stores page.

  2. Choose a data store.

    The Data store details page opens and the Image sets tab is selected by default.

  3. Choose an image set.

    The Image set details page opens.

    The image set Version displays under the Image set details section.

CLI
AWS CLI

To list image set versions

The following list-image-set-versions code example lists the version history for an image set.

aws medical-imaging list-image-set-versions \ --datastore-id 12345678901234567890123456789012 \ --image-set-id ea92b0d8838c72a3f25d00d13616f87e

Output:

{ "imageSetPropertiesList": [ { "ImageSetWorkflowStatus": "UPDATED", "versionId": "4", "updatedAt": 1680029436.304, "imageSetId": "ea92b0d8838c72a3f25d00d13616f87e", "imageSetState": "ACTIVE", "createdAt": 1680027126.436 }, { "ImageSetWorkflowStatus": "UPDATED", "versionId": "3", "updatedAt": 1680029163.325, "imageSetId": "ea92b0d8838c72a3f25d00d13616f87e", "imageSetState": "ACTIVE", "createdAt": 1680027126.436 }, { "ImageSetWorkflowStatus": "COPY_FAILED", "versionId": "2", "updatedAt": 1680027455.944, "imageSetId": "ea92b0d8838c72a3f25d00d13616f87e", "imageSetState": "ACTIVE", "message": "INVALID_REQUEST: Series of SourceImageSet and DestinationImageSet don't match.", "createdAt": 1680027126.436 }, { "imageSetId": "ea92b0d8838c72a3f25d00d13616f87e", "imageSetState": "ACTIVE", "versionId": "1", "ImageSetWorkflowStatus": "COPIED", "createdAt": 1680027126.436 } ] }

For more information, see Listing image set versions in the AWS HealthImaging Developer Guide.

Java
SDK for Java 2.x
public static List<ImageSetProperties> listMedicalImageSetVersions(MedicalImagingClient medicalImagingClient, String datastoreId, String imagesetId) { try { ListImageSetVersionsRequest getImageSetRequest = ListImageSetVersionsRequest.builder() .datastoreId(datastoreId) .imageSetId(imagesetId) .build(); ListImageSetVersionsIterable responses = medicalImagingClient .listImageSetVersionsPaginator(getImageSetRequest); List<ImageSetProperties> imageSetProperties = new ArrayList<>(); responses.stream().forEach(response -> imageSetProperties.addAll(response.imageSetPropertiesList())); return imageSetProperties; } catch (MedicalImagingException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } return null; }
Note

There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository.

JavaScript
SDK for JavaScript (v3)
import { paginateListImageSetVersions } from "@aws-sdk/client-medical-imaging"; import { medicalImagingClient } from "../libs/medicalImagingClient.js"; /** * @param {string} datastoreId - The ID of the data store. * @param {string} imageSetId - The ID of the image set. */ export const listImageSetVersions = async ( datastoreId = "xxxxxxxxxxxx", imageSetId = "xxxxxxxxxxxx" ) => { const paginatorConfig = { client: medicalImagingClient, pageSize: 50, }; const commandParams = { datastoreId, imageSetId }; const paginator = paginateListImageSetVersions( paginatorConfig, commandParams ); let imageSetPropertiesList = []; for await (const page of paginator) { // Each page contains a list of `jobSummaries`. The list is truncated if is larger than `pageSize`. imageSetPropertiesList.push(...page["imageSetPropertiesList"]); console.log(page); } // { // '$metadata': { // httpStatusCode: 200, // requestId: '74590b37-a002-4827-83f2-3c590279c742', // extendedRequestId: undefined, // cfId: undefined, // attempts: 1, // totalRetryDelay: 0 // }, // imageSetPropertiesList: [ // { // ImageSetWorkflowStatus: 'CREATED', // createdAt: 2023-09-22T14:49:26.427Z, // imageSetId: 'xxxxxxxxxxxxxxxxxxxxxxx', // imageSetState: 'ACTIVE', // versionId: '1' // }] // } return imageSetPropertiesList; };
Note

There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository.

Python
SDK for Python (Boto3)
class MedicalImagingWrapper: def __init__(self, health_imaging_client): self.health_imaging_client = health_imaging_client def list_image_set_versions(self, datastore_id, image_set_id): """ List the image set versions. :param datastore_id: The ID of the data store. :param image_set_id: The ID of the image set. :return: The list of image set versions. """ try: paginator = self.health_imaging_client.get_paginator( "list_image_set_versions" ) page_iterator = paginator.paginate( imageSetId=image_set_id, datastoreId=datastore_id ) image_set_properties_list = [] for page in page_iterator: image_set_properties_list.extend(page["imageSetPropertiesList"]) except ClientError as err: logger.error( "Couldn't list image set versions. Here's why: %s: %s", err.response["Error"]["Code"], err.response["Error"]["Message"], ) raise else: return image_set_properties_list

The following code instantiates the MedicalImagingWrapper object.

client = boto3.client("medical-imaging") medical_imaging_wrapper = MedicalImagingWrapper(client)
Note

There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository.