diff --git a/clients/client-sagemaker/README.md b/clients/client-sagemaker/README.md index ca20a0d860e3d..4b537e4c60654 100644 --- a/clients/client-sagemaker/README.md +++ b/clients/client-sagemaker/README.md @@ -2049,6 +2049,14 @@ ListProjects [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sagemaker/classes/listprojectscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sagemaker/interfaces/listprojectscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sagemaker/interfaces/listprojectscommandoutput.html) + +
+ +ListResourceCatalogs + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sagemaker/classes/listresourcecatalogscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sagemaker/interfaces/listresourcecatalogscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sagemaker/interfaces/listresourcecatalogscommandoutput.html) +
diff --git a/clients/client-sagemaker/src/SageMaker.ts b/clients/client-sagemaker/src/SageMaker.ts index e2702de389fd3..4fd223c5771c3 100644 --- a/clients/client-sagemaker/src/SageMaker.ts +++ b/clients/client-sagemaker/src/SageMaker.ts @@ -1051,6 +1051,11 @@ import { ListProjectsCommandInput, ListProjectsCommandOutput, } from "./commands/ListProjectsCommand"; +import { + ListResourceCatalogsCommand, + ListResourceCatalogsCommandInput, + ListResourceCatalogsCommandOutput, +} from "./commands/ListResourceCatalogsCommand"; import { ListSpacesCommand, ListSpacesCommandInput, ListSpacesCommandOutput } from "./commands/ListSpacesCommand"; import { ListStageDevicesCommand, @@ -1616,6 +1621,7 @@ const commands = { ListPipelinesCommand, ListProcessingJobsCommand, ListProjectsCommand, + ListResourceCatalogsCommand, ListSpacesCommand, ListStageDevicesCommand, ListStudioLifecycleConfigsCommand, @@ -5261,6 +5267,23 @@ export interface SageMaker { cb: (err: any, data?: ListProjectsCommandOutput) => void ): void; + /** + * @see {@link ListResourceCatalogsCommand} + */ + listResourceCatalogs( + args: ListResourceCatalogsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listResourceCatalogs( + args: ListResourceCatalogsCommandInput, + cb: (err: any, data?: ListResourceCatalogsCommandOutput) => void + ): void; + listResourceCatalogs( + args: ListResourceCatalogsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListResourceCatalogsCommandOutput) => void + ): void; + /** * @see {@link ListSpacesCommand} */ diff --git a/clients/client-sagemaker/src/SageMakerClient.ts b/clients/client-sagemaker/src/SageMakerClient.ts index 38c7415d354db..c4bcbd7b52483 100644 --- a/clients/client-sagemaker/src/SageMakerClient.ts +++ b/clients/client-sagemaker/src/SageMakerClient.ts @@ -638,6 +638,10 @@ import { import { ListPipelinesCommandInput, ListPipelinesCommandOutput } from "./commands/ListPipelinesCommand"; import { ListProcessingJobsCommandInput, ListProcessingJobsCommandOutput } from "./commands/ListProcessingJobsCommand"; import { ListProjectsCommandInput, ListProjectsCommandOutput } from "./commands/ListProjectsCommand"; +import { + ListResourceCatalogsCommandInput, + ListResourceCatalogsCommandOutput, +} from "./commands/ListResourceCatalogsCommand"; import { ListSpacesCommandInput, ListSpacesCommandOutput } from "./commands/ListSpacesCommand"; import { ListStageDevicesCommandInput, ListStageDevicesCommandOutput } from "./commands/ListStageDevicesCommand"; import { @@ -1050,6 +1054,7 @@ export type ServiceInputTypes = | ListPipelinesCommandInput | ListProcessingJobsCommandInput | ListProjectsCommandInput + | ListResourceCatalogsCommandInput | ListSpacesCommandInput | ListStageDevicesCommandInput | ListStudioLifecycleConfigsCommandInput @@ -1357,6 +1362,7 @@ export type ServiceOutputTypes = | ListPipelinesCommandOutput | ListProcessingJobsCommandOutput | ListProjectsCommandOutput + | ListResourceCatalogsCommandOutput | ListSpacesCommandOutput | ListStageDevicesCommandOutput | ListStudioLifecycleConfigsCommandOutput diff --git a/clients/client-sagemaker/src/commands/CreateFeatureGroupCommand.ts b/clients/client-sagemaker/src/commands/CreateFeatureGroupCommand.ts index 9cdcda4446909..9b7007c31aba2 100644 --- a/clients/client-sagemaker/src/commands/CreateFeatureGroupCommand.ts +++ b/clients/client-sagemaker/src/commands/CreateFeatureGroupCommand.ts @@ -43,8 +43,9 @@ export interface CreateFeatureGroupCommandOutput extends CreateFeatureGroupRespo * FeatureGroup. A FeatureGroup definition is composed of a list of * Features, a RecordIdentifierFeatureName, an * EventTimeFeatureName and configurations for its OnlineStore - * and OfflineStore. Check Amazon Web Services service quotas to see - * the FeatureGroups quota for your Amazon Web Services account.

+ * and OfflineStore. Check Amazon Web Services service + * quotas to see the FeatureGroups quota for your Amazon Web Services + * account.

* *

You must include at least one of OnlineStoreConfig and * OfflineStoreConfig to create a FeatureGroup.

diff --git a/clients/client-sagemaker/src/commands/DeleteFeatureGroupCommand.ts b/clients/client-sagemaker/src/commands/DeleteFeatureGroupCommand.ts index 02840cedff78e..97a50995e00b5 100644 --- a/clients/client-sagemaker/src/commands/DeleteFeatureGroupCommand.ts +++ b/clients/client-sagemaker/src/commands/DeleteFeatureGroupCommand.ts @@ -39,9 +39,8 @@ export interface DeleteFeatureGroupCommandOutput extends __MetadataBearer {} *

Delete the FeatureGroup and any data that was written to the * OnlineStore of the FeatureGroup. Data cannot be accessed from * the OnlineStore immediately after DeleteFeatureGroup is called.

- *

Data written into the OfflineStore will not be deleted. The Amazon Web Services Glue - * database and tables that are automatically created for your OfflineStore are - * not deleted.

+ *

Data written into the OfflineStore will not be deleted. The Amazon Web Services Glue database and tables that are automatically created for your + * OfflineStore are not deleted.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-sagemaker/src/commands/DeleteHubContentCommand.ts b/clients/client-sagemaker/src/commands/DeleteHubContentCommand.ts index 26688afadda64..9d3aacbf94dca 100644 --- a/clients/client-sagemaker/src/commands/DeleteHubContentCommand.ts +++ b/clients/client-sagemaker/src/commands/DeleteHubContentCommand.ts @@ -13,7 +13,7 @@ import { SerdeContext as __SerdeContext, } from "@smithy/types"; -import { DeleteHubContentRequest } from "../models/models_1"; +import { DeleteHubContentRequest } from "../models/models_2"; import { de_DeleteHubContentCommand, se_DeleteHubContentCommand } from "../protocols/Aws_json1_1"; import { SageMakerClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../SageMakerClient"; diff --git a/clients/client-sagemaker/src/commands/GetSagemakerServicecatalogPortfolioStatusCommand.ts b/clients/client-sagemaker/src/commands/GetSagemakerServicecatalogPortfolioStatusCommand.ts index 395b2b59082d2..35a194606b97f 100644 --- a/clients/client-sagemaker/src/commands/GetSagemakerServicecatalogPortfolioStatusCommand.ts +++ b/clients/client-sagemaker/src/commands/GetSagemakerServicecatalogPortfolioStatusCommand.ts @@ -13,10 +13,8 @@ import { SerdeContext as __SerdeContext, } from "@smithy/types"; -import { - GetSagemakerServicecatalogPortfolioStatusInput, - GetSagemakerServicecatalogPortfolioStatusOutput, -} from "../models/models_2"; +import { GetSagemakerServicecatalogPortfolioStatusInput } from "../models/models_2"; +import { GetSagemakerServicecatalogPortfolioStatusOutput } from "../models/models_3"; import { de_GetSagemakerServicecatalogPortfolioStatusCommand, se_GetSagemakerServicecatalogPortfolioStatusCommand, diff --git a/clients/client-sagemaker/src/commands/ListResourceCatalogsCommand.ts b/clients/client-sagemaker/src/commands/ListResourceCatalogsCommand.ts new file mode 100644 index 0000000000000..e89808bfa3ec2 --- /dev/null +++ b/clients/client-sagemaker/src/commands/ListResourceCatalogsCommand.ts @@ -0,0 +1,157 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { ListResourceCatalogsRequest, ListResourceCatalogsResponse } from "../models/models_3"; +import { de_ListResourceCatalogsCommand, se_ListResourceCatalogsCommand } from "../protocols/Aws_json1_1"; +import { SageMakerClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../SageMakerClient"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ListResourceCatalogsCommand}. + */ +export interface ListResourceCatalogsCommandInput extends ListResourceCatalogsRequest {} +/** + * @public + * + * The output of {@link ListResourceCatalogsCommand}. + */ +export interface ListResourceCatalogsCommandOutput extends ListResourceCatalogsResponse, __MetadataBearer {} + +/** + * @public + *

Lists Amazon SageMaker Catalogs based on given filters and orders. The maximum number of + * ResourceCatalogs viewable is 1000.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SageMakerClient, ListResourceCatalogsCommand } from "@aws-sdk/client-sagemaker"; // ES Modules import + * // const { SageMakerClient, ListResourceCatalogsCommand } = require("@aws-sdk/client-sagemaker"); // CommonJS import + * const client = new SageMakerClient(config); + * const input = { // ListResourceCatalogsRequest + * NameContains: "STRING_VALUE", + * CreationTimeAfter: new Date("TIMESTAMP"), + * CreationTimeBefore: new Date("TIMESTAMP"), + * SortOrder: "Ascending" || "Descending", + * SortBy: "CreationTime", + * MaxResults: Number("int"), + * NextToken: "STRING_VALUE", + * }; + * const command = new ListResourceCatalogsCommand(input); + * const response = await client.send(command); + * // { // ListResourceCatalogsResponse + * // ResourceCatalogs: [ // ResourceCatalogList + * // { // ResourceCatalog + * // ResourceCatalogArn: "STRING_VALUE", // required + * // ResourceCatalogName: "STRING_VALUE", // required + * // Description: "STRING_VALUE", // required + * // CreationTime: new Date("TIMESTAMP"), // required + * // }, + * // ], + * // NextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListResourceCatalogsCommandInput - {@link ListResourceCatalogsCommandInput} + * @returns {@link ListResourceCatalogsCommandOutput} + * @see {@link ListResourceCatalogsCommandInput} for command's `input` shape. + * @see {@link ListResourceCatalogsCommandOutput} for command's `response` shape. + * @see {@link SageMakerClientResolvedConfig | config} for SageMakerClient's `config` shape. + * + * @throws {@link SageMakerServiceException} + *

Base exception class for all service exceptions from SageMaker service.

+ * + */ +export class ListResourceCatalogsCommand extends $Command< + ListResourceCatalogsCommandInput, + ListResourceCatalogsCommandOutput, + SageMakerClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: ListResourceCatalogsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: SageMakerClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ListResourceCatalogsCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "SageMakerClient"; + const commandName = "ListResourceCatalogsCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: (_: any) => _, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: ListResourceCatalogsCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_ListResourceCatalogsCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_ListResourceCatalogsCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-sagemaker/src/commands/RetryPipelineExecutionCommand.ts b/clients/client-sagemaker/src/commands/RetryPipelineExecutionCommand.ts index 1dca2d04cc1b9..d352c22a432e8 100644 --- a/clients/client-sagemaker/src/commands/RetryPipelineExecutionCommand.ts +++ b/clients/client-sagemaker/src/commands/RetryPipelineExecutionCommand.ts @@ -13,7 +13,7 @@ import { SerdeContext as __SerdeContext, } from "@smithy/types"; -import { RetryPipelineExecutionRequest, RetryPipelineExecutionResponse } from "../models/models_3"; +import { RetryPipelineExecutionRequest, RetryPipelineExecutionResponse } from "../models/models_4"; import { de_RetryPipelineExecutionCommand, se_RetryPipelineExecutionCommand } from "../protocols/Aws_json1_1"; import { SageMakerClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../SageMakerClient"; diff --git a/clients/client-sagemaker/src/commands/SearchCommand.ts b/clients/client-sagemaker/src/commands/SearchCommand.ts index 438893e35b122..aa6a44bea5373 100644 --- a/clients/client-sagemaker/src/commands/SearchCommand.ts +++ b/clients/client-sagemaker/src/commands/SearchCommand.ts @@ -101,6 +101,7 @@ export interface SearchCommandOutput extends SearchResponse, __MetadataBearer {} * SortOrder: "Ascending" || "Descending", * NextToken: "STRING_VALUE", * MaxResults: Number("int"), + * CrossAccountFilterOption: "SameAccount" || "CrossAccount", * }; * const command = new SearchCommand(input); * const response = await client.send(command); diff --git a/clients/client-sagemaker/src/commands/UpdateFeatureGroupCommand.ts b/clients/client-sagemaker/src/commands/UpdateFeatureGroupCommand.ts index d5662f31d3cea..a852605343e78 100644 --- a/clients/client-sagemaker/src/commands/UpdateFeatureGroupCommand.ts +++ b/clients/client-sagemaker/src/commands/UpdateFeatureGroupCommand.ts @@ -36,7 +36,18 @@ export interface UpdateFeatureGroupCommandOutput extends UpdateFeatureGroupRespo /** * @public - *

Updates the feature group.

+ *

Updates the feature group by either adding features or updating the online store + * configuration. Use one of the following request parameters at a time while using the + * UpdateFeatureGroup API.

+ *

You can add features for your feature group using the FeatureAdditions + * request parameter. Features cannot be removed from a feature group.

+ *

You can update the online store configuration by using the + * OnlineStoreConfig request parameter. If a TtlDuration is + * specified, the default TtlDuration applies for all records added to the + * feature group after the feature group is updated. If a record level + * TtlDuration exists from using the PutRecord API, the record + * level TtlDuration applies to that record instead of the default + * TtlDuration.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-sagemaker/src/commands/index.ts b/clients/client-sagemaker/src/commands/index.ts index 5143528227489..eebbd623a3ffd 100644 --- a/clients/client-sagemaker/src/commands/index.ts +++ b/clients/client-sagemaker/src/commands/index.ts @@ -228,6 +228,7 @@ export * from "./ListPipelineParametersForExecutionCommand"; export * from "./ListPipelinesCommand"; export * from "./ListProcessingJobsCommand"; export * from "./ListProjectsCommand"; +export * from "./ListResourceCatalogsCommand"; export * from "./ListSpacesCommand"; export * from "./ListStageDevicesCommand"; export * from "./ListStudioLifecycleConfigsCommand"; diff --git a/clients/client-sagemaker/src/models/models_1.ts b/clients/client-sagemaker/src/models/models_1.ts index e500f179f0e48..263ef92b5c41d 100644 --- a/clients/client-sagemaker/src/models/models_1.ts +++ b/clients/client-sagemaker/src/models/models_1.ts @@ -1179,18 +1179,20 @@ export interface DataCatalogConfig { /** * @public - *

The Amazon Simple Storage (Amazon S3) location and and security configuration for OfflineStore.

+ *

The Amazon Simple Storage (Amazon S3) location and and security configuration for + * OfflineStore.

*/ export interface S3StorageConfig { /** *

The S3 URI, or location in Amazon S3, of OfflineStore.

- *

S3 URIs have a format similar to the following: s3://example-bucket/prefix/.

+ *

S3 URIs have a format similar to the following: + * s3://example-bucket/prefix/.

*/ S3Uri: string | undefined; /** - *

The Amazon Web Services Key Management Service (KMS) key ARN of the key used to encrypt any objects - * written into the OfflineStore S3 location.

+ *

The Amazon Web Services Key Management Service (KMS) key ARN of the key used to encrypt + * any objects written into the OfflineStore S3 location.

*

The IAM roleARN that is passed as a parameter to * CreateFeatureGroup must have below permissions to the * KmsKeyId:

@@ -1229,9 +1231,8 @@ export type TableFormat = (typeof TableFormat)[keyof typeof TableFormat]; *

The configuration of an OfflineStore.

*

Provide an OfflineStoreConfig in a request to * CreateFeatureGroup to create an OfflineStore.

- *

To encrypt an OfflineStore using at rest data encryption, specify Amazon Web Services Key - * Management Service (KMS) key ID, or KMSKeyId, in - * S3StorageConfig.

+ *

To encrypt an OfflineStore using at rest data encryption, specify Amazon Web Services Key Management Service (KMS) key ID, or KMSKeyId, in + * S3StorageConfig.

*/ export interface OfflineStoreConfig { /** @@ -1240,10 +1241,10 @@ export interface OfflineStoreConfig { S3StorageConfig: S3StorageConfig | undefined; /** - *

Set to True to disable the automatic creation of an Amazon Web Services Glue table when - * configuring an OfflineStore. If set to False, Feature Store will name the - * OfflineStore Glue table following - * Athena's naming recommendations.

+ *

Set to True to disable the automatic creation of an Amazon Web Services Glue + * table when configuring an OfflineStore. If set to False, Feature + * Store will name the OfflineStore Glue table following Athena's + * naming recommendations.

*

The default value is False.

*/ DisableGlueTableCreation?: boolean; @@ -1266,10 +1267,11 @@ export interface OfflineStoreConfig { */ export interface OnlineStoreSecurityConfig { /** - *

The Amazon Web Services Key Management Service (KMS) key ARN that SageMaker Feature Store uses - * to encrypt the Amazon S3 objects at rest using Amazon S3 server-side encryption.

- *

The caller (either user or IAM role) of CreateFeatureGroup must have - * below permissions to the OnlineStore + *

The Amazon Web Services Key Management Service (KMS) key ARN that SageMaker Feature Store + * uses to encrypt the Amazon S3 objects at rest using Amazon S3 server-side + * encryption.

+ *

The caller (either user or IAM role) of CreateFeatureGroup must have below + * permissions to the OnlineStore * KmsKeyId:

*
    *
  • @@ -1329,8 +1331,8 @@ export interface OnlineStoreSecurityConfig { *
  • *
*

The caller (either user or IAM role) to all DataPlane operations - * (PutRecord, GetRecord, DeleteRecord) must have - * the following permissions to the KmsKeyId:

+ * (PutRecord, GetRecord, DeleteRecord) must have the + * following permissions to the KmsKeyId:

*
    *
  • *

    @@ -1395,10 +1397,9 @@ export interface OnlineStoreConfig { SecurityConfig?: OnlineStoreSecurityConfig; /** - *

    Turn OnlineStore off by specifying False - * for the EnableOnlineStore flag. Turn OnlineStore - * on by specifying True - * for the EnableOnlineStore flag.

    + *

    Turn OnlineStore off by specifying False for the + * EnableOnlineStore flag. Turn OnlineStore on by specifying + * True for the EnableOnlineStore flag.

    *

    The default value is False.

    */ EnableOnlineStore?: boolean; @@ -1416,8 +1417,7 @@ export interface OnlineStoreConfig { */ export interface CreateFeatureGroupRequest { /** - *

    The name of the FeatureGroup. The name must be unique within an Amazon Web Services Region - * in an Amazon Web Services account. The name:

    + *

    The name of the FeatureGroup. The name must be unique within an Amazon Web Services Region in an Amazon Web Services account. The name:

    *
      *
    • *

      Must start and end with an alphanumeric character.

      @@ -1496,8 +1496,8 @@ export interface CreateFeatureGroupRequest { /** *

      You can turn the OnlineStore on or off by specifying True for * the EnableOnlineStore flag in OnlineStoreConfig.

      - *

      You can also include an Amazon Web Services KMS key ID (KMSKeyId) for at-rest encryption of - * the OnlineStore.

      + *

      You can also include an Amazon Web Services KMS key ID (KMSKeyId) for + * at-rest encryption of the OnlineStore.

      *

      The default value is False.

      */ OnlineStoreConfig?: OnlineStoreConfig; @@ -1511,16 +1511,19 @@ export interface CreateFeatureGroupRequest { * OfflineStore.

      *
    • *
    • - *

      A configuration for an Amazon Web Services Glue or Amazon Web Services Hive data catalog.

      + *

      A configuration for an Amazon Web Services Glue or Amazon Web Services Hive data + * catalog.

      *
    • *
    • *

      An KMS encryption key to encrypt the Amazon S3 location used for - * OfflineStore. If KMS encryption key is not specified, by default we encrypt all data at rest using - * Amazon Web Services KMS key. By defining your bucket-level key for SSE, - * you can reduce Amazon Web Services KMS requests costs by up to 99 percent.

      + * OfflineStore. If KMS encryption key is not specified, by default we + * encrypt all data at rest using Amazon Web Services KMS key. By defining your bucket-level + * key for SSE, you can reduce Amazon Web Services KMS requests costs by up to + * 99 percent.

      *
    • *
    • - *

      Format for the offline store table. Supported formats are Glue (Default) and Apache Iceberg.

      + *

      Format for the offline store table. Supported formats are Glue (Default) and + * Apache Iceberg.

      *
    • *
    *

    To learn more about this parameter, see OfflineStoreConfig.

    @@ -10383,6 +10386,20 @@ export interface CreateWorkteamResponse { WorkteamArn?: string; } +/** + * @public + * @enum + */ +export const CrossAccountFilterOption = { + CROSS_ACCOUNT: "CrossAccount", + SAME_ACCOUNT: "SameAccount", +} as const; + +/** + * @public + */ +export type CrossAccountFilterOption = (typeof CrossAccountFilterOption)[keyof typeof CrossAccountFilterOption]; + /** * @public *

    The currently active data capture configuration used by your Endpoint.

    @@ -10796,31 +10813,6 @@ export const HubContentType = { */ export type HubContentType = (typeof HubContentType)[keyof typeof HubContentType]; -/** - * @public - */ -export interface DeleteHubContentRequest { - /** - *

    The name of the hub that you want to delete content in.

    - */ - HubName: string | undefined; - - /** - *

    The type of content that you want to delete from a hub.

    - */ - HubContentType: HubContentType | string | undefined; - - /** - *

    The name of the content that you want to delete from a hub.

    - */ - HubContentName: string | undefined; - - /** - *

    The version of the content that you want to delete from a hub.

    - */ - HubContentVersion: string | undefined; -} - /** * @internal */ diff --git a/clients/client-sagemaker/src/models/models_2.ts b/clients/client-sagemaker/src/models/models_2.ts index 9b875e52008be..3ef66da1eb0c5 100644 --- a/clients/client-sagemaker/src/models/models_2.ts +++ b/clients/client-sagemaker/src/models/models_2.ts @@ -177,6 +177,31 @@ import { VendorGuidance, } from "./models_1"; +/** + * @public + */ +export interface DeleteHubContentRequest { + /** + *

    The name of the hub that you want to delete content in.

    + */ + HubName: string | undefined; + + /** + *

    The type of content that you want to delete from a hub.

    + */ + HubContentType: HubContentType | string | undefined; + + /** + *

    The name of the content that you want to delete from a hub.

    + */ + HubContentName: string | undefined; + + /** + *

    The version of the content that you want to delete from a hub.

    + */ + HubContentVersion: string | undefined; +} + /** * @public */ @@ -2793,7 +2818,8 @@ export interface DescribeExperimentResponse { */ export interface DescribeFeatureGroupRequest { /** - *

    The name of the FeatureGroup you want described.

    + *

    The name or Amazon Resource Name (ARN) of the FeatureGroup you want + * described.

    */ FeatureGroupName: string | undefined; @@ -2889,7 +2915,7 @@ export interface OfflineStoreStatus { */ export interface DescribeFeatureGroupResponse { /** - *

    The Amazon Resource Name (ARN) of the FeatureGroup.

    + *

    The Amazon Resource Name (ARN) of the FeatureGroup.

    */ FeatureGroupArn: string | undefined; @@ -2906,17 +2932,17 @@ export interface DescribeFeatureGroupResponse { /** *

    The name of the feature that stores the EventTime of a Record in a - * FeatureGroup.

    - *

    An EventTime is a point in time when a new event occurs that - * corresponds to the creation or update of a Record in a - * FeatureGroup. All Records in the FeatureGroup - * have a corresponding EventTime.

    + * FeatureGroup.

    + *

    An EventTime is a point in time when a new event occurs that corresponds + * to the creation or update of a Record in a FeatureGroup. All + * Records in the FeatureGroup have a corresponding + * EventTime.

    */ EventTimeFeatureName: string | undefined; /** - *

    A list of the Features in the FeatureGroup. - * Each feature is defined by a FeatureName and FeatureType.

    + *

    A list of the Features in the FeatureGroup. Each feature is + * defined by a FeatureName and FeatureType.

    */ FeatureDefinitions: FeatureDefinition[] | undefined; @@ -2948,7 +2974,8 @@ export interface DescribeFeatureGroupResponse { *

    Table format of the offline store.

    *
  • *
  • - *

    Option to disable the automatic creation of a Glue table for the offline store.

    + *

    Option to disable the automatic creation of a Glue table for the offline + * store.

    *
  • *
  • *

    Encryption configuration.

    @@ -2958,7 +2985,8 @@ export interface DescribeFeatureGroupResponse { OfflineStoreConfig?: OfflineStoreConfig; /** - *

    The Amazon Resource Name (ARN) of the IAM execution role used to persist data into the OfflineStore if an OfflineStoreConfig is provided.

    + *

    The Amazon Resource Name (ARN) of the IAM execution role used to persist data into the + * OfflineStore if an OfflineStoreConfig is provided.

    */ RoleArn?: string; @@ -3018,7 +3046,8 @@ export interface DescribeFeatureGroupResponse { */ export interface DescribeFeatureMetadataRequest { /** - *

    The name of the feature group containing the feature.

    + *

    The name or Amazon Resource Name (ARN) of the feature group containing the + * feature.

    */ FeatureGroupName: string | undefined; @@ -3074,7 +3103,9 @@ export interface DescribeFeatureMetadataResponse { CreationTime: Date | undefined; /** - *

    A timestamp indicating when the metadata for the feature group was modified. For example, if you add a parameter describing the feature, the timestamp changes to reflect the last time you

    + *

    A timestamp indicating when the metadata for the feature group was modified. For + * example, if you add a parameter describing the feature, the timestamp changes to reflect + * the last time you

    */ LastModifiedTime: Date | undefined; @@ -9484,10 +9515,10 @@ export interface FailStepMetadata { /** * @public - *

    Amazon SageMaker Feature Store stores features in a collection called Feature Group. - * A Feature Group can be visualized as a table which has rows, - * with a unique identifier for each row where each column in the table is a feature. - * In principle, a Feature Group is composed of features and values per features.

    + *

    Amazon SageMaker Feature Store stores features in a collection called Feature Group. A + * Feature Group can be visualized as a table which has rows, with a unique identifier for + * each row where each column in the table is a feature. In principle, a Feature Group is + * composed of features and values per features.

    */ export interface FeatureGroup { /** @@ -9502,18 +9533,18 @@ export interface FeatureGroup { /** *

    The name of the Feature whose value uniquely identifies a - * Record defined in the FeatureGroup + * Record defined in the FeatureGroup * FeatureDefinitions.

    */ RecordIdentifierFeatureName?: string; /** *

    The name of the feature that stores the EventTime of a Record in a - * FeatureGroup.

    - *

    A EventTime is point in time when a new event - * occurs that corresponds to the creation or update of a Record in - * FeatureGroup. All Records in the FeatureGroup - * must have a corresponding EventTime.

    + * FeatureGroup.

    + *

    A EventTime is point in time when a new event occurs that corresponds to + * the creation or update of a Record in FeatureGroup. All + * Records in the FeatureGroup must have a corresponding + * EventTime.

    */ EventTimeFeatureName?: string; @@ -9553,9 +9584,8 @@ export interface FeatureGroup { *

    The configuration of an OfflineStore.

    *

    Provide an OfflineStoreConfig in a request to * CreateFeatureGroup to create an OfflineStore.

    - *

    To encrypt an OfflineStore using at rest data encryption, specify Amazon Web Services Key - * Management Service (KMS) key ID, or KMSKeyId, in - * S3StorageConfig.

    + *

    To encrypt an OfflineStore using at rest data encryption, specify Amazon Web Services Key Management Service (KMS) key ID, or KMSKeyId, in + * S3StorageConfig.

    */ OfflineStoreConfig?: OfflineStoreConfig; @@ -9581,10 +9611,10 @@ export interface FeatureGroup { LastUpdateStatus?: LastUpdateStatus; /** - *

    The reason that the FeatureGroup failed to - * be replicated in the OfflineStore. This is - * failure may be due to a failure to create a FeatureGroup in - * or delete a FeatureGroup from the OfflineStore.

    + *

    The reason that the FeatureGroup failed to be replicated in the + * OfflineStore. This is failure may be due to a failure to create a + * FeatureGroup in or delete a FeatureGroup from the + * OfflineStore.

    */ FailureReason?: string; @@ -9631,7 +9661,7 @@ export type FeatureGroupSortOrder = (typeof FeatureGroupSortOrder)[keyof typeof /** * @public - *

    The name, Arn, CreationTime, FeatureGroup values, + *

    The name, ARN, CreationTime, FeatureGroup values, * LastUpdatedTime and EnableOnlineStorage status of a * FeatureGroup.

    */ @@ -9647,7 +9677,8 @@ export interface FeatureGroupSummary { FeatureGroupArn: string | undefined; /** - *

    A timestamp indicating the time of creation time of the FeatureGroup.

    + *

    A timestamp indicating the time of creation time of the + * FeatureGroup.

    */ CreationTime: Date | undefined; @@ -9667,7 +9698,8 @@ export interface FeatureGroupSummary { /** * @public - *

    The metadata for a feature. It can either be metadata that you specify, or metadata that is updated automatically.

    + *

    The metadata for a feature. It can either be metadata that you specify, or metadata that + * is updated automatically.

    */ export interface FeatureMetadata { /** @@ -10085,16 +10117,6 @@ export const SagemakerServicecatalogStatus = { export type SagemakerServicecatalogStatus = (typeof SagemakerServicecatalogStatus)[keyof typeof SagemakerServicecatalogStatus]; -/** - * @public - */ -export interface GetSagemakerServicecatalogPortfolioStatusOutput { - /** - *

    Whether Service Catalog is enabled or disabled in SageMaker.

    - */ - Status?: SagemakerServicecatalogStatus | string; -} - /** * @internal */ diff --git a/clients/client-sagemaker/src/models/models_3.ts b/clients/client-sagemaker/src/models/models_3.ts index 14cecfa2901f4..484446c039b50 100644 --- a/clients/client-sagemaker/src/models/models_3.ts +++ b/clients/client-sagemaker/src/models/models_3.ts @@ -5,7 +5,6 @@ import { ActionSummary, AdditionalInferenceSpecificationDefinition, AlgorithmSortBy, - AlgorithmSpecification, AlgorithmSummary, AppDetails, AppImageConfigDetails, @@ -26,8 +25,6 @@ import { CallbackStepMetadata, CandidateSortBy, CandidateStatus, - Channel, - CheckpointConfig, ClarifyCheckStepMetadata, CodeRepositorySortBy, CodeRepositorySortOrder, @@ -41,10 +38,7 @@ import { MetadataProperties, ModelApprovalStatus, ModelPackageStatus, - OutputDataConfig, OutputParameter, - ResourceConfig, - StoppingCondition, Tag, TransformInput, TransformOutput, @@ -55,9 +49,6 @@ import { import { _InstanceType, DataProcessing, - DebugHookConfig, - DebugRuleConfiguration, - DebugRuleEvaluationStatus, DriftCheckBaselines, ExperimentConfig, HubContentType, @@ -84,11 +75,9 @@ import { ProcessingStoppingCondition, RecommendationJobType, ResourceLimits, - RetryStrategy, ServiceCatalogProvisioningDetails, SourceAlgorithmSpecification, StudioLifecycleConfigAppType, - TensorBoardOutputConfig, TrialComponentStatus, TtlDuration, UiTemplate, @@ -134,8 +123,6 @@ import { LabelCounters, LabelingJobOutput, LabelingJobStatus, - MetricData, - ModelArtifacts, ModelCardExportJobStatus, ModelConfiguration, ModelPackageGroupStatus, @@ -151,9 +138,8 @@ import { ProjectStatus, RecommendationJobStatus, RecommendationMetrics, + SagemakerServicecatalogStatus, ScheduleStatus, - SecondaryStatus, - SecondaryStatusTransition, SelectiveExecutionConfig, ServiceCatalogProvisionedProductDetails, SpaceStatus, @@ -170,6 +156,16 @@ import { Workteam, } from "./models_2"; +/** + * @public + */ +export interface GetSagemakerServicecatalogPortfolioStatusOutput { + /** + *

    Whether Service Catalog is enabled or disabled in SageMaker.

    + */ + Status?: SagemakerServicecatalogStatus | string; +} + /** * @public * @enum @@ -2856,7 +2852,8 @@ export interface ListFeatureGroupsRequest { FeatureGroupStatusEquals?: FeatureGroupStatus | string; /** - *

    An OfflineStore status. Filters by OfflineStore status.

    + *

    An OfflineStore status. Filters by OfflineStore status. + *

    */ OfflineStoreStatusEquals?: OfflineStoreStatusValue | string; @@ -6799,6 +6796,120 @@ export interface ListProjectsOutput { NextToken?: string; } +/** + * @public + * @enum + */ +export const ResourceCatalogSortBy = { + CREATION_TIME: "CreationTime", +} as const; + +/** + * @public + */ +export type ResourceCatalogSortBy = (typeof ResourceCatalogSortBy)[keyof typeof ResourceCatalogSortBy]; + +/** + * @public + * @enum + */ +export const ResourceCatalogSortOrder = { + ASCENDING: "Ascending", + DESCENDING: "Descending", +} as const; + +/** + * @public + */ +export type ResourceCatalogSortOrder = (typeof ResourceCatalogSortOrder)[keyof typeof ResourceCatalogSortOrder]; + +/** + * @public + */ +export interface ListResourceCatalogsRequest { + /** + *

    A string that partially matches one or more ResourceCatalogs names. + * Filters ResourceCatalog by name.

    + */ + NameContains?: string; + + /** + *

    Use this parameter to search for ResourceCatalogs created after a + * specific date and time.

    + */ + CreationTimeAfter?: Date; + + /** + *

    Use this parameter to search for ResourceCatalogs created before a + * specific date and time.

    + */ + CreationTimeBefore?: Date; + + /** + *

    The order in which the resource catalogs are listed.

    + */ + SortOrder?: ResourceCatalogSortOrder | string; + + /** + *

    The value on which the resource catalog list is sorted.

    + */ + SortBy?: ResourceCatalogSortBy | string; + + /** + *

    The maximum number of results returned by ListResourceCatalogs.

    + */ + MaxResults?: number; + + /** + *

    A token to resume pagination of ListResourceCatalogs results.

    + */ + NextToken?: string; +} + +/** + * @public + *

    A resource catalog containing all of the resources of a specific resource type within + * a resource owner account. For an example on sharing the Amazon SageMaker Feature Store + * DefaultFeatureGroupCatalog, see Share Amazon SageMaker Catalog resource type in the Amazon SageMaker Developer Guide. + *

    + */ +export interface ResourceCatalog { + /** + *

    The Amazon Resource Name (ARN) of the ResourceCatalog.

    + */ + ResourceCatalogArn: string | undefined; + + /** + *

    The name of the ResourceCatalog.

    + */ + ResourceCatalogName: string | undefined; + + /** + *

    A free form description of the ResourceCatalog.

    + */ + Description: string | undefined; + + /** + *

    The time the ResourceCatalog was created.

    + */ + CreationTime: Date | undefined; +} + +/** + * @public + */ +export interface ListResourceCatalogsResponse { + /** + *

    A list of the requested ResourceCatalogs.

    + */ + ResourceCatalogs?: ResourceCatalog[]; + + /** + *

    A token to resume pagination of ListResourceCatalogs results.

    + */ + NextToken?: string; +} + /** * @public * @enum @@ -9528,524 +9639,6 @@ export interface ResourceConfigForUpdate { KeepAlivePeriodInSeconds: number | undefined; } -/** - * @public - */ -export interface RetryPipelineExecutionRequest { - /** - *

    The Amazon Resource Name (ARN) of the pipeline execution.

    - */ - PipelineExecutionArn: string | undefined; - - /** - *

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the - * operation. An idempotent operation completes no more than once.

    - */ - ClientRequestToken?: string; - - /** - *

    This configuration, if specified, overrides the parallelism configuration - * of the parent pipeline.

    - */ - ParallelismConfiguration?: ParallelismConfiguration; -} - -/** - * @public - */ -export interface RetryPipelineExecutionResponse { - /** - *

    The Amazon Resource Name (ARN) of the pipeline execution.

    - */ - PipelineExecutionArn?: string; -} - -/** - * @public - * @enum - */ -export const SearchSortOrder = { - ASCENDING: "Ascending", - DESCENDING: "Descending", -} as const; - -/** - * @public - */ -export type SearchSortOrder = (typeof SearchSortOrder)[keyof typeof SearchSortOrder]; - -/** - * @public - *

    Contains information about a training job.

    - */ -export interface TrainingJob { - /** - *

    The name of the training job.

    - */ - TrainingJobName?: string; - - /** - *

    The Amazon Resource Name (ARN) of the training job.

    - */ - TrainingJobArn?: string; - - /** - *

    The Amazon Resource Name (ARN) of the associated hyperparameter tuning job if the - * training job was launched by a hyperparameter tuning job.

    - */ - TuningJobArn?: string; - - /** - *

    The Amazon Resource Name (ARN) of the labeling job.

    - */ - LabelingJobArn?: string; - - /** - *

    The Amazon Resource Name (ARN) of the job.

    - */ - AutoMLJobArn?: string; - - /** - *

    Information about the Amazon S3 location that is configured for storing model - * artifacts.

    - */ - ModelArtifacts?: ModelArtifacts; - - /** - *

    The status of the - * training - * job.

    - *

    Training job statuses are:

    - *
      - *
    • - *

      - * InProgress - The training is in progress.

      - *
    • - *
    • - *

      - * Completed - The training job has completed.

      - *
    • - *
    • - *

      - * Failed - The training job has failed. To see the reason for the - * failure, see the FailureReason field in the response to a - * DescribeTrainingJobResponse call.

      - *
    • - *
    • - *

      - * Stopping - The training job is stopping.

      - *
    • - *
    • - *

      - * Stopped - The training job has stopped.

      - *
    • - *
    - *

    For - * more detailed information, see SecondaryStatus.

    - */ - TrainingJobStatus?: TrainingJobStatus | string; - - /** - *

    Provides detailed information about the state of the training job. For detailed - * information about the secondary status of the training job, see - * StatusMessage under SecondaryStatusTransition.

    - *

    SageMaker provides primary statuses and secondary statuses that apply to each of - * them:

    - *
    - *
    InProgress
    - *
    - *
      - *
    • - *

      - * Starting - * - Starting the training job.

      - *
    • - *
    • - *

      - * Downloading - An optional stage for algorithms that - * support File training input mode. It indicates that - * data is being downloaded to the ML storage volumes.

      - *
    • - *
    • - *

      - * Training - Training is in progress.

      - *
    • - *
    • - *

      - * Uploading - Training is complete and the model - * artifacts are being uploaded to the S3 location.

      - *
    • - *
    - *
    - *
    Completed
    - *
    - *
      - *
    • - *

      - * Completed - The training job has completed.

      - *
    • - *
    - *
    - *
    Failed
    - *
    - *
      - *
    • - *

      - * Failed - The training job has failed. The reason for - * the failure is returned in the FailureReason field of - * DescribeTrainingJobResponse.

      - *
    • - *
    - *
    - *
    Stopped
    - *
    - *
      - *
    • - *

      - * MaxRuntimeExceeded - The job stopped because it - * exceeded the maximum allowed runtime.

      - *
    • - *
    • - *

      - * Stopped - The training job has stopped.

      - *
    • - *
    - *
    - *
    Stopping
    - *
    - *
      - *
    • - *

      - * Stopping - Stopping the training job.

      - *
    • - *
    - *
    - *
    - * - *

    Valid values for SecondaryStatus are subject to change.

    - *
    - *

    We no longer support the following secondary statuses:

    - *
      - *
    • - *

      - * LaunchingMLInstances - *

      - *
    • - *
    • - *

      - * PreparingTrainingStack - *

      - *
    • - *
    • - *

      - * DownloadingTrainingImage - *

      - *
    • - *
    - */ - SecondaryStatus?: SecondaryStatus | string; - - /** - *

    If the training job failed, the reason it failed.

    - */ - FailureReason?: string; - - /** - *

    Algorithm-specific parameters.

    - */ - HyperParameters?: Record; - - /** - *

    Information about the algorithm used for training, and algorithm metadata.

    - */ - AlgorithmSpecification?: AlgorithmSpecification; - - /** - *

    The Amazon Web Services Identity and Access Management (IAM) role configured for the - * training job.

    - */ - RoleArn?: string; - - /** - *

    An array of Channel objects that describes each data input - * channel.

    - *

    Your input must be in the same Amazon Web Services region as your training job.

    - */ - InputDataConfig?: Channel[]; - - /** - *

    The S3 path where model artifacts that you configured when creating the job are - * stored. SageMaker creates subfolders for model artifacts.

    - */ - OutputDataConfig?: OutputDataConfig; - - /** - *

    Resources, including ML compute instances and ML storage volumes, that are configured - * for model training.

    - */ - ResourceConfig?: ResourceConfig; - - /** - *

    A VpcConfig object that specifies the VPC that this training job has access - * to. For more information, see Protect Training Jobs by Using an Amazon - * Virtual Private Cloud.

    - */ - VpcConfig?: VpcConfig; - - /** - *

    Specifies a limit to how long a model training job can run. It also specifies how long - * a managed Spot training job has to complete. When the job reaches the time limit, SageMaker - * ends the training job. Use this API to cap model training costs.

    - *

    To stop a job, SageMaker sends the algorithm the SIGTERM signal, which delays - * job termination for 120 seconds. Algorithms can use this 120-second window to save the - * model artifacts, so the results of training are not lost.

    - */ - StoppingCondition?: StoppingCondition; - - /** - *

    A timestamp that indicates when the training job was created.

    - */ - CreationTime?: Date; - - /** - *

    Indicates the time when the training job starts on training instances. You are billed - * for the time interval between this time and the value of TrainingEndTime. - * The start time in CloudWatch Logs might be later than this time. The difference is due to the time - * it takes to download the training data and to the size of the training container.

    - */ - TrainingStartTime?: Date; - - /** - *

    Indicates the time when the training job ends on training instances. You are billed - * for the time interval between the value of TrainingStartTime and this time. - * For successful jobs and stopped jobs, this is the time after model artifacts are - * uploaded. For failed jobs, this is the time when SageMaker detects a job failure.

    - */ - TrainingEndTime?: Date; - - /** - *

    A timestamp that indicates when the status of the training job was last - * modified.

    - */ - LastModifiedTime?: Date; - - /** - *

    A history of all of the secondary statuses that the training job has transitioned - * through.

    - */ - SecondaryStatusTransitions?: SecondaryStatusTransition[]; - - /** - *

    A list of final metric values that are set when the training job completes. Used only - * if the training job was configured to use metrics.

    - */ - FinalMetricDataList?: MetricData[]; - - /** - *

    If the TrainingJob was created with network isolation, the value is set - * to true. If network isolation is enabled, nodes can't communicate beyond - * the VPC they run in.

    - */ - EnableNetworkIsolation?: boolean; - - /** - *

    To encrypt all communications between ML compute instances in distributed training, - * choose True. Encryption provides greater security for distributed training, - * but training might take longer. How long it takes depends on the amount of communication - * between compute instances, especially if you use a deep learning algorithm in - * distributed training.

    - */ - EnableInterContainerTrafficEncryption?: boolean; - - /** - *

    When true, enables managed spot training using Amazon EC2 Spot instances to run - * training jobs instead of on-demand instances. For more information, see Managed Spot Training.

    - */ - EnableManagedSpotTraining?: boolean; - - /** - *

    Contains information about the output location for managed spot training checkpoint - * data.

    - */ - CheckpointConfig?: CheckpointConfig; - - /** - *

    The training time in seconds.

    - */ - TrainingTimeInSeconds?: number; - - /** - *

    The billable time in seconds.

    - */ - BillableTimeInSeconds?: number; - - /** - *

    Configuration information for the Amazon SageMaker Debugger hook parameters, metric and tensor collections, and - * storage paths. To learn more about - * how to configure the DebugHookConfig parameter, - * see Use the SageMaker and Debugger Configuration API Operations to Create, Update, and Debug Your Training Job.

    - */ - DebugHookConfig?: DebugHookConfig; - - /** - *

    Associates a SageMaker job as a trial component with an experiment and trial. Specified when - * you call the following APIs:

    - * - */ - ExperimentConfig?: ExperimentConfig; - - /** - *

    Information about the debug rule configuration.

    - */ - DebugRuleConfigurations?: DebugRuleConfiguration[]; - - /** - *

    Configuration of storage locations for the Amazon SageMaker Debugger TensorBoard output data.

    - */ - TensorBoardOutputConfig?: TensorBoardOutputConfig; - - /** - *

    Information about the evaluation status of the rules for the training job.

    - */ - DebugRuleEvaluationStatuses?: DebugRuleEvaluationStatus[]; - - /** - *

    The environment variables to set in the Docker container.

    - */ - Environment?: Record; - - /** - *

    The number of times to retry the job when the job fails due to an - * InternalServerError.

    - */ - RetryStrategy?: RetryStrategy; - - /** - *

    An array of key-value pairs. You can use tags to categorize your Amazon Web Services - * resources in different ways, for example, by purpose, owner, or environment. For more - * information, see Tagging Amazon Web Services Resources.

    - */ - Tags?: Tag[]; -} - -/** - * @public - *

    A short summary of a trial component.

    - */ -export interface TrialComponentSimpleSummary { - /** - *

    The name of the trial component.

    - */ - TrialComponentName?: string; - - /** - *

    The Amazon Resource Name (ARN) of the trial component.

    - */ - TrialComponentArn?: string; - - /** - *

    The Amazon Resource Name (ARN) and job type of the source of a trial component.

    - */ - TrialComponentSource?: TrialComponentSource; - - /** - *

    When the component was created.

    - */ - CreationTime?: Date; - - /** - *

    Information about the user who created or modified an experiment, trial, trial - * component, lineage group, project, or model card.

    - */ - CreatedBy?: UserContext; -} - -/** - * @public - *

    The properties of a trial as returned by the Search API.

    - */ -export interface Trial { - /** - *

    The name of the trial.

    - */ - TrialName?: string; - - /** - *

    The Amazon Resource Name (ARN) of the trial.

    - */ - TrialArn?: string; - - /** - *

    The name of the trial as displayed. If DisplayName isn't specified, - * TrialName is displayed.

    - */ - DisplayName?: string; - - /** - *

    The name of the experiment the trial is part of.

    - */ - ExperimentName?: string; - - /** - *

    The source of the trial.

    - */ - Source?: TrialSource; - - /** - *

    When the trial was created.

    - */ - CreationTime?: Date; - - /** - *

    Who created the trial.

    - */ - CreatedBy?: UserContext; - - /** - *

    Who last modified the trial.

    - */ - LastModifiedTime?: Date; - - /** - *

    Information about the user who created or modified an experiment, trial, trial - * component, lineage group, project, or model card.

    - */ - LastModifiedBy?: UserContext; - - /** - *

    Metadata properties of the tracking entity, trial, or trial component.

    - */ - MetadataProperties?: MetadataProperties; - - /** - *

    The list of tags that are associated with the trial. You can use Search - * API to search on the tags.

    - */ - Tags?: Tag[]; - - /** - *

    A list of the components associated with the trial. For each component, a summary of the - * component's properties is included.

    - */ - TrialComponentSummaries?: TrialComponentSimpleSummary[]; -} - /** * @internal */ diff --git a/clients/client-sagemaker/src/models/models_4.ts b/clients/client-sagemaker/src/models/models_4.ts index e55980a6c9352..fcfdbfade1656 100644 --- a/clients/client-sagemaker/src/models/models_4.ts +++ b/clients/client-sagemaker/src/models/models_4.ts @@ -4,20 +4,32 @@ import { SENSITIVE_STRING } from "@smithy/smithy-client"; import { ActionStatus, AdditionalInferenceSpecificationDefinition, + AlgorithmSpecification, AppSecurityGroupManagement, BooleanOperator, + Channel, + CheckpointConfig, DefaultSpaceSettings, EdgeOutputConfig, KernelGatewayImageConfig, MetadataProperties, ModelApprovalStatus, + OutputDataConfig, OutputParameter, + ResourceConfig, + StoppingCondition, Tag, UserContext, + VpcConfig, } from "./models_0"; import { _InstanceType, + CrossAccountFilterOption, + DebugHookConfig, + DebugRuleConfiguration, + DebugRuleEvaluationStatus, DeploymentConfig, + ExperimentConfig, FeatureDefinition, InferenceExperimentDataStorageConfig, InferenceExperimentSchedule, @@ -37,10 +49,12 @@ import { Processor, ProfilerRuleConfiguration, ProvisioningParameter, + RetryStrategy, RootAccess, ShadowModeConfig, SourceIpConfig, SpaceSettings, + TensorBoardOutputConfig, TrialComponentArtifact, TrialComponentParameterValue, TrialComponentStatus, @@ -58,9 +72,15 @@ import { FeatureMetadata, FeatureParameter, Filter, + MetricData, + ModelArtifacts, + SecondaryStatus, + SecondaryStatusTransition, SelectiveExecutionConfig, + TrainingJobStatus, TrialComponentMetricSummary, TrialComponentSource, + TrialSource, Workforce, Workteam, } from "./models_2"; @@ -85,12 +105,527 @@ import { Project, ResourceConfigForUpdate, ResourceType, - SearchSortOrder, - TrainingJob, TransformJob, - Trial, } from "./models_3"; +/** + * @public + */ +export interface RetryPipelineExecutionRequest { + /** + *

    The Amazon Resource Name (ARN) of the pipeline execution.

    + */ + PipelineExecutionArn: string | undefined; + + /** + *

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the + * operation. An idempotent operation completes no more than once.

    + */ + ClientRequestToken?: string; + + /** + *

    This configuration, if specified, overrides the parallelism configuration + * of the parent pipeline.

    + */ + ParallelismConfiguration?: ParallelismConfiguration; +} + +/** + * @public + */ +export interface RetryPipelineExecutionResponse { + /** + *

    The Amazon Resource Name (ARN) of the pipeline execution.

    + */ + PipelineExecutionArn?: string; +} + +/** + * @public + * @enum + */ +export const SearchSortOrder = { + ASCENDING: "Ascending", + DESCENDING: "Descending", +} as const; + +/** + * @public + */ +export type SearchSortOrder = (typeof SearchSortOrder)[keyof typeof SearchSortOrder]; + +/** + * @public + *

    Contains information about a training job.

    + */ +export interface TrainingJob { + /** + *

    The name of the training job.

    + */ + TrainingJobName?: string; + + /** + *

    The Amazon Resource Name (ARN) of the training job.

    + */ + TrainingJobArn?: string; + + /** + *

    The Amazon Resource Name (ARN) of the associated hyperparameter tuning job if the + * training job was launched by a hyperparameter tuning job.

    + */ + TuningJobArn?: string; + + /** + *

    The Amazon Resource Name (ARN) of the labeling job.

    + */ + LabelingJobArn?: string; + + /** + *

    The Amazon Resource Name (ARN) of the job.

    + */ + AutoMLJobArn?: string; + + /** + *

    Information about the Amazon S3 location that is configured for storing model + * artifacts.

    + */ + ModelArtifacts?: ModelArtifacts; + + /** + *

    The status of the + * training + * job.

    + *

    Training job statuses are:

    + *
      + *
    • + *

      + * InProgress - The training is in progress.

      + *
    • + *
    • + *

      + * Completed - The training job has completed.

      + *
    • + *
    • + *

      + * Failed - The training job has failed. To see the reason for the + * failure, see the FailureReason field in the response to a + * DescribeTrainingJobResponse call.

      + *
    • + *
    • + *

      + * Stopping - The training job is stopping.

      + *
    • + *
    • + *

      + * Stopped - The training job has stopped.

      + *
    • + *
    + *

    For + * more detailed information, see SecondaryStatus.

    + */ + TrainingJobStatus?: TrainingJobStatus | string; + + /** + *

    Provides detailed information about the state of the training job. For detailed + * information about the secondary status of the training job, see + * StatusMessage under SecondaryStatusTransition.

    + *

    SageMaker provides primary statuses and secondary statuses that apply to each of + * them:

    + *
    + *
    InProgress
    + *
    + *
      + *
    • + *

      + * Starting + * - Starting the training job.

      + *
    • + *
    • + *

      + * Downloading - An optional stage for algorithms that + * support File training input mode. It indicates that + * data is being downloaded to the ML storage volumes.

      + *
    • + *
    • + *

      + * Training - Training is in progress.

      + *
    • + *
    • + *

      + * Uploading - Training is complete and the model + * artifacts are being uploaded to the S3 location.

      + *
    • + *
    + *
    + *
    Completed
    + *
    + *
      + *
    • + *

      + * Completed - The training job has completed.

      + *
    • + *
    + *
    + *
    Failed
    + *
    + *
      + *
    • + *

      + * Failed - The training job has failed. The reason for + * the failure is returned in the FailureReason field of + * DescribeTrainingJobResponse.

      + *
    • + *
    + *
    + *
    Stopped
    + *
    + *
      + *
    • + *

      + * MaxRuntimeExceeded - The job stopped because it + * exceeded the maximum allowed runtime.

      + *
    • + *
    • + *

      + * Stopped - The training job has stopped.

      + *
    • + *
    + *
    + *
    Stopping
    + *
    + *
      + *
    • + *

      + * Stopping - Stopping the training job.

      + *
    • + *
    + *
    + *
    + * + *

    Valid values for SecondaryStatus are subject to change.

    + *
    + *

    We no longer support the following secondary statuses:

    + *
      + *
    • + *

      + * LaunchingMLInstances + *

      + *
    • + *
    • + *

      + * PreparingTrainingStack + *

      + *
    • + *
    • + *

      + * DownloadingTrainingImage + *

      + *
    • + *
    + */ + SecondaryStatus?: SecondaryStatus | string; + + /** + *

    If the training job failed, the reason it failed.

    + */ + FailureReason?: string; + + /** + *

    Algorithm-specific parameters.

    + */ + HyperParameters?: Record; + + /** + *

    Information about the algorithm used for training, and algorithm metadata.

    + */ + AlgorithmSpecification?: AlgorithmSpecification; + + /** + *

    The Amazon Web Services Identity and Access Management (IAM) role configured for the + * training job.

    + */ + RoleArn?: string; + + /** + *

    An array of Channel objects that describes each data input + * channel.

    + *

    Your input must be in the same Amazon Web Services region as your training job.

    + */ + InputDataConfig?: Channel[]; + + /** + *

    The S3 path where model artifacts that you configured when creating the job are + * stored. SageMaker creates subfolders for model artifacts.

    + */ + OutputDataConfig?: OutputDataConfig; + + /** + *

    Resources, including ML compute instances and ML storage volumes, that are configured + * for model training.

    + */ + ResourceConfig?: ResourceConfig; + + /** + *

    A VpcConfig object that specifies the VPC that this training job has access + * to. For more information, see Protect Training Jobs by Using an Amazon + * Virtual Private Cloud.

    + */ + VpcConfig?: VpcConfig; + + /** + *

    Specifies a limit to how long a model training job can run. It also specifies how long + * a managed Spot training job has to complete. When the job reaches the time limit, SageMaker + * ends the training job. Use this API to cap model training costs.

    + *

    To stop a job, SageMaker sends the algorithm the SIGTERM signal, which delays + * job termination for 120 seconds. Algorithms can use this 120-second window to save the + * model artifacts, so the results of training are not lost.

    + */ + StoppingCondition?: StoppingCondition; + + /** + *

    A timestamp that indicates when the training job was created.

    + */ + CreationTime?: Date; + + /** + *

    Indicates the time when the training job starts on training instances. You are billed + * for the time interval between this time and the value of TrainingEndTime. + * The start time in CloudWatch Logs might be later than this time. The difference is due to the time + * it takes to download the training data and to the size of the training container.

    + */ + TrainingStartTime?: Date; + + /** + *

    Indicates the time when the training job ends on training instances. You are billed + * for the time interval between the value of TrainingStartTime and this time. + * For successful jobs and stopped jobs, this is the time after model artifacts are + * uploaded. For failed jobs, this is the time when SageMaker detects a job failure.

    + */ + TrainingEndTime?: Date; + + /** + *

    A timestamp that indicates when the status of the training job was last + * modified.

    + */ + LastModifiedTime?: Date; + + /** + *

    A history of all of the secondary statuses that the training job has transitioned + * through.

    + */ + SecondaryStatusTransitions?: SecondaryStatusTransition[]; + + /** + *

    A list of final metric values that are set when the training job completes. Used only + * if the training job was configured to use metrics.

    + */ + FinalMetricDataList?: MetricData[]; + + /** + *

    If the TrainingJob was created with network isolation, the value is set + * to true. If network isolation is enabled, nodes can't communicate beyond + * the VPC they run in.

    + */ + EnableNetworkIsolation?: boolean; + + /** + *

    To encrypt all communications between ML compute instances in distributed training, + * choose True. Encryption provides greater security for distributed training, + * but training might take longer. How long it takes depends on the amount of communication + * between compute instances, especially if you use a deep learning algorithm in + * distributed training.

    + */ + EnableInterContainerTrafficEncryption?: boolean; + + /** + *

    When true, enables managed spot training using Amazon EC2 Spot instances to run + * training jobs instead of on-demand instances. For more information, see Managed Spot Training.

    + */ + EnableManagedSpotTraining?: boolean; + + /** + *

    Contains information about the output location for managed spot training checkpoint + * data.

    + */ + CheckpointConfig?: CheckpointConfig; + + /** + *

    The training time in seconds.

    + */ + TrainingTimeInSeconds?: number; + + /** + *

    The billable time in seconds.

    + */ + BillableTimeInSeconds?: number; + + /** + *

    Configuration information for the Amazon SageMaker Debugger hook parameters, metric and tensor collections, and + * storage paths. To learn more about + * how to configure the DebugHookConfig parameter, + * see Use the SageMaker and Debugger Configuration API Operations to Create, Update, and Debug Your Training Job.

    + */ + DebugHookConfig?: DebugHookConfig; + + /** + *

    Associates a SageMaker job as a trial component with an experiment and trial. Specified when + * you call the following APIs:

    + * + */ + ExperimentConfig?: ExperimentConfig; + + /** + *

    Information about the debug rule configuration.

    + */ + DebugRuleConfigurations?: DebugRuleConfiguration[]; + + /** + *

    Configuration of storage locations for the Amazon SageMaker Debugger TensorBoard output data.

    + */ + TensorBoardOutputConfig?: TensorBoardOutputConfig; + + /** + *

    Information about the evaluation status of the rules for the training job.

    + */ + DebugRuleEvaluationStatuses?: DebugRuleEvaluationStatus[]; + + /** + *

    The environment variables to set in the Docker container.

    + */ + Environment?: Record; + + /** + *

    The number of times to retry the job when the job fails due to an + * InternalServerError.

    + */ + RetryStrategy?: RetryStrategy; + + /** + *

    An array of key-value pairs. You can use tags to categorize your Amazon Web Services + * resources in different ways, for example, by purpose, owner, or environment. For more + * information, see Tagging Amazon Web Services Resources.

    + */ + Tags?: Tag[]; +} + +/** + * @public + *

    A short summary of a trial component.

    + */ +export interface TrialComponentSimpleSummary { + /** + *

    The name of the trial component.

    + */ + TrialComponentName?: string; + + /** + *

    The Amazon Resource Name (ARN) of the trial component.

    + */ + TrialComponentArn?: string; + + /** + *

    The Amazon Resource Name (ARN) and job type of the source of a trial component.

    + */ + TrialComponentSource?: TrialComponentSource; + + /** + *

    When the component was created.

    + */ + CreationTime?: Date; + + /** + *

    Information about the user who created or modified an experiment, trial, trial + * component, lineage group, project, or model card.

    + */ + CreatedBy?: UserContext; +} + +/** + * @public + *

    The properties of a trial as returned by the Search API.

    + */ +export interface Trial { + /** + *

    The name of the trial.

    + */ + TrialName?: string; + + /** + *

    The Amazon Resource Name (ARN) of the trial.

    + */ + TrialArn?: string; + + /** + *

    The name of the trial as displayed. If DisplayName isn't specified, + * TrialName is displayed.

    + */ + DisplayName?: string; + + /** + *

    The name of the experiment the trial is part of.

    + */ + ExperimentName?: string; + + /** + *

    The source of the trial.

    + */ + Source?: TrialSource; + + /** + *

    When the trial was created.

    + */ + CreationTime?: Date; + + /** + *

    Who created the trial.

    + */ + CreatedBy?: UserContext; + + /** + *

    Who last modified the trial.

    + */ + LastModifiedTime?: Date; + + /** + *

    Information about the user who created or modified an experiment, trial, trial + * component, lineage group, project, or model card.

    + */ + LastModifiedBy?: UserContext; + + /** + *

    Metadata properties of the tracking entity, trial, or trial component.

    + */ + MetadataProperties?: MetadataProperties; + + /** + *

    The list of tags that are associated with the trial. You can use Search + * API to search on the tags.

    + */ + Tags?: Tag[]; + + /** + *

    A list of the components associated with the trial. For each component, a summary of the + * component's properties is included.

    + */ + TrialComponentSummaries?: TrialComponentSimpleSummary[]; +} + /** * @public *

    Detailed information about the source of a trial component. Either @@ -284,10 +819,10 @@ export interface SearchRecord { PipelineExecution?: PipelineExecution; /** - *

    Amazon SageMaker Feature Store stores features in a collection called Feature Group. - * A Feature Group can be visualized as a table which has rows, - * with a unique identifier for each row where each column in the table is a feature. - * In principle, a Feature Group is composed of features and values per features.

    + *

    Amazon SageMaker Feature Store stores features in a collection called Feature Group. A + * Feature Group can be visualized as a table which has rows, with a unique identifier for + * each row where each column in the table is a feature. In principle, a Feature Group is + * composed of features and values per features.

    */ FeatureGroup?: FeatureGroup; @@ -1154,7 +1689,7 @@ export interface UpdateExperimentResponse { */ export interface UpdateFeatureGroupRequest { /** - *

    The name of the feature group that you're updating.

    + *

    The name or Amazon Resource Name (ARN) of the feature group that you're updating.

    */ FeatureGroupName: string | undefined; @@ -1186,7 +1721,8 @@ export interface UpdateFeatureGroupResponse { */ export interface UpdateFeatureMetadataRequest { /** - *

    The name of the feature group containing the feature that you're updating.

    + *

    The name or Amazon Resource Name (ARN) of the feature group containing the feature that + * you're updating.

    */ FeatureGroupName: string | undefined; @@ -1206,7 +1742,8 @@ export interface UpdateFeatureMetadataRequest { ParameterAdditions?: FeatureParameter[]; /** - *

    A list of parameter keys that you can specify to remove parameters that describe your feature.

    + *

    A list of parameter keys that you can specify to remove parameters that describe your + * feature.

    */ ParameterRemovals?: string[]; } @@ -2315,6 +2852,20 @@ export interface SearchRequest { *

    The maximum number of results to return.

    */ MaxResults?: number; + + /** + *

    + * A cross account filter option. When the value is "CrossAccount" the + * search results will only include resources made discoverable to you from other + * accounts. When the value is "SameAccount" or null the + * search results will only include resources from your account. Default is + * null. For more information on searching for resources made + * discoverable to your account, see + * Search discoverable resources in the SageMaker Developer Guide. + * The maximum number of ResourceCatalogs viewable is 1000. + *

    + */ + CrossAccountFilterOption?: CrossAccountFilterOption | string; } /** diff --git a/clients/client-sagemaker/src/pagination/ListResourceCatalogsPaginator.ts b/clients/client-sagemaker/src/pagination/ListResourceCatalogsPaginator.ts new file mode 100644 index 0000000000000..f539e49477ca7 --- /dev/null +++ b/clients/client-sagemaker/src/pagination/ListResourceCatalogsPaginator.ts @@ -0,0 +1,50 @@ +// smithy-typescript generated code +import { Paginator } from "@smithy/types"; + +import { + ListResourceCatalogsCommand, + ListResourceCatalogsCommandInput, + ListResourceCatalogsCommandOutput, +} from "../commands/ListResourceCatalogsCommand"; +import { SageMakerClient } from "../SageMakerClient"; +import { SageMakerPaginationConfiguration } from "./Interfaces"; + +/** + * @internal + */ +const makePagedClientRequest = async ( + client: SageMakerClient, + input: ListResourceCatalogsCommandInput, + ...args: any +): Promise => { + // @ts-ignore + return await client.send(new ListResourceCatalogsCommand(input), ...args); +}; +/** + * @public + */ +export async function* paginateListResourceCatalogs( + config: SageMakerPaginationConfiguration, + input: ListResourceCatalogsCommandInput, + ...additionalArguments: any +): Paginator { + // ToDo: replace with actual type instead of typeof input.NextToken + let token: typeof input.NextToken | undefined = config.startingToken || undefined; + let hasNext = true; + let page: ListResourceCatalogsCommandOutput; + while (hasNext) { + input.NextToken = token; + input["MaxResults"] = config.pageSize; + if (config.client instanceof SageMakerClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected SageMaker | SageMakerClient"); + } + yield page; + const prevToken = token; + token = page.NextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + // @ts-ignore + return undefined; +} diff --git a/clients/client-sagemaker/src/pagination/index.ts b/clients/client-sagemaker/src/pagination/index.ts index 950658d6d8fed..2a7864bae9723 100644 --- a/clients/client-sagemaker/src/pagination/index.ts +++ b/clients/client-sagemaker/src/pagination/index.ts @@ -54,6 +54,7 @@ export * from "./ListPipelineParametersForExecutionPaginator"; export * from "./ListPipelinesPaginator"; export * from "./ListProcessingJobsPaginator"; export * from "./ListProjectsPaginator"; +export * from "./ListResourceCatalogsPaginator"; export * from "./ListSpacesPaginator"; export * from "./ListStageDevicesPaginator"; export * from "./ListStudioLifecycleConfigsPaginator"; diff --git a/clients/client-sagemaker/src/protocols/Aws_json1_1.ts b/clients/client-sagemaker/src/protocols/Aws_json1_1.ts index 37c490f5ff925..5d2e4ea8860ab 100644 --- a/clients/client-sagemaker/src/protocols/Aws_json1_1.ts +++ b/clients/client-sagemaker/src/protocols/Aws_json1_1.ts @@ -616,6 +616,10 @@ import { import { ListPipelinesCommandInput, ListPipelinesCommandOutput } from "../commands/ListPipelinesCommand"; import { ListProcessingJobsCommandInput, ListProcessingJobsCommandOutput } from "../commands/ListProcessingJobsCommand"; import { ListProjectsCommandInput, ListProjectsCommandOutput } from "../commands/ListProjectsCommand"; +import { + ListResourceCatalogsCommandInput, + ListResourceCatalogsCommandOutput, +} from "../commands/ListResourceCatalogsCommand"; import { ListSpacesCommandInput, ListSpacesCommandOutput } from "../commands/ListSpacesCommand"; import { ListStageDevicesCommandInput, ListStageDevicesCommandOutput } from "../commands/ListStageDevicesCommand"; import { @@ -1041,7 +1045,6 @@ import { DeleteExperimentRequest, DeleteFeatureGroupRequest, DeleteFlowDefinitionRequest, - DeleteHubContentRequest, DeleteHubRequest, DeploymentConfig, DeploymentStage, @@ -1189,6 +1192,7 @@ import { WorkforceVpcConfigRequest, } from "../models/models_1"; import { + DeleteHubContentRequest, DeleteHumanTaskUiRequest, DeleteImageRequest, DeleteImageVersionRequest, @@ -1515,6 +1519,8 @@ import { ListProcessingJobsResponse, ListProjectsInput, ListProjectsOutput, + ListResourceCatalogsRequest, + ListResourceCatalogsResponse, ListSpacesRequest, ListSpacesResponse, ListStageDevicesRequest, @@ -1583,22 +1589,20 @@ import { RegisterDevicesRequest, RenderableTask, RenderUiTemplateRequest, + ResourceCatalog, ResourceConfigForUpdate, - RetryPipelineExecutionRequest, SpaceDetails, StudioLifecycleConfigDetails, SuggestionQuery, - TrainingJob, TrainingJobSummary, TransformJob, TransformJobSummary, - Trial, - TrialComponentSimpleSummary, TrialComponentSummary, TrialSummary, UserProfileDetails, } from "../models/models_3"; import { + RetryPipelineExecutionRequest, SearchExpression, SearchRecord, SearchRequest, @@ -1625,7 +1629,10 @@ import { StopProcessingJobRequest, StopTrainingJobRequest, StopTransformJobRequest, + TrainingJob, + Trial, TrialComponent, + TrialComponentSimpleSummary, TrialComponentSourceDetail, UpdateActionRequest, UpdateAppImageConfigRequest, @@ -4643,6 +4650,19 @@ export const se_ListProjectsCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1ListResourceCatalogsCommand + */ +export const se_ListResourceCatalogsCommand = async ( + input: ListResourceCatalogsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("ListResourceCatalogs"); + let body: any; + body = JSON.stringify(se_ListResourceCatalogsRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1ListSpacesCommand */ @@ -15721,6 +15741,46 @@ const de_ListProjectsCommandError = async ( }); }; +/** + * deserializeAws_json1_1ListResourceCatalogsCommand + */ +export const de_ListResourceCatalogsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_ListResourceCatalogsCommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = de_ListResourceCatalogsResponse(data, context); + const response: ListResourceCatalogsCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + +/** + * deserializeAws_json1_1ListResourceCatalogsCommandError + */ +const de_ListResourceCatalogsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); +}; + /** * deserializeAws_json1_1ListSpacesCommand */ @@ -21067,6 +21127,21 @@ const se_ListProjectsInput = (input: ListProjectsInput, context: __SerdeContext) }); }; +/** + * serializeAws_json1_1ListResourceCatalogsRequest + */ +const se_ListResourceCatalogsRequest = (input: ListResourceCatalogsRequest, context: __SerdeContext): any => { + return take(input, { + CreationTimeAfter: (_) => Math.round(_.getTime() / 1000), + CreationTimeBefore: (_) => Math.round(_.getTime() / 1000), + MaxResults: [], + NameContains: [], + NextToken: [], + SortBy: [], + SortOrder: [], + }); +}; + // se_ListSpacesRequest omitted. // se_ListStageDevicesRequest omitted. @@ -21666,6 +21741,7 @@ const se_SearchExpressionList = (input: SearchExpression[], context: __SerdeCont */ const se_SearchRequest = (input: SearchRequest, context: __SerdeContext): any => { return take(input, { + CrossAccountFilterOption: [], MaxResults: [], NextToken: [], Resource: [], @@ -25957,6 +26033,16 @@ const de_ListProjectsOutput = (output: any, context: __SerdeContext): ListProjec }) as any; }; +/** + * deserializeAws_json1_1ListResourceCatalogsResponse + */ +const de_ListResourceCatalogsResponse = (output: any, context: __SerdeContext): ListResourceCatalogsResponse => { + return take(output, { + NextToken: __expectString, + ResourceCatalogs: (_: any) => de_ResourceCatalogList(_, context), + }) as any; +}; + /** * deserializeAws_json1_1ListSpacesResponse */ @@ -27494,6 +27580,30 @@ const de_RecommendationMetrics = (output: any, context: __SerdeContext): Recomme // de_ResolvedAttributes omitted. +/** + * deserializeAws_json1_1ResourceCatalog + */ +const de_ResourceCatalog = (output: any, context: __SerdeContext): ResourceCatalog => { + return take(output, { + CreationTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + Description: __expectString, + ResourceCatalogArn: __expectString, + ResourceCatalogName: __expectString, + }) as any; +}; + +/** + * deserializeAws_json1_1ResourceCatalogList + */ +const de_ResourceCatalogList = (output: any, context: __SerdeContext): ResourceCatalog[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_ResourceCatalog(entry, context); + }); + return retVal; +}; + // de_ResourceConfig omitted. // de_ResourceInUse omitted. diff --git a/codegen/sdk-codegen/aws-models/sagemaker.json b/codegen/sdk-codegen/aws-models/sagemaker.json index 2f0e81d50bc88..bd3f3ebd34441 100644 --- a/codegen/sdk-codegen/aws-models/sagemaker.json +++ b/codegen/sdk-codegen/aws-models/sagemaker.json @@ -7997,7 +7997,7 @@ } ], "traits": { - "smithy.api#documentation": "

    Create a new FeatureGroup. A FeatureGroup is a group of\n Features defined in the FeatureStore to describe a\n Record.

    \n

    The FeatureGroup defines the schema and features contained in the\n FeatureGroup. A FeatureGroup definition is composed of a list of\n Features, a RecordIdentifierFeatureName, an\n EventTimeFeatureName and configurations for its OnlineStore\n and OfflineStore. Check Amazon Web Services service quotas to see\n the FeatureGroups quota for your Amazon Web Services account.

    \n \n

    You must include at least one of OnlineStoreConfig and\n OfflineStoreConfig to create a FeatureGroup.

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

    Create a new FeatureGroup. A FeatureGroup is a group of\n Features defined in the FeatureStore to describe a\n Record.

    \n

    The FeatureGroup defines the schema and features contained in the\n FeatureGroup. A FeatureGroup definition is composed of a list of\n Features, a RecordIdentifierFeatureName, an\n EventTimeFeatureName and configurations for its OnlineStore\n and OfflineStore. Check Amazon Web Services service\n quotas to see the FeatureGroups quota for your Amazon Web Services\n account.

    \n \n

    You must include at least one of OnlineStoreConfig and\n OfflineStoreConfig to create a FeatureGroup.

    \n
    " } }, "com.amazonaws.sagemaker#CreateFeatureGroupRequest": { @@ -8006,7 +8006,7 @@ "FeatureGroupName": { "target": "com.amazonaws.sagemaker#FeatureGroupName", "traits": { - "smithy.api#documentation": "

    The name of the FeatureGroup. The name must be unique within an Amazon Web Services Region\n in an Amazon Web Services account. The name:

    \n
      \n
    • \n

      Must start and end with an alphanumeric character.

      \n
    • \n
    • \n

      Can only contain alphanumeric character and hyphens. Spaces are not allowed.\n

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

    The name of the FeatureGroup. The name must be unique within an Amazon Web Services Region in an Amazon Web Services account. The name:

    \n
      \n
    • \n

      Must start and end with an alphanumeric character.

      \n
    • \n
    • \n

      Can only contain alphanumeric character and hyphens. Spaces are not allowed.\n

      \n
    • \n
    ", "smithy.api#required": {} } }, @@ -8034,13 +8034,13 @@ "OnlineStoreConfig": { "target": "com.amazonaws.sagemaker#OnlineStoreConfig", "traits": { - "smithy.api#documentation": "

    You can turn the OnlineStore on or off by specifying True for\n the EnableOnlineStore flag in OnlineStoreConfig.

    \n

    You can also include an Amazon Web Services KMS key ID (KMSKeyId) for at-rest encryption of\n the OnlineStore.

    \n

    The default value is False.

    " + "smithy.api#documentation": "

    You can turn the OnlineStore on or off by specifying True for\n the EnableOnlineStore flag in OnlineStoreConfig.

    \n

    You can also include an Amazon Web Services KMS key ID (KMSKeyId) for\n at-rest encryption of the OnlineStore.

    \n

    The default value is False.

    " } }, "OfflineStoreConfig": { "target": "com.amazonaws.sagemaker#OfflineStoreConfig", "traits": { - "smithy.api#documentation": "

    Use this to configure an OfflineFeatureStore. This parameter allows you to\n specify:

    \n
      \n
    • \n

      The Amazon Simple Storage Service (Amazon S3) location of an\n OfflineStore.

      \n
    • \n
    • \n

      A configuration for an Amazon Web Services Glue or Amazon Web Services Hive data catalog.

      \n
    • \n
    • \n

      An KMS encryption key to encrypt the Amazon S3 location used for\n OfflineStore. If KMS encryption key is not specified, by default we encrypt all data at rest using \n Amazon Web Services KMS key. By defining your bucket-level key for SSE, \n you can reduce Amazon Web Services KMS requests costs by up to 99 percent.

      \n
    • \n
    • \n

      Format for the offline store table. Supported formats are Glue (Default) and Apache Iceberg.

      \n
    • \n
    \n

    To learn more about this parameter, see OfflineStoreConfig.

    " + "smithy.api#documentation": "

    Use this to configure an OfflineFeatureStore. This parameter allows you to\n specify:

    \n
      \n
    • \n

      The Amazon Simple Storage Service (Amazon S3) location of an\n OfflineStore.

      \n
    • \n
    • \n

      A configuration for an Amazon Web Services Glue or Amazon Web Services Hive data\n catalog.

      \n
    • \n
    • \n

      An KMS encryption key to encrypt the Amazon S3 location used for\n OfflineStore. If KMS encryption key is not specified, by default we\n encrypt all data at rest using Amazon Web Services KMS key. By defining your bucket-level\n key for SSE, you can reduce Amazon Web Services KMS requests costs by up to\n 99 percent.

      \n
    • \n
    • \n

      Format for the offline store table. Supported formats are Glue (Default) and\n Apache Iceberg.

      \n
    • \n
    \n

    To learn more about this parameter, see OfflineStoreConfig.

    " } }, "RoleArn": { @@ -11176,6 +11176,23 @@ "com.amazonaws.sagemaker#CreationTime": { "type": "timestamp" }, + "com.amazonaws.sagemaker#CrossAccountFilterOption": { + "type": "enum", + "members": { + "SAME_ACCOUNT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SameAccount" + } + }, + "CROSS_ACCOUNT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CrossAccount" + } + } + } + }, "com.amazonaws.sagemaker#CsvContentType": { "type": "string", "traits": { @@ -12438,7 +12455,7 @@ } ], "traits": { - "smithy.api#documentation": "

    Delete the FeatureGroup and any data that was written to the\n OnlineStore of the FeatureGroup. Data cannot be accessed from\n the OnlineStore immediately after DeleteFeatureGroup is called.

    \n

    Data written into the OfflineStore will not be deleted. The Amazon Web Services Glue\n database and tables that are automatically created for your OfflineStore are\n not deleted.

    " + "smithy.api#documentation": "

    Delete the FeatureGroup and any data that was written to the\n OnlineStore of the FeatureGroup. Data cannot be accessed from\n the OnlineStore immediately after DeleteFeatureGroup is called.

    \n

    Data written into the OfflineStore will not be deleted. The Amazon Web Services Glue database and tables that are automatically created for your\n OfflineStore are not deleted.

    " } }, "com.amazonaws.sagemaker#DeleteFeatureGroupRequest": { @@ -16081,9 +16098,9 @@ "type": "structure", "members": { "FeatureGroupName": { - "target": "com.amazonaws.sagemaker#FeatureGroupName", + "target": "com.amazonaws.sagemaker#FeatureGroupNameOrArn", "traits": { - "smithy.api#documentation": "

    The name of the FeatureGroup you want described.

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

    The name or Amazon Resource Name (ARN) of the FeatureGroup you want\n described.

    ", "smithy.api#required": {} } }, @@ -16104,7 +16121,7 @@ "FeatureGroupArn": { "target": "com.amazonaws.sagemaker#FeatureGroupArn", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the FeatureGroup.

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

    The Amazon Resource Name (ARN) of the FeatureGroup.

    ", "smithy.api#required": {} } }, @@ -16125,14 +16142,14 @@ "EventTimeFeatureName": { "target": "com.amazonaws.sagemaker#FeatureName", "traits": { - "smithy.api#documentation": "

    The name of the feature that stores the EventTime of a Record in a\n FeatureGroup.

    \n

    An EventTime is a point in time when a new event occurs that\n corresponds to the creation or update of a Record in a\n FeatureGroup. All Records in the FeatureGroup\n have a corresponding EventTime.

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

    The name of the feature that stores the EventTime of a Record in a\n FeatureGroup.

    \n

    An EventTime is a point in time when a new event occurs that corresponds\n to the creation or update of a Record in a FeatureGroup. All\n Records in the FeatureGroup have a corresponding\n EventTime.

    ", "smithy.api#required": {} } }, "FeatureDefinitions": { "target": "com.amazonaws.sagemaker#FeatureDefinitions", "traits": { - "smithy.api#documentation": "

    A list of the Features in the FeatureGroup. \n Each feature is defined by a FeatureName and FeatureType.

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

    A list of the Features in the FeatureGroup. Each feature is\n defined by a FeatureName and FeatureType.

    ", "smithy.api#required": {} } }, @@ -16158,13 +16175,13 @@ "OfflineStoreConfig": { "target": "com.amazonaws.sagemaker#OfflineStoreConfig", "traits": { - "smithy.api#documentation": "

    The configuration of the offline store. It includes the following configurations:

    \n
      \n
    • \n

      Amazon S3 location of the offline store.

      \n
    • \n
    • \n

      Configuration of the Glue data catalog.

      \n
    • \n
    • \n

      Table format of the offline store.

      \n
    • \n
    • \n

      Option to disable the automatic creation of a Glue table for the offline store.

      \n
    • \n
    • \n

      Encryption configuration.

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

    The configuration of the offline store. It includes the following configurations:

    \n
      \n
    • \n

      Amazon S3 location of the offline store.

      \n
    • \n
    • \n

      Configuration of the Glue data catalog.

      \n
    • \n
    • \n

      Table format of the offline store.

      \n
    • \n
    • \n

      Option to disable the automatic creation of a Glue table for the offline\n store.

      \n
    • \n
    • \n

      Encryption configuration.

      \n
    • \n
    " } }, "RoleArn": { "target": "com.amazonaws.sagemaker#RoleArn", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the IAM execution role used to persist data into the OfflineStore if an OfflineStoreConfig is provided.

    " + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the IAM execution role used to persist data into the\n OfflineStore if an OfflineStoreConfig is provided.

    " } }, "FeatureGroupStatus": { @@ -16236,9 +16253,9 @@ "type": "structure", "members": { "FeatureGroupName": { - "target": "com.amazonaws.sagemaker#FeatureGroupName", + "target": "com.amazonaws.sagemaker#FeatureGroupNameOrArn", "traits": { - "smithy.api#documentation": "

    The name of the feature group containing the feature.

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

    The name or Amazon Resource Name (ARN) of the feature group containing the\n feature.

    ", "smithy.api#required": {} } }, @@ -16295,7 +16312,7 @@ "LastModifiedTime": { "target": "com.amazonaws.sagemaker#LastModifiedTime", "traits": { - "smithy.api#documentation": "

    A timestamp indicating when the metadata for the feature group was modified. For example, if you add a parameter describing the feature, the timestamp changes to reflect the last time you

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

    A timestamp indicating when the metadata for the feature group was modified. For\n example, if you add a parameter describing the feature, the timestamp changes to reflect\n the last time you

    ", "smithy.api#required": {} } }, @@ -23730,13 +23747,13 @@ "RecordIdentifierFeatureName": { "target": "com.amazonaws.sagemaker#FeatureName", "traits": { - "smithy.api#documentation": "

    The name of the Feature whose value uniquely identifies a\n Record defined in the FeatureGroup\n FeatureDefinitions.

    " + "smithy.api#documentation": "

    The name of the Feature whose value uniquely identifies a\n Record defined in the FeatureGroup\n FeatureDefinitions.

    " } }, "EventTimeFeatureName": { "target": "com.amazonaws.sagemaker#FeatureName", "traits": { - "smithy.api#documentation": "

    The name of the feature that stores the EventTime of a Record in a\n FeatureGroup.

    \n

    A EventTime is point in time when a new event\n occurs that corresponds to the creation or update of a Record in\n FeatureGroup. All Records in the FeatureGroup\n must have a corresponding EventTime.

    " + "smithy.api#documentation": "

    The name of the feature that stores the EventTime of a Record in a\n FeatureGroup.

    \n

    A EventTime is point in time when a new event occurs that corresponds to\n the creation or update of a Record in FeatureGroup. All\n Records in the FeatureGroup must have a corresponding\n EventTime.

    " } }, "FeatureDefinitions": { @@ -23787,7 +23804,7 @@ "FailureReason": { "target": "com.amazonaws.sagemaker#FailureReason", "traits": { - "smithy.api#documentation": "

    The reason that the FeatureGroup failed to \n be replicated in the OfflineStore. This is \n failure may be due to a failure to create a FeatureGroup in\n or delete a FeatureGroup from the OfflineStore.

    " + "smithy.api#documentation": "

    The reason that the FeatureGroup failed to be replicated in the\n OfflineStore. This is failure may be due to a failure to create a\n FeatureGroup in or delete a FeatureGroup from the\n OfflineStore.

    " } }, "Description": { @@ -23804,7 +23821,7 @@ } }, "traits": { - "smithy.api#documentation": "

    Amazon SageMaker Feature Store stores features in a collection called Feature Group. \n A Feature Group can be visualized as a table which has rows, \n with a unique identifier for each row where each column in the table is a feature. \n In principle, a Feature Group is composed of features and values per features.

    " + "smithy.api#documentation": "

    Amazon SageMaker Feature Store stores features in a collection called Feature Group. A\n Feature Group can be visualized as a table which has rows, with a unique identifier for\n each row where each column in the table is a feature. In principle, a Feature Group is\n composed of features and values per features.

    " } }, "com.amazonaws.sagemaker#FeatureGroupArn": { @@ -23845,6 +23862,16 @@ } } }, + "com.amazonaws.sagemaker#FeatureGroupNameOrArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^(arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:feature-group\\/)?([a-zA-Z0-9]([_-]*[a-zA-Z0-9]){0,63})$" + } + }, "com.amazonaws.sagemaker#FeatureGroupSortBy": { "type": "enum", "members": { @@ -23952,7 +23979,7 @@ "CreationTime": { "target": "com.amazonaws.sagemaker#Timestamp", "traits": { - "smithy.api#documentation": "

    A timestamp indicating the time of creation time of the FeatureGroup.

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

    A timestamp indicating the time of creation time of the\n FeatureGroup.

    ", "smithy.api#required": {} } }, @@ -23970,7 +23997,7 @@ } }, "traits": { - "smithy.api#documentation": "

    The name, Arn, CreationTime, FeatureGroup values,\n LastUpdatedTime and EnableOnlineStorage status of a\n FeatureGroup.

    " + "smithy.api#documentation": "

    The name, ARN, CreationTime, FeatureGroup values,\n LastUpdatedTime and EnableOnlineStorage status of a\n FeatureGroup.

    " } }, "com.amazonaws.sagemaker#FeatureMetadata": { @@ -24026,7 +24053,7 @@ } }, "traits": { - "smithy.api#documentation": "

    The metadata for a feature. It can either be metadata that you specify, or metadata that is updated automatically.

    " + "smithy.api#documentation": "

    The metadata for a feature. It can either be metadata that you specify, or metadata that\n is updated automatically.

    " } }, "com.amazonaws.sagemaker#FeatureName": { @@ -32023,7 +32050,7 @@ "OfflineStoreStatusEquals": { "target": "com.amazonaws.sagemaker#OfflineStoreStatusValue", "traits": { - "smithy.api#documentation": "

    An OfflineStore status. Filters by OfflineStore status.

    " + "smithy.api#documentation": "

    An OfflineStore status. Filters by OfflineStore status.\n

    " } }, "CreationTimeAfter": { @@ -35648,6 +35675,94 @@ "smithy.api#output": {} } }, + "com.amazonaws.sagemaker#ListResourceCatalogs": { + "type": "operation", + "input": { + "target": "com.amazonaws.sagemaker#ListResourceCatalogsRequest" + }, + "output": { + "target": "com.amazonaws.sagemaker#ListResourceCatalogsResponse" + }, + "traits": { + "smithy.api#documentation": "

    Lists Amazon SageMaker Catalogs based on given filters and orders. The maximum number of\n ResourceCatalogs viewable is 1000.

    ", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ResourceCatalogs", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.sagemaker#ListResourceCatalogsRequest": { + "type": "structure", + "members": { + "NameContains": { + "target": "com.amazonaws.sagemaker#ResourceCatalogName", + "traits": { + "smithy.api#documentation": "

    A string that partially matches one or more ResourceCatalogs names.\n Filters ResourceCatalog by name.

    " + } + }, + "CreationTimeAfter": { + "target": "com.amazonaws.sagemaker#Timestamp", + "traits": { + "smithy.api#documentation": "

    Use this parameter to search for ResourceCatalogs created after a\n specific date and time.

    " + } + }, + "CreationTimeBefore": { + "target": "com.amazonaws.sagemaker#Timestamp", + "traits": { + "smithy.api#documentation": "

    Use this parameter to search for ResourceCatalogs created before a\n specific date and time.

    " + } + }, + "SortOrder": { + "target": "com.amazonaws.sagemaker#ResourceCatalogSortOrder", + "traits": { + "smithy.api#documentation": "

    The order in which the resource catalogs are listed.

    " + } + }, + "SortBy": { + "target": "com.amazonaws.sagemaker#ResourceCatalogSortBy", + "traits": { + "smithy.api#documentation": "

    The value on which the resource catalog list is sorted.

    " + } + }, + "MaxResults": { + "target": "com.amazonaws.sagemaker#MaxResults", + "traits": { + "smithy.api#documentation": "

    The maximum number of results returned by ListResourceCatalogs.

    " + } + }, + "NextToken": { + "target": "com.amazonaws.sagemaker#NextToken", + "traits": { + "smithy.api#documentation": "

    A token to resume pagination of ListResourceCatalogs results.

    " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.sagemaker#ListResourceCatalogsResponse": { + "type": "structure", + "members": { + "ResourceCatalogs": { + "target": "com.amazonaws.sagemaker#ResourceCatalogList", + "traits": { + "smithy.api#documentation": "

    A list of the requested ResourceCatalogs.

    " + } + }, + "NextToken": { + "target": "com.amazonaws.sagemaker#NextToken", + "traits": { + "smithy.api#documentation": "

    A token to resume pagination of ListResourceCatalogs results.

    " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.sagemaker#ListSpaces": { "type": "operation", "input": { @@ -41648,7 +41763,7 @@ "target": "com.amazonaws.sagemaker#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

    Set to True to disable the automatic creation of an Amazon Web Services Glue table when\n configuring an OfflineStore. If set to False, Feature Store will name the \n OfflineStore Glue table following \n Athena's naming recommendations.

    \n

    The default value is False.

    " + "smithy.api#documentation": "

    Set to True to disable the automatic creation of an Amazon Web Services Glue\n table when configuring an OfflineStore. If set to False, Feature\n Store will name the OfflineStore Glue table following Athena's\n naming recommendations.

    \n

    The default value is False.

    " } }, "DataCatalogConfig": { @@ -41665,7 +41780,7 @@ } }, "traits": { - "smithy.api#documentation": "

    The configuration of an OfflineStore.

    \n

    Provide an OfflineStoreConfig in a request to\n CreateFeatureGroup to create an OfflineStore.

    \n

    To encrypt an OfflineStore using at rest data encryption, specify Amazon Web Services Key\n Management Service (KMS) key ID, or KMSKeyId, in\n S3StorageConfig.

    " + "smithy.api#documentation": "

    The configuration of an OfflineStore.

    \n

    Provide an OfflineStoreConfig in a request to\n CreateFeatureGroup to create an OfflineStore.

    \n

    To encrypt an OfflineStore using at rest data encryption, specify Amazon Web Services Key Management Service (KMS) key ID, or KMSKeyId, in\n S3StorageConfig.

    " } }, "com.amazonaws.sagemaker#OfflineStoreStatus": { @@ -41864,7 +41979,7 @@ "target": "com.amazonaws.sagemaker#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

    Turn OnlineStore off by specifying False \n for the EnableOnlineStore flag. Turn OnlineStore \n on by specifying True \n for the EnableOnlineStore flag.

    \n

    The default value is False.

    " + "smithy.api#documentation": "

    Turn OnlineStore off by specifying False for the\n EnableOnlineStore flag. Turn OnlineStore on by specifying\n True for the EnableOnlineStore flag.

    \n

    The default value is False.

    " } }, "TtlDuration": { @@ -41898,7 +42013,7 @@ "KmsKeyId": { "target": "com.amazonaws.sagemaker#KmsKeyId", "traits": { - "smithy.api#documentation": "

    The Amazon Web Services Key Management Service (KMS) key ARN that SageMaker Feature Store uses\n to encrypt the Amazon S3 objects at rest using Amazon S3 server-side encryption.

    \n

    The caller (either user or IAM role) of CreateFeatureGroup must have\n below permissions to the OnlineStore\n KmsKeyId:

    \n
      \n
    • \n

      \n \"kms:Encrypt\"\n

      \n
    • \n
    • \n

      \n \"kms:Decrypt\"\n

      \n
    • \n
    • \n

      \n \"kms:DescribeKey\"\n

      \n
    • \n
    • \n

      \n \"kms:CreateGrant\"\n

      \n
    • \n
    • \n

      \n \"kms:RetireGrant\"\n

      \n
    • \n
    • \n

      \n \"kms:ReEncryptFrom\"\n

      \n
    • \n
    • \n

      \n \"kms:ReEncryptTo\"\n

      \n
    • \n
    • \n

      \n \"kms:GenerateDataKey\"\n

      \n
    • \n
    • \n

      \n \"kms:ListAliases\"\n

      \n
    • \n
    • \n

      \n \"kms:ListGrants\"\n

      \n
    • \n
    • \n

      \n \"kms:RevokeGrant\"\n

      \n
    • \n
    \n

    The caller (either user or IAM role) to all DataPlane operations\n (PutRecord, GetRecord, DeleteRecord) must have\n the following permissions to the KmsKeyId:

    \n
      \n
    • \n

      \n \"kms:Decrypt\"\n

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

    The Amazon Web Services Key Management Service (KMS) key ARN that SageMaker Feature Store\n uses to encrypt the Amazon S3 objects at rest using Amazon S3 server-side\n encryption.

    \n

    The caller (either user or IAM role) of CreateFeatureGroup must have below\n permissions to the OnlineStore\n KmsKeyId:

    \n
      \n
    • \n

      \n \"kms:Encrypt\"\n

      \n
    • \n
    • \n

      \n \"kms:Decrypt\"\n

      \n
    • \n
    • \n

      \n \"kms:DescribeKey\"\n

      \n
    • \n
    • \n

      \n \"kms:CreateGrant\"\n

      \n
    • \n
    • \n

      \n \"kms:RetireGrant\"\n

      \n
    • \n
    • \n

      \n \"kms:ReEncryptFrom\"\n

      \n
    • \n
    • \n

      \n \"kms:ReEncryptTo\"\n

      \n
    • \n
    • \n

      \n \"kms:GenerateDataKey\"\n

      \n
    • \n
    • \n

      \n \"kms:ListAliases\"\n

      \n
    • \n
    • \n

      \n \"kms:ListGrants\"\n

      \n
    • \n
    • \n

      \n \"kms:RevokeGrant\"\n

      \n
    • \n
    \n

    The caller (either user or IAM role) to all DataPlane operations\n (PutRecord, GetRecord, DeleteRecord) must have the\n following permissions to the KmsKeyId:

    \n
      \n
    • \n

      \n \"kms:Decrypt\"\n

      \n
    • \n
    " } } }, @@ -47608,6 +47723,104 @@ "smithy.api#pattern": "^arn:aws[a-z-]*:sagemaker:[a-z0-9-]*:[0-9]{12}:.+$" } }, + "com.amazonaws.sagemaker#ResourceCatalog": { + "type": "structure", + "members": { + "ResourceCatalogArn": { + "target": "com.amazonaws.sagemaker#ResourceCatalogArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the ResourceCatalog.

    ", + "smithy.api#required": {} + } + }, + "ResourceCatalogName": { + "target": "com.amazonaws.sagemaker#ResourceCatalogName", + "traits": { + "smithy.api#documentation": "

    The name of the ResourceCatalog.

    ", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.sagemaker#ResourceCatalogDescription", + "traits": { + "smithy.api#documentation": "

    A free form description of the ResourceCatalog.

    ", + "smithy.api#required": {} + } + }, + "CreationTime": { + "target": "com.amazonaws.sagemaker#Timestamp", + "traits": { + "smithy.api#documentation": "

    The time the ResourceCatalog was created.

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

    A resource catalog containing all of the resources of a specific resource type within\n a resource owner account. For an example on sharing the Amazon SageMaker Feature Store\n DefaultFeatureGroupCatalog, see Share Amazon SageMaker Catalog resource type in the Amazon SageMaker Developer Guide.\n

    " + } + }, + "com.amazonaws.sagemaker#ResourceCatalogArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + }, + "smithy.api#pattern": "^arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:sagemaker-catalog/" + } + }, + "com.amazonaws.sagemaker#ResourceCatalogDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + } + } + }, + "com.amazonaws.sagemaker#ResourceCatalogList": { + "type": "list", + "member": { + "target": "com.amazonaws.sagemaker#ResourceCatalog" + } + }, + "com.amazonaws.sagemaker#ResourceCatalogName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + } + } + }, + "com.amazonaws.sagemaker#ResourceCatalogSortBy": { + "type": "enum", + "members": { + "CREATION_TIME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CreationTime" + } + } + } + }, + "com.amazonaws.sagemaker#ResourceCatalogSortOrder": { + "type": "enum", + "members": { + "ASCENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Ascending" + } + }, + "DESCENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Descending" + } + } + } + }, "com.amazonaws.sagemaker#ResourceConfig": { "type": "structure", "members": { @@ -48306,14 +48519,14 @@ "S3Uri": { "target": "com.amazonaws.sagemaker#S3Uri", "traits": { - "smithy.api#documentation": "

    The S3 URI, or location in Amazon S3, of OfflineStore.

    \n

    S3 URIs have a format similar to the following: s3://example-bucket/prefix/.

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

    The S3 URI, or location in Amazon S3, of OfflineStore.

    \n

    S3 URIs have a format similar to the following:\n s3://example-bucket/prefix/.

    ", "smithy.api#required": {} } }, "KmsKeyId": { "target": "com.amazonaws.sagemaker#KmsKeyId", "traits": { - "smithy.api#documentation": "

    The Amazon Web Services Key Management Service (KMS) key ARN of the key used to encrypt any objects\n written into the OfflineStore S3 location.

    \n

    The IAM roleARN that is passed as a parameter to\n CreateFeatureGroup must have below permissions to the\n KmsKeyId:

    \n
      \n
    • \n

      \n \"kms:GenerateDataKey\"\n

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

    The Amazon Web Services Key Management Service (KMS) key ARN of the key used to encrypt\n any objects written into the OfflineStore S3 location.

    \n

    The IAM roleARN that is passed as a parameter to\n CreateFeatureGroup must have below permissions to the\n KmsKeyId:

    \n
      \n
    • \n

      \n \"kms:GenerateDataKey\"\n

      \n
    • \n
    " } }, "ResolvedOutputS3Uri": { @@ -48324,7 +48537,7 @@ } }, "traits": { - "smithy.api#documentation": "

    The Amazon Simple Storage (Amazon S3) location and and security configuration for OfflineStore.

    " + "smithy.api#documentation": "

    The Amazon Simple Storage (Amazon S3) location and and security configuration for\n OfflineStore.

    " } }, "com.amazonaws.sagemaker#S3Uri": { @@ -49028,6 +49241,9 @@ { "target": "com.amazonaws.sagemaker#ListProjects" }, + { + "target": "com.amazonaws.sagemaker#ListResourceCatalogs" + }, { "target": "com.amazonaws.sagemaker#ListSpaces" }, @@ -50602,6 +50818,12 @@ "traits": { "smithy.api#documentation": "

    The maximum number of results to return.

    " } + }, + "CrossAccountFilterOption": { + "target": "com.amazonaws.sagemaker#CrossAccountFilterOption", + "traits": { + "smithy.api#documentation": "

    \n A cross account filter option. When the value is \"CrossAccount\" the \n search results will only include resources made discoverable to you from other \n accounts. When the value is \"SameAccount\" or null the \n search results will only include resources from your account. Default is \n null. For more information on searching for resources made \n discoverable to your account, see \n Search discoverable resources in the SageMaker Developer Guide.\n The maximum number of ResourceCatalogs viewable is 1000.\n

    " + } } }, "traits": { @@ -57211,16 +57433,16 @@ } ], "traits": { - "smithy.api#documentation": "

    Updates the feature group.

    " + "smithy.api#documentation": "

    Updates the feature group by either adding features or updating the online store\n configuration. Use one of the following request parameters at a time while using the\n UpdateFeatureGroup API.

    \n

    You can add features for your feature group using the FeatureAdditions\n request parameter. Features cannot be removed from a feature group.

    \n

    You can update the online store configuration by using the\n OnlineStoreConfig request parameter. If a TtlDuration is\n specified, the default TtlDuration applies for all records added to the\n feature group after the feature group is updated. If a record level\n TtlDuration exists from using the PutRecord API, the record\n level TtlDuration applies to that record instead of the default\n TtlDuration.

    " } }, "com.amazonaws.sagemaker#UpdateFeatureGroupRequest": { "type": "structure", "members": { "FeatureGroupName": { - "target": "com.amazonaws.sagemaker#FeatureGroupName", + "target": "com.amazonaws.sagemaker#FeatureGroupNameOrArn", "traits": { - "smithy.api#documentation": "

    The name of the feature group that you're updating.

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

    The name or Amazon Resource Name (ARN) of the feature group that you're updating.

    ", "smithy.api#required": {} } }, @@ -57277,9 +57499,9 @@ "type": "structure", "members": { "FeatureGroupName": { - "target": "com.amazonaws.sagemaker#FeatureGroupName", + "target": "com.amazonaws.sagemaker#FeatureGroupNameOrArn", "traits": { - "smithy.api#documentation": "

    The name of the feature group containing the feature that you're updating.

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

    The name or Amazon Resource Name (ARN) of the feature group containing the feature that \n you're updating.

    ", "smithy.api#required": {} } }, @@ -57305,7 +57527,7 @@ "ParameterRemovals": { "target": "com.amazonaws.sagemaker#FeatureParameterRemovals", "traits": { - "smithy.api#documentation": "

    A list of parameter keys that you can specify to remove parameters that describe your feature.

    " + "smithy.api#documentation": "

    A list of parameter keys that you can specify to remove parameters that describe your\n feature.

    " } } },