From e1bcde967f196e9069442734b7957b438f0144f5 Mon Sep 17 00:00:00 2001 From: awstools Date: Wed, 3 Apr 2024 18:16:20 +0000 Subject: [PATCH] feat(client-medical-imaging): SearchImageSets API now supports following enhancements - Additional support for searching on UpdatedAt and SeriesInstanceUID - Support for searching existing filters between dates/times - Support for sorting the search result by Ascending/Descending - Additional parameters returned in the response --- clients/client-medical-imaging/README.md | 23 +-- .../src/MedicalImaging.ts | 23 +-- .../src/MedicalImagingClient.ts | 23 +-- .../src/commands/GetDICOMImportJobCommand.ts | 6 + .../src/commands/SearchImageSetsCommand.ts | 14 ++ clients/client-medical-imaging/src/index.ts | 23 +-- .../src/models/models_0.ts | 147 +++++++++++++++- .../src/protocols/Aws_restJson1.ts | 9 + .../aws-models/medical-imaging.json | 161 +++++++++++++++++- 9 files changed, 361 insertions(+), 68 deletions(-) diff --git a/clients/client-medical-imaging/README.md b/clients/client-medical-imaging/README.md index 686ee92e2742d..43f04a2983a94 100644 --- a/clients/client-medical-imaging/README.md +++ b/clients/client-medical-imaging/README.md @@ -6,21 +6,20 @@ AWS SDK for JavaScript MedicalImaging Client for Node.js, Browser and React Native. -

This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA-eligible service that helps health -care providers and their medical imaging ISV partners store, transform, and apply machine learning to medical images. For -an introduction to the service, see the +

This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA eligible service +that empowers healthcare providers, life science organizations, and their software partners to store, +analyze, and share medical images in the cloud at petabyte scale. For an introduction to the service, see the + AWS HealthImaging Developer Guide .

We recommend using one of the AWS Software Development Kits (SDKs) for your programming language, as they take care of request authentication, serialization, and connection management. For more information, see Tools to build on AWS.

-

For information about using HealthImaging API actions in one of the language-specific AWS SDKs, refer to the -See Also link at the end of each section that describes an API action or data type.

The following sections list AWS HealthImaging API actions categorized according to functionality. Links are provided to actions within this Reference, along with links back to corresponding sections in the -AWS HealthImaging Developer Guide where you can view console procedures and CLI/SDK code examples.

+AWS HealthImaging Developer Guide where you can view tested code examples.

Data store actions

@@ -138,23 +137,17 @@ provided to actions within this Reference, along with links back to correspondin
  • TagResource -– See -Tagging a data store and -Tagging an image set.

    +– See Tagging a resource.

  • ListTagsForResource -– See -Tagging a data store and -Tagging an image set.

    +– See Listing tags for a resource.

  • UntagResource -– See -Tagging a data store and -Tagging an image set.

    +– See Untagging a resource.

  • diff --git a/clients/client-medical-imaging/src/MedicalImaging.ts b/clients/client-medical-imaging/src/MedicalImaging.ts index 73a04dbd1bcc7..b4ccf1468aec1 100644 --- a/clients/client-medical-imaging/src/MedicalImaging.ts +++ b/clients/client-medical-imaging/src/MedicalImaging.ts @@ -366,21 +366,20 @@ export interface MedicalImaging { } /** - *

    This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA-eligible service that helps health - * care providers and their medical imaging ISV partners store, transform, and apply machine learning to medical images. For - * an introduction to the service, see the + *

    This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA eligible service + * that empowers healthcare providers, life science organizations, and their software partners to store, + * analyze, and share medical images in the cloud at petabyte scale. For an introduction to the service, see the + * * AWS HealthImaging Developer Guide * .

    * *

    We recommend using one of the AWS Software Development Kits (SDKs) for your programming language, as * they take care of request authentication, serialization, and connection management. For more information, * see Tools to build on AWS.

    - *

    For information about using HealthImaging API actions in one of the language-specific AWS SDKs, refer to the - * See Also link at the end of each section that describes an API action or data type.

    *
    *

    The following sections list AWS HealthImaging API actions categorized according to functionality. Links are * provided to actions within this Reference, along with links back to corresponding sections in the - * AWS HealthImaging Developer Guide where you can view console procedures and CLI/SDK code examples.

    + * AWS HealthImaging Developer Guide where you can view tested code examples.

    *

    * Data store actions *

    @@ -498,23 +497,17 @@ export interface MedicalImaging { *
  • *

    * TagResource - * – See - * Tagging a data store and - * Tagging an image set.

    + * – See Tagging a resource.

    *
  • *
  • *

    * ListTagsForResource - * – See - * Tagging a data store and - * Tagging an image set.

    + * – See Listing tags for a resource.

    *
  • *
  • *

    * UntagResource - * – See - * Tagging a data store and - * Tagging an image set.

    + * – See Untagging a resource.

    *
  • * * @public diff --git a/clients/client-medical-imaging/src/MedicalImagingClient.ts b/clients/client-medical-imaging/src/MedicalImagingClient.ts index 111165c91620b..4a5dcf06af831 100644 --- a/clients/client-medical-imaging/src/MedicalImagingClient.ts +++ b/clients/client-medical-imaging/src/MedicalImagingClient.ts @@ -325,21 +325,20 @@ export type MedicalImagingClientResolvedConfigType = __SmithyResolvedConfigurati export interface MedicalImagingClientResolvedConfig extends MedicalImagingClientResolvedConfigType {} /** - *

    This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA-eligible service that helps health - * care providers and their medical imaging ISV partners store, transform, and apply machine learning to medical images. For - * an introduction to the service, see the + *

    This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA eligible service + * that empowers healthcare providers, life science organizations, and their software partners to store, + * analyze, and share medical images in the cloud at petabyte scale. For an introduction to the service, see the + * * AWS HealthImaging Developer Guide * .

    * *

    We recommend using one of the AWS Software Development Kits (SDKs) for your programming language, as * they take care of request authentication, serialization, and connection management. For more information, * see Tools to build on AWS.

    - *

    For information about using HealthImaging API actions in one of the language-specific AWS SDKs, refer to the - * See Also link at the end of each section that describes an API action or data type.

    *
    *

    The following sections list AWS HealthImaging API actions categorized according to functionality. Links are * provided to actions within this Reference, along with links back to corresponding sections in the - * AWS HealthImaging Developer Guide where you can view console procedures and CLI/SDK code examples.

    + * AWS HealthImaging Developer Guide where you can view tested code examples.

    *

    * Data store actions *

    @@ -457,23 +456,17 @@ export interface MedicalImagingClientResolvedConfig extends MedicalImagingClient *
  • *

    * TagResource - * – See - * Tagging a data store and - * Tagging an image set.

    + * – See Tagging a resource.

    *
  • *
  • *

    * ListTagsForResource - * – See - * Tagging a data store and - * Tagging an image set.

    + * – See Listing tags for a resource.

    *
  • *
  • *

    * UntagResource - * – See - * Tagging a data store and - * Tagging an image set.

    + * – See Untagging a resource.

    *
  • * * @public diff --git a/clients/client-medical-imaging/src/commands/GetDICOMImportJobCommand.ts b/clients/client-medical-imaging/src/commands/GetDICOMImportJobCommand.ts index f2fc928a05c07..571bc901345c1 100644 --- a/clients/client-medical-imaging/src/commands/GetDICOMImportJobCommand.ts +++ b/clients/client-medical-imaging/src/commands/GetDICOMImportJobCommand.ts @@ -28,6 +28,12 @@ export interface GetDICOMImportJobCommandOutput extends GetDICOMImportJobRespons /** *

    Get the import job properties to learn more about the job or job progress.

    + * + *

    The jobStatus refers to the execution of the import job. Therefore, an import job can return a jobStatus as + * COMPLETED even if validation issues are discovered during the import process. If a jobStatus returns + * as COMPLETED, we still recommend you review the output manifests written to S3, as they provide details on the success + * or failure of individual P10 object imports.

    + *
    * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-medical-imaging/src/commands/SearchImageSetsCommand.ts b/clients/client-medical-imaging/src/commands/SearchImageSetsCommand.ts index 836a87dc345ab..7dae198de803a 100644 --- a/clients/client-medical-imaging/src/commands/SearchImageSetsCommand.ts +++ b/clients/client-medical-imaging/src/commands/SearchImageSetsCommand.ts @@ -59,7 +59,9 @@ export interface SearchImageSetsCommandOutput extends SearchImageSetsResponse, _ * DICOMAccessionNumber: "STRING_VALUE", * DICOMStudyId: "STRING_VALUE", * DICOMStudyInstanceUID: "STRING_VALUE", + * DICOMSeriesInstanceUID: "STRING_VALUE", * createdAt: new Date("TIMESTAMP"), + * updatedAt: new Date("TIMESTAMP"), * DICOMStudyDateAndTime: { // DICOMStudyDateAndTime * DICOMStudyDate: "STRING_VALUE", // required * DICOMStudyTime: "STRING_VALUE", @@ -69,6 +71,10 @@ export interface SearchImageSetsCommandOutput extends SearchImageSetsResponse, _ * operator: "EQUAL" || "BETWEEN", // required * }, * ], + * sort: { // Sort + * sortOrder: "ASC" || "DESC", // required + * sortField: "updatedAt" || "createdAt" || "DICOMStudyDateAndTime", // required + * }, * }, * maxResults: Number("int"), * nextToken: "STRING_VALUE", @@ -93,11 +99,19 @@ export interface SearchImageSetsCommandOutput extends SearchImageSetsResponse, _ * // DICOMNumberOfStudyRelatedSeries: Number("int"), * // DICOMNumberOfStudyRelatedInstances: Number("int"), * // DICOMAccessionNumber: "STRING_VALUE", + * // DICOMSeriesInstanceUID: "STRING_VALUE", + * // DICOMSeriesModality: "STRING_VALUE", + * // DICOMSeriesBodyPart: "STRING_VALUE", + * // DICOMSeriesNumber: Number("int"), * // DICOMStudyDate: "STRING_VALUE", * // DICOMStudyTime: "STRING_VALUE", * // }, * // }, * // ], + * // sort: { // Sort + * // sortOrder: "ASC" || "DESC", // required + * // sortField: "updatedAt" || "createdAt" || "DICOMStudyDateAndTime", // required + * // }, * // nextToken: "STRING_VALUE", * // }; * diff --git a/clients/client-medical-imaging/src/index.ts b/clients/client-medical-imaging/src/index.ts index 3ac52429da9e5..5b28155d5ad86 100644 --- a/clients/client-medical-imaging/src/index.ts +++ b/clients/client-medical-imaging/src/index.ts @@ -1,21 +1,20 @@ // smithy-typescript generated code /* eslint-disable */ /** - *

    This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA-eligible service that helps health - * care providers and their medical imaging ISV partners store, transform, and apply machine learning to medical images. For - * an introduction to the service, see the + *

    This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA eligible service + * that empowers healthcare providers, life science organizations, and their software partners to store, + * analyze, and share medical images in the cloud at petabyte scale. For an introduction to the service, see the + * * AWS HealthImaging Developer Guide * .

    * *

    We recommend using one of the AWS Software Development Kits (SDKs) for your programming language, as * they take care of request authentication, serialization, and connection management. For more information, * see Tools to build on AWS.

    - *

    For information about using HealthImaging API actions in one of the language-specific AWS SDKs, refer to the - * See Also link at the end of each section that describes an API action or data type.

    *
    *

    The following sections list AWS HealthImaging API actions categorized according to functionality. Links are * provided to actions within this Reference, along with links back to corresponding sections in the - * AWS HealthImaging Developer Guide where you can view console procedures and CLI/SDK code examples.

    + * AWS HealthImaging Developer Guide where you can view tested code examples.

    *

    * Data store actions *

    @@ -133,23 +132,17 @@ *
  • *

    * TagResource - * – See - * Tagging a data store and - * Tagging an image set.

    + * – See Tagging a resource.

    *
  • *
  • *

    * ListTagsForResource - * – See - * Tagging a data store and - * Tagging an image set.

    + * – See Listing tags for a resource.

    *
  • *
  • *

    * UntagResource - * – See - * Tagging a data store and - * Tagging an image set.

    + * – See Untagging a resource.

    *
  • * * diff --git a/clients/client-medical-imaging/src/models/models_0.ts b/clients/client-medical-imaging/src/models/models_0.ts index fa4e4399c51d7..d365c5a22567b 100644 --- a/clients/client-medical-imaging/src/models/models_0.ts +++ b/clients/client-medical-imaging/src/models/models_0.ts @@ -1219,10 +1219,12 @@ export interface DICOMStudyDateAndTime { export type SearchByAttributeValue = | SearchByAttributeValue.DICOMAccessionNumberMember | SearchByAttributeValue.DICOMPatientIdMember + | SearchByAttributeValue.DICOMSeriesInstanceUIDMember | SearchByAttributeValue.DICOMStudyDateAndTimeMember | SearchByAttributeValue.DICOMStudyIdMember | SearchByAttributeValue.DICOMStudyInstanceUIDMember | SearchByAttributeValue.CreatedAtMember + | SearchByAttributeValue.UpdatedAtMember | SearchByAttributeValue.$UnknownMember; /** @@ -1238,7 +1240,9 @@ export namespace SearchByAttributeValue { DICOMAccessionNumber?: never; DICOMStudyId?: never; DICOMStudyInstanceUID?: never; + DICOMSeriesInstanceUID?: never; createdAt?: never; + updatedAt?: never; DICOMStudyDateAndTime?: never; $unknown?: never; } @@ -1252,7 +1256,9 @@ export namespace SearchByAttributeValue { DICOMAccessionNumber: string; DICOMStudyId?: never; DICOMStudyInstanceUID?: never; + DICOMSeriesInstanceUID?: never; createdAt?: never; + updatedAt?: never; DICOMStudyDateAndTime?: never; $unknown?: never; } @@ -1266,7 +1272,9 @@ export namespace SearchByAttributeValue { DICOMAccessionNumber?: never; DICOMStudyId: string; DICOMStudyInstanceUID?: never; + DICOMSeriesInstanceUID?: never; createdAt?: never; + updatedAt?: never; DICOMStudyDateAndTime?: never; $unknown?: never; } @@ -1280,7 +1288,25 @@ export namespace SearchByAttributeValue { DICOMAccessionNumber?: never; DICOMStudyId?: never; DICOMStudyInstanceUID: string; + DICOMSeriesInstanceUID?: never; createdAt?: never; + updatedAt?: never; + DICOMStudyDateAndTime?: never; + $unknown?: never; + } + + /** + *

    The Series Instance UID input for search.

    + * @public + */ + export interface DICOMSeriesInstanceUIDMember { + DICOMPatientId?: never; + DICOMAccessionNumber?: never; + DICOMStudyId?: never; + DICOMStudyInstanceUID?: never; + DICOMSeriesInstanceUID: string; + createdAt?: never; + updatedAt?: never; DICOMStudyDateAndTime?: never; $unknown?: never; } @@ -1294,7 +1320,25 @@ export namespace SearchByAttributeValue { DICOMAccessionNumber?: never; DICOMStudyId?: never; DICOMStudyInstanceUID?: never; + DICOMSeriesInstanceUID?: never; createdAt: Date; + updatedAt?: never; + DICOMStudyDateAndTime?: never; + $unknown?: never; + } + + /** + *

    The timestamp input for search.

    + * @public + */ + export interface UpdatedAtMember { + DICOMPatientId?: never; + DICOMAccessionNumber?: never; + DICOMStudyId?: never; + DICOMStudyInstanceUID?: never; + DICOMSeriesInstanceUID?: never; + createdAt?: never; + updatedAt: Date; DICOMStudyDateAndTime?: never; $unknown?: never; } @@ -1308,7 +1352,9 @@ export namespace SearchByAttributeValue { DICOMAccessionNumber?: never; DICOMStudyId?: never; DICOMStudyInstanceUID?: never; + DICOMSeriesInstanceUID?: never; createdAt?: never; + updatedAt?: never; DICOMStudyDateAndTime: DICOMStudyDateAndTime; $unknown?: never; } @@ -1321,7 +1367,9 @@ export namespace SearchByAttributeValue { DICOMAccessionNumber?: never; DICOMStudyId?: never; DICOMStudyInstanceUID?: never; + DICOMSeriesInstanceUID?: never; createdAt?: never; + updatedAt?: never; DICOMStudyDateAndTime?: never; $unknown: [string, any]; } @@ -1331,7 +1379,9 @@ export namespace SearchByAttributeValue { DICOMAccessionNumber: (value: string) => T; DICOMStudyId: (value: string) => T; DICOMStudyInstanceUID: (value: string) => T; + DICOMSeriesInstanceUID: (value: string) => T; createdAt: (value: Date) => T; + updatedAt: (value: Date) => T; DICOMStudyDateAndTime: (value: DICOMStudyDateAndTime) => T; _: (name: string, value: any) => T; } @@ -1341,7 +1391,9 @@ export namespace SearchByAttributeValue { if (value.DICOMAccessionNumber !== undefined) return visitor.DICOMAccessionNumber(value.DICOMAccessionNumber); if (value.DICOMStudyId !== undefined) return visitor.DICOMStudyId(value.DICOMStudyId); if (value.DICOMStudyInstanceUID !== undefined) return visitor.DICOMStudyInstanceUID(value.DICOMStudyInstanceUID); + if (value.DICOMSeriesInstanceUID !== undefined) return visitor.DICOMSeriesInstanceUID(value.DICOMSeriesInstanceUID); if (value.createdAt !== undefined) return visitor.createdAt(value.createdAt); + if (value.updatedAt !== undefined) return visitor.updatedAt(value.updatedAt); if (value.DICOMStudyDateAndTime !== undefined) return visitor.DICOMStudyDateAndTime(value.DICOMStudyDateAndTime); return visitor._(value.$unknown[0], value.$unknown[1]); }; @@ -1365,6 +1417,53 @@ export interface SearchFilter { operator: Operator | undefined; } +/** + * @public + * @enum + */ +export const SortField = { + DICOMStudyDateAndTime: "DICOMStudyDateAndTime", + createdAt: "createdAt", + updatedAt: "updatedAt", +} as const; + +/** + * @public + */ +export type SortField = (typeof SortField)[keyof typeof SortField]; + +/** + * @public + * @enum + */ +export const SortOrder = { + ASC: "ASC", + DESC: "DESC", +} as const; + +/** + * @public + */ +export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]; + +/** + *

    Sort search results.

    + * @public + */ +export interface Sort { + /** + *

    The sort order for search criteria.

    + * @public + */ + sortOrder: SortOrder | undefined; + + /** + *

    The sort field for search criteria.

    + * @public + */ + sortField: SortField | undefined; +} + /** *

    The search criteria.

    * @public @@ -1375,6 +1474,12 @@ export interface SearchCriteria { * @public */ filters?: SearchFilter[]; + + /** + *

    The sort input for search criteria.

    + * @public + */ + sort?: Sort; } /** @@ -1438,19 +1543,19 @@ export interface DICOMTags { DICOMPatientSex?: string; /** - *

    The DICOM provided identifier for studyInstanceUid.>

    + *

    The DICOM provided identifier for the Study Instance UID.

    * @public */ DICOMStudyInstanceUID?: string; /** - *

    The DICOM provided studyId.

    + *

    The DICOM provided identifier for the Study ID.

    * @public */ DICOMStudyId?: string; /** - *

    The description of the study.

    + *

    The DICOM provided Study Description.

    * @public */ DICOMStudyDescription?: string; @@ -1473,6 +1578,30 @@ export interface DICOMTags { */ DICOMAccessionNumber?: string; + /** + *

    The DICOM provided identifier for the Series Instance UID.

    + * @public + */ + DICOMSeriesInstanceUID?: string; + + /** + *

    The DICOM provided identifier for the series Modality.

    + * @public + */ + DICOMSeriesModality?: string; + + /** + *

    The DICOM provided identifier for the series Body Part Examined.

    + * @public + */ + DICOMSeriesBodyPart?: string; + + /** + *

    The DICOM provided identifier for the Series Number.

    + * @public + */ + DICOMSeriesNumber?: number; + /** *

    The study date.

    * @public @@ -1533,6 +1662,12 @@ export interface SearchImageSetsResponse { */ imageSetsMetadataSummaries: ImageSetsMetadataSummary[] | undefined; + /** + *

    The sort order for image set search results.

    + * @public + */ + sort?: Sort; + /** *

    The token for pagination results.

    * @public @@ -1823,7 +1958,9 @@ export const SearchByAttributeValueFilterSensitiveLog = (obj: SearchByAttributeV if (obj.DICOMAccessionNumber !== undefined) return { DICOMAccessionNumber: SENSITIVE_STRING }; if (obj.DICOMStudyId !== undefined) return { DICOMStudyId: SENSITIVE_STRING }; if (obj.DICOMStudyInstanceUID !== undefined) return { DICOMStudyInstanceUID: SENSITIVE_STRING }; + if (obj.DICOMSeriesInstanceUID !== undefined) return { DICOMSeriesInstanceUID: SENSITIVE_STRING }; if (obj.createdAt !== undefined) return { createdAt: obj.createdAt }; + if (obj.updatedAt !== undefined) return { updatedAt: obj.updatedAt }; if (obj.DICOMStudyDateAndTime !== undefined) return { DICOMStudyDateAndTime: DICOMStudyDateAndTimeFilterSensitiveLog(obj.DICOMStudyDateAndTime) }; if (obj.$unknown !== undefined) return { [obj.$unknown[0]]: "UNKNOWN" }; @@ -1866,6 +2003,10 @@ export const DICOMTagsFilterSensitiveLog = (obj: DICOMTags): any => ({ ...(obj.DICOMStudyId && { DICOMStudyId: SENSITIVE_STRING }), ...(obj.DICOMStudyDescription && { DICOMStudyDescription: SENSITIVE_STRING }), ...(obj.DICOMAccessionNumber && { DICOMAccessionNumber: SENSITIVE_STRING }), + ...(obj.DICOMSeriesInstanceUID && { DICOMSeriesInstanceUID: SENSITIVE_STRING }), + ...(obj.DICOMSeriesModality && { DICOMSeriesModality: SENSITIVE_STRING }), + ...(obj.DICOMSeriesBodyPart && { DICOMSeriesBodyPart: SENSITIVE_STRING }), + ...(obj.DICOMSeriesNumber && { DICOMSeriesNumber: SENSITIVE_STRING }), ...(obj.DICOMStudyDate && { DICOMStudyDate: SENSITIVE_STRING }), ...(obj.DICOMStudyTime && { DICOMStudyTime: SENSITIVE_STRING }), }); diff --git a/clients/client-medical-imaging/src/protocols/Aws_restJson1.ts b/clients/client-medical-imaging/src/protocols/Aws_restJson1.ts index f996f6f6bf5d6..df8de67411c57 100644 --- a/clients/client-medical-imaging/src/protocols/Aws_restJson1.ts +++ b/clients/client-medical-imaging/src/protocols/Aws_restJson1.ts @@ -91,6 +91,7 @@ import { SearchCriteria, SearchFilter, ServiceQuotaExceededException, + Sort, ThrottlingException, ValidationException, } from "../models/models_0"; @@ -858,6 +859,7 @@ export const de_SearchImageSetsCommand = async ( const doc = take(data, { imageSetsMetadataSummaries: (_) => de_ImageSetsMetadataSummaries(_, context), nextToken: __expectString, + sort: _json, }); Object.assign(contents, doc); return contents; @@ -1159,10 +1161,12 @@ const se_SearchByAttributeValue = (input: SearchByAttributeValue, context: __Ser return SearchByAttributeValue.visit(input, { DICOMAccessionNumber: (value) => ({ DICOMAccessionNumber: value }), DICOMPatientId: (value) => ({ DICOMPatientId: value }), + DICOMSeriesInstanceUID: (value) => ({ DICOMSeriesInstanceUID: value }), DICOMStudyDateAndTime: (value) => ({ DICOMStudyDateAndTime: _json(value) }), DICOMStudyId: (value) => ({ DICOMStudyId: value }), DICOMStudyInstanceUID: (value) => ({ DICOMStudyInstanceUID: value }), createdAt: (value) => ({ createdAt: Math.round(value.getTime() / 1000) }), + updatedAt: (value) => ({ updatedAt: Math.round(value.getTime() / 1000) }), _: (name, value) => ({ name: value } as any), }); }; @@ -1184,6 +1188,7 @@ const se_SearchByAttributeValues = (input: SearchByAttributeValue[], context: __ const se_SearchCriteria = (input: SearchCriteria, context: __SerdeContext): any => { return take(input, { filters: (_) => se_SearchFilters(_, context), + sort: _json, }); }; @@ -1208,6 +1213,8 @@ const se_SearchFilters = (input: SearchFilter[], context: __SerdeContext): any = }); }; +// se_Sort omitted. + // se_TagMap omitted. /** @@ -1385,6 +1392,8 @@ const de_ImageSetsMetadataSummary = (output: any, context: __SerdeContext): Imag }) as any; }; +// de_Sort omitted. + // de_TagMap omitted. const deserializeMetadata = (output: __HttpResponse): __ResponseMetadata => ({ diff --git a/codegen/sdk-codegen/aws-models/medical-imaging.json b/codegen/sdk-codegen/aws-models/medical-imaging.json index 902832959e8cc..efd4932b56509 100644 --- a/codegen/sdk-codegen/aws-models/medical-imaging.json +++ b/codegen/sdk-codegen/aws-models/medical-imaging.json @@ -80,7 +80,7 @@ } }, "aws.protocols#restJson1": {}, - "smithy.api#documentation": "

    This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA-eligible service that helps health\n care providers and their medical imaging ISV partners store, transform, and apply machine learning to medical images. For\n an introduction to the service, see the \n AWS HealthImaging Developer Guide\n .

    \n \n

    We recommend using one of the AWS Software Development Kits (SDKs) for your programming language, as\n they take care of request authentication, serialization, and connection management. For more information,\n see Tools to build on AWS.

    \n

    For information about using HealthImaging API actions in one of the language-specific AWS SDKs, refer to the\n See Also link at the end of each section that describes an API action or data type.

    \n
    \n

    The following sections list AWS HealthImaging API actions categorized according to functionality. Links are \n provided to actions within this Reference, along with links back to corresponding sections in the \n AWS HealthImaging Developer Guide where you can view console procedures and CLI/SDK code examples.

    \n

    \n Data store actions\n

    \n \n

    \n Import job actions\n

    \n \n

    \n Image set access actions\n

    \n \n

    \n Image set modification actions\n

    \n \n

    \n Tagging actions\n

    \n ", + "smithy.api#documentation": "

    This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA eligible service\n that empowers healthcare providers, life science organizations, and their software partners to store,\n analyze, and share medical images in the cloud at petabyte scale. For an introduction to the service, see the\n \n AWS HealthImaging Developer Guide\n .

    \n \n

    We recommend using one of the AWS Software Development Kits (SDKs) for your programming language, as\n they take care of request authentication, serialization, and connection management. For more information,\n see Tools to build on AWS.

    \n
    \n

    The following sections list AWS HealthImaging API actions categorized according to functionality. Links are \n provided to actions within this Reference, along with links back to corresponding sections in the \n AWS HealthImaging Developer Guide where you can view tested code examples.

    \n

    \n Data store actions\n

    \n \n

    \n Import job actions\n

    \n \n

    \n Image set access actions\n

    \n \n

    \n Image set modification actions\n

    \n \n

    \n Tagging actions\n

    \n ", "smithy.api#title": "AWS Health Imaging", "smithy.rules#endpointRuleSet": { "version": "1.0", @@ -1376,6 +1376,47 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.medicalimaging#DICOMSeriesBodyPart": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 64 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.medicalimaging#DICOMSeriesInstanceUID": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 64 + }, + "smithy.api#pattern": "^(?:[1-9][0-9]*|0)(\\.(?:[1-9][0-9]*|0))*$", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.medicalimaging#DICOMSeriesModality": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 16 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.medicalimaging#DICOMSeriesNumber": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": -2147483648, + "max": 2147483647 + }, + "smithy.api#sensitive": {} + } + }, "com.amazonaws.medicalimaging#DICOMStudyDate": { "type": "string", "traits": { @@ -1478,19 +1519,19 @@ "DICOMStudyInstanceUID": { "target": "com.amazonaws.medicalimaging#DICOMStudyInstanceUID", "traits": { - "smithy.api#documentation": "

    The DICOM provided identifier for studyInstanceUid.>

    " + "smithy.api#documentation": "

    The DICOM provided identifier for the Study Instance UID.

    " } }, "DICOMStudyId": { "target": "com.amazonaws.medicalimaging#DICOMStudyId", "traits": { - "smithy.api#documentation": "

    The DICOM provided studyId.

    " + "smithy.api#documentation": "

    The DICOM provided identifier for the Study ID.

    " } }, "DICOMStudyDescription": { "target": "com.amazonaws.medicalimaging#DICOMStudyDescription", "traits": { - "smithy.api#documentation": "

    The description of the study.

    " + "smithy.api#documentation": "

    The DICOM provided Study Description.

    " } }, "DICOMNumberOfStudyRelatedSeries": { @@ -1513,6 +1554,30 @@ "smithy.api#documentation": "

    The accession number for the DICOM study.

    " } }, + "DICOMSeriesInstanceUID": { + "target": "com.amazonaws.medicalimaging#DICOMSeriesInstanceUID", + "traits": { + "smithy.api#documentation": "

    The DICOM provided identifier for the Series Instance UID.

    " + } + }, + "DICOMSeriesModality": { + "target": "com.amazonaws.medicalimaging#DICOMSeriesModality", + "traits": { + "smithy.api#documentation": "

    The DICOM provided identifier for the series Modality.

    " + } + }, + "DICOMSeriesBodyPart": { + "target": "com.amazonaws.medicalimaging#DICOMSeriesBodyPart", + "traits": { + "smithy.api#documentation": "

    The DICOM provided identifier for the series Body Part Examined.

    " + } + }, + "DICOMSeriesNumber": { + "target": "com.amazonaws.medicalimaging#DICOMSeriesNumber", + "traits": { + "smithy.api#documentation": "

    The DICOM provided identifier for the Series Number.

    " + } + }, "DICOMStudyDate": { "target": "com.amazonaws.medicalimaging#DICOMStudyDate", "traits": { @@ -1941,7 +2006,7 @@ } ], "traits": { - "smithy.api#documentation": "

    Get the import job properties to learn more about the job or job progress.

    ", + "smithy.api#documentation": "

    Get the import job properties to learn more about the job or job progress.

    \n \n

    The jobStatus refers to the execution of the import job. Therefore, an import job can return a jobStatus as\n COMPLETED even if validation issues are discovered during the import process. If a jobStatus returns\n as COMPLETED, we still recommend you review the output manifests written to S3, as they provide details on the success\n or failure of individual P10 object imports.

    \n
    ", "smithy.api#http": { "method": "GET", "uri": "/getDICOMImportJob/datastore/{datastoreId}/job/{jobId}" @@ -3216,12 +3281,24 @@ "smithy.api#documentation": "

    The DICOM study instance UID for search.

    " } }, + "DICOMSeriesInstanceUID": { + "target": "com.amazonaws.medicalimaging#DICOMSeriesInstanceUID", + "traits": { + "smithy.api#documentation": "

    The Series Instance UID input for search.

    " + } + }, "createdAt": { "target": "com.amazonaws.medicalimaging#Date", "traits": { "smithy.api#documentation": "

    The created at time of the image set provided for search.

    " } }, + "updatedAt": { + "target": "com.amazonaws.medicalimaging#Date", + "traits": { + "smithy.api#documentation": "

    The timestamp input for search.

    " + } + }, "DICOMStudyDateAndTime": { "target": "com.amazonaws.medicalimaging#DICOMStudyDateAndTime", "traits": { @@ -3251,6 +3328,12 @@ "max": 2 } } + }, + "sort": { + "target": "com.amazonaws.medicalimaging#Sort", + "traits": { + "smithy.api#documentation": "

    The sort input for search criteria.

    " + } } }, "traits": { @@ -3386,6 +3469,12 @@ "smithy.api#required": {} } }, + "sort": { + "target": "com.amazonaws.medicalimaging#Sort", + "traits": { + "smithy.api#documentation": "

    The sort order for image set search results.

    " + } + }, "nextToken": { "target": "com.amazonaws.medicalimaging#NextToken", "traits": { @@ -3413,6 +3502,68 @@ "smithy.api#httpError": 402 } }, + "com.amazonaws.medicalimaging#Sort": { + "type": "structure", + "members": { + "sortOrder": { + "target": "com.amazonaws.medicalimaging#SortOrder", + "traits": { + "smithy.api#documentation": "

    The sort order for search criteria.

    ", + "smithy.api#required": {} + } + }, + "sortField": { + "target": "com.amazonaws.medicalimaging#SortField", + "traits": { + "smithy.api#documentation": "

    The sort field for search criteria.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

    Sort search results.

    " + } + }, + "com.amazonaws.medicalimaging#SortField": { + "type": "enum", + "members": { + "updatedAt": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "updatedAt" + } + }, + "createdAt": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "createdAt" + } + }, + "DICOMStudyDateAndTime": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DICOMStudyDateAndTime" + } + } + } + }, + "com.amazonaws.medicalimaging#SortOrder": { + "type": "enum", + "members": { + "ASC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ASC" + } + }, + "DESC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DESC" + } + } + } + }, "com.amazonaws.medicalimaging#StartDICOMImportJob": { "type": "operation", "input": {