From 454008a3d319b6f470206fc94576cd348c1b00d2 Mon Sep 17 00:00:00 2001 From: awstools Date: Tue, 6 Jun 2023 18:14:55 +0000 Subject: [PATCH] feat(client-lex-models-v2): This release adds support for Lex Developers to create test sets and to execute those test-sets against their bots. --- clients/client-lex-models-v2/README.md | 112 + .../client-lex-models-v2/src/LexModelsV2.ts | 301 + .../src/LexModelsV2Client.ts | 67 +- .../src/commands/CreateExportCommand.ts | 10 +- .../CreateTestSetDiscrepancyReportCommand.ts | 193 + .../src/commands/DeleteTestSetCommand.ts | 163 + .../src/commands/DescribeExportCommand.ts | 5 +- .../src/commands/DescribeImportCommand.ts | 18 + .../commands/DescribeTestExecutionCommand.ts | 178 + .../src/commands/DescribeTestSetCommand.ts | 174 + ...DescribeTestSetDiscrepancyReportCommand.ts | 202 + .../DescribeTestSetGenerationCommand.ts | 191 + .../GetTestExecutionArtifactsUrlCommand.ts | 170 + .../src/commands/ListBotAliasesCommand.ts | 2 +- .../src/commands/ListBotLocalesCommand.ts | 2 +- .../commands/ListBotRecommendationsCommand.ts | 2 +- .../src/commands/ListBotVersionsCommand.ts | 2 +- .../src/commands/ListBotsCommand.ts | 2 +- .../src/commands/ListBuiltInIntentsCommand.ts | 2 +- .../commands/ListBuiltInSlotTypesCommand.ts | 2 +- .../ListCustomVocabularyItemsCommand.ts | 2 +- .../src/commands/ListExportsCommand.ts | 7 +- .../src/commands/ListImportsCommand.ts | 4 +- .../src/commands/ListIntentsCommand.ts | 2 +- .../commands/ListRecommendedIntentsCommand.ts | 2 +- .../src/commands/ListSlotTypesCommand.ts | 2 +- .../src/commands/ListSlotsCommand.ts | 2 +- .../commands/ListTagsForResourceCommand.ts | 2 +- .../ListTestExecutionResultItemsCommand.ts | 368 + .../src/commands/ListTestExecutionsCommand.ts | 181 + .../src/commands/ListTestSetRecordsCommand.ts | 249 + .../src/commands/ListTestSetsCommand.ts | 178 + .../SearchAssociatedTranscriptsCommand.ts | 2 +- .../commands/StartBotRecommendationCommand.ts | 2 +- .../src/commands/StartImportCommand.ts | 38 +- .../src/commands/StartTestExecutionCommand.ts | 186 + .../commands/StartTestSetGenerationCommand.ts | 213 + .../commands/StopBotRecommendationCommand.ts | 2 +- .../src/commands/TagResourceCommand.ts | 3 +- .../src/commands/UpdateExportCommand.ts | 5 +- .../src/commands/UpdateTestSetCommand.ts | 180 + .../src/commands/index.ts | 14 + .../src/endpoint/EndpointParameters.ts | 2 +- .../src/endpoint/ruleset.ts | 39 +- .../src/models/models_0.ts | 3177 ++-- .../src/models/models_1.ts | 2957 +++- .../ListTestExecutionResultItemsPaginator.ts | 50 + .../pagination/ListTestExecutionsPaginator.ts | 50 + .../pagination/ListTestSetRecordsPaginator.ts | 50 + .../src/pagination/ListTestSetsPaginator.ts | 50 + .../src/pagination/index.ts | 4 + .../src/protocols/Aws_restJson1.ts | 2481 ++- .../sdk-codegen/aws-models/lex-models-v2.json | 12610 ++++++++++------ 53 files changed, 18143 insertions(+), 6769 deletions(-) create mode 100644 clients/client-lex-models-v2/src/commands/CreateTestSetDiscrepancyReportCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/DeleteTestSetCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/DescribeTestExecutionCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/DescribeTestSetCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/DescribeTestSetDiscrepancyReportCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/DescribeTestSetGenerationCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/GetTestExecutionArtifactsUrlCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/ListTestExecutionResultItemsCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/ListTestExecutionsCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/ListTestSetRecordsCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/ListTestSetsCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/StartTestExecutionCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/StartTestSetGenerationCommand.ts create mode 100644 clients/client-lex-models-v2/src/commands/UpdateTestSetCommand.ts create mode 100644 clients/client-lex-models-v2/src/pagination/ListTestExecutionResultItemsPaginator.ts create mode 100644 clients/client-lex-models-v2/src/pagination/ListTestExecutionsPaginator.ts create mode 100644 clients/client-lex-models-v2/src/pagination/ListTestSetRecordsPaginator.ts create mode 100644 clients/client-lex-models-v2/src/pagination/ListTestSetsPaginator.ts diff --git a/clients/client-lex-models-v2/README.md b/clients/client-lex-models-v2/README.md index 90a6df9abbfe..18580ece3c2f 100644 --- a/clients/client-lex-models-v2/README.md +++ b/clients/client-lex-models-v2/README.md @@ -314,6 +314,14 @@ CreateSlotType [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/createslottypecommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/createslottypecommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/createslottypecommandoutput.html) + +
+ +CreateTestSetDiscrepancyReport + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/createtestsetdiscrepancyreportcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/createtestsetdiscrepancyreportcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/createtestsetdiscrepancyreportcommandoutput.html) +
@@ -418,6 +426,14 @@ DeleteSlotType [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/deleteslottypecommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/deleteslottypecommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/deleteslottypecommandoutput.html) +
+
+ +DeleteTestSet + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/deletetestsetcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/deletetestsetcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/deletetestsetcommandoutput.html) +
@@ -522,6 +538,46 @@ DescribeSlotType [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/describeslottypecommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/describeslottypecommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/describeslottypecommandoutput.html) +
+
+ +DescribeTestExecution + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/describetestexecutioncommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/describetestexecutioncommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/describetestexecutioncommandoutput.html) + +
+
+ +DescribeTestSet + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/describetestsetcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/describetestsetcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/describetestsetcommandoutput.html) + +
+
+ +DescribeTestSetDiscrepancyReport + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/describetestsetdiscrepancyreportcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/describetestsetdiscrepancyreportcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/describetestsetdiscrepancyreportcommandoutput.html) + +
+
+ +DescribeTestSetGeneration + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/describetestsetgenerationcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/describetestsetgenerationcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/describetestsetgenerationcommandoutput.html) + +
+
+ +GetTestExecutionArtifactsUrl + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/gettestexecutionartifactsurlcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/gettestexecutionartifactsurlcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/gettestexecutionartifactsurlcommandoutput.html) +
@@ -650,6 +706,38 @@ ListTagsForResource [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/listtagsforresourcecommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/listtagsforresourcecommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/listtagsforresourcecommandoutput.html) +
+
+ +ListTestExecutionResultItems + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/listtestexecutionresultitemscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/listtestexecutionresultitemscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/listtestexecutionresultitemscommandoutput.html) + +
+
+ +ListTestExecutions + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/listtestexecutionscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/listtestexecutionscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/listtestexecutionscommandoutput.html) + +
+
+ +ListTestSetRecords + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/listtestsetrecordscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/listtestsetrecordscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/listtestsetrecordscommandoutput.html) + +
+
+ +ListTestSets + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/listtestsetscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/listtestsetscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/listtestsetscommandoutput.html) +
@@ -674,6 +762,22 @@ StartImport [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/startimportcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/startimportcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/startimportcommandoutput.html) +
+
+ +StartTestExecution + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/starttestexecutioncommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/starttestexecutioncommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/starttestexecutioncommandoutput.html) + +
+
+ +StartTestSetGeneration + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/starttestsetgenerationcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/starttestsetgenerationcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/starttestsetgenerationcommandoutput.html) +
@@ -771,3 +875,11 @@ UpdateSlotType [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/updateslottypecommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/updateslottypecommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/updateslottypecommandoutput.html)
+
+ +UpdateTestSet + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/classes/updatetestsetcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/updatetestsetcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-lex-models-v2/interfaces/updatetestsetcommandoutput.html) + +
diff --git a/clients/client-lex-models-v2/src/LexModelsV2.ts b/clients/client-lex-models-v2/src/LexModelsV2.ts index f9e0791b63f5..7924b6e00742 100644 --- a/clients/client-lex-models-v2/src/LexModelsV2.ts +++ b/clients/client-lex-models-v2/src/LexModelsV2.ts @@ -64,6 +64,11 @@ import { CreateSlotTypeCommandInput, CreateSlotTypeCommandOutput, } from "./commands/CreateSlotTypeCommand"; +import { + CreateTestSetDiscrepancyReportCommand, + CreateTestSetDiscrepancyReportCommandInput, + CreateTestSetDiscrepancyReportCommandOutput, +} from "./commands/CreateTestSetDiscrepancyReportCommand"; import { CreateUploadUrlCommand, CreateUploadUrlCommandInput, @@ -121,6 +126,11 @@ import { DeleteSlotTypeCommandInput, DeleteSlotTypeCommandOutput, } from "./commands/DeleteSlotTypeCommand"; +import { + DeleteTestSetCommand, + DeleteTestSetCommandInput, + DeleteTestSetCommandOutput, +} from "./commands/DeleteTestSetCommand"; import { DeleteUtterancesCommand, DeleteUtterancesCommandInput, @@ -182,6 +192,31 @@ import { DescribeSlotTypeCommandInput, DescribeSlotTypeCommandOutput, } from "./commands/DescribeSlotTypeCommand"; +import { + DescribeTestExecutionCommand, + DescribeTestExecutionCommandInput, + DescribeTestExecutionCommandOutput, +} from "./commands/DescribeTestExecutionCommand"; +import { + DescribeTestSetCommand, + DescribeTestSetCommandInput, + DescribeTestSetCommandOutput, +} from "./commands/DescribeTestSetCommand"; +import { + DescribeTestSetDiscrepancyReportCommand, + DescribeTestSetDiscrepancyReportCommandInput, + DescribeTestSetDiscrepancyReportCommandOutput, +} from "./commands/DescribeTestSetDiscrepancyReportCommand"; +import { + DescribeTestSetGenerationCommand, + DescribeTestSetGenerationCommandInput, + DescribeTestSetGenerationCommandOutput, +} from "./commands/DescribeTestSetGenerationCommand"; +import { + GetTestExecutionArtifactsUrlCommand, + GetTestExecutionArtifactsUrlCommandInput, + GetTestExecutionArtifactsUrlCommandOutput, +} from "./commands/GetTestExecutionArtifactsUrlCommand"; import { ListAggregatedUtterancesCommand, ListAggregatedUtterancesCommandInput, @@ -242,6 +277,26 @@ import { ListTagsForResourceCommandInput, ListTagsForResourceCommandOutput, } from "./commands/ListTagsForResourceCommand"; +import { + ListTestExecutionResultItemsCommand, + ListTestExecutionResultItemsCommandInput, + ListTestExecutionResultItemsCommandOutput, +} from "./commands/ListTestExecutionResultItemsCommand"; +import { + ListTestExecutionsCommand, + ListTestExecutionsCommandInput, + ListTestExecutionsCommandOutput, +} from "./commands/ListTestExecutionsCommand"; +import { + ListTestSetRecordsCommand, + ListTestSetRecordsCommandInput, + ListTestSetRecordsCommandOutput, +} from "./commands/ListTestSetRecordsCommand"; +import { + ListTestSetsCommand, + ListTestSetsCommandInput, + ListTestSetsCommandOutput, +} from "./commands/ListTestSetsCommand"; import { SearchAssociatedTranscriptsCommand, SearchAssociatedTranscriptsCommandInput, @@ -253,6 +308,16 @@ import { StartBotRecommendationCommandOutput, } from "./commands/StartBotRecommendationCommand"; import { StartImportCommand, StartImportCommandInput, StartImportCommandOutput } from "./commands/StartImportCommand"; +import { + StartTestExecutionCommand, + StartTestExecutionCommandInput, + StartTestExecutionCommandOutput, +} from "./commands/StartTestExecutionCommand"; +import { + StartTestSetGenerationCommand, + StartTestSetGenerationCommandInput, + StartTestSetGenerationCommandOutput, +} from "./commands/StartTestSetGenerationCommand"; import { StopBotRecommendationCommand, StopBotRecommendationCommandInput, @@ -301,6 +366,11 @@ import { UpdateSlotTypeCommandInput, UpdateSlotTypeCommandOutput, } from "./commands/UpdateSlotTypeCommand"; +import { + UpdateTestSetCommand, + UpdateTestSetCommandInput, + UpdateTestSetCommandOutput, +} from "./commands/UpdateTestSetCommand"; import { LexModelsV2Client, LexModelsV2ClientConfig } from "./LexModelsV2Client"; const commands = { @@ -318,6 +388,7 @@ const commands = { CreateResourcePolicyStatementCommand, CreateSlotCommand, CreateSlotTypeCommand, + CreateTestSetDiscrepancyReportCommand, CreateUploadUrlCommand, DeleteBotCommand, DeleteBotAliasCommand, @@ -331,6 +402,7 @@ const commands = { DeleteResourcePolicyStatementCommand, DeleteSlotCommand, DeleteSlotTypeCommand, + DeleteTestSetCommand, DeleteUtterancesCommand, DescribeBotCommand, DescribeBotAliasCommand, @@ -344,6 +416,11 @@ const commands = { DescribeResourcePolicyCommand, DescribeSlotCommand, DescribeSlotTypeCommand, + DescribeTestExecutionCommand, + DescribeTestSetCommand, + DescribeTestSetDiscrepancyReportCommand, + DescribeTestSetGenerationCommand, + GetTestExecutionArtifactsUrlCommand, ListAggregatedUtterancesCommand, ListBotAliasesCommand, ListBotLocalesCommand, @@ -360,9 +437,15 @@ const commands = { ListSlotsCommand, ListSlotTypesCommand, ListTagsForResourceCommand, + ListTestExecutionResultItemsCommand, + ListTestExecutionsCommand, + ListTestSetRecordsCommand, + ListTestSetsCommand, SearchAssociatedTranscriptsCommand, StartBotRecommendationCommand, StartImportCommand, + StartTestExecutionCommand, + StartTestSetGenerationCommand, StopBotRecommendationCommand, TagResourceCommand, UntagResourceCommand, @@ -375,6 +458,7 @@ const commands = { UpdateResourcePolicyCommand, UpdateSlotCommand, UpdateSlotTypeCommand, + UpdateTestSetCommand, }; export interface LexModelsV2 { @@ -580,6 +664,23 @@ export interface LexModelsV2 { cb: (err: any, data?: CreateSlotTypeCommandOutput) => void ): void; + /** + * @see {@link CreateTestSetDiscrepancyReportCommand} + */ + createTestSetDiscrepancyReport( + args: CreateTestSetDiscrepancyReportCommandInput, + options?: __HttpHandlerOptions + ): Promise; + createTestSetDiscrepancyReport( + args: CreateTestSetDiscrepancyReportCommandInput, + cb: (err: any, data?: CreateTestSetDiscrepancyReportCommandOutput) => void + ): void; + createTestSetDiscrepancyReport( + args: CreateTestSetDiscrepancyReportCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreateTestSetDiscrepancyReportCommandOutput) => void + ): void; + /** * @see {@link CreateUploadUrlCommand} */ @@ -759,6 +860,17 @@ export interface LexModelsV2 { cb: (err: any, data?: DeleteSlotTypeCommandOutput) => void ): void; + /** + * @see {@link DeleteTestSetCommand} + */ + deleteTestSet(args: DeleteTestSetCommandInput, options?: __HttpHandlerOptions): Promise; + deleteTestSet(args: DeleteTestSetCommandInput, cb: (err: any, data?: DeleteTestSetCommandOutput) => void): void; + deleteTestSet( + args: DeleteTestSetCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteTestSetCommandOutput) => void + ): void; + /** * @see {@link DeleteUtterancesCommand} */ @@ -959,6 +1071,88 @@ export interface LexModelsV2 { cb: (err: any, data?: DescribeSlotTypeCommandOutput) => void ): void; + /** + * @see {@link DescribeTestExecutionCommand} + */ + describeTestExecution( + args: DescribeTestExecutionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + describeTestExecution( + args: DescribeTestExecutionCommandInput, + cb: (err: any, data?: DescribeTestExecutionCommandOutput) => void + ): void; + describeTestExecution( + args: DescribeTestExecutionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DescribeTestExecutionCommandOutput) => void + ): void; + + /** + * @see {@link DescribeTestSetCommand} + */ + describeTestSet( + args: DescribeTestSetCommandInput, + options?: __HttpHandlerOptions + ): Promise; + describeTestSet(args: DescribeTestSetCommandInput, cb: (err: any, data?: DescribeTestSetCommandOutput) => void): void; + describeTestSet( + args: DescribeTestSetCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DescribeTestSetCommandOutput) => void + ): void; + + /** + * @see {@link DescribeTestSetDiscrepancyReportCommand} + */ + describeTestSetDiscrepancyReport( + args: DescribeTestSetDiscrepancyReportCommandInput, + options?: __HttpHandlerOptions + ): Promise; + describeTestSetDiscrepancyReport( + args: DescribeTestSetDiscrepancyReportCommandInput, + cb: (err: any, data?: DescribeTestSetDiscrepancyReportCommandOutput) => void + ): void; + describeTestSetDiscrepancyReport( + args: DescribeTestSetDiscrepancyReportCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DescribeTestSetDiscrepancyReportCommandOutput) => void + ): void; + + /** + * @see {@link DescribeTestSetGenerationCommand} + */ + describeTestSetGeneration( + args: DescribeTestSetGenerationCommandInput, + options?: __HttpHandlerOptions + ): Promise; + describeTestSetGeneration( + args: DescribeTestSetGenerationCommandInput, + cb: (err: any, data?: DescribeTestSetGenerationCommandOutput) => void + ): void; + describeTestSetGeneration( + args: DescribeTestSetGenerationCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DescribeTestSetGenerationCommandOutput) => void + ): void; + + /** + * @see {@link GetTestExecutionArtifactsUrlCommand} + */ + getTestExecutionArtifactsUrl( + args: GetTestExecutionArtifactsUrlCommandInput, + options?: __HttpHandlerOptions + ): Promise; + getTestExecutionArtifactsUrl( + args: GetTestExecutionArtifactsUrlCommandInput, + cb: (err: any, data?: GetTestExecutionArtifactsUrlCommandOutput) => void + ): void; + getTestExecutionArtifactsUrl( + args: GetTestExecutionArtifactsUrlCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetTestExecutionArtifactsUrlCommandOutput) => void + ): void; + /** * @see {@link ListAggregatedUtterancesCommand} */ @@ -1186,6 +1380,68 @@ export interface LexModelsV2 { cb: (err: any, data?: ListTagsForResourceCommandOutput) => void ): void; + /** + * @see {@link ListTestExecutionResultItemsCommand} + */ + listTestExecutionResultItems( + args: ListTestExecutionResultItemsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listTestExecutionResultItems( + args: ListTestExecutionResultItemsCommandInput, + cb: (err: any, data?: ListTestExecutionResultItemsCommandOutput) => void + ): void; + listTestExecutionResultItems( + args: ListTestExecutionResultItemsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListTestExecutionResultItemsCommandOutput) => void + ): void; + + /** + * @see {@link ListTestExecutionsCommand} + */ + listTestExecutions( + args: ListTestExecutionsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listTestExecutions( + args: ListTestExecutionsCommandInput, + cb: (err: any, data?: ListTestExecutionsCommandOutput) => void + ): void; + listTestExecutions( + args: ListTestExecutionsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListTestExecutionsCommandOutput) => void + ): void; + + /** + * @see {@link ListTestSetRecordsCommand} + */ + listTestSetRecords( + args: ListTestSetRecordsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listTestSetRecords( + args: ListTestSetRecordsCommandInput, + cb: (err: any, data?: ListTestSetRecordsCommandOutput) => void + ): void; + listTestSetRecords( + args: ListTestSetRecordsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListTestSetRecordsCommandOutput) => void + ): void; + + /** + * @see {@link ListTestSetsCommand} + */ + listTestSets(args: ListTestSetsCommandInput, options?: __HttpHandlerOptions): Promise; + listTestSets(args: ListTestSetsCommandInput, cb: (err: any, data?: ListTestSetsCommandOutput) => void): void; + listTestSets( + args: ListTestSetsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListTestSetsCommandOutput) => void + ): void; + /** * @see {@link SearchAssociatedTranscriptsCommand} */ @@ -1231,6 +1487,40 @@ export interface LexModelsV2 { cb: (err: any, data?: StartImportCommandOutput) => void ): void; + /** + * @see {@link StartTestExecutionCommand} + */ + startTestExecution( + args: StartTestExecutionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + startTestExecution( + args: StartTestExecutionCommandInput, + cb: (err: any, data?: StartTestExecutionCommandOutput) => void + ): void; + startTestExecution( + args: StartTestExecutionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: StartTestExecutionCommandOutput) => void + ): void; + + /** + * @see {@link StartTestSetGenerationCommand} + */ + startTestSetGeneration( + args: StartTestSetGenerationCommandInput, + options?: __HttpHandlerOptions + ): Promise; + startTestSetGeneration( + args: StartTestSetGenerationCommandInput, + cb: (err: any, data?: StartTestSetGenerationCommandOutput) => void + ): void; + startTestSetGeneration( + args: StartTestSetGenerationCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: StartTestSetGenerationCommandOutput) => void + ): void; + /** * @see {@link StopBotRecommendationCommand} */ @@ -1389,6 +1679,17 @@ export interface LexModelsV2 { options: __HttpHandlerOptions, cb: (err: any, data?: UpdateSlotTypeCommandOutput) => void ): void; + + /** + * @see {@link UpdateTestSetCommand} + */ + updateTestSet(args: UpdateTestSetCommandInput, options?: __HttpHandlerOptions): Promise; + updateTestSet(args: UpdateTestSetCommandInput, cb: (err: any, data?: UpdateTestSetCommandOutput) => void): void; + updateTestSet( + args: UpdateTestSetCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateTestSetCommandOutput) => void + ): void; } /** diff --git a/clients/client-lex-models-v2/src/LexModelsV2Client.ts b/clients/client-lex-models-v2/src/LexModelsV2Client.ts index 0905a6674587..222cbfe4b296 100644 --- a/clients/client-lex-models-v2/src/LexModelsV2Client.ts +++ b/clients/client-lex-models-v2/src/LexModelsV2Client.ts @@ -80,6 +80,10 @@ import { } from "./commands/CreateResourcePolicyStatementCommand"; import { CreateSlotCommandInput, CreateSlotCommandOutput } from "./commands/CreateSlotCommand"; import { CreateSlotTypeCommandInput, CreateSlotTypeCommandOutput } from "./commands/CreateSlotTypeCommand"; +import { + CreateTestSetDiscrepancyReportCommandInput, + CreateTestSetDiscrepancyReportCommandOutput, +} from "./commands/CreateTestSetDiscrepancyReportCommand"; import { CreateUploadUrlCommandInput, CreateUploadUrlCommandOutput } from "./commands/CreateUploadUrlCommand"; import { DeleteBotAliasCommandInput, DeleteBotAliasCommandOutput } from "./commands/DeleteBotAliasCommand"; import { DeleteBotCommandInput, DeleteBotCommandOutput } from "./commands/DeleteBotCommand"; @@ -102,6 +106,7 @@ import { } from "./commands/DeleteResourcePolicyStatementCommand"; import { DeleteSlotCommandInput, DeleteSlotCommandOutput } from "./commands/DeleteSlotCommand"; import { DeleteSlotTypeCommandInput, DeleteSlotTypeCommandOutput } from "./commands/DeleteSlotTypeCommand"; +import { DeleteTestSetCommandInput, DeleteTestSetCommandOutput } from "./commands/DeleteTestSetCommand"; import { DeleteUtterancesCommandInput, DeleteUtterancesCommandOutput } from "./commands/DeleteUtterancesCommand"; import { DescribeBotAliasCommandInput, DescribeBotAliasCommandOutput } from "./commands/DescribeBotAliasCommand"; import { DescribeBotCommandInput, DescribeBotCommandOutput } from "./commands/DescribeBotCommand"; @@ -124,6 +129,23 @@ import { } from "./commands/DescribeResourcePolicyCommand"; import { DescribeSlotCommandInput, DescribeSlotCommandOutput } from "./commands/DescribeSlotCommand"; import { DescribeSlotTypeCommandInput, DescribeSlotTypeCommandOutput } from "./commands/DescribeSlotTypeCommand"; +import { + DescribeTestExecutionCommandInput, + DescribeTestExecutionCommandOutput, +} from "./commands/DescribeTestExecutionCommand"; +import { DescribeTestSetCommandInput, DescribeTestSetCommandOutput } from "./commands/DescribeTestSetCommand"; +import { + DescribeTestSetDiscrepancyReportCommandInput, + DescribeTestSetDiscrepancyReportCommandOutput, +} from "./commands/DescribeTestSetDiscrepancyReportCommand"; +import { + DescribeTestSetGenerationCommandInput, + DescribeTestSetGenerationCommandOutput, +} from "./commands/DescribeTestSetGenerationCommand"; +import { + GetTestExecutionArtifactsUrlCommandInput, + GetTestExecutionArtifactsUrlCommandOutput, +} from "./commands/GetTestExecutionArtifactsUrlCommand"; import { ListAggregatedUtterancesCommandInput, ListAggregatedUtterancesCommandOutput, @@ -158,6 +180,13 @@ import { ListTagsForResourceCommandInput, ListTagsForResourceCommandOutput, } from "./commands/ListTagsForResourceCommand"; +import { + ListTestExecutionResultItemsCommandInput, + ListTestExecutionResultItemsCommandOutput, +} from "./commands/ListTestExecutionResultItemsCommand"; +import { ListTestExecutionsCommandInput, ListTestExecutionsCommandOutput } from "./commands/ListTestExecutionsCommand"; +import { ListTestSetRecordsCommandInput, ListTestSetRecordsCommandOutput } from "./commands/ListTestSetRecordsCommand"; +import { ListTestSetsCommandInput, ListTestSetsCommandOutput } from "./commands/ListTestSetsCommand"; import { SearchAssociatedTranscriptsCommandInput, SearchAssociatedTranscriptsCommandOutput, @@ -167,6 +196,11 @@ import { StartBotRecommendationCommandOutput, } from "./commands/StartBotRecommendationCommand"; import { StartImportCommandInput, StartImportCommandOutput } from "./commands/StartImportCommand"; +import { StartTestExecutionCommandInput, StartTestExecutionCommandOutput } from "./commands/StartTestExecutionCommand"; +import { + StartTestSetGenerationCommandInput, + StartTestSetGenerationCommandOutput, +} from "./commands/StartTestSetGenerationCommand"; import { StopBotRecommendationCommandInput, StopBotRecommendationCommandOutput, @@ -188,6 +222,7 @@ import { } from "./commands/UpdateResourcePolicyCommand"; import { UpdateSlotCommandInput, UpdateSlotCommandOutput } from "./commands/UpdateSlotCommand"; import { UpdateSlotTypeCommandInput, UpdateSlotTypeCommandOutput } from "./commands/UpdateSlotTypeCommand"; +import { UpdateTestSetCommandInput, UpdateTestSetCommandOutput } from "./commands/UpdateTestSetCommand"; import { ClientInputEndpointParameters, ClientResolvedEndpointParameters, @@ -216,6 +251,7 @@ export type ServiceInputTypes = | CreateResourcePolicyStatementCommandInput | CreateSlotCommandInput | CreateSlotTypeCommandInput + | CreateTestSetDiscrepancyReportCommandInput | CreateUploadUrlCommandInput | DeleteBotAliasCommandInput | DeleteBotCommandInput @@ -229,6 +265,7 @@ export type ServiceInputTypes = | DeleteResourcePolicyStatementCommandInput | DeleteSlotCommandInput | DeleteSlotTypeCommandInput + | DeleteTestSetCommandInput | DeleteUtterancesCommandInput | DescribeBotAliasCommandInput | DescribeBotCommandInput @@ -242,6 +279,11 @@ export type ServiceInputTypes = | DescribeResourcePolicyCommandInput | DescribeSlotCommandInput | DescribeSlotTypeCommandInput + | DescribeTestExecutionCommandInput + | DescribeTestSetCommandInput + | DescribeTestSetDiscrepancyReportCommandInput + | DescribeTestSetGenerationCommandInput + | GetTestExecutionArtifactsUrlCommandInput | ListAggregatedUtterancesCommandInput | ListBotAliasesCommandInput | ListBotLocalesCommandInput @@ -258,9 +300,15 @@ export type ServiceInputTypes = | ListSlotTypesCommandInput | ListSlotsCommandInput | ListTagsForResourceCommandInput + | ListTestExecutionResultItemsCommandInput + | ListTestExecutionsCommandInput + | ListTestSetRecordsCommandInput + | ListTestSetsCommandInput | SearchAssociatedTranscriptsCommandInput | StartBotRecommendationCommandInput | StartImportCommandInput + | StartTestExecutionCommandInput + | StartTestSetGenerationCommandInput | StopBotRecommendationCommandInput | TagResourceCommandInput | UntagResourceCommandInput @@ -272,7 +320,8 @@ export type ServiceInputTypes = | UpdateIntentCommandInput | UpdateResourcePolicyCommandInput | UpdateSlotCommandInput - | UpdateSlotTypeCommandInput; + | UpdateSlotTypeCommandInput + | UpdateTestSetCommandInput; /** * @public @@ -292,6 +341,7 @@ export type ServiceOutputTypes = | CreateResourcePolicyStatementCommandOutput | CreateSlotCommandOutput | CreateSlotTypeCommandOutput + | CreateTestSetDiscrepancyReportCommandOutput | CreateUploadUrlCommandOutput | DeleteBotAliasCommandOutput | DeleteBotCommandOutput @@ -305,6 +355,7 @@ export type ServiceOutputTypes = | DeleteResourcePolicyStatementCommandOutput | DeleteSlotCommandOutput | DeleteSlotTypeCommandOutput + | DeleteTestSetCommandOutput | DeleteUtterancesCommandOutput | DescribeBotAliasCommandOutput | DescribeBotCommandOutput @@ -318,6 +369,11 @@ export type ServiceOutputTypes = | DescribeResourcePolicyCommandOutput | DescribeSlotCommandOutput | DescribeSlotTypeCommandOutput + | DescribeTestExecutionCommandOutput + | DescribeTestSetCommandOutput + | DescribeTestSetDiscrepancyReportCommandOutput + | DescribeTestSetGenerationCommandOutput + | GetTestExecutionArtifactsUrlCommandOutput | ListAggregatedUtterancesCommandOutput | ListBotAliasesCommandOutput | ListBotLocalesCommandOutput @@ -334,9 +390,15 @@ export type ServiceOutputTypes = | ListSlotTypesCommandOutput | ListSlotsCommandOutput | ListTagsForResourceCommandOutput + | ListTestExecutionResultItemsCommandOutput + | ListTestExecutionsCommandOutput + | ListTestSetRecordsCommandOutput + | ListTestSetsCommandOutput | SearchAssociatedTranscriptsCommandOutput | StartBotRecommendationCommandOutput | StartImportCommandOutput + | StartTestExecutionCommandOutput + | StartTestSetGenerationCommandOutput | StopBotRecommendationCommandOutput | TagResourceCommandOutput | UntagResourceCommandOutput @@ -348,7 +410,8 @@ export type ServiceOutputTypes = | UpdateIntentCommandOutput | UpdateResourcePolicyCommandOutput | UpdateSlotCommandOutput - | UpdateSlotTypeCommandOutput; + | UpdateSlotTypeCommandOutput + | UpdateTestSetCommandOutput; /** * @public diff --git a/clients/client-lex-models-v2/src/commands/CreateExportCommand.ts b/clients/client-lex-models-v2/src/commands/CreateExportCommand.ts index d03475ba4fcf..b98f72e6eec1 100644 --- a/clients/client-lex-models-v2/src/commands/CreateExportCommand.ts +++ b/clients/client-lex-models-v2/src/commands/CreateExportCommand.ts @@ -68,8 +68,11 @@ export interface CreateExportCommandOutput extends CreateExportResponse, __Metad * botVersion: "STRING_VALUE", // required * localeId: "STRING_VALUE", // required * }, + * testSetExportSpecification: { // TestSetExportSpecification + * testSetId: "STRING_VALUE", // required + * }, * }, - * fileFormat: "LexJson" || "TSV", // required + * fileFormat: "LexJson" || "TSV" || "CSV", // required * filePassword: "STRING_VALUE", * }; * const command = new CreateExportCommand(input); @@ -91,8 +94,11 @@ export interface CreateExportCommandOutput extends CreateExportResponse, __Metad * // botVersion: "STRING_VALUE", // required * // localeId: "STRING_VALUE", // required * // }, + * // testSetExportSpecification: { // TestSetExportSpecification + * // testSetId: "STRING_VALUE", // required + * // }, * // }, - * // fileFormat: "LexJson" || "TSV", + * // fileFormat: "LexJson" || "TSV" || "CSV", * // exportStatus: "InProgress" || "Completed" || "Failed" || "Deleting", * // creationDateTime: new Date("TIMESTAMP"), * // }; diff --git a/clients/client-lex-models-v2/src/commands/CreateTestSetDiscrepancyReportCommand.ts b/clients/client-lex-models-v2/src/commands/CreateTestSetDiscrepancyReportCommand.ts new file mode 100644 index 000000000000..0da249f7536e --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/CreateTestSetDiscrepancyReportCommand.ts @@ -0,0 +1,193 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { CreateTestSetDiscrepancyReportRequest, CreateTestSetDiscrepancyReportResponse } from "../models/models_0"; +import { + de_CreateTestSetDiscrepancyReportCommand, + se_CreateTestSetDiscrepancyReportCommand, +} from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link CreateTestSetDiscrepancyReportCommand}. + */ +export interface CreateTestSetDiscrepancyReportCommandInput extends CreateTestSetDiscrepancyReportRequest {} +/** + * @public + * + * The output of {@link CreateTestSetDiscrepancyReportCommand}. + */ +export interface CreateTestSetDiscrepancyReportCommandOutput + extends CreateTestSetDiscrepancyReportResponse, + __MetadataBearer {} + +/** + * @public + *

Create a report that describes the differences between the bot and the test set.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, CreateTestSetDiscrepancyReportCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, CreateTestSetDiscrepancyReportCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // CreateTestSetDiscrepancyReportRequest + * testSetId: "STRING_VALUE", // required + * target: { // TestSetDiscrepancyReportResourceTarget + * botAliasTarget: { // TestSetDiscrepancyReportBotAliasTarget + * botId: "STRING_VALUE", // required + * botAliasId: "STRING_VALUE", // required + * localeId: "STRING_VALUE", // required + * }, + * }, + * }; + * const command = new CreateTestSetDiscrepancyReportCommand(input); + * const response = await client.send(command); + * // { // CreateTestSetDiscrepancyReportResponse + * // testSetDiscrepancyReportId: "STRING_VALUE", + * // creationDateTime: new Date("TIMESTAMP"), + * // testSetId: "STRING_VALUE", + * // target: { // TestSetDiscrepancyReportResourceTarget + * // botAliasTarget: { // TestSetDiscrepancyReportBotAliasTarget + * // botId: "STRING_VALUE", // required + * // botAliasId: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // }, + * // }, + * // }; + * + * ``` + * + * @param CreateTestSetDiscrepancyReportCommandInput - {@link CreateTestSetDiscrepancyReportCommandInput} + * @returns {@link CreateTestSetDiscrepancyReportCommandOutput} + * @see {@link CreateTestSetDiscrepancyReportCommandInput} for command's `input` shape. + * @see {@link CreateTestSetDiscrepancyReportCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link ConflictException} (client fault) + *

The action that you tried to perform couldn't be completed because + * the resource is in a conflicting state. For example, deleting a bot + * that is in the CREATING state. Try your request again.

+ * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

You asked to describe a resource that doesn't exist. Check the + * resource that you are requesting and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class CreateTestSetDiscrepancyReportCommand extends $Command< + CreateTestSetDiscrepancyReportCommandInput, + CreateTestSetDiscrepancyReportCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: CreateTestSetDiscrepancyReportCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, CreateTestSetDiscrepancyReportCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "CreateTestSetDiscrepancyReportCommand"; + 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: CreateTestSetDiscrepancyReportCommandInput, + context: __SerdeContext + ): Promise<__HttpRequest> { + return se_CreateTestSetDiscrepancyReportCommand(input, context); + } + + /** + * @internal + */ + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return de_CreateTestSetDiscrepancyReportCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/DeleteTestSetCommand.ts b/clients/client-lex-models-v2/src/commands/DeleteTestSetCommand.ts new file mode 100644 index 000000000000..337cdcb4749f --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/DeleteTestSetCommand.ts @@ -0,0 +1,163 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { DeleteTestSetRequest } from "../models/models_0"; +import { de_DeleteTestSetCommand, se_DeleteTestSetCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link DeleteTestSetCommand}. + */ +export interface DeleteTestSetCommandInput extends DeleteTestSetRequest {} +/** + * @public + * + * The output of {@link DeleteTestSetCommand}. + */ +export interface DeleteTestSetCommandOutput extends __MetadataBearer {} + +/** + * @public + *

The action to delete the selected test set.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, DeleteTestSetCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, DeleteTestSetCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // DeleteTestSetRequest + * testSetId: "STRING_VALUE", // required + * }; + * const command = new DeleteTestSetCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param DeleteTestSetCommandInput - {@link DeleteTestSetCommandInput} + * @returns {@link DeleteTestSetCommandOutput} + * @see {@link DeleteTestSetCommandInput} for command's `input` shape. + * @see {@link DeleteTestSetCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link ConflictException} (client fault) + *

The action that you tried to perform couldn't be completed because + * the resource is in a conflicting state. For example, deleting a bot + * that is in the CREATING state. Try your request again.

+ * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link PreconditionFailedException} (client fault) + *

Your request couldn't be completed because one or more request + * fields aren't valid. Check the fields in your request and try + * again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class DeleteTestSetCommand extends $Command< + DeleteTestSetCommandInput, + DeleteTestSetCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: DeleteTestSetCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use(getEndpointPlugin(configuration, DeleteTestSetCommand.getEndpointParameterInstructions())); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "DeleteTestSetCommand"; + 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: DeleteTestSetCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_DeleteTestSetCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_DeleteTestSetCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/DescribeExportCommand.ts b/clients/client-lex-models-v2/src/commands/DescribeExportCommand.ts index c7929855d8f1..eabf86c0a205 100644 --- a/clients/client-lex-models-v2/src/commands/DescribeExportCommand.ts +++ b/clients/client-lex-models-v2/src/commands/DescribeExportCommand.ts @@ -65,8 +65,11 @@ export interface DescribeExportCommandOutput extends DescribeExportResponse, __M * // botVersion: "STRING_VALUE", // required * // localeId: "STRING_VALUE", // required * // }, + * // testSetExportSpecification: { // TestSetExportSpecification + * // testSetId: "STRING_VALUE", // required + * // }, * // }, - * // fileFormat: "LexJson" || "TSV", + * // fileFormat: "LexJson" || "TSV" || "CSV", * // exportStatus: "InProgress" || "Completed" || "Failed" || "Deleting", * // failureReasons: [ // FailureReasons * // "STRING_VALUE", diff --git a/clients/client-lex-models-v2/src/commands/DescribeImportCommand.ts b/clients/client-lex-models-v2/src/commands/DescribeImportCommand.ts index 17de2a67923b..17a24a3220ac 100644 --- a/clients/client-lex-models-v2/src/commands/DescribeImportCommand.ts +++ b/clients/client-lex-models-v2/src/commands/DescribeImportCommand.ts @@ -80,6 +80,24 @@ export interface DescribeImportCommandOutput extends DescribeImportResponse, __M * // botVersion: "STRING_VALUE", // required * // localeId: "STRING_VALUE", // required * // }, + * // testSetImportResourceSpecification: { // TestSetImportResourceSpecification + * // testSetName: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // roleArn: "STRING_VALUE", // required + * // storageLocation: { // TestSetStorageLocation + * // s3BucketName: "STRING_VALUE", // required + * // s3Path: "STRING_VALUE", // required + * // kmsKeyArn: "STRING_VALUE", + * // }, + * // importInputLocation: { // TestSetImportInputLocation + * // s3BucketName: "STRING_VALUE", // required + * // s3Path: "STRING_VALUE", // required + * // }, + * // modality: "Text" || "Audio", // required + * // testSetTags: { + * // "": "STRING_VALUE", + * // }, + * // }, * // }, * // importedResourceId: "STRING_VALUE", * // importedResourceName: "STRING_VALUE", diff --git a/clients/client-lex-models-v2/src/commands/DescribeTestExecutionCommand.ts b/clients/client-lex-models-v2/src/commands/DescribeTestExecutionCommand.ts new file mode 100644 index 000000000000..de6b247863f4 --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/DescribeTestExecutionCommand.ts @@ -0,0 +1,178 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { DescribeTestExecutionRequest, DescribeTestExecutionResponse } from "../models/models_0"; +import { de_DescribeTestExecutionCommand, se_DescribeTestExecutionCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link DescribeTestExecutionCommand}. + */ +export interface DescribeTestExecutionCommandInput extends DescribeTestExecutionRequest {} +/** + * @public + * + * The output of {@link DescribeTestExecutionCommand}. + */ +export interface DescribeTestExecutionCommandOutput extends DescribeTestExecutionResponse, __MetadataBearer {} + +/** + * @public + *

Gets metadata information about the test execution.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, DescribeTestExecutionCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, DescribeTestExecutionCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // DescribeTestExecutionRequest + * testExecutionId: "STRING_VALUE", // required + * }; + * const command = new DescribeTestExecutionCommand(input); + * const response = await client.send(command); + * // { // DescribeTestExecutionResponse + * // testExecutionId: "STRING_VALUE", + * // creationDateTime: new Date("TIMESTAMP"), + * // lastUpdatedDateTime: new Date("TIMESTAMP"), + * // testExecutionStatus: "Pending" || "Waiting" || "InProgress" || "Completed" || "Failed" || "Stopping" || "Stopped", + * // testSetId: "STRING_VALUE", + * // testSetName: "STRING_VALUE", + * // target: { // TestExecutionTarget + * // botAliasTarget: { // BotAliasTestExecutionTarget + * // botId: "STRING_VALUE", // required + * // botAliasId: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // }, + * // }, + * // apiMode: "Streaming" || "NonStreaming", + * // testExecutionModality: "Text" || "Audio", + * // failureReasons: [ // FailureReasons + * // "STRING_VALUE", + * // ], + * // }; + * + * ``` + * + * @param DescribeTestExecutionCommandInput - {@link DescribeTestExecutionCommandInput} + * @returns {@link DescribeTestExecutionCommandOutput} + * @see {@link DescribeTestExecutionCommandInput} for command's `input` shape. + * @see {@link DescribeTestExecutionCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

You asked to describe a resource that doesn't exist. Check the + * resource that you are requesting and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class DescribeTestExecutionCommand extends $Command< + DescribeTestExecutionCommandInput, + DescribeTestExecutionCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: DescribeTestExecutionCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, DescribeTestExecutionCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "DescribeTestExecutionCommand"; + 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: DescribeTestExecutionCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_DescribeTestExecutionCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_DescribeTestExecutionCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/DescribeTestSetCommand.ts b/clients/client-lex-models-v2/src/commands/DescribeTestSetCommand.ts new file mode 100644 index 000000000000..0f114212594e --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/DescribeTestSetCommand.ts @@ -0,0 +1,174 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { DescribeTestSetRequest, DescribeTestSetResponse } from "../models/models_0"; +import { de_DescribeTestSetCommand, se_DescribeTestSetCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link DescribeTestSetCommand}. + */ +export interface DescribeTestSetCommandInput extends DescribeTestSetRequest {} +/** + * @public + * + * The output of {@link DescribeTestSetCommand}. + */ +export interface DescribeTestSetCommandOutput extends DescribeTestSetResponse, __MetadataBearer {} + +/** + * @public + *

Gets metadata information about the test set.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, DescribeTestSetCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, DescribeTestSetCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // DescribeTestSetRequest + * testSetId: "STRING_VALUE", // required + * }; + * const command = new DescribeTestSetCommand(input); + * const response = await client.send(command); + * // { // DescribeTestSetResponse + * // testSetId: "STRING_VALUE", + * // testSetName: "STRING_VALUE", + * // description: "STRING_VALUE", + * // modality: "Text" || "Audio", + * // status: "Importing" || "PendingAnnotation" || "Deleting" || "ValidationError" || "Ready", + * // roleArn: "STRING_VALUE", + * // numTurns: Number("int"), + * // storageLocation: { // TestSetStorageLocation + * // s3BucketName: "STRING_VALUE", // required + * // s3Path: "STRING_VALUE", // required + * // kmsKeyArn: "STRING_VALUE", + * // }, + * // creationDateTime: new Date("TIMESTAMP"), + * // lastUpdatedDateTime: new Date("TIMESTAMP"), + * // }; + * + * ``` + * + * @param DescribeTestSetCommandInput - {@link DescribeTestSetCommandInput} + * @returns {@link DescribeTestSetCommandOutput} + * @see {@link DescribeTestSetCommandInput} for command's `input` shape. + * @see {@link DescribeTestSetCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

You asked to describe a resource that doesn't exist. Check the + * resource that you are requesting and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class DescribeTestSetCommand extends $Command< + DescribeTestSetCommandInput, + DescribeTestSetCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: DescribeTestSetCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, DescribeTestSetCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "DescribeTestSetCommand"; + 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: DescribeTestSetCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_DescribeTestSetCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_DescribeTestSetCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/DescribeTestSetDiscrepancyReportCommand.ts b/clients/client-lex-models-v2/src/commands/DescribeTestSetDiscrepancyReportCommand.ts new file mode 100644 index 000000000000..1c59c7b02d90 --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/DescribeTestSetDiscrepancyReportCommand.ts @@ -0,0 +1,202 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { DescribeTestSetDiscrepancyReportRequest, DescribeTestSetDiscrepancyReportResponse } from "../models/models_0"; +import { + de_DescribeTestSetDiscrepancyReportCommand, + se_DescribeTestSetDiscrepancyReportCommand, +} from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link DescribeTestSetDiscrepancyReportCommand}. + */ +export interface DescribeTestSetDiscrepancyReportCommandInput extends DescribeTestSetDiscrepancyReportRequest {} +/** + * @public + * + * The output of {@link DescribeTestSetDiscrepancyReportCommand}. + */ +export interface DescribeTestSetDiscrepancyReportCommandOutput + extends DescribeTestSetDiscrepancyReportResponse, + __MetadataBearer {} + +/** + * @public + *

Gets metadata information about the test set discrepancy report.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, DescribeTestSetDiscrepancyReportCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, DescribeTestSetDiscrepancyReportCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // DescribeTestSetDiscrepancyReportRequest + * testSetDiscrepancyReportId: "STRING_VALUE", // required + * }; + * const command = new DescribeTestSetDiscrepancyReportCommand(input); + * const response = await client.send(command); + * // { // DescribeTestSetDiscrepancyReportResponse + * // testSetDiscrepancyReportId: "STRING_VALUE", + * // testSetId: "STRING_VALUE", + * // creationDateTime: new Date("TIMESTAMP"), + * // target: { // TestSetDiscrepancyReportResourceTarget + * // botAliasTarget: { // TestSetDiscrepancyReportBotAliasTarget + * // botId: "STRING_VALUE", // required + * // botAliasId: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // }, + * // }, + * // testSetDiscrepancyReportStatus: "InProgress" || "Completed" || "Failed", + * // lastUpdatedDataTime: new Date("TIMESTAMP"), + * // testSetDiscrepancyTopErrors: { // TestSetDiscrepancyErrors + * // intentDiscrepancies: [ // TestSetIntentDiscrepancyList // required + * // { // TestSetIntentDiscrepancyItem + * // intentName: "STRING_VALUE", // required + * // errorMessage: "STRING_VALUE", // required + * // }, + * // ], + * // slotDiscrepancies: [ // TestSetSlotDiscrepancyList // required + * // { // TestSetSlotDiscrepancyItem + * // intentName: "STRING_VALUE", // required + * // slotName: "STRING_VALUE", // required + * // errorMessage: "STRING_VALUE", // required + * // }, + * // ], + * // }, + * // testSetDiscrepancyRawOutputUrl: "STRING_VALUE", + * // failureReasons: [ // FailureReasons + * // "STRING_VALUE", + * // ], + * // }; + * + * ``` + * + * @param DescribeTestSetDiscrepancyReportCommandInput - {@link DescribeTestSetDiscrepancyReportCommandInput} + * @returns {@link DescribeTestSetDiscrepancyReportCommandOutput} + * @see {@link DescribeTestSetDiscrepancyReportCommandInput} for command's `input` shape. + * @see {@link DescribeTestSetDiscrepancyReportCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

You asked to describe a resource that doesn't exist. Check the + * resource that you are requesting and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class DescribeTestSetDiscrepancyReportCommand extends $Command< + DescribeTestSetDiscrepancyReportCommandInput, + DescribeTestSetDiscrepancyReportCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: DescribeTestSetDiscrepancyReportCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, DescribeTestSetDiscrepancyReportCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "DescribeTestSetDiscrepancyReportCommand"; + 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: DescribeTestSetDiscrepancyReportCommandInput, + context: __SerdeContext + ): Promise<__HttpRequest> { + return se_DescribeTestSetDiscrepancyReportCommand(input, context); + } + + /** + * @internal + */ + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return de_DescribeTestSetDiscrepancyReportCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/DescribeTestSetGenerationCommand.ts b/clients/client-lex-models-v2/src/commands/DescribeTestSetGenerationCommand.ts new file mode 100644 index 000000000000..e2fecba30d39 --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/DescribeTestSetGenerationCommand.ts @@ -0,0 +1,191 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { DescribeTestSetGenerationRequest, DescribeTestSetGenerationResponse } from "../models/models_0"; +import { de_DescribeTestSetGenerationCommand, se_DescribeTestSetGenerationCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link DescribeTestSetGenerationCommand}. + */ +export interface DescribeTestSetGenerationCommandInput extends DescribeTestSetGenerationRequest {} +/** + * @public + * + * The output of {@link DescribeTestSetGenerationCommand}. + */ +export interface DescribeTestSetGenerationCommandOutput extends DescribeTestSetGenerationResponse, __MetadataBearer {} + +/** + * @public + *

Gets metadata information about the test set generation.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, DescribeTestSetGenerationCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, DescribeTestSetGenerationCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // DescribeTestSetGenerationRequest + * testSetGenerationId: "STRING_VALUE", // required + * }; + * const command = new DescribeTestSetGenerationCommand(input); + * const response = await client.send(command); + * // { // DescribeTestSetGenerationResponse + * // testSetGenerationId: "STRING_VALUE", + * // testSetGenerationStatus: "Generating" || "Ready" || "Failed" || "Pending", + * // failureReasons: [ // FailureReasons + * // "STRING_VALUE", + * // ], + * // testSetId: "STRING_VALUE", + * // testSetName: "STRING_VALUE", + * // description: "STRING_VALUE", + * // storageLocation: { // TestSetStorageLocation + * // s3BucketName: "STRING_VALUE", // required + * // s3Path: "STRING_VALUE", // required + * // kmsKeyArn: "STRING_VALUE", + * // }, + * // generationDataSource: { // TestSetGenerationDataSource + * // conversationLogsDataSource: { // ConversationLogsDataSource + * // botId: "STRING_VALUE", // required + * // botAliasId: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // filter: { // ConversationLogsDataSourceFilterBy + * // startTime: new Date("TIMESTAMP"), // required + * // endTime: new Date("TIMESTAMP"), // required + * // inputMode: "Speech" || "Text", // required + * // }, + * // }, + * // }, + * // roleArn: "STRING_VALUE", + * // creationDateTime: new Date("TIMESTAMP"), + * // lastUpdatedDateTime: new Date("TIMESTAMP"), + * // }; + * + * ``` + * + * @param DescribeTestSetGenerationCommandInput - {@link DescribeTestSetGenerationCommandInput} + * @returns {@link DescribeTestSetGenerationCommandOutput} + * @see {@link DescribeTestSetGenerationCommandInput} for command's `input` shape. + * @see {@link DescribeTestSetGenerationCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

You asked to describe a resource that doesn't exist. Check the + * resource that you are requesting and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class DescribeTestSetGenerationCommand extends $Command< + DescribeTestSetGenerationCommandInput, + DescribeTestSetGenerationCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: DescribeTestSetGenerationCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, DescribeTestSetGenerationCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "DescribeTestSetGenerationCommand"; + 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: DescribeTestSetGenerationCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_DescribeTestSetGenerationCommand(input, context); + } + + /** + * @internal + */ + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return de_DescribeTestSetGenerationCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/GetTestExecutionArtifactsUrlCommand.ts b/clients/client-lex-models-v2/src/commands/GetTestExecutionArtifactsUrlCommand.ts new file mode 100644 index 000000000000..f8f17a94af37 --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/GetTestExecutionArtifactsUrlCommand.ts @@ -0,0 +1,170 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { GetTestExecutionArtifactsUrlRequest, GetTestExecutionArtifactsUrlResponse } from "../models/models_0"; +import { + de_GetTestExecutionArtifactsUrlCommand, + se_GetTestExecutionArtifactsUrlCommand, +} from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link GetTestExecutionArtifactsUrlCommand}. + */ +export interface GetTestExecutionArtifactsUrlCommandInput extends GetTestExecutionArtifactsUrlRequest {} +/** + * @public + * + * The output of {@link GetTestExecutionArtifactsUrlCommand}. + */ +export interface GetTestExecutionArtifactsUrlCommandOutput + extends GetTestExecutionArtifactsUrlResponse, + __MetadataBearer {} + +/** + * @public + *

The pre-signed Amazon S3 URL to download the test execution result artifacts.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, GetTestExecutionArtifactsUrlCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, GetTestExecutionArtifactsUrlCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // GetTestExecutionArtifactsUrlRequest + * testExecutionId: "STRING_VALUE", // required + * }; + * const command = new GetTestExecutionArtifactsUrlCommand(input); + * const response = await client.send(command); + * // { // GetTestExecutionArtifactsUrlResponse + * // testExecutionId: "STRING_VALUE", + * // downloadArtifactsUrl: "STRING_VALUE", + * // }; + * + * ``` + * + * @param GetTestExecutionArtifactsUrlCommandInput - {@link GetTestExecutionArtifactsUrlCommandInput} + * @returns {@link GetTestExecutionArtifactsUrlCommandOutput} + * @see {@link GetTestExecutionArtifactsUrlCommandInput} for command's `input` shape. + * @see {@link GetTestExecutionArtifactsUrlCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

You asked to describe a resource that doesn't exist. Check the + * resource that you are requesting and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class GetTestExecutionArtifactsUrlCommand extends $Command< + GetTestExecutionArtifactsUrlCommandInput, + GetTestExecutionArtifactsUrlCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: GetTestExecutionArtifactsUrlCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, GetTestExecutionArtifactsUrlCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "GetTestExecutionArtifactsUrlCommand"; + 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: GetTestExecutionArtifactsUrlCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_GetTestExecutionArtifactsUrlCommand(input, context); + } + + /** + * @internal + */ + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return de_GetTestExecutionArtifactsUrlCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/ListBotAliasesCommand.ts b/clients/client-lex-models-v2/src/commands/ListBotAliasesCommand.ts index c686167148ef..f696aa66aa67 100644 --- a/clients/client-lex-models-v2/src/commands/ListBotAliasesCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListBotAliasesCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListBotAliasesRequest, ListBotAliasesResponse } from "../models/models_0"; +import { ListBotAliasesRequest, ListBotAliasesResponse } from "../models/models_1"; import { de_ListBotAliasesCommand, se_ListBotAliasesCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListBotLocalesCommand.ts b/clients/client-lex-models-v2/src/commands/ListBotLocalesCommand.ts index d8abbbc05dbc..0cf0dfb07548 100644 --- a/clients/client-lex-models-v2/src/commands/ListBotLocalesCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListBotLocalesCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListBotLocalesRequest, ListBotLocalesResponse } from "../models/models_0"; +import { ListBotLocalesRequest, ListBotLocalesResponse } from "../models/models_1"; import { de_ListBotLocalesCommand, se_ListBotLocalesCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListBotRecommendationsCommand.ts b/clients/client-lex-models-v2/src/commands/ListBotRecommendationsCommand.ts index 2c5bf4ac280c..050de589031c 100644 --- a/clients/client-lex-models-v2/src/commands/ListBotRecommendationsCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListBotRecommendationsCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListBotRecommendationsRequest, ListBotRecommendationsResponse } from "../models/models_0"; +import { ListBotRecommendationsRequest, ListBotRecommendationsResponse } from "../models/models_1"; import { de_ListBotRecommendationsCommand, se_ListBotRecommendationsCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListBotVersionsCommand.ts b/clients/client-lex-models-v2/src/commands/ListBotVersionsCommand.ts index eddca73606d1..a0e99990deb7 100644 --- a/clients/client-lex-models-v2/src/commands/ListBotVersionsCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListBotVersionsCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListBotVersionsRequest, ListBotVersionsResponse } from "../models/models_0"; +import { ListBotVersionsRequest, ListBotVersionsResponse } from "../models/models_1"; import { de_ListBotVersionsCommand, se_ListBotVersionsCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListBotsCommand.ts b/clients/client-lex-models-v2/src/commands/ListBotsCommand.ts index 4d52274b6e41..7d3ca800b952 100644 --- a/clients/client-lex-models-v2/src/commands/ListBotsCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListBotsCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListBotsRequest, ListBotsResponse } from "../models/models_0"; +import { ListBotsRequest, ListBotsResponse } from "../models/models_1"; import { de_ListBotsCommand, se_ListBotsCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListBuiltInIntentsCommand.ts b/clients/client-lex-models-v2/src/commands/ListBuiltInIntentsCommand.ts index 793b56ac7459..7e2507b308aa 100644 --- a/clients/client-lex-models-v2/src/commands/ListBuiltInIntentsCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListBuiltInIntentsCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListBuiltInIntentsRequest, ListBuiltInIntentsResponse } from "../models/models_0"; +import { ListBuiltInIntentsRequest, ListBuiltInIntentsResponse } from "../models/models_1"; import { de_ListBuiltInIntentsCommand, se_ListBuiltInIntentsCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListBuiltInSlotTypesCommand.ts b/clients/client-lex-models-v2/src/commands/ListBuiltInSlotTypesCommand.ts index f6b7f14af9da..5ff8ef83a358 100644 --- a/clients/client-lex-models-v2/src/commands/ListBuiltInSlotTypesCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListBuiltInSlotTypesCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListBuiltInSlotTypesRequest, ListBuiltInSlotTypesResponse } from "../models/models_0"; +import { ListBuiltInSlotTypesRequest, ListBuiltInSlotTypesResponse } from "../models/models_1"; import { de_ListBuiltInSlotTypesCommand, se_ListBuiltInSlotTypesCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListCustomVocabularyItemsCommand.ts b/clients/client-lex-models-v2/src/commands/ListCustomVocabularyItemsCommand.ts index 7263db4bc75b..198eb17a9ef7 100644 --- a/clients/client-lex-models-v2/src/commands/ListCustomVocabularyItemsCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListCustomVocabularyItemsCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListCustomVocabularyItemsRequest, ListCustomVocabularyItemsResponse } from "../models/models_0"; +import { ListCustomVocabularyItemsRequest, ListCustomVocabularyItemsResponse } from "../models/models_1"; import { de_ListCustomVocabularyItemsCommand, se_ListCustomVocabularyItemsCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListExportsCommand.ts b/clients/client-lex-models-v2/src/commands/ListExportsCommand.ts index b9a8021f5666..3f51587a4bec 100644 --- a/clients/client-lex-models-v2/src/commands/ListExportsCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListExportsCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListExportsRequest, ListExportsResponse } from "../models/models_0"; +import { ListExportsRequest, ListExportsResponse } from "../models/models_1"; import { de_ListExportsCommand, se_ListExportsCommand } from "../protocols/Aws_restJson1"; /** @@ -87,8 +87,11 @@ export interface ListExportsCommandOutput extends ListExportsResponse, __Metadat * // botVersion: "STRING_VALUE", // required * // localeId: "STRING_VALUE", // required * // }, + * // testSetExportSpecification: { // TestSetExportSpecification + * // testSetId: "STRING_VALUE", // required + * // }, * // }, - * // fileFormat: "LexJson" || "TSV", + * // fileFormat: "LexJson" || "TSV" || "CSV", * // exportStatus: "InProgress" || "Completed" || "Failed" || "Deleting", * // creationDateTime: new Date("TIMESTAMP"), * // lastUpdatedDateTime: new Date("TIMESTAMP"), diff --git a/clients/client-lex-models-v2/src/commands/ListImportsCommand.ts b/clients/client-lex-models-v2/src/commands/ListImportsCommand.ts index d84e8dd81a59..002856bcdaa8 100644 --- a/clients/client-lex-models-v2/src/commands/ListImportsCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListImportsCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListImportsRequest, ListImportsResponse } from "../models/models_0"; +import { ListImportsRequest, ListImportsResponse } from "../models/models_1"; import { de_ListImportsCommand, se_ListImportsCommand } from "../protocols/Aws_restJson1"; /** @@ -78,7 +78,7 @@ export interface ListImportsCommandOutput extends ListImportsResponse, __Metadat * // mergeStrategy: "Overwrite" || "FailOnConflict" || "Append", * // creationDateTime: new Date("TIMESTAMP"), * // lastUpdatedDateTime: new Date("TIMESTAMP"), - * // importedResourceType: "Bot" || "BotLocale" || "CustomVocabulary", + * // importedResourceType: "Bot" || "BotLocale" || "CustomVocabulary" || "TestSet", * // }, * // ], * // nextToken: "STRING_VALUE", diff --git a/clients/client-lex-models-v2/src/commands/ListIntentsCommand.ts b/clients/client-lex-models-v2/src/commands/ListIntentsCommand.ts index 88006e2a7725..4a97a65fb8a9 100644 --- a/clients/client-lex-models-v2/src/commands/ListIntentsCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListIntentsCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListIntentsRequest, ListIntentsResponse } from "../models/models_0"; +import { ListIntentsRequest, ListIntentsResponse } from "../models/models_1"; import { de_ListIntentsCommand, se_ListIntentsCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListRecommendedIntentsCommand.ts b/clients/client-lex-models-v2/src/commands/ListRecommendedIntentsCommand.ts index fe576b7561ea..4c5ed19d6542 100644 --- a/clients/client-lex-models-v2/src/commands/ListRecommendedIntentsCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListRecommendedIntentsCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListRecommendedIntentsRequest, ListRecommendedIntentsResponse } from "../models/models_0"; +import { ListRecommendedIntentsRequest, ListRecommendedIntentsResponse } from "../models/models_1"; import { de_ListRecommendedIntentsCommand, se_ListRecommendedIntentsCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListSlotTypesCommand.ts b/clients/client-lex-models-v2/src/commands/ListSlotTypesCommand.ts index 88a135d3debd..7b4c26143047 100644 --- a/clients/client-lex-models-v2/src/commands/ListSlotTypesCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListSlotTypesCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListSlotTypesRequest, ListSlotTypesResponse } from "../models/models_0"; +import { ListSlotTypesRequest, ListSlotTypesResponse } from "../models/models_1"; import { de_ListSlotTypesCommand, se_ListSlotTypesCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListSlotsCommand.ts b/clients/client-lex-models-v2/src/commands/ListSlotsCommand.ts index 2b96a699d868..276aace18b95 100644 --- a/clients/client-lex-models-v2/src/commands/ListSlotsCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListSlotsCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListSlotsRequest, ListSlotsResponse } from "../models/models_0"; +import { ListSlotsRequest, ListSlotsResponse } from "../models/models_1"; import { de_ListSlotsCommand, se_ListSlotsCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListTagsForResourceCommand.ts b/clients/client-lex-models-v2/src/commands/ListTagsForResourceCommand.ts index 0e3178932d22..95be7888f285 100644 --- a/clients/client-lex-models-v2/src/commands/ListTagsForResourceCommand.ts +++ b/clients/client-lex-models-v2/src/commands/ListTagsForResourceCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { ListTagsForResourceRequest, ListTagsForResourceResponse } from "../models/models_0"; +import { ListTagsForResourceRequest, ListTagsForResourceResponse } from "../models/models_1"; import { de_ListTagsForResourceCommand, se_ListTagsForResourceCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/ListTestExecutionResultItemsCommand.ts b/clients/client-lex-models-v2/src/commands/ListTestExecutionResultItemsCommand.ts new file mode 100644 index 000000000000..1f7e5ab71abf --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/ListTestExecutionResultItemsCommand.ts @@ -0,0 +1,368 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { ListTestExecutionResultItemsRequest, ListTestExecutionResultItemsResponse } from "../models/models_1"; +import { + de_ListTestExecutionResultItemsCommand, + se_ListTestExecutionResultItemsCommand, +} from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ListTestExecutionResultItemsCommand}. + */ +export interface ListTestExecutionResultItemsCommandInput extends ListTestExecutionResultItemsRequest {} +/** + * @public + * + * The output of {@link ListTestExecutionResultItemsCommand}. + */ +export interface ListTestExecutionResultItemsCommandOutput + extends ListTestExecutionResultItemsResponse, + __MetadataBearer {} + +/** + * @public + *

Gets a list of test execution result items.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, ListTestExecutionResultItemsCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, ListTestExecutionResultItemsCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // ListTestExecutionResultItemsRequest + * testExecutionId: "STRING_VALUE", // required + * resultFilterBy: { // TestExecutionResultFilterBy + * resultTypeFilter: "OverallTestResults" || "ConversationLevelTestResults" || "IntentClassificationTestResults" || "SlotResolutionTestResults" || "UtteranceLevelResults", // required + * conversationLevelTestResultsFilterBy: { // ConversationLevelTestResultsFilterBy + * endToEndResult: "Matched" || "Mismatched" || "ExecutionError", + * }, + * }, + * maxResults: Number("int"), + * nextToken: "STRING_VALUE", + * }; + * const command = new ListTestExecutionResultItemsCommand(input); + * const response = await client.send(command); + * // { // ListTestExecutionResultItemsResponse + * // testExecutionResults: { // TestExecutionResultItems + * // overallTestResults: { // OverallTestResults + * // items: [ // OverallTestResultItemList // required + * // { // OverallTestResultItem + * // multiTurnConversation: true || false, // required + * // totalResultCount: Number("int"), // required + * // speechTranscriptionResultCounts: { // TestResultMatchStatusCountMap + * // "": Number("int"), + * // }, + * // endToEndResultCounts: { // required + * // "": Number("int"), + * // }, + * // }, + * // ], + * // }, + * // conversationLevelTestResults: { // ConversationLevelTestResults + * // items: [ // ConversationLevelTestResultItemList // required + * // { // ConversationLevelTestResultItem + * // conversationId: "STRING_VALUE", // required + * // endToEndResult: "Matched" || "Mismatched" || "ExecutionError", // required + * // speechTranscriptionResult: "Matched" || "Mismatched" || "ExecutionError", + * // intentClassificationResults: [ // ConversationLevelIntentClassificationResults // required + * // { // ConversationLevelIntentClassificationResultItem + * // intentName: "STRING_VALUE", // required + * // matchResult: "Matched" || "Mismatched" || "ExecutionError", // required + * // }, + * // ], + * // slotResolutionResults: [ // ConversationLevelSlotResolutionResults // required + * // { // ConversationLevelSlotResolutionResultItem + * // intentName: "STRING_VALUE", // required + * // slotName: "STRING_VALUE", // required + * // matchResult: "Matched" || "Mismatched" || "ExecutionError", // required + * // }, + * // ], + * // }, + * // ], + * // }, + * // intentClassificationTestResults: { // IntentClassificationTestResults + * // items: [ // IntentClassificationTestResultItemList // required + * // { // IntentClassificationTestResultItem + * // intentName: "STRING_VALUE", // required + * // multiTurnConversation: true || false, // required + * // resultCounts: { // IntentClassificationTestResultItemCounts + * // totalResultCount: Number("int"), // required + * // speechTranscriptionResultCounts: { + * // "": Number("int"), + * // }, + * // intentMatchResultCounts: { // required + * // "": Number("int"), + * // }, + * // }, + * // }, + * // ], + * // }, + * // intentLevelSlotResolutionTestResults: { // IntentLevelSlotResolutionTestResults + * // items: [ // IntentLevelSlotResolutionTestResultItemList // required + * // { // IntentLevelSlotResolutionTestResultItem + * // intentName: "STRING_VALUE", // required + * // multiTurnConversation: true || false, // required + * // slotResolutionResults: [ // SlotResolutionTestResultItems // required + * // { // SlotResolutionTestResultItem + * // slotName: "STRING_VALUE", // required + * // resultCounts: { // SlotResolutionTestResultItemCounts + * // totalResultCount: Number("int"), // required + * // speechTranscriptionResultCounts: "", + * // slotMatchResultCounts: "", // required + * // }, + * // }, + * // ], + * // }, + * // ], + * // }, + * // utteranceLevelTestResults: { // UtteranceLevelTestResults + * // items: [ // UtteranceLevelTestResultItemList // required + * // { // UtteranceLevelTestResultItem + * // recordNumber: Number("long"), // required + * // conversationId: "STRING_VALUE", + * // turnResult: { // TestSetTurnResult + * // agent: { // AgentTurnResult + * // expectedAgentPrompt: "STRING_VALUE", // required + * // actualAgentPrompt: "STRING_VALUE", + * // errorDetails: { // ExecutionErrorDetails + * // errorCode: "STRING_VALUE", // required + * // errorMessage: "STRING_VALUE", // required + * // }, + * // actualElicitedSlot: "STRING_VALUE", + * // actualIntent: "STRING_VALUE", + * // }, + * // user: { // UserTurnResult + * // input: { // UserTurnInputSpecification + * // utteranceInput: { // UtteranceInputSpecification + * // textInput: "STRING_VALUE", + * // audioInput: { // UtteranceAudioInputSpecification + * // audioFileS3Location: "STRING_VALUE", // required + * // }, + * // }, + * // requestAttributes: { // StringMap + * // "": "STRING_VALUE", + * // }, + * // sessionState: { // InputSessionStateSpecification + * // sessionAttributes: { + * // "": "STRING_VALUE", + * // }, + * // activeContexts: [ // ActiveContextList + * // { // ActiveContext + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // runtimeHints: { // RuntimeHints + * // slotHints: { // SlotHintsIntentMap + * // "": { // SlotHintsSlotMap + * // "": { // RuntimeHintDetails + * // runtimeHintValues: [ // RuntimeHintValuesList + * // { // RuntimeHintValue + * // phrase: "STRING_VALUE", // required + * // }, + * // ], + * // subSlotHints: { + * // "": { + * // runtimeHintValues: [ + * // { + * // phrase: "STRING_VALUE", // required + * // }, + * // ], + * // subSlotHints: "", + * // }, + * // }, + * // }, + * // }, + * // }, + * // }, + * // }, + * // }, + * // expectedOutput: { // UserTurnOutputSpecification + * // intent: { // UserTurnIntentOutput + * // name: "STRING_VALUE", // required + * // slots: { // UserTurnSlotOutputMap + * // "": { // UserTurnSlotOutput + * // value: "STRING_VALUE", + * // values: [ // UserTurnSlotOutputList + * // { + * // value: "STRING_VALUE", + * // values: [ + * // "", + * // ], + * // subSlots: { + * // "": "", + * // }, + * // }, + * // ], + * // subSlots: "", + * // }, + * // }, + * // }, + * // activeContexts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // transcript: "STRING_VALUE", + * // }, + * // actualOutput: { + * // intent: { + * // name: "STRING_VALUE", // required + * // slots: "", + * // }, + * // activeContexts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // transcript: "STRING_VALUE", + * // }, + * // errorDetails: { + * // errorCode: "STRING_VALUE", // required + * // errorMessage: "STRING_VALUE", // required + * // }, + * // endToEndResult: "Matched" || "Mismatched" || "ExecutionError", + * // intentMatchResult: "Matched" || "Mismatched" || "ExecutionError", + * // slotMatchResult: "Matched" || "Mismatched" || "ExecutionError", + * // speechTranscriptionResult: "Matched" || "Mismatched" || "ExecutionError", + * // conversationLevelResult: { // ConversationLevelResultDetail + * // endToEndResult: "Matched" || "Mismatched" || "ExecutionError", // required + * // speechTranscriptionResult: "Matched" || "Mismatched" || "ExecutionError", + * // }, + * // }, + * // }, + * // }, + * // ], + * // }, + * // }, + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListTestExecutionResultItemsCommandInput - {@link ListTestExecutionResultItemsCommandInput} + * @returns {@link ListTestExecutionResultItemsCommandOutput} + * @see {@link ListTestExecutionResultItemsCommandInput} for command's `input` shape. + * @see {@link ListTestExecutionResultItemsCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

You asked to describe a resource that doesn't exist. Check the + * resource that you are requesting and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class ListTestExecutionResultItemsCommand extends $Command< + ListTestExecutionResultItemsCommandInput, + ListTestExecutionResultItemsCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: ListTestExecutionResultItemsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ListTestExecutionResultItemsCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "ListTestExecutionResultItemsCommand"; + 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: ListTestExecutionResultItemsCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_ListTestExecutionResultItemsCommand(input, context); + } + + /** + * @internal + */ + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return de_ListTestExecutionResultItemsCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/ListTestExecutionsCommand.ts b/clients/client-lex-models-v2/src/commands/ListTestExecutionsCommand.ts new file mode 100644 index 000000000000..ad3ba35fd0d7 --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/ListTestExecutionsCommand.ts @@ -0,0 +1,181 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { ListTestExecutionsRequest, ListTestExecutionsResponse } from "../models/models_1"; +import { de_ListTestExecutionsCommand, se_ListTestExecutionsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ListTestExecutionsCommand}. + */ +export interface ListTestExecutionsCommandInput extends ListTestExecutionsRequest {} +/** + * @public + * + * The output of {@link ListTestExecutionsCommand}. + */ +export interface ListTestExecutionsCommandOutput extends ListTestExecutionsResponse, __MetadataBearer {} + +/** + * @public + *

The list of test set executions.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, ListTestExecutionsCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, ListTestExecutionsCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // ListTestExecutionsRequest + * sortBy: { // TestExecutionSortBy + * attribute: "TestSetName" || "CreationDateTime", // required + * order: "Ascending" || "Descending", // required + * }, + * maxResults: Number("int"), + * nextToken: "STRING_VALUE", + * }; + * const command = new ListTestExecutionsCommand(input); + * const response = await client.send(command); + * // { // ListTestExecutionsResponse + * // testExecutions: [ // TestExecutionSummaryList + * // { // TestExecutionSummary + * // testExecutionId: "STRING_VALUE", + * // creationDateTime: new Date("TIMESTAMP"), + * // lastUpdatedDateTime: new Date("TIMESTAMP"), + * // testExecutionStatus: "Pending" || "Waiting" || "InProgress" || "Completed" || "Failed" || "Stopping" || "Stopped", + * // testSetId: "STRING_VALUE", + * // testSetName: "STRING_VALUE", + * // target: { // TestExecutionTarget + * // botAliasTarget: { // BotAliasTestExecutionTarget + * // botId: "STRING_VALUE", // required + * // botAliasId: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // }, + * // }, + * // apiMode: "Streaming" || "NonStreaming", + * // testExecutionModality: "Text" || "Audio", + * // }, + * // ], + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListTestExecutionsCommandInput - {@link ListTestExecutionsCommandInput} + * @returns {@link ListTestExecutionsCommandOutput} + * @see {@link ListTestExecutionsCommandInput} for command's `input` shape. + * @see {@link ListTestExecutionsCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class ListTestExecutionsCommand extends $Command< + ListTestExecutionsCommandInput, + ListTestExecutionsCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: ListTestExecutionsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ListTestExecutionsCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "ListTestExecutionsCommand"; + 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: ListTestExecutionsCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_ListTestExecutionsCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_ListTestExecutionsCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/ListTestSetRecordsCommand.ts b/clients/client-lex-models-v2/src/commands/ListTestSetRecordsCommand.ts new file mode 100644 index 000000000000..16cb0ae7d65d --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/ListTestSetRecordsCommand.ts @@ -0,0 +1,249 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { ListTestSetRecordsRequest, ListTestSetRecordsResponse } from "../models/models_1"; +import { de_ListTestSetRecordsCommand, se_ListTestSetRecordsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ListTestSetRecordsCommand}. + */ +export interface ListTestSetRecordsCommandInput extends ListTestSetRecordsRequest {} +/** + * @public + * + * The output of {@link ListTestSetRecordsCommand}. + */ +export interface ListTestSetRecordsCommandOutput extends ListTestSetRecordsResponse, __MetadataBearer {} + +/** + * @public + *

The list of test set records.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, ListTestSetRecordsCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, ListTestSetRecordsCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // ListTestSetRecordsRequest + * testSetId: "STRING_VALUE", // required + * maxResults: Number("int"), + * nextToken: "STRING_VALUE", + * }; + * const command = new ListTestSetRecordsCommand(input); + * const response = await client.send(command); + * // { // ListTestSetRecordsResponse + * // testSetRecords: [ // TestSetTurnRecordList + * // { // TestSetTurnRecord + * // recordNumber: Number("long"), // required + * // conversationId: "STRING_VALUE", + * // turnNumber: Number("int"), + * // turnSpecification: { // TurnSpecification + * // agentTurn: { // AgentTurnSpecification + * // agentPrompt: "STRING_VALUE", // required + * // }, + * // userTurn: { // UserTurnSpecification + * // input: { // UserTurnInputSpecification + * // utteranceInput: { // UtteranceInputSpecification + * // textInput: "STRING_VALUE", + * // audioInput: { // UtteranceAudioInputSpecification + * // audioFileS3Location: "STRING_VALUE", // required + * // }, + * // }, + * // requestAttributes: { // StringMap + * // "": "STRING_VALUE", + * // }, + * // sessionState: { // InputSessionStateSpecification + * // sessionAttributes: { + * // "": "STRING_VALUE", + * // }, + * // activeContexts: [ // ActiveContextList + * // { // ActiveContext + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // runtimeHints: { // RuntimeHints + * // slotHints: { // SlotHintsIntentMap + * // "": { // SlotHintsSlotMap + * // "": { // RuntimeHintDetails + * // runtimeHintValues: [ // RuntimeHintValuesList + * // { // RuntimeHintValue + * // phrase: "STRING_VALUE", // required + * // }, + * // ], + * // subSlotHints: { + * // "": { + * // runtimeHintValues: [ + * // { + * // phrase: "STRING_VALUE", // required + * // }, + * // ], + * // subSlotHints: "", + * // }, + * // }, + * // }, + * // }, + * // }, + * // }, + * // }, + * // }, + * // expected: { // UserTurnOutputSpecification + * // intent: { // UserTurnIntentOutput + * // name: "STRING_VALUE", // required + * // slots: { // UserTurnSlotOutputMap + * // "": { // UserTurnSlotOutput + * // value: "STRING_VALUE", + * // values: [ // UserTurnSlotOutputList + * // { + * // value: "STRING_VALUE", + * // values: [ + * // "", + * // ], + * // subSlots: { + * // "": "", + * // }, + * // }, + * // ], + * // subSlots: "", + * // }, + * // }, + * // }, + * // activeContexts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // transcript: "STRING_VALUE", + * // }, + * // }, + * // }, + * // }, + * // ], + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListTestSetRecordsCommandInput - {@link ListTestSetRecordsCommandInput} + * @returns {@link ListTestSetRecordsCommandOutput} + * @see {@link ListTestSetRecordsCommandInput} for command's `input` shape. + * @see {@link ListTestSetRecordsCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

You asked to describe a resource that doesn't exist. Check the + * resource that you are requesting and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class ListTestSetRecordsCommand extends $Command< + ListTestSetRecordsCommandInput, + ListTestSetRecordsCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: ListTestSetRecordsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ListTestSetRecordsCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "ListTestSetRecordsCommand"; + 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: ListTestSetRecordsCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_ListTestSetRecordsCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_ListTestSetRecordsCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/ListTestSetsCommand.ts b/clients/client-lex-models-v2/src/commands/ListTestSetsCommand.ts new file mode 100644 index 000000000000..9fbadc838866 --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/ListTestSetsCommand.ts @@ -0,0 +1,178 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { ListTestSetsRequest, ListTestSetsResponse } from "../models/models_1"; +import { de_ListTestSetsCommand, se_ListTestSetsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ListTestSetsCommand}. + */ +export interface ListTestSetsCommandInput extends ListTestSetsRequest {} +/** + * @public + * + * The output of {@link ListTestSetsCommand}. + */ +export interface ListTestSetsCommandOutput extends ListTestSetsResponse, __MetadataBearer {} + +/** + * @public + *

The list of the test sets

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, ListTestSetsCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, ListTestSetsCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // ListTestSetsRequest + * sortBy: { // TestSetSortBy + * attribute: "TestSetName" || "LastUpdatedDateTime", // required + * order: "Ascending" || "Descending", // required + * }, + * maxResults: Number("int"), + * nextToken: "STRING_VALUE", + * }; + * const command = new ListTestSetsCommand(input); + * const response = await client.send(command); + * // { // ListTestSetsResponse + * // testSets: [ // TestSetSummaryList + * // { // TestSetSummary + * // testSetId: "STRING_VALUE", + * // testSetName: "STRING_VALUE", + * // description: "STRING_VALUE", + * // modality: "Text" || "Audio", + * // status: "Importing" || "PendingAnnotation" || "Deleting" || "ValidationError" || "Ready", + * // roleArn: "STRING_VALUE", + * // numTurns: Number("int"), + * // storageLocation: { // TestSetStorageLocation + * // s3BucketName: "STRING_VALUE", // required + * // s3Path: "STRING_VALUE", // required + * // kmsKeyArn: "STRING_VALUE", + * // }, + * // creationDateTime: new Date("TIMESTAMP"), + * // lastUpdatedDateTime: new Date("TIMESTAMP"), + * // }, + * // ], + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListTestSetsCommandInput - {@link ListTestSetsCommandInput} + * @returns {@link ListTestSetsCommandOutput} + * @see {@link ListTestSetsCommandInput} for command's `input` shape. + * @see {@link ListTestSetsCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class ListTestSetsCommand extends $Command< + ListTestSetsCommandInput, + ListTestSetsCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: ListTestSetsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use(getEndpointPlugin(configuration, ListTestSetsCommand.getEndpointParameterInstructions())); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "ListTestSetsCommand"; + 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: ListTestSetsCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_ListTestSetsCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_ListTestSetsCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/SearchAssociatedTranscriptsCommand.ts b/clients/client-lex-models-v2/src/commands/SearchAssociatedTranscriptsCommand.ts index 98647d571e0e..312483426d2f 100644 --- a/clients/client-lex-models-v2/src/commands/SearchAssociatedTranscriptsCommand.ts +++ b/clients/client-lex-models-v2/src/commands/SearchAssociatedTranscriptsCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { SearchAssociatedTranscriptsRequest, SearchAssociatedTranscriptsResponse } from "../models/models_0"; +import { SearchAssociatedTranscriptsRequest, SearchAssociatedTranscriptsResponse } from "../models/models_1"; import { de_SearchAssociatedTranscriptsCommand, se_SearchAssociatedTranscriptsCommand, diff --git a/clients/client-lex-models-v2/src/commands/StartBotRecommendationCommand.ts b/clients/client-lex-models-v2/src/commands/StartBotRecommendationCommand.ts index d68191592622..63cb492354a6 100644 --- a/clients/client-lex-models-v2/src/commands/StartBotRecommendationCommand.ts +++ b/clients/client-lex-models-v2/src/commands/StartBotRecommendationCommand.ts @@ -19,7 +19,7 @@ import { StartBotRecommendationRequestFilterSensitiveLog, StartBotRecommendationResponse, StartBotRecommendationResponseFilterSensitiveLog, -} from "../models/models_0"; +} from "../models/models_1"; import { de_StartBotRecommendationCommand, se_StartBotRecommendationCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/StartImportCommand.ts b/clients/client-lex-models-v2/src/commands/StartImportCommand.ts index 4aca29e716a5..3a20ab01a2e0 100644 --- a/clients/client-lex-models-v2/src/commands/StartImportCommand.ts +++ b/clients/client-lex-models-v2/src/commands/StartImportCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { StartImportRequest, StartImportRequestFilterSensitiveLog, StartImportResponse } from "../models/models_0"; +import { StartImportRequest, StartImportRequestFilterSensitiveLog, StartImportResponse } from "../models/models_1"; import { de_StartImportCommand, se_StartImportCommand } from "../protocols/Aws_restJson1"; /** @@ -76,6 +76,24 @@ export interface StartImportCommandOutput extends StartImportResponse, __Metadat * botVersion: "STRING_VALUE", // required * localeId: "STRING_VALUE", // required * }, + * testSetImportResourceSpecification: { // TestSetImportResourceSpecification + * testSetName: "STRING_VALUE", // required + * description: "STRING_VALUE", + * roleArn: "STRING_VALUE", // required + * storageLocation: { // TestSetStorageLocation + * s3BucketName: "STRING_VALUE", // required + * s3Path: "STRING_VALUE", // required + * kmsKeyArn: "STRING_VALUE", + * }, + * importInputLocation: { // TestSetImportInputLocation + * s3BucketName: "STRING_VALUE", // required + * s3Path: "STRING_VALUE", // required + * }, + * modality: "Text" || "Audio", // required + * testSetTags: { + * "": "STRING_VALUE", + * }, + * }, * }, * mergeStrategy: "Overwrite" || "FailOnConflict" || "Append", // required * filePassword: "STRING_VALUE", @@ -114,6 +132,24 @@ export interface StartImportCommandOutput extends StartImportResponse, __Metadat * // botVersion: "STRING_VALUE", // required * // localeId: "STRING_VALUE", // required * // }, + * // testSetImportResourceSpecification: { // TestSetImportResourceSpecification + * // testSetName: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // roleArn: "STRING_VALUE", // required + * // storageLocation: { // TestSetStorageLocation + * // s3BucketName: "STRING_VALUE", // required + * // s3Path: "STRING_VALUE", // required + * // kmsKeyArn: "STRING_VALUE", + * // }, + * // importInputLocation: { // TestSetImportInputLocation + * // s3BucketName: "STRING_VALUE", // required + * // s3Path: "STRING_VALUE", // required + * // }, + * // modality: "Text" || "Audio", // required + * // testSetTags: { + * // "": "STRING_VALUE", + * // }, + * // }, * // }, * // mergeStrategy: "Overwrite" || "FailOnConflict" || "Append", * // importStatus: "InProgress" || "Completed" || "Failed" || "Deleting", diff --git a/clients/client-lex-models-v2/src/commands/StartTestExecutionCommand.ts b/clients/client-lex-models-v2/src/commands/StartTestExecutionCommand.ts new file mode 100644 index 000000000000..c24d90571185 --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/StartTestExecutionCommand.ts @@ -0,0 +1,186 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { StartTestExecutionRequest, StartTestExecutionResponse } from "../models/models_1"; +import { de_StartTestExecutionCommand, se_StartTestExecutionCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link StartTestExecutionCommand}. + */ +export interface StartTestExecutionCommandInput extends StartTestExecutionRequest {} +/** + * @public + * + * The output of {@link StartTestExecutionCommand}. + */ +export interface StartTestExecutionCommandOutput extends StartTestExecutionResponse, __MetadataBearer {} + +/** + * @public + *

The action to start test set execution.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, StartTestExecutionCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, StartTestExecutionCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // StartTestExecutionRequest + * testSetId: "STRING_VALUE", // required + * target: { // TestExecutionTarget + * botAliasTarget: { // BotAliasTestExecutionTarget + * botId: "STRING_VALUE", // required + * botAliasId: "STRING_VALUE", // required + * localeId: "STRING_VALUE", // required + * }, + * }, + * apiMode: "Streaming" || "NonStreaming", // required + * testExecutionModality: "Text" || "Audio", + * }; + * const command = new StartTestExecutionCommand(input); + * const response = await client.send(command); + * // { // StartTestExecutionResponse + * // testExecutionId: "STRING_VALUE", + * // creationDateTime: new Date("TIMESTAMP"), + * // testSetId: "STRING_VALUE", + * // target: { // TestExecutionTarget + * // botAliasTarget: { // BotAliasTestExecutionTarget + * // botId: "STRING_VALUE", // required + * // botAliasId: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // }, + * // }, + * // apiMode: "Streaming" || "NonStreaming", + * // testExecutionModality: "Text" || "Audio", + * // }; + * + * ``` + * + * @param StartTestExecutionCommandInput - {@link StartTestExecutionCommandInput} + * @returns {@link StartTestExecutionCommandOutput} + * @see {@link StartTestExecutionCommandInput} for command's `input` shape. + * @see {@link StartTestExecutionCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link ConflictException} (client fault) + *

The action that you tried to perform couldn't be completed because + * the resource is in a conflicting state. For example, deleting a bot + * that is in the CREATING state. Try your request again.

+ * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

You asked to describe a resource that doesn't exist. Check the + * resource that you are requesting and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class StartTestExecutionCommand extends $Command< + StartTestExecutionCommandInput, + StartTestExecutionCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: StartTestExecutionCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, StartTestExecutionCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "StartTestExecutionCommand"; + 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: StartTestExecutionCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_StartTestExecutionCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_StartTestExecutionCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/StartTestSetGenerationCommand.ts b/clients/client-lex-models-v2/src/commands/StartTestSetGenerationCommand.ts new file mode 100644 index 000000000000..963d5101882b --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/StartTestSetGenerationCommand.ts @@ -0,0 +1,213 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { StartTestSetGenerationRequest, StartTestSetGenerationResponse } from "../models/models_1"; +import { de_StartTestSetGenerationCommand, se_StartTestSetGenerationCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link StartTestSetGenerationCommand}. + */ +export interface StartTestSetGenerationCommandInput extends StartTestSetGenerationRequest {} +/** + * @public + * + * The output of {@link StartTestSetGenerationCommand}. + */ +export interface StartTestSetGenerationCommandOutput extends StartTestSetGenerationResponse, __MetadataBearer {} + +/** + * @public + *

The action to start the generation of test set.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, StartTestSetGenerationCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, StartTestSetGenerationCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // StartTestSetGenerationRequest + * testSetName: "STRING_VALUE", // required + * description: "STRING_VALUE", + * storageLocation: { // TestSetStorageLocation + * s3BucketName: "STRING_VALUE", // required + * s3Path: "STRING_VALUE", // required + * kmsKeyArn: "STRING_VALUE", + * }, + * generationDataSource: { // TestSetGenerationDataSource + * conversationLogsDataSource: { // ConversationLogsDataSource + * botId: "STRING_VALUE", // required + * botAliasId: "STRING_VALUE", // required + * localeId: "STRING_VALUE", // required + * filter: { // ConversationLogsDataSourceFilterBy + * startTime: new Date("TIMESTAMP"), // required + * endTime: new Date("TIMESTAMP"), // required + * inputMode: "Speech" || "Text", // required + * }, + * }, + * }, + * roleArn: "STRING_VALUE", // required + * testSetTags: { // TagMap + * "": "STRING_VALUE", + * }, + * }; + * const command = new StartTestSetGenerationCommand(input); + * const response = await client.send(command); + * // { // StartTestSetGenerationResponse + * // testSetGenerationId: "STRING_VALUE", + * // creationDateTime: new Date("TIMESTAMP"), + * // testSetGenerationStatus: "Generating" || "Ready" || "Failed" || "Pending", + * // testSetName: "STRING_VALUE", + * // description: "STRING_VALUE", + * // storageLocation: { // TestSetStorageLocation + * // s3BucketName: "STRING_VALUE", // required + * // s3Path: "STRING_VALUE", // required + * // kmsKeyArn: "STRING_VALUE", + * // }, + * // generationDataSource: { // TestSetGenerationDataSource + * // conversationLogsDataSource: { // ConversationLogsDataSource + * // botId: "STRING_VALUE", // required + * // botAliasId: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // filter: { // ConversationLogsDataSourceFilterBy + * // startTime: new Date("TIMESTAMP"), // required + * // endTime: new Date("TIMESTAMP"), // required + * // inputMode: "Speech" || "Text", // required + * // }, + * // }, + * // }, + * // roleArn: "STRING_VALUE", + * // testSetTags: { // TagMap + * // "": "STRING_VALUE", + * // }, + * // }; + * + * ``` + * + * @param StartTestSetGenerationCommandInput - {@link StartTestSetGenerationCommandInput} + * @returns {@link StartTestSetGenerationCommandOutput} + * @see {@link StartTestSetGenerationCommandInput} for command's `input` shape. + * @see {@link StartTestSetGenerationCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link ConflictException} (client fault) + *

The action that you tried to perform couldn't be completed because + * the resource is in a conflicting state. For example, deleting a bot + * that is in the CREATING state. Try your request again.

+ * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

You asked to describe a resource that doesn't exist. Check the + * resource that you are requesting and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class StartTestSetGenerationCommand extends $Command< + StartTestSetGenerationCommandInput, + StartTestSetGenerationCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: StartTestSetGenerationCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, StartTestSetGenerationCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "StartTestSetGenerationCommand"; + 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: StartTestSetGenerationCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_StartTestSetGenerationCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_StartTestSetGenerationCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/StopBotRecommendationCommand.ts b/clients/client-lex-models-v2/src/commands/StopBotRecommendationCommand.ts index c1b8cb9ddcbb..4dea9f2cb462 100644 --- a/clients/client-lex-models-v2/src/commands/StopBotRecommendationCommand.ts +++ b/clients/client-lex-models-v2/src/commands/StopBotRecommendationCommand.ts @@ -14,7 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { StopBotRecommendationRequest, StopBotRecommendationResponse } from "../models/models_0"; +import { StopBotRecommendationRequest, StopBotRecommendationResponse } from "../models/models_1"; import { de_StopBotRecommendationCommand, se_StopBotRecommendationCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/TagResourceCommand.ts b/clients/client-lex-models-v2/src/commands/TagResourceCommand.ts index b68f9edc6d25..fabd547541e8 100644 --- a/clients/client-lex-models-v2/src/commands/TagResourceCommand.ts +++ b/clients/client-lex-models-v2/src/commands/TagResourceCommand.ts @@ -14,8 +14,7 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@s import { SerdeContext as __SerdeContext } from "@smithy/types"; import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; -import { TagResourceRequest } from "../models/models_0"; -import { TagResourceResponse } from "../models/models_1"; +import { TagResourceRequest, TagResourceResponse } from "../models/models_1"; import { de_TagResourceCommand, se_TagResourceCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-lex-models-v2/src/commands/UpdateExportCommand.ts b/clients/client-lex-models-v2/src/commands/UpdateExportCommand.ts index 5f4cbda07423..3c738f434750 100644 --- a/clients/client-lex-models-v2/src/commands/UpdateExportCommand.ts +++ b/clients/client-lex-models-v2/src/commands/UpdateExportCommand.ts @@ -70,8 +70,11 @@ export interface UpdateExportCommandOutput extends UpdateExportResponse, __Metad * // botVersion: "STRING_VALUE", // required * // localeId: "STRING_VALUE", // required * // }, + * // testSetExportSpecification: { // TestSetExportSpecification + * // testSetId: "STRING_VALUE", // required + * // }, * // }, - * // fileFormat: "LexJson" || "TSV", + * // fileFormat: "LexJson" || "TSV" || "CSV", * // exportStatus: "InProgress" || "Completed" || "Failed" || "Deleting", * // creationDateTime: new Date("TIMESTAMP"), * // lastUpdatedDateTime: new Date("TIMESTAMP"), diff --git a/clients/client-lex-models-v2/src/commands/UpdateTestSetCommand.ts b/clients/client-lex-models-v2/src/commands/UpdateTestSetCommand.ts new file mode 100644 index 000000000000..880dbc427718 --- /dev/null +++ b/clients/client-lex-models-v2/src/commands/UpdateTestSetCommand.ts @@ -0,0 +1,180 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { LexModelsV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexModelsV2Client"; +import { UpdateTestSetRequest, UpdateTestSetResponse } from "../models/models_1"; +import { de_UpdateTestSetCommand, se_UpdateTestSetCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link UpdateTestSetCommand}. + */ +export interface UpdateTestSetCommandInput extends UpdateTestSetRequest {} +/** + * @public + * + * The output of {@link UpdateTestSetCommand}. + */ +export interface UpdateTestSetCommandOutput extends UpdateTestSetResponse, __MetadataBearer {} + +/** + * @public + *

The action to update the test set.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { LexModelsV2Client, UpdateTestSetCommand } from "@aws-sdk/client-lex-models-v2"; // ES Modules import + * // const { LexModelsV2Client, UpdateTestSetCommand } = require("@aws-sdk/client-lex-models-v2"); // CommonJS import + * const client = new LexModelsV2Client(config); + * const input = { // UpdateTestSetRequest + * testSetId: "STRING_VALUE", // required + * testSetName: "STRING_VALUE", // required + * description: "STRING_VALUE", + * }; + * const command = new UpdateTestSetCommand(input); + * const response = await client.send(command); + * // { // UpdateTestSetResponse + * // testSetId: "STRING_VALUE", + * // testSetName: "STRING_VALUE", + * // description: "STRING_VALUE", + * // modality: "Text" || "Audio", + * // status: "Importing" || "PendingAnnotation" || "Deleting" || "ValidationError" || "Ready", + * // roleArn: "STRING_VALUE", + * // numTurns: Number("int"), + * // storageLocation: { // TestSetStorageLocation + * // s3BucketName: "STRING_VALUE", // required + * // s3Path: "STRING_VALUE", // required + * // kmsKeyArn: "STRING_VALUE", + * // }, + * // creationDateTime: new Date("TIMESTAMP"), + * // lastUpdatedDateTime: new Date("TIMESTAMP"), + * // }; + * + * ``` + * + * @param UpdateTestSetCommandInput - {@link UpdateTestSetCommandInput} + * @returns {@link UpdateTestSetCommandOutput} + * @see {@link UpdateTestSetCommandInput} for command's `input` shape. + * @see {@link UpdateTestSetCommandOutput} for command's `response` shape. + * @see {@link LexModelsV2ClientResolvedConfig | config} for LexModelsV2Client's `config` shape. + * + * @throws {@link ConflictException} (client fault) + *

The action that you tried to perform couldn't be completed because + * the resource is in a conflicting state. For example, deleting a bot + * that is in the CREATING state. Try your request again.

+ * + * @throws {@link InternalServerException} (server fault) + *

The service encountered an unexpected condition. Try your request + * again.

+ * + * @throws {@link PreconditionFailedException} (client fault) + *

Your request couldn't be completed because one or more request + * fields aren't valid. Check the fields in your request and try + * again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have reached a quota for your bot.

+ * + * @throws {@link ThrottlingException} (client fault) + *

Your request rate is too high. Reduce the frequency of + * requests.

+ * + * @throws {@link ValidationException} (client fault) + *

One of the input parameters in your request isn't valid. Check the + * parameters and try your request again.

+ * + * @throws {@link LexModelsV2ServiceException} + *

Base exception class for all service exceptions from LexModelsV2 service.

+ * + */ +export class UpdateTestSetCommand extends $Command< + UpdateTestSetCommandInput, + UpdateTestSetCommandOutput, + LexModelsV2ClientResolvedConfig +> { + // 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: UpdateTestSetCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: LexModelsV2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use(getEndpointPlugin(configuration, UpdateTestSetCommand.getEndpointParameterInstructions())); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "LexModelsV2Client"; + const commandName = "UpdateTestSetCommand"; + 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: UpdateTestSetCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_UpdateTestSetCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_UpdateTestSetCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-lex-models-v2/src/commands/index.ts b/clients/client-lex-models-v2/src/commands/index.ts index cb9c92b44095..3592bfd54717 100644 --- a/clients/client-lex-models-v2/src/commands/index.ts +++ b/clients/client-lex-models-v2/src/commands/index.ts @@ -13,6 +13,7 @@ export * from "./CreateResourcePolicyCommand"; export * from "./CreateResourcePolicyStatementCommand"; export * from "./CreateSlotCommand"; export * from "./CreateSlotTypeCommand"; +export * from "./CreateTestSetDiscrepancyReportCommand"; export * from "./CreateUploadUrlCommand"; export * from "./DeleteBotAliasCommand"; export * from "./DeleteBotCommand"; @@ -26,6 +27,7 @@ export * from "./DeleteResourcePolicyCommand"; export * from "./DeleteResourcePolicyStatementCommand"; export * from "./DeleteSlotCommand"; export * from "./DeleteSlotTypeCommand"; +export * from "./DeleteTestSetCommand"; export * from "./DeleteUtterancesCommand"; export * from "./DescribeBotAliasCommand"; export * from "./DescribeBotCommand"; @@ -39,6 +41,11 @@ export * from "./DescribeIntentCommand"; export * from "./DescribeResourcePolicyCommand"; export * from "./DescribeSlotCommand"; export * from "./DescribeSlotTypeCommand"; +export * from "./DescribeTestExecutionCommand"; +export * from "./DescribeTestSetCommand"; +export * from "./DescribeTestSetDiscrepancyReportCommand"; +export * from "./DescribeTestSetGenerationCommand"; +export * from "./GetTestExecutionArtifactsUrlCommand"; export * from "./ListAggregatedUtterancesCommand"; export * from "./ListBotAliasesCommand"; export * from "./ListBotLocalesCommand"; @@ -55,9 +62,15 @@ export * from "./ListRecommendedIntentsCommand"; export * from "./ListSlotTypesCommand"; export * from "./ListSlotsCommand"; export * from "./ListTagsForResourceCommand"; +export * from "./ListTestExecutionResultItemsCommand"; +export * from "./ListTestExecutionsCommand"; +export * from "./ListTestSetRecordsCommand"; +export * from "./ListTestSetsCommand"; export * from "./SearchAssociatedTranscriptsCommand"; export * from "./StartBotRecommendationCommand"; export * from "./StartImportCommand"; +export * from "./StartTestExecutionCommand"; +export * from "./StartTestSetGenerationCommand"; export * from "./StopBotRecommendationCommand"; export * from "./TagResourceCommand"; export * from "./UntagResourceCommand"; @@ -70,3 +83,4 @@ export * from "./UpdateIntentCommand"; export * from "./UpdateResourcePolicyCommand"; export * from "./UpdateSlotCommand"; export * from "./UpdateSlotTypeCommand"; +export * from "./UpdateTestSetCommand"; diff --git a/clients/client-lex-models-v2/src/endpoint/EndpointParameters.ts b/clients/client-lex-models-v2/src/endpoint/EndpointParameters.ts index 19c7b500499f..a1b1b473c486 100644 --- a/clients/client-lex-models-v2/src/endpoint/EndpointParameters.ts +++ b/clients/client-lex-models-v2/src/endpoint/EndpointParameters.ts @@ -25,7 +25,7 @@ export const resolveClientEndpointParameters = ( }; export interface EndpointParameters extends __EndpointParameters { - Region: string; + Region?: string; UseDualStack?: boolean; UseFIPS?: boolean; Endpoint?: string; diff --git a/clients/client-lex-models-v2/src/endpoint/ruleset.ts b/clients/client-lex-models-v2/src/endpoint/ruleset.ts index 99bf49fa5a76..c5a2430221cc 100644 --- a/clients/client-lex-models-v2/src/endpoint/ruleset.ts +++ b/clients/client-lex-models-v2/src/endpoint/ruleset.ts @@ -6,24 +6,25 @@ import { RuleSetObject } from "@aws-sdk/util-endpoints"; or see "smithy.rules#endpointRuleSet" in codegen/sdk-codegen/aws-models/lex-models-v2.json */ -const q="fn", -r="argv", -s="ref"; -const a=true, -b=false, -c="String", -d="PartitionResult", -e="tree", -f="error", -g="endpoint", -h={"required":true,"default":false,"type":"Boolean"}, -i={[s]:"Endpoint"}, -j={[q]:"booleanEquals",[r]:[{[s]:"UseFIPS"},true]}, -k={[q]:"booleanEquals",[r]:[{[s]:"UseDualStack"},true]}, -l={}, -m={[q]:"booleanEquals",[r]:[true,{[q]:"getAttr",[r]:[{[s]:d},"supportsFIPS"]}]}, -n={[q]:"booleanEquals",[r]:[true,{[q]:"getAttr",[r]:[{[s]:d},"supportsDualStack"]}]}, +const q="required", +r="fn", +s="argv", +t="ref"; +const a="isSet", +b="tree", +c="error", +d="endpoint", +e="PartitionResult", +f={[q]:false,"type":"String"}, +g={[q]:true,"default":false,"type":"Boolean"}, +h={[t]:"Endpoint"}, +i={[r]:"booleanEquals",[s]:[{[t]:"UseFIPS"},true]}, +j={[r]:"booleanEquals",[s]:[{[t]:"UseDualStack"},true]}, +k={}, +l={[r]:"booleanEquals",[s]:[true,{[r]:"getAttr",[s]:[{[t]:e},"supportsFIPS"]}]}, +m={[r]:"booleanEquals",[s]:[true,{[r]:"getAttr",[s]:[{[t]:e},"supportsDualStack"]}]}, +n=[i], o=[j], -p=[k]; -const _data={version:"1.0",parameters:{Region:{required:a,type:c},UseDualStack:h,UseFIPS:h,Endpoint:{required:b,type:c}},rules:[{conditions:[{[q]:"aws.partition",[r]:[{[s]:"Region"}],assign:d}],type:e,rules:[{conditions:[{[q]:"isSet",[r]:[i]}],type:e,rules:[{conditions:o,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:f},{type:e,rules:[{conditions:p,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:f},{endpoint:{url:i,properties:l,headers:l},type:g}]}]},{conditions:[j,k],type:e,rules:[{conditions:[m,n],type:e,rules:[{endpoint:{url:"https://models-v2-lex-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:l,headers:l},type:g}]},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:f}]},{conditions:o,type:e,rules:[{conditions:[m],type:e,rules:[{type:e,rules:[{endpoint:{url:"https://models-v2-lex-fips.{Region}.{PartitionResult#dnsSuffix}",properties:l,headers:l},type:g}]}]},{error:"FIPS is enabled but this partition does not support FIPS",type:f}]},{conditions:p,type:e,rules:[{conditions:[n],type:e,rules:[{endpoint:{url:"https://models-v2-lex.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:l,headers:l},type:g}]},{error:"DualStack is enabled but this partition does not support DualStack",type:f}]},{endpoint:{url:"https://models-v2-lex.{Region}.{PartitionResult#dnsSuffix}",properties:l,headers:l},type:g}]}]}; +p=[{[t]:"Region"}]; +const _data={version:"1.0",parameters:{Region:f,UseDualStack:g,UseFIPS:g,Endpoint:f},rules:[{conditions:[{[r]:a,[s]:[h]}],type:b,rules:[{conditions:n,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:c},{type:b,rules:[{conditions:o,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:c},{endpoint:{url:h,properties:k,headers:k},type:d}]}]},{type:b,rules:[{conditions:[{[r]:a,[s]:p}],type:b,rules:[{conditions:[{[r]:"aws.partition",[s]:p,assign:e}],type:b,rules:[{conditions:[i,j],type:b,rules:[{conditions:[l,m],type:b,rules:[{type:b,rules:[{endpoint:{url:"https://models-v2-lex-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:k,headers:k},type:d}]}]},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:c}]},{conditions:n,type:b,rules:[{conditions:[l],type:b,rules:[{type:b,rules:[{endpoint:{url:"https://models-v2-lex-fips.{Region}.{PartitionResult#dnsSuffix}",properties:k,headers:k},type:d}]}]},{error:"FIPS is enabled but this partition does not support FIPS",type:c}]},{conditions:o,type:b,rules:[{conditions:[m],type:b,rules:[{type:b,rules:[{endpoint:{url:"https://models-v2-lex.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:k,headers:k},type:d}]}]},{error:"DualStack is enabled but this partition does not support DualStack",type:c}]},{type:b,rules:[{endpoint:{url:"https://models-v2-lex.{Region}.{PartitionResult#dnsSuffix}",properties:k,headers:k},type:d}]}]}]},{error:"Invalid Configuration: Missing Region",type:c}]}]}; export const ruleSet: RuleSetObject = _data; diff --git a/clients/client-lex-models-v2/src/models/models_0.ts b/clients/client-lex-models-v2/src/models/models_0.ts index a8f04513ef9d..5adef41b430a 100644 --- a/clients/client-lex-models-v2/src/models/models_0.ts +++ b/clients/client-lex-models-v2/src/models/models_0.ts @@ -3,6 +3,17 @@ import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from " import { LexModelsV2ServiceException as __BaseException } from "./LexModelsV2ServiceException"; +/** + * @public + *

The active context used in the test execution.

+ */ +export interface ActiveContext { + /** + *

The name of active context.

+ */ + name: string | undefined; +} + /** * @public * @enum @@ -27,6 +38,64 @@ export interface AdvancedRecognitionSetting { audioRecognitionStrategy?: AudioRecognitionStrategy | string; } +/** + * @public + *

Details about an error in an execution of a test set.

+ */ +export interface ExecutionErrorDetails { + /** + *

The error code for the error.

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

The message describing the error.

+ */ + errorMessage: string | undefined; +} + +/** + * @public + *

The information about the agent turn in a test set execution.

+ */ +export interface AgentTurnResult { + /** + *

The expected agent prompt for the agent turn in a test set execution.

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

The actual agent prompt for the agent turn in a test set execution.

+ */ + actualAgentPrompt?: string; + + /** + *

Details about an error in an execution of a test set.

+ */ + errorDetails?: ExecutionErrorDetails; + + /** + *

The actual elicited slot for the agent turn in a test set execution.

+ */ + actualElicitedSlot?: string; + + /** + *

The actual intent for the agent turn in a test set execution.

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

The specification of an agent turn.

+ */ +export interface AgentTurnSpecification { + /** + *

The agent prompt for the agent turn in a test set.

+ */ + agentPrompt: string | undefined; +} + /** * @public * @enum @@ -316,7 +385,7 @@ export interface AudioAndDTMFInputSpecification { */ export interface S3BucketLogDestination { /** - *

The Amazon Resource Name (ARN) of an AWS Key Management Service + *

The Amazon Resource Name (ARN) of an Amazon Web Services Key Management Service * (KMS) key for encrypting audio log files stored in an S3 bucket.

*/ kmsKeyArn?: string; @@ -895,7 +964,7 @@ export interface BotAliasSummary { /** *

The current state of the bot alias. If the status is - * Available, the alias is ready for use.

+ * Available, the alias is ready for use.

*/ botAliasStatus?: BotAliasStatus | string; @@ -912,6 +981,27 @@ export interface BotAliasSummary { lastUpdatedDateTime?: Date; } +/** + * @public + *

The target Amazon S3 location for the test set execution using a bot alias.

+ */ +export interface BotAliasTestExecutionTarget { + /** + *

The bot Id of the bot alias used in the test set execution.

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

The bot alias Id of the bot alias used in the test set execution.

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

The locale Id of the bot alias used in the test set execution.

+ */ + localeId: string | undefined; +} + /** * @public *

Provides the identity of a the bot that was exported.

@@ -976,9 +1066,9 @@ export interface BotFilter { /** *

The operator to use for the filter. Specify EQ when the - * ListBots operation should return only aliases that + * ListBots operation should return only aliases that * equal the specified value. Specify CO when the - * ListBots operation should return aliases that contain + * ListBots operation should return aliases that contain * the specified value.

*/ operator: BotFilterOperator | string | undefined; @@ -1017,7 +1107,7 @@ export interface DataPrivacy { * must obtain any required verifiable parental consent under COPPA. For * information regarding the use of Amazon Lex in connection with websites, * programs, or other applications that are directed or targeted, in whole - * or in part, to children under age 13, see the Amazon Lex + * or in part, to children under age 13, see the Amazon Lex * FAQ.

*/ childDirected: boolean | undefined; @@ -1143,9 +1233,9 @@ export interface BotLocaleFilter { /** *

The operator to use for the filter. Specify EQ when the - * ListBotLocales operation should return only aliases + * ListBotLocales operation should return only aliases * that equal the specified value. Specify CO when the - * ListBotLocales operation should return aliases that + * ListBotLocales operation should return aliases that * contain the specified value.

*/ operator: BotLocaleFilterOperator | string | undefined; @@ -1154,7 +1244,7 @@ export interface BotLocaleFilter { /** * @public *

Provides information about an event that occurred affecting the bot - * locale.

+ * locale.

*/ export interface BotLocaleHistoryEvent { /** @@ -1194,13 +1284,9 @@ export interface VoiceSettings { voiceId: string | undefined; /** - *

Indicates the type of Amazon Polly voice that Amazon Lex should use for voice interaction with the user. For more - * information, see the - * engine parameter of the - * SynthesizeSpeech operation in the - * Amazon Polly developer guide.

- *

If you do not specify a value, the default is - * standard.

+ *

Indicates the type of Amazon Polly voice that Amazon Lex should use for voice interaction with the user. For more information, see the + * engine parameter of the SynthesizeSpeech operation in the Amazon Polly developer guide.

+ *

If you do not specify a value, the default is standard.

*/ engine?: VoiceEngine | string; } @@ -1348,7 +1434,7 @@ export interface BotLocaleSummary { /** *

The current status of the bot locale. When the status is - * Built the locale is ready for use.

+ * Built the locale is ready for use.

*/ botLocaleStatus?: BotLocaleStatus | string; @@ -1399,12 +1485,12 @@ export interface BotMember { /** * @public *

The object that contains the statistical summary of recommended - * intents associated with the bot recommendation.

+ * intents associated with the bot recommendation.

*/ export interface IntentStatistics { /** *

The number of recommended intents associated with the bot - * recommendation.

+ * recommendation.

*/ discoveredIntentCount?: number; } @@ -1412,12 +1498,12 @@ export interface IntentStatistics { /** * @public *

The object that contains the statistical summary of the recommended - * slot type associated with the bot recommendation.

+ * slot type associated with the bot recommendation.

*/ export interface SlotTypeStatistics { /** *

The number of recommended slot types associated with the bot - * recommendation.

+ * recommendation.

*/ discoveredSlotTypeCount?: number; } @@ -1429,13 +1515,13 @@ export interface SlotTypeStatistics { export interface BotRecommendationResultStatistics { /** *

Statistical information about about the intents associated with the - * bot recommendation results.

+ * bot recommendation results.

*/ intents?: IntentStatistics; /** *

Statistical information about the slot types associated with the bot - * recommendation results.

+ * recommendation results.

*/ slotTypes?: SlotTypeStatistics; } @@ -1443,8 +1529,8 @@ export interface BotRecommendationResultStatistics { /** * @public *

The object representing the URL of the bot definition, the URL of - * the associated transcript, and a statistical summary of the bot - * recommendation results.

+ * the associated transcript, and a statistical summary of the bot + * recommendation results.

*/ export interface BotRecommendationResults { /** @@ -1602,7 +1688,7 @@ export interface BotSummary { /** *

The current status of the bot. When the status is - * Available the bot is ready for use.

+ * Available the bot is ready for use.

*/ botStatus?: BotStatus | string; @@ -1885,7 +1971,7 @@ export interface BuiltInSlotTypeSortBy { /** * @public *

Provides summary information about a built-in slot type for the - * ListBuiltInSlotTypes + * ListBuiltInSlotTypes * operation.

*/ export interface BuiltInSlotTypeSummary { @@ -2002,7 +2088,7 @@ export type DialogActionType = (typeof DialogActionType)[keyof typeof DialogActi /** * @public - *

Defines the action that the bot executes at runtime when the + *

Defines the action that the bot executes at runtime when the * conversation reaches this step.

*/ export interface DialogAction { @@ -2124,7 +2210,7 @@ export interface SSMLMessage { /** * @public - *

The object that provides message text and it's type.

+ *

The object that provides message text and its type.

*/ export interface Message { /** @@ -2188,6 +2274,191 @@ export interface ResponseSpecification { allowInterrupt?: boolean; } +/** + * @public + * @enum + */ +export const TestResultMatchStatus = { + ExecutionError: "ExecutionError", + Matched: "Matched", + Mismatched: "Mismatched", +} as const; + +/** + * @public + */ +export type TestResultMatchStatus = (typeof TestResultMatchStatus)[keyof typeof TestResultMatchStatus]; + +/** + * @public + *

The item listing the evaluation of intent level success or failure.

+ */ +export interface ConversationLevelIntentClassificationResultItem { + /** + *

The intent name used in the evaluation of intent level success or failure.

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

The number of times the specific intent is used in the evaluation of intent level + * success or failure.

+ */ + matchResult: TestResultMatchStatus | string | undefined; +} + +/** + * @public + *

The conversation level details of the conversation used in the test set.

+ */ +export interface ConversationLevelResultDetail { + /** + *

The success or failure of the streaming of the conversation.

+ */ + endToEndResult: TestResultMatchStatus | string | undefined; + + /** + *

The speech transcription success or failure details of the conversation.

+ */ + speechTranscriptionResult?: TestResultMatchStatus | string; +} + +/** + * @public + *

The slots used for the slot resolution in the conversation.

+ */ +export interface ConversationLevelSlotResolutionResultItem { + /** + *

The intents used in the slots list for the slot resolution details.

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

The slot name in the slots list for the slot resolution details.

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

The number of matching slots used in the slots listings for the slot resolution evaluation.

+ */ + matchResult: TestResultMatchStatus | string | undefined; +} + +/** + * @public + *

The test result evaluation item at the conversation level.

+ */ +export interface ConversationLevelTestResultItem { + /** + *

The conversation Id of the test result evaluation item.

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

The end-to-end success or failure of the test result evaluation item.

+ */ + endToEndResult: TestResultMatchStatus | string | undefined; + + /** + *

The speech transcription success or failure of the test result evaluation item.

+ */ + speechTranscriptionResult?: TestResultMatchStatus | string; + + /** + *

The intent classification of the test result evaluation item.

+ */ + intentClassificationResults: ConversationLevelIntentClassificationResultItem[] | undefined; + + /** + *

The slot success or failure of the test result evaluation item.

+ */ + slotResolutionResults: ConversationLevelSlotResolutionResultItem[] | undefined; +} + +/** + * @public + *

The test set results data at the conversation level.

+ */ +export interface ConversationLevelTestResults { + /** + *

The item list in the test set results data at the conversation level.

+ */ + items: ConversationLevelTestResultItem[] | undefined; +} + +/** + * @public + *

The selection to filter the test set results data at the conversation level.

+ */ +export interface ConversationLevelTestResultsFilterBy { + /** + *

The selection of matched or mismatched end-to-end status to filter test set results data + * at the conversation level.

+ */ + endToEndResult?: TestResultMatchStatus | string; +} + +/** + * @public + * @enum + */ +export const ConversationLogsInputModeFilter = { + Speech: "Speech", + Text: "Text", +} as const; + +/** + * @public + */ +export type ConversationLogsInputModeFilter = + (typeof ConversationLogsInputModeFilter)[keyof typeof ConversationLogsInputModeFilter]; + +/** + * @public + *

The selected data source to filter the conversation log.

+ */ +export interface ConversationLogsDataSourceFilterBy { + /** + *

The start time for the conversation log.

+ */ + startTime: Date | undefined; + + /** + *

The end time for the conversation log.

+ */ + endTime: Date | undefined; + + /** + *

The selection to filter by input mode for the conversation logs.

+ */ + inputMode: ConversationLogsInputModeFilter | string | undefined; +} + +/** + * @public + *

The data source that uses conversation logs.

+ */ +export interface ConversationLogsDataSource { + /** + *

The bot Id from the conversation logs.

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

The bot alias Id from the conversation logs.

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

The locale Id of the conversation log.

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

The filter for the data source of the conversation log.

+ */ + filter: ConversationLogsDataSourceFilterBy | undefined; +} + /** * @public *

Defines the Amazon CloudWatch Logs destination log group for @@ -2705,6 +2976,7 @@ export interface CreateBotVersionResponse { * @enum */ export const ImportExportFileFormat = { + CSV: "CSV", LexJson: "LexJson", TSV: "TSV", } as const; @@ -2735,6 +3007,17 @@ export interface CustomVocabularyExportSpecification { localeId: string | undefined; } +/** + * @public + *

Contains information about the test set that is exported.

+ */ +export interface TestSetExportSpecification { + /** + *

The unique identifier of the test set.

+ */ + testSetId: string | undefined; +} + /** * @public *

Provides information about the bot or bot locale that you want to @@ -2756,6 +3039,11 @@ export interface ExportResourceSpecification { *

The parameters required to export a custom vocabulary.

*/ customVocabularyExportSpecification?: CustomVocabularyExportSpecification; + + /** + *

Specifications for the test set that is exported as a resource.

+ */ + testSetExportSpecification?: TestSetExportSpecification; } /** @@ -2859,7 +3147,7 @@ export interface FulfillmentStartResponseSpecification { delayInSeconds: number | undefined; /** - *

One to 5 message groups that contain start messages. Amazon Lex chooses + *

1 - 5 message groups that contain start messages. Amazon Lex chooses * one of the messages to play to the user.

*/ messageGroups: MessageGroup[] | undefined; @@ -2886,7 +3174,7 @@ export interface FulfillmentUpdateResponseSpecification { frequencyInSeconds: number | undefined; /** - *

One to 5 message groups that contain update messages. Amazon Lex chooses + *

1 - 5 message groups that contain update messages. Amazon Lex chooses * one of the messages to play to the user.

*/ messageGroups: MessageGroup[] | undefined; @@ -2934,7 +3222,7 @@ export interface FulfillmentUpdatesSpecification { /** * @public - *

The name of a context that must be active for an intent to be + *

A context that must be active for an intent to be * selected by Amazon Lex.

*/ export interface InputContext { @@ -3068,7 +3356,7 @@ export interface PromptSpecification { /** * @public - *

Provides configuration information for the AMAZON.KendraSearchIntent + *

Provides configuration information for the AMAZON.KendraSearchIntent * intent. When you use this intent, Amazon Lex searches the specified Amazon Kendra * index and returns documents from the index that match the user's * utterance.

@@ -3076,13 +3364,13 @@ export interface PromptSpecification { export interface KendraConfiguration { /** *

The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the - * AMAZON.KendraSearchIntent intent to search. The index must be in the + * AMAZON.KendraSearchIntent intent to search. The index must be in the * same account and Region as the Amazon Lex bot.

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

Determines whether the AMAZON.KendraSearchIntent intent uses a + *

Determines whether the AMAZON.KendraSearchIntent intent uses a * custom query string to query the Amazon Kendra index.

*/ queryFilterStringEnabled?: boolean; @@ -3198,7 +3486,7 @@ export type Effect = (typeof Effect)[keyof typeof Effect]; */ export interface Principal { /** - *

The name of the AWS service that should allowed or denied access to + *

The name of the Amazon Web Services service that should allowed or denied access to * an Amazon Lex action.

*/ service?: string; @@ -3234,9 +3522,10 @@ export interface CreateResourcePolicyStatementRequest { effect: Effect | string | undefined; /** - *

An IAM principal, such as an IAM users, IAM roles, or AWS services + *

An IAM principal, such as an IAM user, IAM role, + * or Amazon Web Services services * that is allowed or denied access to a resource. For more information, - * see AWS JSON policy elements: Principal.

+ * see Amazon Web Services JSON policy elements: Principal.

*/ principal: Principal[] | undefined; @@ -3510,30 +3799,28 @@ export type SlotConstraint = (typeof SlotConstraint)[keyof typeof SlotConstraint /** * @public *

Describes the Amazon S3 bucket name and location for the grammar - * that is the source for the slot type.

+ * that is the source for the slot type.

*/ export interface GrammarSlotTypeSource { /** - *

The name of the S3 bucket that contains the grammar source.

+ *

The name of the Amazon S3 bucket that contains the grammar source.

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

The path to the grammar in the S3 bucket.

+ *

The path to the grammar in the Amazon S3 bucket.

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

The Amazon KMS key required to decrypt the contents of the grammar, - * if any.

+ *

The KMS key required to decrypt the contents of the grammar, if any.

*/ kmsKeyArn?: string; } /** * @public - *

Settings requried for a slot type based on a grammar that you - * provide.

+ *

Settings requried for a slot type based on a grammar that you provide.

*/ export interface GrammarSlotTypeSetting { /** @@ -3544,13 +3831,11 @@ export interface GrammarSlotTypeSetting { /** * @public - *

Provides information about the external source of the slot type's - * definition.

+ *

Provides information about the external source of the slot type's definition.

*/ export interface ExternalSourceSetting { /** - *

Settings required for a slot type based on a grammar that you - * provide.

+ *

Settings required for a slot type based on a grammar that you provide.

*/ grammarSlotTypeSetting?: GrammarSlotTypeSetting; } @@ -3602,11 +3887,11 @@ export interface SlotValueRegexFilter { *

0-9

* *
  • - *

    Unicode characters ("\ u")

    + *

    Unicode characters ("\⁠u")

    *
  • * - *

    Represent Unicode characters with four digits, for example "\u0041" - * or "\u005A".

    + *

    Represent Unicode characters with four digits, for example "\⁠u0041" + * or "\⁠u005A".

    *

    The following regular expression operators are not supported:

    *
      *
    • @@ -3647,17 +3932,19 @@ export interface SlotValueSelectionSetting { * values:

      *
        *
      • - *

        OriginalValue - Returns the value entered by the user, if the + *

        + * ORIGINAL_VALUE - Returns the value entered by the user, if the * user value is similar to the slot value.

        *
      • *
      • - *

        TopResolution - If there is a resolution list for the slot, + *

        + * TOP_RESOLUTION - If there is a resolution list for the slot, * return the first value in the resolution list as the slot type * value. If there is no resolution list, null is returned.

        *
      • *
      - *

      If you don't specify the valueSelectionStrategy, the default is - * OriginalValue.

      + *

      If you don't specify the valueSelectionStrategy, the + * default is ORIGINAL_VALUE.

      */ resolutionStrategy: SlotValueResolutionStrategy | string | undefined; @@ -3668,7 +3955,8 @@ export interface SlotValueSelectionSetting { /** *

      Provides settings that enable advanced recognition settings for slot - * values.

      + * values. You can use this to enable using slot values as a custom + * vocabulary for recognizing user utterances.

      */ advancedRecognitionSetting?: AdvancedRecognitionSetting; } @@ -3679,7 +3967,7 @@ export interface SlotValueSelectionSetting { export interface CreateSlotTypeRequest { /** *

      The name for the slot. A slot type name must be unique within the - * account.

      + * intent.

      */ slotTypeName: string | undefined; @@ -3704,18 +3992,18 @@ export interface CreateSlotTypeRequest { *
        *
      • *

        - * OriginalValue - Returns the value entered by the + * ORIGINAL_VALUE - Returns the value entered by the * user, if the user value is similar to the slot value.

        *
      • *
      • *

        - * TopResolution - If there is a resolution list for + * TOP_RESOLUTION - If there is a resolution list for * the slot, return the first value in the resolution list. If there * is no resolution list, return null.

        *
      • *
      *

      If you don't specify the valueSelectionSetting - * parameter, the default is OriginalValue.

      + * parameter, the default is ORIGINAL_VALUE.

      */ valueSelectionSetting?: SlotValueSelectionSetting; @@ -3829,6 +4117,81 @@ export interface CreateSlotTypeResponse { compositeSlotTypeSetting?: CompositeSlotTypeSetting; } +/** + * @public + *

      Contains information about the bot alias used for the + * test set discrepancy report.

      + */ +export interface TestSetDiscrepancyReportBotAliasTarget { + /** + *

      The unique identifier for the bot alias.

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

      The unique identifier for the bot associated with the bot alias.

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

      The unique identifier of the locale associated with the bot alias.

      + */ + localeId: string | undefined; +} + +/** + * @public + *

      Contains information about the resource used for the + * test set discrepancy report.

      + */ +export interface TestSetDiscrepancyReportResourceTarget { + /** + *

      Contains information about the bot alias used as the resource for the + * test set discrepancy report.

      + */ + botAliasTarget?: TestSetDiscrepancyReportBotAliasTarget; +} + +/** + * @public + */ +export interface CreateTestSetDiscrepancyReportRequest { + /** + *

      The test set Id for the test set discrepancy report.

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

      The target bot for the test set discrepancy report.

      + */ + target: TestSetDiscrepancyReportResourceTarget | undefined; +} + +/** + * @public + */ +export interface CreateTestSetDiscrepancyReportResponse { + /** + *

      The unique identifier of the test set discrepancy report to describe.

      + */ + testSetDiscrepancyReportId?: string; + + /** + *

      The creation date and time for the test set discrepancy report.

      + */ + creationDateTime?: Date; + + /** + *

      The test set Id for the test set discrepancy report.

      + */ + testSetId?: string; + + /** + *

      The target bot for the test set discrepancy report.

      + */ + target?: TestSetDiscrepancyReportResourceTarget; +} + /** * @public */ @@ -3868,7 +4231,7 @@ export interface CustomVocabularyImportSpecification { /** *

      The identifier of the local to import the custom vocabulary to. The value must - * be en_GB.

      + * be en_GB.

      */ localeId: string | undefined; } @@ -3893,18 +4256,18 @@ export type CustomVocabularyStatus = (typeof CustomVocabularyStatus)[keyof typeo /** * @public *

      The object used for specifying the data range that the customer - * wants Amazon Lex to read through in the input transcripts.

      + * wants Amazon Lex to read through in the input transcripts.

      */ export interface DateRangeFilter { /** *

      A timestamp indicating the start date for the date range - * filter.

      + * filter.

      */ startDateTime: Date | undefined; /** *

      A timestamp indicating the end date for the date range - * filter.

      + * filter.

      */ endDateTime: Date | undefined; } @@ -4388,6 +4751,16 @@ export interface DeleteSlotTypeRequest { skipResourceInUseCheck?: boolean; } +/** + * @public + */ +export interface DeleteTestSetRequest { + /** + *

      The test set Id of the test set to be deleted.

      + */ + testSetId: string | undefined; +} + /** * @public */ @@ -4618,7 +4991,7 @@ export interface DescribeBotLocaleRequest { botId: string | undefined; /** - *

      The identifier of the version of the bot associated with the + *

      The version of the bot associated with the * locale.

      */ botVersion: string | undefined; @@ -4640,7 +5013,7 @@ export interface DescribeBotLocaleResponse { botId?: string; /** - *

      The identifier of the version of the bot associated with the + *

      The version of the bot associated with the * locale.

      */ botVersion?: string; @@ -4758,19 +5131,19 @@ export interface DescribeBotRecommendationRequest { /** * @public *

      The object representing the passwords that were used to encrypt the - * data related to the bot recommendation, as well as the KMS key ARN used - * to encrypt the associated metadata.

      + * data related to the bot recommendation, as well as the KMS key ARN used + * to encrypt the associated metadata.

      */ export interface EncryptionSetting { /** *

      The KMS key ARN used to encrypt the metadata associated with the bot - * recommendation.

      + * recommendation.

      */ kmsKeyArn?: string; /** *

      The password used to encrypt the recommended bot recommendation - * file.

      + * file.

      */ botLocaleExportPassword?: string; @@ -4783,15 +5156,15 @@ export interface EncryptionSetting { /** * @public *

      The object that contains a path format that will be applied when - * Amazon Lex reads the transcript file in the bucket you provide. Specify this - * object if you only want Lex to read a subset of files in your Amazon S3 - * bucket.

      + * Amazon Lex reads the transcript file in the bucket you provide. Specify this + * object if you only want Lex to read a subset of files in your Amazon S3 + * bucket.

      */ export interface PathFormat { /** *

      A list of Amazon S3 prefixes that points to sub-folders in the Amazon S3 - * bucket. Specify this list if you only want Lex to read the files under - * this set of sub-folders.

      + * bucket. Specify this list if you only want Lex to read the files under + * this set of sub-folders.

      */ objectPrefixes?: string[]; } @@ -4799,13 +5172,13 @@ export interface PathFormat { /** * @public *

      The object that contains transcript filter details that are - * associated with a bot recommendation.

      + * associated with a bot recommendation.

      */ export interface LexTranscriptFilter { /** *

      The object that contains a date range filter that will be applied to - * the transcript. Specify this object if you want Amazon Lex to only read the - * files that are within the date range.

      + * the transcript. Specify this object if you want Amazon Lex to only read the + * files that are within the date range.

      */ dateRangeFilter?: DateRangeFilter; } @@ -4813,13 +5186,13 @@ export interface LexTranscriptFilter { /** * @public *

      The object representing the filter that Amazon Lex will use to select the - * appropriate transcript.

      + * appropriate transcript.

      */ export interface TranscriptFilter { /** *

      The object representing the filter that Amazon Lex will use to select the - * appropriate transcript when the transcript format is the Amazon Lex - * format.

      + * appropriate transcript when the transcript format is the Amazon Lex + * format.

      */ lexTranscriptFilter?: LexTranscriptFilter; } @@ -4840,41 +5213,41 @@ export type TranscriptFormat = (typeof TranscriptFormat)[keyof typeof Transcript /** * @public *

      The object representing the Amazon S3 bucket containing the transcript, - * as well as the associated metadata.

      + * as well as the associated metadata.

      */ export interface S3BucketTranscriptSource { /** *

      The name of the bucket containing the transcript and the associated - * metadata.

      + * metadata.

      */ s3BucketName: string | undefined; /** *

      The object that contains a path format that will be applied when - * Amazon Lex reads the transcript file in the bucket you provide. Specify this - * object if you only want Lex to read a subset of files in your Amazon S3 - * bucket.

      + * Amazon Lex reads the transcript file in the bucket you provide. Specify this + * object if you only want Lex to read a subset of files in your Amazon S3 + * bucket.

      */ pathFormat?: PathFormat; /** *

      The format of the transcript content. Currently, Genie only supports - * the Amazon Lex transcript format.

      + * the Amazon Lex transcript format.

      */ transcriptFormat: TranscriptFormat | string | undefined; /** *

      The object that contains the filter which will be applied when Amazon Lex - * reads through the Amazon S3 bucket. Specify this object if you want Amazon Lex to - * read only a subset of the Amazon S3 bucket based on the filter you - * provide.

      + * reads through the Amazon S3 bucket. Specify this object if you want Amazon Lex to + * read only a subset of the Amazon S3 bucket based on the filter you + * provide.

      */ transcriptFilter?: TranscriptFilter; /** *

      The ARN of the KMS key that customer use to encrypt their Amazon S3 - * bucket. Only use this field if your bucket is encrypted using a - * customer managed KMS key.

      + * bucket. Only use this field if your bucket is encrypted using a + * customer managed KMS key.

      */ kmsKeyArn?: string; } @@ -4882,12 +5255,12 @@ export interface S3BucketTranscriptSource { /** * @public *

      Indicates the setting of the location where the transcript is - * stored.

      + * stored.

      */ export interface TranscriptSourceSetting { /** *

      Indicates the setting of the Amazon S3 bucket where the transcript is - * stored.

      + * stored.

      */ s3BucketTranscriptSource?: S3BucketTranscriptSource; } @@ -5199,8 +5572,102 @@ export type MergeStrategy = (typeof MergeStrategy)[keyof typeof MergeStrategy]; /** * @public - *

      Provides information about the bot or bot locale that you want to - * import. You can specify the botImportSpecification or the + *

      Contains information about the Amazon S3 location from which the test set is imported.

      + */ +export interface TestSetImportInputLocation { + /** + *

      The name of the Amazon S3 bucket.

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

      The path inside the Amazon S3 bucket pointing to the test-set CSV file.

      + */ + s3Path: string | undefined; +} + +/** + * @public + * @enum + */ +export const TestSetModality = { + Audio: "Audio", + Text: "Text", +} as const; + +/** + * @public + */ +export type TestSetModality = (typeof TestSetModality)[keyof typeof TestSetModality]; + +/** + * @public + *

      Contains information about the location in which the test set is stored.

      + */ +export interface TestSetStorageLocation { + /** + *

      The name of the Amazon S3 bucket in which the test set is stored.

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

      The path inside the Amazon S3 bucket where the test set is stored.

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

      The Amazon Resource Name (ARN) of an Amazon Web Services Key Management Service + * (KMS) key for encrypting the test set.

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

      Contains information about the test set that is imported.

      + */ +export interface TestSetImportResourceSpecification { + /** + *

      The name of the test set.

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

      The description of the test set.

      + */ + description?: string; + + /** + *

      The Amazon Resource Name (ARN) of an IAM role that has + * permission to access the test set.

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

      Contains information about the location that Amazon Lex uses to store the test-set.

      + */ + storageLocation: TestSetStorageLocation | undefined; + + /** + *

      Contains information about the input location from where test-set should be imported.

      + */ + importInputLocation: TestSetImportInputLocation | undefined; + + /** + *

      Specifies whether the test-set being imported contains written or spoken data.

      + */ + modality: TestSetModality | string | undefined; + + /** + *

      A list of tags to add to the test set. You can only add tags when you import/generate a new test set. You can't use the UpdateTestSet operation to update tags. To update tags, use the TagResource operation.

      + */ + testSetTags?: Record; +} + +/** + * @public + *

      Provides information about the bot or bot locale that you want to + * import. You can specify the botImportSpecification or the * botLocaleImportSpecification, but not both.

      */ export interface ImportResourceSpecification { @@ -5218,6 +5685,11 @@ export interface ImportResourceSpecification { *

      Provides the parameters required for importing a custom vocabulary.

      */ customVocabularyImportSpecification?: CustomVocabularyImportSpecification; + + /** + *

      Specifications for the test set that is imported.

      + */ + testSetImportResourceSpecification?: TestSetImportResourceSpecification; } /** @@ -5312,7 +5784,7 @@ export interface DescribeIntentRequest { */ export interface SlotPriority { /** - *

      The priority that a slot should be elicited.

      + *

      The priority that Amazon Lex should apply to the slot.

      */ priority: number | undefined; @@ -5482,8 +5954,7 @@ export interface DescribeSlotTypeResponse { lastUpdatedDateTime?: Date; /** - *

      Provides information about the external source of the slot type's - * definition.

      + *

      Provides information about the external source of the slot type's definition.

      */ externalSourceSetting?: ExternalSourceSetting; @@ -5493,1594 +5964,460 @@ export interface DescribeSlotTypeResponse { compositeSlotTypeSetting?: CompositeSlotTypeSetting; } -/** - * @public - * @enum - */ -export const ExportFilterName = { - ExportResourceType: "ExportResourceType", -} as const; - /** * @public */ -export type ExportFilterName = (typeof ExportFilterName)[keyof typeof ExportFilterName]; +export interface DescribeTestExecutionRequest { + /** + *

      The execution Id of the test set execution.

      + */ + testExecutionId: string | undefined; +} /** * @public * @enum */ -export const ExportFilterOperator = { - Contains: "CO", - Equals: "EQ", +export const TestExecutionApiMode = { + NonStreaming: "NonStreaming", + Streaming: "Streaming", } as const; /** * @public */ -export type ExportFilterOperator = (typeof ExportFilterOperator)[keyof typeof ExportFilterOperator]; +export type TestExecutionApiMode = (typeof TestExecutionApiMode)[keyof typeof TestExecutionApiMode]; /** * @public - *

      Filters the response form the ListExports operation

      + *

      Contains information about the bot used for the test execution.

      */ -export interface ExportFilter { +export interface TestExecutionTarget { /** - *

      The name of the field to use for filtering.

      + *

      Contains information about the bot alias used for the test execution.

      */ - name: ExportFilterName | string | undefined; + botAliasTarget?: BotAliasTestExecutionTarget; +} - /** - *

      The values to use to filter the response. The values must be - * Bot, BotLocale, or - * CustomVocabulary.

      - */ - values: string[] | undefined; +/** + * @public + * @enum + */ +export const TestExecutionModality = { + Audio: "Audio", + Text: "Text", +} as const; - /** - *

      The operator to use for the filter. Specify EQ when the - * ListExports operation should return only resource types - * that equal the specified value. Specify CO when the - * ListExports operation should return resource types that - * contain the specified value.

      - */ - operator: ExportFilterOperator | string | undefined; -} +/** + * @public + */ +export type TestExecutionModality = (typeof TestExecutionModality)[keyof typeof TestExecutionModality]; /** * @public * @enum */ -export const ExportSortAttribute = { - LastUpdatedDateTime: "LastUpdatedDateTime", +export const TestExecutionStatus = { + Completed: "Completed", + Failed: "Failed", + InProgress: "InProgress", + Pending: "Pending", + Stopped: "Stopped", + Stopping: "Stopping", + Waiting: "Waiting", } as const; /** * @public */ -export type ExportSortAttribute = (typeof ExportSortAttribute)[keyof typeof ExportSortAttribute]; +export type TestExecutionStatus = (typeof TestExecutionStatus)[keyof typeof TestExecutionStatus]; /** * @public - *

      Provides information about sorting a list of exports.

      */ -export interface ExportSortBy { +export interface DescribeTestExecutionResponse { /** - *

      The export field to use for sorting.

      + *

      The execution Id for the test set execution.

      */ - attribute: ExportSortAttribute | string | undefined; + testExecutionId?: string; /** - *

      The order to sort the list.

      + *

      The execution creation date and time for the test set execution.

      */ - order: SortOrder | string | undefined; -} + creationDateTime?: Date; -/** - * @public - *

      Provides summary information about an export in an export list. - *

      - */ -export interface ExportSummary { /** - *

      The unique identifier that Amazon Lex assigned to the export.

      + *

      The date and time of the last update for the execution.

      */ - exportId?: string; + lastUpdatedDateTime?: Date; /** - *

      Information about the bot or bot locale that was exported.

      + *

      The test execution status for the test execution.

      */ - resourceSpecification?: ExportResourceSpecification; + testExecutionStatus?: TestExecutionStatus | string; /** - *

      The file format used in the export files.

      + *

      The test set Id for the test set execution.

      */ - fileFormat?: ImportExportFileFormat | string; + testSetId?: string; /** - *

      The status of the export. When the status is Completed - * the export is ready to download.

      + *

      The test set name of the test set execution.

      */ - exportStatus?: ExportStatus | string; + testSetName?: string; /** - *

      The date and time that the export was created.

      + *

      The target bot for the test set execution details.

      */ - creationDateTime?: Date; + target?: TestExecutionTarget; /** - *

      The date and time that the export was last updated.

      + *

      Indicates whether we use streaming or non-streaming APIs are used for + * the test set execution. For streaming, StartConversation + * Amazon Lex Runtime API is used. Whereas for non-streaming, RecognizeUtterance + * and RecognizeText Amazon Lex Runtime API is used.

      */ - lastUpdatedDateTime?: Date; -} + apiMode?: TestExecutionApiMode | string; -/** - * @public - * @enum - */ -export const ImportFilterName = { - ImportResourceType: "ImportResourceType", -} as const; + /** + *

      Indicates whether test set is audio or text.

      + */ + testExecutionModality?: TestExecutionModality | string; + + /** + *

      Reasons for the failure of the test set execution.

      + */ + failureReasons?: string[]; +} /** * @public */ -export type ImportFilterName = (typeof ImportFilterName)[keyof typeof ImportFilterName]; +export interface DescribeTestSetRequest { + /** + *

      The test set Id for the test set request.

      + */ + testSetId: string | undefined; +} /** * @public * @enum */ -export const ImportFilterOperator = { - Contains: "CO", - Equals: "EQ", +export const TestSetStatus = { + Deleting: "Deleting", + Importing: "Importing", + PendingAnnotation: "PendingAnnotation", + Ready: "Ready", + ValidationError: "ValidationError", } as const; /** * @public */ -export type ImportFilterOperator = (typeof ImportFilterOperator)[keyof typeof ImportFilterOperator]; +export type TestSetStatus = (typeof TestSetStatus)[keyof typeof TestSetStatus]; /** * @public - *

      Filters the response from the ListImports operation.

      */ -export interface ImportFilter { +export interface DescribeTestSetResponse { /** - *

      The name of the field to use for filtering.

      + *

      The test set Id for the test set response.

      */ - name: ImportFilterName | string | undefined; + testSetId?: string; /** - *

      The values to use to filter the response. The values must be - * Bot, BotLocale, or - * CustomVocabulary.

      + *

      The test set name of the test set.

      */ - values: string[] | undefined; + testSetName?: string; /** - *

      The operator to use for the filter. Specify EQ when the - * ListImports operation should return only resource types - * that equal the specified value. Specify CO when the - * ListImports operation should return resource types that - * contain the specified value.

      + *

      The description of the test set.

      */ - operator: ImportFilterOperator | string | undefined; -} + description?: string; -/** - * @public - * @enum - */ -export const ImportResourceType = { - Bot: "Bot", - BotLocale: "BotLocale", - CustomVocabulary: "CustomVocabulary", -} as const; + /** + *

      Indicates whether the test set is audio or text data.

      + */ + modality?: TestSetModality | string; + + /** + *

      The status of the test set.

      + */ + status?: TestSetStatus | string; + + /** + *

      The roleARN used for any operation in the test set to access + * resources in the Amazon Web Services account.

      + */ + roleArn?: string; + + /** + *

      The total number of agent and user turn in the test set.

      + */ + numTurns?: number; + + /** + *

      The Amazon S3 storage location for the test set data.

      + */ + storageLocation?: TestSetStorageLocation; + + /** + *

      The creation date and time for the test set data.

      + */ + creationDateTime?: Date; + + /** + *

      The date and time for the last update of the test set data.

      + */ + lastUpdatedDateTime?: Date; +} /** * @public */ -export type ImportResourceType = (typeof ImportResourceType)[keyof typeof ImportResourceType]; +export interface DescribeTestSetDiscrepancyReportRequest { + /** + *

      The unique identifier of the test set discrepancy report.

      + */ + testSetDiscrepancyReportId: string | undefined; +} /** * @public * @enum */ -export const ImportSortAttribute = { - LastUpdatedDateTime: "LastUpdatedDateTime", +export const TestSetDiscrepancyReportStatus = { + Completed: "Completed", + Failed: "Failed", + InProgress: "InProgress", } as const; /** * @public */ -export type ImportSortAttribute = (typeof ImportSortAttribute)[keyof typeof ImportSortAttribute]; +export type TestSetDiscrepancyReportStatus = + (typeof TestSetDiscrepancyReportStatus)[keyof typeof TestSetDiscrepancyReportStatus]; /** * @public - *

      Provides information for sorting a list of imports.

      + *

      Contains information about discrepancy in an intent information between the test set and the + * bot.

      */ -export interface ImportSortBy { +export interface TestSetIntentDiscrepancyItem { /** - *

      The export field to use for sorting.

      + *

      The name of the intent in the discrepancy report.

      */ - attribute: ImportSortAttribute | string | undefined; + intentName: string | undefined; /** - *

      The order to sort the list.

      + *

      The error message for a discrepancy for an intent between the test set and the bot.

      */ - order: SortOrder | string | undefined; + errorMessage: string | undefined; } /** * @public - *

      Provides summary information about an import in an import - * list.

      + *

      Contains information about discrepancy in a slot information between the test set and the bot.

      */ -export interface ImportSummary { +export interface TestSetSlotDiscrepancyItem { /** - *

      The unique identifier that Amazon Lex assigned to the import.

      + *

      The name of the intent associated with the slot in the discrepancy report.

      */ - importId?: string; + intentName: string | undefined; /** - *

      The unique identifier that Amazon Lex assigned to the imported - * resource.

      + *

      The name of the slot in the discrepancy report.

      */ - importedResourceId?: string; + slotName: string | undefined; /** - *

      The name that you gave the imported resource.

      + *

      The error message for a discrepancy for an intent between the test set and the bot.

      */ - importedResourceName?: string; + errorMessage: string | undefined; +} +/** + * @public + *

      Contains details about the errors in the test set discrepancy report

      + */ +export interface TestSetDiscrepancyErrors { /** - *

      The status of the resource. When the status is - * Completed the resource is ready to build.

      + *

      Contains information about discrepancies found for intents between the test set and the bot.

      */ - importStatus?: ImportStatus | string; + intentDiscrepancies: TestSetIntentDiscrepancyItem[] | undefined; /** - *

      The strategy used to merge existing bot or bot locale definitions - * with the imported definition.

      + *

      Contains information about discrepancies found for slots between the test set and the bot.

      */ - mergeStrategy?: MergeStrategy | string; + slotDiscrepancies: TestSetSlotDiscrepancyItem[] | undefined; +} +/** + * @public + */ +export interface DescribeTestSetDiscrepancyReportResponse { /** - *

      The date and time that the import was created.

      + *

      The unique identifier of the test set discrepancy report to describe.

      */ - creationDateTime?: Date; + testSetDiscrepancyReportId?: string; /** - *

      The date and time that the import was last updated.

      - */ - lastUpdatedDateTime?: Date; - - /** - *

      The type of resource that was imported.

      - */ - importedResourceType?: ImportResourceType | string; -} - -/** - * @public - * @enum - */ -export const IntentFilterName = { - IntentName: "IntentName", -} as const; - -/** - * @public - */ -export type IntentFilterName = (typeof IntentFilterName)[keyof typeof IntentFilterName]; - -/** - * @public - * @enum - */ -export const IntentFilterOperator = { - Contains: "CO", - Equals: "EQ", -} as const; - -/** - * @public - */ -export type IntentFilterOperator = (typeof IntentFilterOperator)[keyof typeof IntentFilterOperator]; - -/** - * @public - *

      Filters the response from the ListIntents - * operation.

      - */ -export interface IntentFilter { - /** - *

      The name of the field to use for the filter.

      - */ - name: IntentFilterName | string | undefined; - - /** - *

      The value to use for the filter.

      - */ - values: string[] | undefined; - - /** - *

      The operator to use for the filter. Specify EQ when the - * ListIntents operation should return only aliases that - * equal the specified value. Specify CO when the - * ListIntents operation should return aliases that - * contain the specified value.

      - */ - operator: IntentFilterOperator | string | undefined; -} - -/** - * @public - * @enum - */ -export const IntentSortAttribute = { - IntentName: "IntentName", - LastUpdatedDateTime: "LastUpdatedDateTime", -} as const; - -/** - * @public - */ -export type IntentSortAttribute = (typeof IntentSortAttribute)[keyof typeof IntentSortAttribute]; - -/** - * @public - *

      Specifies attributes for sorting a list of intents.

      - */ -export interface IntentSortBy { - /** - *

      The attribute to use to sort the list of intents.

      - */ - attribute: IntentSortAttribute | string | undefined; - - /** - *

      The order to sort the list. You can choose ascending or - * descending.

      - */ - order: SortOrder | string | undefined; -} - -/** - * @public - *

      Summary information about an intent returned by the - * ListIntents operation.

      - */ -export interface IntentSummary { - /** - *

      The unique identifier assigned to the intent. Use this ID to get - * detailed information about the intent with the - * DescribeIntent operation.

      - */ - intentId?: string; - - /** - *

      The name of the intent.

      - */ - intentName?: string; - - /** - *

      The description of the intent.

      - */ - description?: string; - - /** - *

      If this intent is derived from a built-in intent, the name of the - * parent intent.

      - */ - parentIntentSignature?: string; - - /** - *

      The input contexts that must be active for this intent to be - * considered for recognition.

      - */ - inputContexts?: InputContext[]; - - /** - *

      The output contexts that are activated when this intent is - * fulfilled.

      - */ - outputContexts?: OutputContext[]; - - /** - *

      The timestamp of the date and time that the intent was last - * updated.

      - */ - lastUpdatedDateTime?: Date; -} - -/** - * @public - * @enum - */ -export const TimeDimension = { - Days: "Days", - Hours: "Hours", - Weeks: "Weeks", -} as const; - -/** - * @public - */ -export type TimeDimension = (typeof TimeDimension)[keyof typeof TimeDimension]; - -/** - * @public - *

      Specifies the time window that utterance statistics are returned - * for. The time window is always relative to the last time that the that - * utterances were aggregated. For example, if the - * ListAggregatedUtterances operation is called at 1600, - * the time window is set to 1 hour, and the last refresh time was 1530, - * only utterances made between 1430 and 1530 are returned.

      - *

      You can choose the time window that statistics should be returned - * for.

      - *
        - *
      • - *

        - * Hours - You can request - * utterance statistics for 1, 3, 6, 12, or 24 hour time windows. - * Statistics are refreshed every half hour for 1 hour time windows, - * and hourly for the other time windows.

        - *
      • - *
      • - *

        - * Days - You can request - * utterance statistics for 3 days. Statistics are refreshed every 6 - * hours.

        - *
      • - *
      • - *

        - * Weeks - You can see - * statistics for one or two weeks. Statistics are refreshed every - * 12 hours for one week time windows, and once per day for two week - * time windows.

        - *
      • - *
      - */ -export interface RelativeAggregationDuration { - /** - *

      The type of time period that the timeValue field - * represents.

      - */ - timeDimension: TimeDimension | string | undefined; - - /** - *

      The period of the time window to gather statistics for. The valid - * value depends on the setting of the timeDimension - * field.

      - *
        - *
      • - *

        - * Hours - 1/3/6/12/24

        - *
      • - *
      • - *

        - * Days - 3

        - *
      • - *
      • - *

        - * Weeks - 1/2

        - *
      • - *
      - */ - timeValue: number | undefined; -} - -/** - * @public - *

      Provides parameters for setting the time window and duration for - * aggregating utterance data.

      - */ -export interface UtteranceAggregationDuration { - /** - *

      The desired time window for aggregating utterances.

      - */ - relativeAggregationDuration: RelativeAggregationDuration | undefined; -} - -/** - * @public - */ -export interface ListAggregatedUtterancesRequest { - /** - *

      The unique identifier of the bot associated with this - * request.

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

      The identifier of the bot alias associated with this request. If you - * specify the bot alias, you can't specify the bot version.

      - */ - botAliasId?: string; - - /** - *

      The identifier of the bot version associated with this request. If - * you specify the bot version, you can't specify the bot alias.

      - */ - botVersion?: string; - - /** - *

      The identifier of the language and locale where the utterances were - * collected. For more information, see Supported - * languages.

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

      The time window for aggregating the utterance information. You can - * specify a time between one hour and two weeks.

      - */ - aggregationDuration: UtteranceAggregationDuration | undefined; - - /** - *

      Specifies sorting parameters for the list of utterances. You can - * sort by the hit count, the missed count, or the number of distinct - * sessions the utterance appeared in.

      - */ - sortBy?: AggregatedUtterancesSortBy; - - /** - *

      Provides the specification of a filter used to limit the utterances - * in the response to only those that match the filter specification. You - * can only specify one filter and one string to filter on.

      - */ - filters?: AggregatedUtterancesFilter[]; - - /** - *

      The maximum number of utterances to return in each page of results. - * If there are fewer results than the maximum page size, only the actual - * number of results are returned. If you don't specify the - * maxResults parameter, 1,000 results are - * returned.

      - */ - maxResults?: number; - - /** - *

      If the response from the ListAggregatedUtterances - * operation contains more results that specified in the - * maxResults parameter, a token is returned in the - * response. Use that token in the nextToken parameter to - * return the next page of results.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListAggregatedUtterancesResponse { - /** - *

      The identifier of the bot that contains the utterances.

      - */ - botId?: string; - - /** - *

      The identifier of the bot alias that contains the utterances. If you - * specified the bot version, the bot alias ID isn't returned.

      - */ - botAliasId?: string; - - /** - *

      The identifier of the bot version that contains the utterances. If - * you specified the bot alias, the bot version isn't returned.

      - */ - botVersion?: string; - - /** - *

      The identifier of the language and locale that the utterances are - * in.

      - */ - localeId?: string; - - /** - *

      The time period used to aggregate the utterance data.

      - */ - aggregationDuration?: UtteranceAggregationDuration; - - /** - *

      The date and time that the aggregation window begins. Only data - * collected after this time is returned in the results.

      - */ - aggregationWindowStartTime?: Date; - - /** - *

      The date and time that the aggregation window ends. Only data - * collected between the start time and the end time are returned in the - * results.

      - */ - aggregationWindowEndTime?: Date; - - /** - *

      The last date and time that the aggregated data was collected. The - * time period depends on the length of the aggregation window.

      - *
        - *
      • - *

        - * Hours - for 1 hour time - * window, every half hour; otherwise every hour.

        - *
      • - *
      • - *

        - * Days - every 6 hours

        - *
      • - *
      • - *

        - * Weeks - for a one week time - * window, every 12 hours; otherwise, every day

        - *
      • - *
      - */ - aggregationLastRefreshedDateTime?: Date; - - /** - *

      Summaries of the aggregated utterance data. Each response contains - * information about the number of times that the utterance was seen - * during the time period, whether it was detected or missed, and when it - * was seen during the time period.

      - */ - aggregatedUtterancesSummaries?: AggregatedUtterancesSummary[]; - - /** - *

      A token that indicates whether there are more results to return in a - * response to the ListAggregatedUtterances operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a - * ListAggregatedUtterances operation request to get the - * next page of results.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListBotAliasesRequest { - /** - *

      The identifier of the bot to list aliases for.

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

      The maximum number of aliases to return in each page of results. If - * there are fewer results than the max page size, only the actual number - * of results are returned.

      - */ - maxResults?: number; - - /** - *

      If the response from the ListBotAliases operation - * contains more results than specified in the maxResults - * parameter, a token is returned in the response. Use that token in the - * nextToken parameter to return the next page of - * results.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListBotAliasesResponse { - /** - *

      Summary information for the bot aliases that meet the filter - * criteria specified in the request. The length of the list is specified - * in the maxResults parameter of the request. If there are - * more aliases available, the nextToken field contains a - * token to get the next page of results.

      - */ - botAliasSummaries?: BotAliasSummary[]; - - /** - *

      A token that indicates whether there are more results to return in a - * response to the ListBotAliases operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a ListBotAliases - * operation request to get the next page of results.

      - */ - nextToken?: string; - - /** - *

      The identifier of the bot associated with the aliases.

      - */ - botId?: string; -} - -/** - * @public - */ -export interface ListBotLocalesRequest { - /** - *

      The identifier of the bot to list locales for.

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

      The version of the bot to list locales for.

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

      Specifies sorting parameters for the list of locales. You can sort - * by locale name in ascending or descending order.

      - */ - sortBy?: BotLocaleSortBy; - - /** - *

      Provides the specification for a filter used to limit the response - * to only those locales that match the filter specification. You can only - * specify one filter and one value to filter on.

      - */ - filters?: BotLocaleFilter[]; - - /** - *

      The maximum number of aliases to return in each page of results. If - * there are fewer results than the max page size, only the actual number - * of results are returned.

      - */ - maxResults?: number; - - /** - *

      If the response from the ListBotLocales operation - * contains more results than specified in the maxResults - * parameter, a token is returned in the response. Use that token as the - * nextToken parameter to return the next page of results. - *

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListBotLocalesResponse { - /** - *

      The identifier of the bot to list locales for.

      - */ - botId?: string; - - /** - *

      The version of the bot.

      - */ - botVersion?: string; - - /** - *

      A token that indicates whether there are more results to return in a - * response to the ListBotLocales operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a ListBotLocales - * operation request to get the next page of results.

      - */ - nextToken?: string; - - /** - *

      Summary information for the locales that meet the filter criteria - * specified in the request. The length of the list is specified in the - * maxResults parameter of the request. If there are more - * locales available, the nextToken field contains a token to - * get the next page of results.

      - */ - botLocaleSummaries?: BotLocaleSummary[]; -} - -/** - * @public - */ -export interface ListBotRecommendationsRequest { - /** - *

      The unique identifier of the bot that contains the bot - * recommendation list.

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

      The version of the bot that contains the bot recommendation - * list.

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

      The identifier of the language and locale of the bot recommendation - * list.

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

      The maximum number of bot recommendations to return in each page of - * results. If there are fewer results than the max page size, only the - * actual number of results are returned.

      - */ - maxResults?: number; - - /** - *

      If the response from the ListBotRecommendation operation contains - * more results than specified in the maxResults parameter, a token is - * returned in the response. Use that token in the nextToken parameter to - * return the next page of results.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListBotRecommendationsResponse { - /** - *

      The unique identifier of the bot that contains the bot - * recommendation list.

      - */ - botId?: string; - - /** - *

      The version of the bot that contains the bot recommendation - * list.

      - */ - botVersion?: string; - - /** - *

      The identifier of the language and locale of the bot recommendation - * list.

      - */ - localeId?: string; - - /** - *

      Summary information for the bot recommendations that meet the filter - * specified in this request. The length of the list is specified in the - * maxResults parameter of the request. If there are more bot - * recommendations available, the nextToken field contains a token to get - * the next page of results.

      - */ - botRecommendationSummaries?: BotRecommendationSummary[]; - - /** - *

      A token that indicates whether there are more results to return in a - * response to the ListBotRecommendations operation. If the nextToken - * field is present, you send the contents as the nextToken parameter of a - * ListBotRecommendations operation request to get the next page of - * results.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListBotsRequest { - /** - *

      Specifies sorting parameters for the list of bots. You can specify - * that the list be sorted by bot name in ascending or descending - * order.

      - */ - sortBy?: BotSortBy; - - /** - *

      Provides the specification of a filter used to limit the bots in the - * response to only those that match the filter specification. You can - * only specify one filter and one string to filter on.

      - */ - filters?: BotFilter[]; - - /** - *

      The maximum number of bots to return in each page of results. If - * there are fewer results than the maximum page size, only the actual - * number of results are returned.

      - */ - maxResults?: number; - - /** - *

      If the response from the ListBots operation contains - * more results than specified in the maxResults parameter, a - * token is returned in the response.

      - *

      Use the returned token in the nextToken parameter of a - * ListBots request to return the next page of results. - * For a complete set of results, call the ListBots operation - * until the nextToken returned in the response is - * null.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListBotsResponse { - /** - *

      Summary information for the bots that meet the filter criteria - * specified in the request. The length of the list is specified in the - * maxResults parameter of the request. If there are more - * bots available, the nextToken field contains a token to - * the next page of results.

      - */ - botSummaries?: BotSummary[]; - - /** - *

      A token that indicates whether there are more results to return in a - * response to the ListBots operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a ListBots - * operation request to get the next page of results.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListBotVersionsRequest { - /** - *

      The identifier of the bot to list versions for.

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

      Specifies sorting parameters for the list of versions. You can - * specify that the list be sorted by version name in either ascending or - * descending order.

      - */ - sortBy?: BotVersionSortBy; - - /** - *

      The maximum number of versions to return in each page of results. If - * there are fewer results than the max page size, only the actual number - * of results are returned.

      - */ - maxResults?: number; - - /** - *

      If the response to the ListBotVersion operation - * contains more results than specified in the maxResults - * parameter, a token is returned in the response. Use that token in the - * nextToken parameter to return the next page of - * results.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListBotVersionsResponse { - /** - *

      The identifier of the bot to list versions for.

      - */ - botId?: string; - - /** - *

      Summary information for the bot versions that meet the filter - * criteria specified in the request. The length of the list is specified - * in the maxResults parameter of the request. If there are - * more versions available, the nextToken field contains a - * token to get the next page of results.

      - */ - botVersionSummaries?: BotVersionSummary[]; - - /** - *

      A token that indicates whether there are more results to return in a - * response to the ListBotVersions operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a ListBotAliases - * operation request to get the next page of results.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListBuiltInIntentsRequest { - /** - *

      The identifier of the language and locale of the intents to list. - * The string must match one of the supported locales. For more - * information, see Supported languages.

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

      Specifies sorting parameters for the list of built-in intents. You - * can specify that the list be sorted by the built-in intent signature in - * either ascending or descending order.

      - */ - sortBy?: BuiltInIntentSortBy; - - /** - *

      The maximum number of built-in intents to return in each page of - * results. If there are fewer results than the max page size, only the - * actual number of results are returned.

      - */ - maxResults?: number; - - /** - *

      If the response from the ListBuiltInIntents operation - * contains more results than specified in the maxResults - * parameter, a token is returned in the response. Use that token in the - * nextToken parameter to return the next page of - * results.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListBuiltInIntentsResponse { - /** - *

      Summary information for the built-in intents that meet the filter - * criteria specified in the request. The length of the list is specified - * in the maxResults parameter of the request. If there are - * more intents available, the nextToken field contains a - * token to get the next page of results.

      - */ - builtInIntentSummaries?: BuiltInIntentSummary[]; - - /** - *

      A token that indicates whether there are more results to return in a - * response to the ListBuiltInIntents operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a ListBotAliases - * operation request to get the next page of results.

      - */ - nextToken?: string; - - /** - *

      The language and locale of the intents in the list.

      - */ - localeId?: string; -} - -/** - * @public - */ -export interface ListBuiltInSlotTypesRequest { - /** - *

      The identifier of the language and locale of the slot types to list. - * The string must match one of the supported locales. For more - * information, see Supported languages.

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

      Determines the sort order for the response from the - * ListBuiltInSlotTypes operation. You can choose to sort - * by the slot type signature in either ascending or descending - * order.

      - */ - sortBy?: BuiltInSlotTypeSortBy; - - /** - *

      The maximum number of built-in slot types to return in each page of - * results. If there are fewer results than the max page size, only the - * actual number of results are returned.

      - */ - maxResults?: number; - - /** - *

      If the response from the ListBuiltInSlotTypes operation - * contains more results than specified in the maxResults - * parameter, a token is returned in the response. Use that token in the - * nextToken parameter to return the next page of - * results.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListBuiltInSlotTypesResponse { - /** - *

      Summary information for the built-in slot types that meet the filter - * criteria specified in the request. The length of the list is specified - * in the maxResults parameter of the request. If there are - * more slot types available, the nextToken field contains a - * token to get the next page of results.

      - */ - builtInSlotTypeSummaries?: BuiltInSlotTypeSummary[]; - - /** - *

      A token that indicates whether there are more results to return in a - * response to the ListBuiltInSlotTypes operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a - * LIstBuiltInSlotTypes operation request to get the next - * page of results.

      - */ - nextToken?: string; - - /** - *

      The language and locale of the slot types in the list.

      - */ - localeId?: string; -} - -/** - * @public - */ -export interface ListCustomVocabularyItemsRequest { - /** - *

      The identifier of the version of the bot associated with this custom - * vocabulary.

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

      The bot version of the bot to the list custom vocabulary - * request.

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

      The identifier of the language and locale where this custom vocabulary - * is used. The string must match one of the supported locales. For more - * information, see Supported - * languages (https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html).

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

      The maximum number of items returned by the list operation.

      - */ - maxResults?: number; - - /** - *

      The nextToken identifier to the list custom vocabulary - * request.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListCustomVocabularyItemsResponse { - /** - *

      The identifier of the bot associated with this custom vocabulary.

      - */ - botId?: string; - - /** - *

      The identifier of the version of the bot associated with this custom - * vocabulary.

      - */ - botVersion?: string; - - /** - *

      The identifier of the language and locale where this custom vocabulary - * is used. The string must match one of the supported locales. For more - * information, see Supported Languages .

      - */ - localeId?: string; - - /** - *

      The custom vocabulary items from the list custom vocabulary - * response.

      - */ - customVocabularyItems?: CustomVocabularyItem[]; - - /** - *

      The nextToken identifier to the list custom vocabulary - * response.

      - */ - nextToken?: string; -} - -/** - * @public - */ -export interface ListExportsRequest { - /** - *

      The unique identifier that Amazon Lex assigned to the bot.

      - */ - botId?: string; - - /** - *

      The version of the bot to list exports for.

      - */ - botVersion?: string; - - /** - *

      Determines the field that the list of exports is sorted by. You can - * sort by the LastUpdatedDateTime field in ascending or - * descending order.

      - */ - sortBy?: ExportSortBy; - - /** - *

      Provides the specification of a filter used to limit the exports in - * the response to only those that match the filter specification. You can - * only specify one filter and one string to filter on.

      - */ - filters?: ExportFilter[]; - - /** - *

      The maximum number of exports to return in each page of results. If - * there are fewer results than the max page size, only the actual number - * of results are returned.

      + *

      The test set Id for the test set discrepancy report.

      */ - maxResults?: number; + testSetId?: string; /** - *

      If the response from the ListExports operation contains - * more results that specified in the maxResults parameter, a - * token is returned in the response.

      - *

      Use the returned token in the nextToken parameter of a - * ListExports request to return the next page of results. - * For a complete set of results, call the ListExports - * operation until the nextToken returned in the response is - * null.

      + *

      The time and date of creation for the test set discrepancy report.

      */ - nextToken?: string; + creationDateTime?: Date; /** - *

      Specifies the resources that should be exported. If you - * don't specify a resource type in the filters parameter, - * both bot locales and custom vocabularies are exported.

      + *

      The target bot location for the test set discrepancy report.

      */ - localeId?: string; -} + target?: TestSetDiscrepancyReportResourceTarget; -/** - * @public - */ -export interface ListExportsResponse { /** - *

      The unique identifier assigned to the bot by Amazon Lex.

      + *

      The status for the test set discrepancy report.

      */ - botId?: string; + testSetDiscrepancyReportStatus?: TestSetDiscrepancyReportStatus | string; /** - *

      The version of the bot that was exported.

      + *

      The date and time of the last update for the test set discrepancy report.

      */ - botVersion?: string; + lastUpdatedDataTime?: Date; /** - *

      Summary information for the exports that meet the filter criteria - * specified in the request. The length of the list is specified in the - * maxResults parameter. If there are more exports - * available, the nextToken field contains a token to get the - * next page of results.

      + *

      The top 200 error results from the test set discrepancy report.

      */ - exportSummaries?: ExportSummary[]; + testSetDiscrepancyTopErrors?: TestSetDiscrepancyErrors; /** - *

      A token that indicates whether there are more results to return in a - * response to the ListExports operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a ListExports - * operation request to get the next page of results.

      + *

      Pre-signed Amazon S3 URL to download the test set discrepancy report.

      */ - nextToken?: string; + testSetDiscrepancyRawOutputUrl?: string; /** - *

      The locale specified in the request.

      + *

      The failure report for the test set discrepancy report generation action.

      */ - localeId?: string; + failureReasons?: string[]; } /** * @public */ -export interface ListImportsRequest { - /** - *

      The unique identifier that Amazon Lex assigned to the bot.

      - */ - botId?: string; - - /** - *

      The version of the bot to list imports for.

      - */ - botVersion?: string; - - /** - *

      Determines the field that the list of imports is sorted by. You can - * sort by the LastUpdatedDateTime field in ascending or - * descending order.

      - */ - sortBy?: ImportSortBy; - - /** - *

      Provides the specification of a filter used to limit the bots in the - * response to only those that match the filter specification. You can - * only specify one filter and one string to filter on.

      - */ - filters?: ImportFilter[]; - - /** - *

      The maximum number of imports to return in each page of results. If - * there are fewer results than the max page size, only the actual number - * of results are returned.

      - */ - maxResults?: number; - - /** - *

      If the response from the ListImports operation contains - * more results than specified in the maxResults parameter, a - * token is returned in the response.

      - *

      Use the returned token in the nextToken parameter of a - * ListImports request to return the next page of results. - * For a complete set of results, call the ListImports - * operation until the nextToken returned in the response is - * null.

      - */ - nextToken?: string; - +export interface DescribeTestSetGenerationRequest { /** - *

      Specifies the locale that should be present in the list. If you - * don't specify a resource type in the filters parameter, - * the list contains both bot locales and custom vocabularies.

      + *

      The unique identifier of the test set generation.

      */ - localeId?: string; + testSetGenerationId: string | undefined; } /** * @public + *

      Contains information about the data source from which the test set is generated.

      */ -export interface ListImportsResponse { - /** - *

      The unique identifier assigned by Amazon Lex to the bot.

      - */ - botId?: string; - - /** - *

      The version of the bot that was imported. It will always be - * DRAFT.

      - */ - botVersion?: string; - - /** - *

      Summary information for the imports that meet the filter criteria - * specified in the request. The length of the list is specified in the - * maxResults parameter. If there are more imports - * available, the nextToken field contains a token to get the - * next page of results.

      - */ - importSummaries?: ImportSummary[]; - +export interface TestSetGenerationDataSource { /** - *

      A token that indicates whether there are more results to return in a - * response to the ListImports operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a ListImports - * operation request to get the next page of results.

      - */ - nextToken?: string; - - /** - *

      The locale specified in the request.

      + *

      Contains information about the bot from which the conversation logs are sourced.

      */ - localeId?: string; + conversationLogsDataSource?: ConversationLogsDataSource; } /** * @public + * @enum */ -export interface ListIntentsRequest { - /** - *

      The unique identifier of the bot that contains the intent.

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

      The version of the bot that contains the intent.

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

      The identifier of the language and locale of the intents to list. - * The string must match one of the supported locales. For more - * information, see Supported languages.

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

      Determines the sort order for the response from the - * ListIntents operation. You can choose to sort by the - * intent name or last updated date in either ascending or descending - * order.

      - */ - sortBy?: IntentSortBy; - - /** - *

      Provides the specification of a filter used to limit the intents in - * the response to only those that match the filter specification. You can - * only specify one filter and only one string to filter on.

      - */ - filters?: IntentFilter[]; - - /** - *

      The maximum number of intents to return in each page of results. If - * there are fewer results than the max page size, only the actual number - * of results are returned.

      - */ - maxResults?: number; - - /** - *

      If the response from the ListIntents operation contains - * more results than specified in the maxResults parameter, a - * token is returned in the response.

      - *

      Use the returned token in the nextToken parameter of a - * ListIntents request to return the next page of results. - * For a complete set of results, call the ListIntents - * operation until the nextToken returned in the response is - * null.

      - */ - nextToken?: string; -} +export const TestSetGenerationStatus = { + Failed: "Failed", + Generating: "Generating", + Pending: "Pending", + Ready: "Ready", +} as const; /** * @public */ -export interface ListIntentsResponse { - /** - *

      The identifier of the bot that contains the intent.

      - */ - botId?: string; - - /** - *

      The version of the bot that contains the intent.

      - */ - botVersion?: string; - - /** - *

      The language and locale of the intents in the list.

      - */ - localeId?: string; - - /** - *

      Summary information for the intents that meet the filter criteria - * specified in the request. The length of the list is specified in the - * maxResults parameter of the request. If there are more - * intents available, the nextToken field contains a token to - * get the next page of results.

      - */ - intentSummaries?: IntentSummary[]; - - /** - *

      A token that indicates whether there are more results to return in a - * response to the ListIntents operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a ListIntents - * operation request to get the next page of results.

      - */ - nextToken?: string; -} +export type TestSetGenerationStatus = (typeof TestSetGenerationStatus)[keyof typeof TestSetGenerationStatus]; /** * @public */ -export interface ListRecommendedIntentsRequest { - /** - *

      The unique identifier of the bot associated with the recommended - * intents.

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

      The version of the bot that contains the recommended intents.

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

      The identifier of the language and locale of the recommended - * intents.

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

      The identifier of the bot recommendation that contains the - * recommended intents.

      - */ - botRecommendationId: string | undefined; - +export interface DescribeTestSetGenerationResponse { /** - *

      If the response from the ListRecommendedIntents operation contains - * more results than specified in the maxResults parameter, a token is - * returned in the response. Use that token in the nextToken parameter to - * return the next page of results.

      + *

      The unique identifier of the test set generation.

      */ - nextToken?: string; + testSetGenerationId?: string; /** - *

      The maximum number of bot recommendations to return in each page of - * results. If there are fewer results than the max page size, only the - * actual number of results are returned.

      + *

      The status for the test set generation.

      */ - maxResults?: number; -} + testSetGenerationStatus?: TestSetGenerationStatus | string; -/** - * @public - *

      An object that contains a summary of a recommended intent.

      - */ -export interface RecommendedIntentSummary { /** - *

      The unique identifier of a recommended intent associated with the - * bot recommendation.

      + *

      The reasons the test set generation failed.

      */ - intentId?: string; + failureReasons?: string[]; /** - *

      The name of a recommended intent associated with the bot - * recommendation.

      + *

      The unique identifier for the test set created for the generated test set.

      */ - intentName?: string; + testSetId?: string; /** - *

      The count of sample utterances of a recommended intent that is - * associated with a bot recommendation.

      + *

      The test set name for the generated test set.

      */ - sampleUtterancesCount?: number; -} + testSetName?: string; -/** - * @public - */ -export interface ListRecommendedIntentsResponse { /** - *

      The unique identifier of the bot associated with the recommended - * intent.

      + *

      The test set description for the test set generation.

      */ - botId?: string; + description?: string; /** - *

      The version of the bot that contains the intent.

      + *

      The Amazon S3 storage location for the test set generation.

      */ - botVersion?: string; + storageLocation?: TestSetStorageLocation; /** - *

      The identifier of the language and locale of the intents to list. - * The string must match one of the supported locales. For more - * information, see Supported languages.

      + *

      The data source of the test set used for the test set generation.

      */ - localeId?: string; + generationDataSource?: TestSetGenerationDataSource; /** - *

      The identifier of the bot recommendation that contains the - * recommended intent.

      + *

      The roleARN of the test set used for the test set generation.

      */ - botRecommendationId?: string; + roleArn?: string; /** - *

      Summary information for the intents that meet the filter criteria - * specified in the request. The length of the list is specified in the - * maxResults parameter of the request. If there are more intents - * available, the nextToken field contains a token to get the next page of - * results.

      + *

      The creation date and time for the test set generation.

      */ - summaryList?: RecommendedIntentSummary[]; + creationDateTime?: Date; /** - *

      A token that indicates whether there are more results to return in a - * response to the ListRecommendedIntents operation. If the nextToken - * field is present, you send the contents as the nextToken parameter of a - * ListRecommendedIntents operation request to get the next page of - * results.

      + *

      The date and time of the last update for the test set generation.

      */ - nextToken?: string; + lastUpdatedDateTime?: Date; } /** * @public * @enum */ -export const SlotFilterName = { - SlotName: "SlotName", +export const ExportFilterName = { + ExportResourceType: "ExportResourceType", } as const; /** * @public */ -export type SlotFilterName = (typeof SlotFilterName)[keyof typeof SlotFilterName]; +export type ExportFilterName = (typeof ExportFilterName)[keyof typeof ExportFilterName]; /** * @public * @enum */ -export const SlotFilterOperator = { +export const ExportFilterOperator = { Contains: "CO", Equals: "EQ", } as const; @@ -7088,165 +6425,98 @@ export const SlotFilterOperator = { /** * @public */ -export type SlotFilterOperator = (typeof SlotFilterOperator)[keyof typeof SlotFilterOperator]; +export type ExportFilterOperator = (typeof ExportFilterOperator)[keyof typeof ExportFilterOperator]; /** * @public - *

      Filters the response from the ListSlots - * operation.

      + *

      Filters the response form the ListExports operation

      */ -export interface SlotFilter { +export interface ExportFilter { /** *

      The name of the field to use for filtering.

      */ - name: SlotFilterName | string | undefined; + name: ExportFilterName | string | undefined; /** - *

      The value to use to filter the response.

      + *

      The values to use to filter the response. The values must be + * Bot, BotLocale, or + * CustomVocabulary.

      */ values: string[] | undefined; /** - *

      The operator to use for the filter. Specify EQ when the - * ListSlots operation should return only aliases that - * equal the specified value. Specify CO when the - * ListSlots operation should return aliases that contain - * the specified value.

      + *

      The operator to use for the filter. Specify EQ when the + * ListExports operation should return only resource types + * that equal the specified value. Specify CO when the + * ListExports operation should return resource types that + * contain the specified value.

      */ - operator: SlotFilterOperator | string | undefined; + operator: ExportFilterOperator | string | undefined; } /** * @public * @enum */ -export const SlotSortAttribute = { +export const ExportSortAttribute = { LastUpdatedDateTime: "LastUpdatedDateTime", - SlotName: "SlotName", } as const; /** * @public */ -export type SlotSortAttribute = (typeof SlotSortAttribute)[keyof typeof SlotSortAttribute]; +export type ExportSortAttribute = (typeof ExportSortAttribute)[keyof typeof ExportSortAttribute]; /** * @public - *

      Specifies attributes for sorting a list of bots.

      + *

      Provides information about sorting a list of exports.

      */ -export interface SlotSortBy { +export interface ExportSortBy { /** - *

      The attribute to use to sort the list.

      + *

      The export field to use for sorting.

      */ - attribute: SlotSortAttribute | string | undefined; + attribute: ExportSortAttribute | string | undefined; /** - *

      The order to sort the list. You can choose ascending or - * descending.

      + *

      The order to sort the list.

      */ order: SortOrder | string | undefined; } -/** - * @public - */ -export interface ListSlotsRequest { - /** - *

      The identifier of the bot that contains the slot.

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

      The version of the bot that contains the slot.

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

      The identifier of the language and locale of the slots to list. The - * string must match one of the supported locales. For more information, - * see Supported languages.

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

      The unique identifier of the intent that contains the slot.

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

      Determines the sort order for the response from the - * ListSlots operation. You can choose to sort by the slot - * name or last updated date in either ascending or descending - * order.

      - */ - sortBy?: SlotSortBy; - - /** - *

      Provides the specification of a filter used to limit the slots in - * the response to only those that match the filter specification. You can - * only specify one filter and only one string to filter on.

      - */ - filters?: SlotFilter[]; - - /** - *

      The maximum number of slots to return in each page of results. If - * there are fewer results than the max page size, only the actual number - * of results are returned.

      - */ - maxResults?: number; - - /** - *

      If the response from the ListSlots operation contains - * more results than specified in the maxResults parameter, a - * token is returned in the response. Use that token in the - * nextToken parameter to return the next page of - * results.

      - */ - nextToken?: string; -} - -/** - * @public - *

      Summary information about a slot, a value that the bot elicits from - * the user.

      - */ -export interface SlotSummary { - /** - *

      The unique identifier of the slot.

      - */ - slotId?: string; - +/** + * @public + *

      Provides summary information about an export in an export list. + *

      + */ +export interface ExportSummary { /** - *

      The name given to the slot.

      + *

      The unique identifier that Amazon Lex assigned to the export.

      */ - slotName?: string; + exportId?: string; /** - *

      The description of the slot.

      + *

      Information about the bot or bot locale that was exported.

      */ - description?: string; + resourceSpecification?: ExportResourceSpecification; /** - *

      Whether the slot is required or optional. An intent is complete when - * all required slots are filled.

      + *

      The file format used in the export files.

      */ - slotConstraint?: SlotConstraint | string; + fileFormat?: ImportExportFileFormat | string; /** - *

      The unique identifier for the slot type that defines the values for - * the slot.

      + *

      The status of the export. When the status is Completed + * the export is ready to download.

      */ - slotTypeId?: string; + exportStatus?: ExportStatus | string; /** - *

      Prompts that are sent to the user to elicit a value for the - * slot.

      + *

      The date and time that the export was created.

      */ - valueElicitationPromptSpecification?: PromptSpecification; + creationDateTime?: Date; /** - *

      The timestamp of the last date and time that the slot was - * updated.

      + *

      The date and time that the export was last updated.

      */ lastUpdatedDateTime?: Date; } @@ -7254,65 +6524,46 @@ export interface SlotSummary { /** * @public */ -export interface ListSlotsResponse { - /** - *

      The identifier of the bot that contains the slots.

      - */ - botId?: string; - - /** - *

      The version of the bot that contains the slots.

      - */ - botVersion?: string; - - /** - *

      The language and locale of the slots in the list.

      - */ - localeId?: string; - +export interface GetTestExecutionArtifactsUrlRequest { /** - *

      The identifier of the intent that contains the slots.

      + *

      The unique identifier of the completed test execution.

      */ - intentId?: string; + testExecutionId: string | undefined; +} +/** + * @public + */ +export interface GetTestExecutionArtifactsUrlResponse { /** - *

      Summary information for the slots that meet the filter criteria - * specified in the request. The length of the list is specified in the - * maxResults parameter of the request. If there are more - * slots available, the nextToken field contains a token to - * get the next page of results.

      + *

      The unique identifier of the completed test execution.

      */ - slotSummaries?: SlotSummary[]; + testExecutionId?: string; /** - *

      A token that indicates whether there are more results to return in a - * response to the ListSlots operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a ListSlots - * operation request to get the next page of results.

      + *

      The pre-signed Amazon S3 URL to download completed test execution.

      */ - nextToken?: string; + downloadArtifactsUrl?: string; } /** * @public * @enum */ -export const SlotTypeFilterName = { - ExternalSourceType: "ExternalSourceType", - SlotTypeName: "SlotTypeName", +export const ImportFilterName = { + ImportResourceType: "ImportResourceType", } as const; /** * @public */ -export type SlotTypeFilterName = (typeof SlotTypeFilterName)[keyof typeof SlotTypeFilterName]; +export type ImportFilterName = (typeof ImportFilterName)[keyof typeof ImportFilterName]; /** * @public * @enum */ -export const SlotTypeFilterOperator = { +export const ImportFilterOperator = { Contains: "CO", Equals: "EQ", } as const; @@ -7320,615 +6571,639 @@ export const SlotTypeFilterOperator = { /** * @public */ -export type SlotTypeFilterOperator = (typeof SlotTypeFilterOperator)[keyof typeof SlotTypeFilterOperator]; +export type ImportFilterOperator = (typeof ImportFilterOperator)[keyof typeof ImportFilterOperator]; /** * @public - *

      Filters the response from the ListSlotTypes - * operation.

      + *

      Filters the response from the ListImports operation.

      */ -export interface SlotTypeFilter { +export interface ImportFilter { /** *

      The name of the field to use for filtering.

      */ - name: SlotTypeFilterName | string | undefined; + name: ImportFilterName | string | undefined; /** - *

      The value to use to filter the response.

      + *

      The values to use to filter the response. The values must be + * Bot, BotLocale, or + * CustomVocabulary.

      */ values: string[] | undefined; /** - *

      The operator to use for the filter. Specify EQ when the - * ListSlotTypes operation should return only aliases that - * equal the specified value. Specify CO when the - * ListSlotTypes operation should return aliases that + *

      The operator to use for the filter. Specify EQ when the + * ListImports operation should return only resource types + * that equal the specified value. Specify CO when the + * ListImports operation should return resource types that * contain the specified value.

      */ - operator: SlotTypeFilterOperator | string | undefined; + operator: ImportFilterOperator | string | undefined; } /** * @public * @enum */ -export const SlotTypeSortAttribute = { +export const ImportResourceType = { + Bot: "Bot", + BotLocale: "BotLocale", + CustomVocabulary: "CustomVocabulary", + TestSet: "TestSet", +} as const; + +/** + * @public + */ +export type ImportResourceType = (typeof ImportResourceType)[keyof typeof ImportResourceType]; + +/** + * @public + * @enum + */ +export const ImportSortAttribute = { LastUpdatedDateTime: "LastUpdatedDateTime", - SlotTypeName: "SlotTypeName", } as const; /** * @public */ -export type SlotTypeSortAttribute = (typeof SlotTypeSortAttribute)[keyof typeof SlotTypeSortAttribute]; +export type ImportSortAttribute = (typeof ImportSortAttribute)[keyof typeof ImportSortAttribute]; /** * @public - *

      Specifies attributes for sorting a list of slot types.

      + *

      Provides information for sorting a list of imports.

      */ -export interface SlotTypeSortBy { +export interface ImportSortBy { /** - *

      The attribute to use to sort the list of slot types.

      + *

      The export field to use for sorting.

      */ - attribute: SlotTypeSortAttribute | string | undefined; + attribute: ImportSortAttribute | string | undefined; /** - *

      The order to sort the list. You can say ascending or - * descending.

      + *

      The order to sort the list.

      */ order: SortOrder | string | undefined; } /** * @public + *

      Provides summary information about an import in an import + * list.

      */ -export interface ListSlotTypesRequest { +export interface ImportSummary { /** - *

      The unique identifier of the bot that contains the slot - * types.

      + *

      The unique identifier that Amazon Lex assigned to the import.

      */ - botId: string | undefined; + importId?: string; /** - *

      The version of the bot that contains the slot type.

      + *

      The unique identifier that Amazon Lex assigned to the imported + * resource.

      */ - botVersion: string | undefined; + importedResourceId?: string; /** - *

      The identifier of the language and locale of the slot types to list. - * The string must match one of the supported locales. For more - * information, see Supported languages.

      + *

      The name that you gave the imported resource.

      */ - localeId: string | undefined; + importedResourceName?: string; /** - *

      Determines the sort order for the response from the - * ListSlotTypes operation. You can choose to sort by the - * slot type name or last updated date in either ascending or descending - * order.

      + *

      The status of the resource. When the status is + * Completed the resource is ready to build.

      */ - sortBy?: SlotTypeSortBy; + importStatus?: ImportStatus | string; /** - *

      Provides the specification of a filter used to limit the slot types - * in the response to only those that match the filter specification. You - * can only specify one filter and only one string to filter on.

      + *

      The strategy used to merge existing bot or bot locale definitions + * with the imported definition.

      */ - filters?: SlotTypeFilter[]; + mergeStrategy?: MergeStrategy | string; /** - *

      The maximum number of slot types to return in each page of results. - * If there are fewer results than the max page size, only the actual - * number of results are returned.

      + *

      The date and time that the import was created.

      */ - maxResults?: number; + creationDateTime?: Date; /** - *

      If the response from the ListSlotTypes operation - * contains more results than specified in the maxResults - * parameter, a token is returned in the response. Use that token in the - * nextToken parameter to return the next page of - * results.

      + *

      The date and time that the import was last updated.

      */ - nextToken?: string; -} + lastUpdatedDateTime?: Date; -/** - * @public - * @enum - */ -export const SlotTypeCategory = { - Composite: "Composite", - Custom: "Custom", - Extended: "Extended", - ExternalGrammar: "ExternalGrammar", -} as const; + /** + *

      The type of resource that was imported.

      + */ + importedResourceType?: ImportResourceType | string; +} /** * @public + *

      Provides the phrase that Amazon Lex should look for in the user's input + * to the bot.

      */ -export type SlotTypeCategory = (typeof SlotTypeCategory)[keyof typeof SlotTypeCategory]; +export interface RuntimeHintValue { + /** + *

      The phrase that Amazon Lex should look for in the user's input to the + * bot.

      + */ + phrase: string | undefined; +} /** * @public - *

      Provides summary information about a slot type.

      + *

      The number of items in the intent classification test.

      */ -export interface SlotTypeSummary { - /** - *

      The unique identifier assigned to the slot type.

      - */ - slotTypeId?: string; - +export interface IntentClassificationTestResultItemCounts { /** - *

      The name of the slot type.

      + *

      The total number of results in the intent classification test.

      */ - slotTypeName?: string; - - /** - *

      The description of the slot type.

      - */ - description?: string; - - /** - *

      If the slot type is derived from a built-on slot type, the name of - * the parent slot type.

      - */ - parentSlotTypeSignature?: string; + totalResultCount: number | undefined; /** - *

      A timestamp of the date and time that the slot type was last - * updated.

      + *

      The number of matched, mismatched, and execution error results for speech transcription for the intent.

      */ - lastUpdatedDateTime?: Date; + speechTranscriptionResultCounts?: Record; /** - *

      Indicates the type of the slot type.

      - *
        - *
      • - *

        - * Custom - A slot type that you created using - * custom values. For more information, see Creating custom slot - * types.

        - *
      • - *
      • - *

        - * Extended - A slot type created by extending the - * AMAZON.AlphaNumeric built-in slot type. For more information, see - * AMAZON.AlphaNumeric.

        - *
      • - *
      • - *

        - * ExternalGrammar - A slot type using a custom - * GRXML grammar to define values. For more information, see Using a custom grammar slot type.

        - *
      • - *
      + *

      The number of matched and mismatched results for intent recognition for the intent.

      */ - slotTypeCategory?: SlotTypeCategory | string; + intentMatchResultCounts: Record | undefined; } /** * @public + *

      Information for an intent that is classified by the test workbench.

      */ -export interface ListSlotTypesResponse { - /** - *

      The identifier of the bot that contains the slot types.

      - */ - botId?: string; - - /** - *

      The version of the bot that contains the slot types.

      - */ - botVersion?: string; - +export interface IntentClassificationTestResultItem { /** - *

      The language and local of the slot types in the list.

      + *

      The name of the intent.

      */ - localeId?: string; + intentName: string | undefined; /** - *

      Summary information for the slot types that meet the filter criteria - * specified in the request. The length of the list is specified in the - * maxResults parameter of the request. If there are more - * slot types available, the nextToken field contains a token - * to get the next page of results.

      + *

      Indicates whether the conversation involves multiple turns or not.

      */ - slotTypeSummaries?: SlotTypeSummary[]; + multiTurnConversation: boolean | undefined; /** - *

      A token that indicates whether there are more results to return in a - * response to the ListSlotTypes operation. If the - * nextToken field is present, you send the contents as - * the nextToken parameter of a ListSlotTypes - * operation request to get the next page of results.

      + *

      The result of the intent classification test.

      */ - nextToken?: string; + resultCounts: IntentClassificationTestResultItemCounts | undefined; } /** * @public + *

      Information for the results of the intent classification test.

      */ -export interface ListTagsForResourceRequest { +export interface IntentClassificationTestResults { /** - *

      The Amazon Resource Name (ARN) of the resource to get a list of tags - * for.

      + *

      A list of the results for the intent classification test.

      */ - resourceARN: string | undefined; + items: IntentClassificationTestResultItem[] | undefined; } /** * @public + * @enum */ -export interface ListTagsForResourceResponse { - /** - *

      The tags associated with a resource.

      - */ - tags?: Record; -} +export const IntentFilterName = { + IntentName: "IntentName", +} as const; + +/** + * @public + */ +export type IntentFilterName = (typeof IntentFilterName)[keyof typeof IntentFilterName]; /** * @public * @enum */ -export const SearchOrder = { - Ascending: "Ascending", - Descending: "Descending", +export const IntentFilterOperator = { + Contains: "CO", + Equals: "EQ", } as const; /** * @public */ -export type SearchOrder = (typeof SearchOrder)[keyof typeof SearchOrder]; +export type IntentFilterOperator = (typeof IntentFilterOperator)[keyof typeof IntentFilterOperator]; /** * @public + *

      Filters the response from the ListIntents + * operation.

      */ -export interface SearchAssociatedTranscriptsRequest { - /** - *

      The unique identifier of the bot associated with the transcripts - * that you are searching.

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

      The version of the bot containing the transcripts that you are - * searching.

      - */ - botVersion: string | undefined; - +export interface IntentFilter { /** - *

      The identifier of the language and locale of the transcripts to - * search. The string must match one of the supported locales. For more - * information, see Supported languages - *

      + *

      The name of the field to use for the filter.

      */ - localeId: string | undefined; + name: IntentFilterName | string | undefined; /** - *

      The unique identifier of the bot recommendation associated with the - * transcripts to search.

      + *

      The value to use for the filter.

      */ - botRecommendationId: string | undefined; + values: string[] | undefined; /** - *

      How SearchResults are ordered. Valid values are Ascending or - * Descending. The default is Descending.

      + *

      The operator to use for the filter. Specify EQ when the + * ListIntents operation should return only aliases that + * equal the specified value. Specify CO when the + * ListIntents operation should return aliases that + * contain the specified value.

      */ - searchOrder?: SearchOrder | string; + operator: IntentFilterOperator | string | undefined; +} +/** + * @public + *

      Information about the counts for a slot resolution in the results of a test execution.

      + */ +export interface SlotResolutionTestResultItemCounts { /** - *

      A list of filter objects.

      + *

      The total number of results.

      */ - filters: AssociatedTranscriptFilter[] | undefined; + totalResultCount: number | undefined; /** - *

      The maximum number of bot recommendations to return in each page of - * results. If there are fewer results than the max page size, only the - * actual number of results are returned.

      + *

      The number of matched, mismatched and execution error results for speech transcription for the slot.

      */ - maxResults?: number; + speechTranscriptionResultCounts?: Record; /** - *

      If the response from the SearchAssociatedTranscriptsRequest - * operation contains more results than specified in the maxResults - * parameter, an index is returned in the response. Use that index in the - * nextIndex parameter to return the next page of results.

      + *

      The number of matched and mismatched results for slot resolution for the slot.

      */ - nextIndex?: number; + slotMatchResultCounts: Record | undefined; } /** * @public + *

      Information about the success and failure rate of slot resolution + * in the results of a test execution.

      */ -export interface SearchAssociatedTranscriptsResponse { - /** - *

      The unique identifier of the bot associated with the transcripts - * that you are searching.

      - */ - botId?: string; - - /** - *

      The version of the bot containing the transcripts that you are - * searching.

      - */ - botVersion?: string; - +export interface SlotResolutionTestResultItem { /** - *

      The identifier of the language and locale of the transcripts to - * search. The string must match one of the supported locales. For more - * information, see Supported languages - *

      + *

      The name of the slot.

      */ - localeId?: string; + slotName: string | undefined; /** - *

      The unique identifier of the bot recommendation associated with the - * transcripts to search.

      + *

      A result for slot resolution in the results of a test execution.

      */ - botRecommendationId?: string; + resultCounts: SlotResolutionTestResultItemCounts | undefined; +} +/** + * @public + *

      Information about intent-level slot resolution in a test result.

      + */ +export interface IntentLevelSlotResolutionTestResultItem { /** - *

      A index that indicates whether there are more results to return in a - * response to the SearchAssociatedTranscripts operation. If the nextIndex - * field is present, you send the contents as the nextIndex parameter of a - * SearchAssociatedTranscriptsRequest operation to get the next page of - * results.

      + *

      The name of the intent that was recognized.

      */ - nextIndex?: number; + intentName: string | undefined; /** - *

      The object that contains the associated transcript that meet the - * criteria you specified.

      + *

      Indicates whether the conversation involves multiple turns or not.

      */ - associatedTranscripts?: AssociatedTranscript[]; + multiTurnConversation: boolean | undefined; /** - *

      The total number of transcripts returned by the search.

      + *

      The results for the slot resolution in the test execution result.

      */ - totalResults?: number; + slotResolutionResults: SlotResolutionTestResultItem[] | undefined; } /** * @public + *

      Indicates the success or failure of slots at the intent level.

      */ -export interface StartBotRecommendationRequest { +export interface IntentLevelSlotResolutionTestResults { /** - *

      The unique identifier of the bot containing the bot - * recommendation.

      + *

      Indicates the items for the slot level resolution for the intents.

      */ - botId: string | undefined; + items: IntentLevelSlotResolutionTestResultItem[] | undefined; +} - /** - *

      The version of the bot containing the bot recommendation.

      - */ - botVersion: string | undefined; +/** + * @public + * @enum + */ +export const IntentSortAttribute = { + IntentName: "IntentName", + LastUpdatedDateTime: "LastUpdatedDateTime", +} as const; - /** - *

      The identifier of the language and locale of the bot recommendation - * to start. The string must match one of the supported locales. For more - * information, see Supported languages - *

      - */ - localeId: string | undefined; +/** + * @public + */ +export type IntentSortAttribute = (typeof IntentSortAttribute)[keyof typeof IntentSortAttribute]; +/** + * @public + *

      Specifies attributes for sorting a list of intents.

      + */ +export interface IntentSortBy { /** - *

      The object representing the Amazon S3 bucket containing the transcript, - * as well as the associated metadata.

      + *

      The attribute to use to sort the list of intents.

      */ - transcriptSourceSetting: TranscriptSourceSetting | undefined; + attribute: IntentSortAttribute | string | undefined; /** - *

      The object representing the passwords that will be used to encrypt - * the data related to the bot recommendation results, as well as the KMS - * key ARN used to encrypt the associated metadata.

      + *

      The order to sort the list. You can choose ascending or + * descending.

      */ - encryptionSetting?: EncryptionSetting; + order: SortOrder | string | undefined; } /** * @public + *

      Summary information about an intent returned by the + * ListIntents operation.

      */ -export interface StartBotRecommendationResponse { - /** - *

      The unique identifier of the bot containing the bot - * recommendation.

      - */ - botId?: string; - +export interface IntentSummary { /** - *

      The version of the bot containing the bot recommendation.

      + *

      The unique identifier assigned to the intent. Use this ID to get + * detailed information about the intent with the + * DescribeIntent operation.

      */ - botVersion?: string; + intentId?: string; /** - *

      The identifier of the language and locale of the bot recommendation - * to start. The string must match one of the supported locales. For more - * information, see Supported languages - *

      + *

      The name of the intent.

      */ - localeId?: string; + intentName?: string; /** - *

      The status of the bot recommendation.

      - *

      If the status is Failed, then the reasons for the failure are listed - * in the failureReasons field.

      + *

      The description of the intent.

      */ - botRecommendationStatus?: BotRecommendationStatus | string; + description?: string; /** - *

      The identifier of the bot recommendation that you have - * created.

      + *

      If this intent is derived from a built-in intent, the name of the + * parent intent.

      */ - botRecommendationId?: string; + parentIntentSignature?: string; /** - *

      A timestamp of the date and time that the bot recommendation was - * created.

      + *

      The input contexts that must be active for this intent to be + * considered for recognition.

      */ - creationDateTime?: Date; + inputContexts?: InputContext[]; /** - *

      The object representing the Amazon S3 bucket containing the transcript, - * as well as the associated metadata.

      + *

      The output contexts that are activated when this intent is + * fulfilled.

      */ - transcriptSourceSetting?: TranscriptSourceSetting; + outputContexts?: OutputContext[]; /** - *

      The object representing the passwords that were used to encrypt the - * data related to the bot recommendation results, as well as the KMS key - * ARN used to encrypt the associated metadata.

      + *

      The timestamp of the date and time that the intent was last + * updated.

      */ - encryptionSetting?: EncryptionSetting; + lastUpdatedDateTime?: Date; } /** * @public + * @enum */ -export interface StartImportRequest { - /** - *

      The unique identifier for the import. It is included in the response - * from the CreateUploadUrl operation.

      - */ - importId: string | undefined; +export const TimeDimension = { + Days: "Days", + Hours: "Hours", + Weeks: "Weeks", +} as const; + +/** + * @public + */ +export type TimeDimension = (typeof TimeDimension)[keyof typeof TimeDimension]; +/** + * @public + *

      Specifies the time window that utterance statistics are returned + * for. The time window is always relative to the last time that the that + * utterances were aggregated. For example, if the + * ListAggregatedUtterances operation is called at 1600, + * the time window is set to 1 hour, and the last refresh time was 1530, + * only utterances made between 1430 and 1530 are returned.

      + *

      You can choose the time window that statistics should be returned + * for.

      + *
        + *
      • + *

        + * Hours - You can request + * utterance statistics for 1, 3, 6, 12, or 24 hour time windows. + * Statistics are refreshed every half hour for 1 hour time windows, + * and hourly for the other time windows.

        + *
      • + *
      • + *

        + * Days - You can request + * utterance statistics for 3 days. Statistics are refreshed every 6 + * hours.

        + *
      • + *
      • + *

        + * Weeks - You can see + * statistics for one or two weeks. Statistics are refreshed every + * 12 hours for one week time windows, and once per day for two week + * time windows.

        + *
      • + *
      + */ +export interface RelativeAggregationDuration { /** - *

      Parameters for creating the bot, bot locale or custom - * vocabulary.

      + *

      The type of time period that the timeValue field + * represents.

      */ - resourceSpecification: ImportResourceSpecification | undefined; + timeDimension: TimeDimension | string | undefined; /** - *

      The strategy to use when there is a name conflict between the - * imported resource and an existing resource. When the merge strategy is - * FailOnConflict existing resources are not overwritten - * and the import fails.

      + *

      The period of the time window to gather statistics for. The valid + * value depends on the setting of the timeDimension + * field.

      + *
        + *
      • + *

        + * Hours - 1/3/6/12/24

        + *
      • + *
      • + *

        + * Days - 3

        + *
      • + *
      • + *

        + * Weeks - 1/2

        + *
      • + *
      */ - mergeStrategy: MergeStrategy | string | undefined; + timeValue: number | undefined; +} +/** + * @public + *

      Provides parameters for setting the time window and duration for + * aggregating utterance data.

      + */ +export interface UtteranceAggregationDuration { /** - *

      The password used to encrypt the zip archive that contains the - * resource definition. You should always encrypt the zip archive to - * protect it during transit between your site and Amazon Lex.

      + *

      The desired time window for aggregating utterances.

      */ - filePassword?: string; + relativeAggregationDuration: RelativeAggregationDuration | undefined; } /** * @public */ -export interface StartImportResponse { +export interface ListAggregatedUtterancesRequest { /** - *

      A unique identifier for the import.

      + *

      The unique identifier of the bot associated with this + * request.

      */ - importId?: string; + botId: string | undefined; /** - *

      The parameters used when importing the resource.

      + *

      The identifier of the bot alias associated with this request. If you + * specify the bot alias, you can't specify the bot version.

      */ - resourceSpecification?: ImportResourceSpecification; + botAliasId?: string; /** - *

      The strategy used when there was a name conflict between the - * imported resource and an existing resource. When the merge strategy is - * FailOnConflict existing resources are not overwritten - * and the import fails.

      + *

      The identifier of the bot version associated with this request. If + * you specify the bot version, you can't specify the bot alias.

      */ - mergeStrategy?: MergeStrategy | string; + botVersion?: string; /** - *

      The current status of the import. When the status is - * Complete the bot, bot alias, or custom vocabulary is - * ready to use.

      + *

      The identifier of the language and locale where the utterances were + * collected. For more information, see Supported + * languages.

      */ - importStatus?: ImportStatus | string; + localeId: string | undefined; /** - *

      The date and time that the import request was created.

      + *

      The time window for aggregating the utterance information. You can + * specify a time between one hour and two weeks.

      */ - creationDateTime?: Date; -} + aggregationDuration: UtteranceAggregationDuration | undefined; -/** - * @public - */ -export interface StopBotRecommendationRequest { /** - *

      The unique identifier of the bot containing the bot - * recommendation to be stopped.

      + *

      Specifies sorting parameters for the list of utterances. You can + * sort by the hit count, the missed count, or the number of distinct + * sessions the utterance appeared in.

      */ - botId: string | undefined; + sortBy?: AggregatedUtterancesSortBy; /** - *

      The version of the bot containing the bot recommendation.

      + *

      Provides the specification of a filter used to limit the utterances + * in the response to only those that match the filter specification. You + * can only specify one filter and one string to filter on.

      */ - botVersion: string | undefined; + filters?: AggregatedUtterancesFilter[]; /** - *

      The identifier of the language and locale of the bot recommendation - * to stop. The string must match one of the supported locales. For more - * information, see Supported languages - *

      + *

      The maximum number of utterances to return in each page of results. + * If there are fewer results than the maximum page size, only the actual + * number of results are returned. If you don't specify the + * maxResults parameter, 1,000 results are + * returned.

      */ - localeId: string | undefined; + maxResults?: number; /** - *

      The unique identifier of the bot recommendation to be - * stopped.

      + *

      If the response from the ListAggregatedUtterances + * operation contains more results that specified in the + * maxResults parameter, a token is returned in the + * response. Use that token in the nextToken parameter to + * return the next page of results.

      */ - botRecommendationId: string | undefined; + nextToken?: string; } /** * @public */ -export interface StopBotRecommendationResponse { +export interface ListAggregatedUtterancesResponse { /** - *

      The unique identifier of the bot containing the bot recommendation that - * is being stopped.

      + *

      The identifier of the bot that contains the utterances.

      */ botId?: string; /** - *

      The version of the bot containing the recommendation that is being - * stopped.

      + *

      The identifier of the bot alias that contains the utterances. If you + * specified the bot version, the bot alias ID isn't returned.

      + */ + botAliasId?: string; + + /** + *

      The identifier of the bot version that contains the utterances. If + * you specified the bot alias, the bot version isn't returned.

      */ botVersion?: string; /** - *

      The identifier of the language and locale of the bot response - * to stop. The string must match one of the supported locales. For more - * information, see Supported languages - *

      + *

      The identifier of the language and locale that the utterances are + * in.

      */ localeId?: string; /** - *

      The status of the bot recommendation. If the status is Failed, - * then the reasons for the failure are listed in the failureReasons field.

      + *

      The time period used to aggregate the utterance data.

      */ - botRecommendationStatus?: BotRecommendationStatus | string; + aggregationDuration?: UtteranceAggregationDuration; /** - *

      The unique identifier of the bot recommendation that is being - * stopped.

      + *

      The date and time that the aggregation window begins. Only data + * collected after this time is returned in the results.

      */ - botRecommendationId?: string; -} + aggregationWindowStartTime?: Date; + + /** + *

      The date and time that the aggregation window ends. Only data + * collected between the start time and the end time are returned in the + * results.

      + */ + aggregationWindowEndTime?: Date; + + /** + *

      The last date and time that the aggregated data was collected. The + * time period depends on the length of the aggregation window.

      + *
        + *
      • + *

        + * Hours - for 1 hour time + * window, every half hour; otherwise every hour.

        + *
      • + *
      • + *

        + * Days - every 6 hours

        + *
      • + *
      • + *

        + * Weeks - for a one week time + * window, every 12 hours; otherwise, every day

        + *
      • + *
      + */ + aggregationLastRefreshedDateTime?: Date; -/** - * @public - */ -export interface TagResourceRequest { /** - *

      The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel - * to tag.

      + *

      Summaries of the aggregated utterance data. Each response contains + * information about the number of times that the utterance was seen + * during the time period, whether it was detected or missed, and when it + * was seen during the time period.

      */ - resourceARN: string | undefined; + aggregatedUtterancesSummaries?: AggregatedUtterancesSummary[]; /** - *

      A list of tag keys to add to the resource. If a tag key already - * exists, the existing value is replaced with the new value.

      + *

      A token that indicates whether there are more results to return in a + * response to the ListAggregatedUtterances operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a + * ListAggregatedUtterances operation request to get the + * next page of results.

      */ - tags: Record | undefined; + nextToken?: string; } /** @@ -7955,27 +7230,3 @@ export const DescribeBotRecommendationResponseFilterSensitiveLog = (obj: Describ ...obj, ...(obj.encryptionSetting && { encryptionSetting: EncryptionSettingFilterSensitiveLog(obj.encryptionSetting) }), }); - -/** - * @internal - */ -export const StartBotRecommendationRequestFilterSensitiveLog = (obj: StartBotRecommendationRequest): any => ({ - ...obj, - ...(obj.encryptionSetting && { encryptionSetting: EncryptionSettingFilterSensitiveLog(obj.encryptionSetting) }), -}); - -/** - * @internal - */ -export const StartBotRecommendationResponseFilterSensitiveLog = (obj: StartBotRecommendationResponse): any => ({ - ...obj, - ...(obj.encryptionSetting && { encryptionSetting: EncryptionSettingFilterSensitiveLog(obj.encryptionSetting) }), -}); - -/** - * @internal - */ -export const StartImportRequestFilterSensitiveLog = (obj: StartImportRequest): any => ({ - ...obj, - ...(obj.filePassword && { filePassword: SENSITIVE_STRING }), -}); diff --git a/clients/client-lex-models-v2/src/models/models_1.ts b/clients/client-lex-models-v2/src/models/models_1.ts index c81181424a17..7b95475a5d03 100644 --- a/clients/client-lex-models-v2/src/models/models_1.ts +++ b/clients/client-lex-models-v2/src/models/models_1.ts @@ -2,34 +2,73 @@ import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; import { + ActiveContext, + AgentTurnResult, + AgentTurnSpecification, + AssociatedTranscript, + AssociatedTranscriptFilter, BotAliasLocaleSettings, BotAliasStatus, + BotAliasSummary, + BotFilter, + BotLocaleFilter, + BotLocaleSortBy, BotLocaleStatus, + BotLocaleSummary, BotMember, BotRecommendationStatus, + BotRecommendationSummary, + BotSortBy, BotStatus, + BotSummary, BotType, + BotVersionSortBy, + BotVersionSummary, + BuiltInIntentSortBy, + BuiltInIntentSummary, + BuiltInSlotTypeSortBy, + BuiltInSlotTypeSummary, CompositeSlotTypeSetting, Condition, + ConversationLevelResultDetail, + ConversationLevelTestResults, + ConversationLevelTestResultsFilterBy, ConversationLogSettings, + CustomVocabularyItem, DataPrivacy, DialogAction, DialogCodeHookSettings, ElicitationCodeHookInvocationSetting, EncryptionSetting, EncryptionSettingFilterSensitiveLog, + ExecutionErrorDetails, + ExportFilter, ExportResourceSpecification, + ExportSortBy, ExportStatus, + ExportSummary, ExternalSourceSetting, FulfillmentUpdatesSpecification, ImportExportFileFormat, + ImportFilter, + ImportResourceSpecification, + ImportSortBy, + ImportStatus, + ImportSummary, InputContext, + IntentClassificationTestResults, + IntentFilter, + IntentLevelSlotResolutionTestResults, + IntentSortBy, + IntentSummary, KendraConfiguration, + MergeStrategy, MultipleValuesSetting, ObfuscationSetting, OutputContext, PromptSpecification, ResponseSpecification, + RuntimeHintValue, SampleUtterance, SentimentAnalysisSettings, SlotConstraint, @@ -39,12 +78,2377 @@ import { SlotTypeValue, SlotValue, SlotValueSelectionSetting, + SortOrder, SubSlotSetting, + TestExecutionApiMode, + TestExecutionModality, + TestExecutionStatus, + TestExecutionTarget, + TestResultMatchStatus, + TestSetGenerationDataSource, + TestSetGenerationStatus, + TestSetModality, + TestSetStatus, + TestSetStorageLocation, TranscriptSourceSetting, VoiceSettings, WaitAndContinueSpecification, } from "./models_0"; +/** + * @public + */ +export interface ListBotAliasesRequest { + /** + *

      The identifier of the bot to list aliases for.

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

      The maximum number of aliases to return in each page of results. If + * there are fewer results than the max page size, only the actual number + * of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListBotAliases operation + * contains more results than specified in the maxResults + * parameter, a token is returned in the response. Use that token in the + * nextToken parameter to return the next page of + * results.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListBotAliasesResponse { + /** + *

      Summary information for the bot aliases that meet the filter + * criteria specified in the request. The length of the list is specified + * in the maxResults parameter of the request. If there are + * more aliases available, the nextToken field contains a + * token to get the next page of results.

      + */ + botAliasSummaries?: BotAliasSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListBotAliases operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a ListBotAliases + * operation request to get the next page of results.

      + */ + nextToken?: string; + + /** + *

      The identifier of the bot associated with the aliases.

      + */ + botId?: string; +} + +/** + * @public + */ +export interface ListBotLocalesRequest { + /** + *

      The identifier of the bot to list locales for.

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

      The version of the bot to list locales for.

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

      Specifies sorting parameters for the list of locales. You can sort + * by locale name in ascending or descending order.

      + */ + sortBy?: BotLocaleSortBy; + + /** + *

      Provides the specification for a filter used to limit the response + * to only those locales that match the filter specification. You can only + * specify one filter and one value to filter on.

      + */ + filters?: BotLocaleFilter[]; + + /** + *

      The maximum number of aliases to return in each page of results. If + * there are fewer results than the max page size, only the actual number + * of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListBotLocales operation + * contains more results than specified in the maxResults + * parameter, a token is returned in the response. Use that token as the + * nextToken parameter to return the next page of results. + *

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListBotLocalesResponse { + /** + *

      The identifier of the bot to list locales for.

      + */ + botId?: string; + + /** + *

      The version of the bot.

      + */ + botVersion?: string; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListBotLocales operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a ListBotLocales + * operation request to get the next page of results.

      + */ + nextToken?: string; + + /** + *

      Summary information for the locales that meet the filter criteria + * specified in the request. The length of the list is specified in the + * maxResults parameter of the request. If there are more + * locales available, the nextToken field contains a token to + * get the next page of results.

      + */ + botLocaleSummaries?: BotLocaleSummary[]; +} + +/** + * @public + */ +export interface ListBotRecommendationsRequest { + /** + *

      The unique identifier of the bot that contains the bot + * recommendation list.

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

      The version of the bot that contains the bot recommendation + * list.

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

      The identifier of the language and locale of the bot recommendation + * list.

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

      The maximum number of bot recommendations to return in each page of + * results. If there are fewer results than the max page size, only the + * actual number of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListBotRecommendation operation contains + * more results than specified in the maxResults parameter, a token is + * returned in the response. Use that token in the nextToken parameter to + * return the next page of results.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListBotRecommendationsResponse { + /** + *

      The unique identifier of the bot that contains the bot + * recommendation list.

      + */ + botId?: string; + + /** + *

      The version of the bot that contains the bot recommendation + * list.

      + */ + botVersion?: string; + + /** + *

      The identifier of the language and locale of the bot recommendation + * list.

      + */ + localeId?: string; + + /** + *

      Summary information for the bot recommendations that meet the filter + * specified in this request. The length of the list is specified in the + * maxResults parameter of the request. If there are more bot + * recommendations available, the nextToken field contains a token to get + * the next page of results.

      + */ + botRecommendationSummaries?: BotRecommendationSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListBotRecommendations operation. If the nextToken + * field is present, you send the contents as the nextToken parameter of a + * ListBotRecommendations operation request to get the next page of + * results.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListBotsRequest { + /** + *

      Specifies sorting parameters for the list of bots. You can specify + * that the list be sorted by bot name in ascending or descending + * order.

      + */ + sortBy?: BotSortBy; + + /** + *

      Provides the specification of a filter used to limit the bots in the + * response to only those that match the filter specification. You can + * only specify one filter and one string to filter on.

      + */ + filters?: BotFilter[]; + + /** + *

      The maximum number of bots to return in each page of results. If + * there are fewer results than the maximum page size, only the actual + * number of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListBots operation contains + * more results than specified in the maxResults parameter, a + * token is returned in the response.

      + *

      Use the returned token in the nextToken parameter of a + * ListBots request to return the next page of results. + * For a complete set of results, call the ListBots operation + * until the nextToken returned in the response is + * null.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListBotsResponse { + /** + *

      Summary information for the bots that meet the filter criteria + * specified in the request. The length of the list is specified in the + * maxResults parameter of the request. If there are more + * bots available, the nextToken field contains a token to + * the next page of results.

      + */ + botSummaries?: BotSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListBots operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a ListBots + * operation request to get the next page of results.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListBotVersionsRequest { + /** + *

      The identifier of the bot to list versions for.

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

      Specifies sorting parameters for the list of versions. You can + * specify that the list be sorted by version name in either ascending or + * descending order.

      + */ + sortBy?: BotVersionSortBy; + + /** + *

      The maximum number of versions to return in each page of results. If + * there are fewer results than the max page size, only the actual number + * of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response to the ListBotVersion operation + * contains more results than specified in the maxResults + * parameter, a token is returned in the response. Use that token in the + * nextToken parameter to return the next page of + * results.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListBotVersionsResponse { + /** + *

      The identifier of the bot to list versions for.

      + */ + botId?: string; + + /** + *

      Summary information for the bot versions that meet the filter + * criteria specified in the request. The length of the list is specified + * in the maxResults parameter of the request. If there are + * more versions available, the nextToken field contains a + * token to get the next page of results.

      + */ + botVersionSummaries?: BotVersionSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListBotVersions operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a ListBotAliases + * operation request to get the next page of results.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListBuiltInIntentsRequest { + /** + *

      The identifier of the language and locale of the intents to list. + * The string must match one of the supported locales. For more + * information, see Supported languages.

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

      Specifies sorting parameters for the list of built-in intents. You + * can specify that the list be sorted by the built-in intent signature in + * either ascending or descending order.

      + */ + sortBy?: BuiltInIntentSortBy; + + /** + *

      The maximum number of built-in intents to return in each page of + * results. If there are fewer results than the max page size, only the + * actual number of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListBuiltInIntents operation + * contains more results than specified in the maxResults + * parameter, a token is returned in the response. Use that token in the + * nextToken parameter to return the next page of + * results.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListBuiltInIntentsResponse { + /** + *

      Summary information for the built-in intents that meet the filter + * criteria specified in the request. The length of the list is specified + * in the maxResults parameter of the request. If there are + * more intents available, the nextToken field contains a + * token to get the next page of results.

      + */ + builtInIntentSummaries?: BuiltInIntentSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListBuiltInIntents operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a ListBotAliases + * operation request to get the next page of results.

      + */ + nextToken?: string; + + /** + *

      The language and locale of the intents in the list.

      + */ + localeId?: string; +} + +/** + * @public + */ +export interface ListBuiltInSlotTypesRequest { + /** + *

      The identifier of the language and locale of the slot types to list. + * The string must match one of the supported locales. For more + * information, see Supported languages.

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

      Determines the sort order for the response from the + * ListBuiltInSlotTypes operation. You can choose to sort + * by the slot type signature in either ascending or descending + * order.

      + */ + sortBy?: BuiltInSlotTypeSortBy; + + /** + *

      The maximum number of built-in slot types to return in each page of + * results. If there are fewer results than the max page size, only the + * actual number of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListBuiltInSlotTypes operation + * contains more results than specified in the maxResults + * parameter, a token is returned in the response. Use that token in the + * nextToken parameter to return the next page of + * results.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListBuiltInSlotTypesResponse { + /** + *

      Summary information for the built-in slot types that meet the filter + * criteria specified in the request. The length of the list is specified + * in the maxResults parameter of the request. If there are + * more slot types available, the nextToken field contains a + * token to get the next page of results.

      + */ + builtInSlotTypeSummaries?: BuiltInSlotTypeSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListBuiltInSlotTypes operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a + * LIstBuiltInSlotTypes operation request to get the next + * page of results.

      + */ + nextToken?: string; + + /** + *

      The language and locale of the slot types in the list.

      + */ + localeId?: string; +} + +/** + * @public + */ +export interface ListCustomVocabularyItemsRequest { + /** + *

      The identifier of the version of the bot associated with this custom + * vocabulary.

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

      The bot version of the bot to the list custom vocabulary + * request.

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

      The identifier of the language and locale where this custom vocabulary + * is used. The string must match one of the supported locales. For more + * information, see Supported + * languages (https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html).

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

      The maximum number of items returned by the list operation.

      + */ + maxResults?: number; + + /** + *

      The nextToken identifier to the list custom vocabulary + * request.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListCustomVocabularyItemsResponse { + /** + *

      The identifier of the bot associated with this custom vocabulary.

      + */ + botId?: string; + + /** + *

      The identifier of the version of the bot associated with this custom + * vocabulary.

      + */ + botVersion?: string; + + /** + *

      The identifier of the language and locale where this custom vocabulary + * is used. The string must match one of the supported locales. For more + * information, see Supported Languages .

      + */ + localeId?: string; + + /** + *

      The custom vocabulary items from the list custom vocabulary + * response.

      + */ + customVocabularyItems?: CustomVocabularyItem[]; + + /** + *

      The nextToken identifier to the list custom vocabulary + * response.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListExportsRequest { + /** + *

      The unique identifier that Amazon Lex assigned to the bot.

      + */ + botId?: string; + + /** + *

      The version of the bot to list exports for.

      + */ + botVersion?: string; + + /** + *

      Determines the field that the list of exports is sorted by. You can + * sort by the LastUpdatedDateTime field in ascending or + * descending order.

      + */ + sortBy?: ExportSortBy; + + /** + *

      Provides the specification of a filter used to limit the exports in + * the response to only those that match the filter specification. You can + * only specify one filter and one string to filter on.

      + */ + filters?: ExportFilter[]; + + /** + *

      The maximum number of exports to return in each page of results. If + * there are fewer results than the max page size, only the actual number + * of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListExports operation contains + * more results that specified in the maxResults parameter, a + * token is returned in the response.

      + *

      Use the returned token in the nextToken parameter of a + * ListExports request to return the next page of results. + * For a complete set of results, call the ListExports + * operation until the nextToken returned in the response is + * null.

      + */ + nextToken?: string; + + /** + *

      Specifies the resources that should be exported. If you + * don't specify a resource type in the filters parameter, + * both bot locales and custom vocabularies are exported.

      + */ + localeId?: string; +} + +/** + * @public + */ +export interface ListExportsResponse { + /** + *

      The unique identifier assigned to the bot by Amazon Lex.

      + */ + botId?: string; + + /** + *

      The version of the bot that was exported.

      + */ + botVersion?: string; + + /** + *

      Summary information for the exports that meet the filter criteria + * specified in the request. The length of the list is specified in the + * maxResults parameter. If there are more exports + * available, the nextToken field contains a token to get the + * next page of results.

      + */ + exportSummaries?: ExportSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListExports operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a ListExports + * operation request to get the next page of results.

      + */ + nextToken?: string; + + /** + *

      The locale specified in the request.

      + */ + localeId?: string; +} + +/** + * @public + */ +export interface ListImportsRequest { + /** + *

      The unique identifier that Amazon Lex assigned to the bot.

      + */ + botId?: string; + + /** + *

      The version of the bot to list imports for.

      + */ + botVersion?: string; + + /** + *

      Determines the field that the list of imports is sorted by. You can + * sort by the LastUpdatedDateTime field in ascending or + * descending order.

      + */ + sortBy?: ImportSortBy; + + /** + *

      Provides the specification of a filter used to limit the bots in the + * response to only those that match the filter specification. You can + * only specify one filter and one string to filter on.

      + */ + filters?: ImportFilter[]; + + /** + *

      The maximum number of imports to return in each page of results. If + * there are fewer results than the max page size, only the actual number + * of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListImports operation contains + * more results than specified in the maxResults parameter, a + * token is returned in the response.

      + *

      Use the returned token in the nextToken parameter of a + * ListImports request to return the next page of results. + * For a complete set of results, call the ListImports + * operation until the nextToken returned in the response is + * null.

      + */ + nextToken?: string; + + /** + *

      Specifies the locale that should be present in the list. If you + * don't specify a resource type in the filters parameter, + * the list contains both bot locales and custom vocabularies.

      + */ + localeId?: string; +} + +/** + * @public + */ +export interface ListImportsResponse { + /** + *

      The unique identifier assigned by Amazon Lex to the bot.

      + */ + botId?: string; + + /** + *

      The version of the bot that was imported. It will always be + * DRAFT.

      + */ + botVersion?: string; + + /** + *

      Summary information for the imports that meet the filter criteria + * specified in the request. The length of the list is specified in the + * maxResults parameter. If there are more imports + * available, the nextToken field contains a token to get the + * next page of results.

      + */ + importSummaries?: ImportSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListImports operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a ListImports + * operation request to get the next page of results.

      + */ + nextToken?: string; + + /** + *

      The locale specified in the request.

      + */ + localeId?: string; +} + +/** + * @public + */ +export interface ListIntentsRequest { + /** + *

      The unique identifier of the bot that contains the intent.

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

      The version of the bot that contains the intent.

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

      The identifier of the language and locale of the intents to list. + * The string must match one of the supported locales. For more + * information, see Supported languages.

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

      Determines the sort order for the response from the + * ListIntents operation. You can choose to sort by the + * intent name or last updated date in either ascending or descending + * order.

      + */ + sortBy?: IntentSortBy; + + /** + *

      Provides the specification of a filter used to limit the intents in + * the response to only those that match the filter specification. You can + * only specify one filter and only one string to filter on.

      + */ + filters?: IntentFilter[]; + + /** + *

      The maximum number of intents to return in each page of results. If + * there are fewer results than the max page size, only the actual number + * of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListIntents operation contains + * more results than specified in the maxResults parameter, a + * token is returned in the response.

      + *

      Use the returned token in the nextToken parameter of a + * ListIntents request to return the next page of results. + * For a complete set of results, call the ListIntents + * operation until the nextToken returned in the response is + * null.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListIntentsResponse { + /** + *

      The identifier of the bot that contains the intent.

      + */ + botId?: string; + + /** + *

      The version of the bot that contains the intent.

      + */ + botVersion?: string; + + /** + *

      The language and locale of the intents in the list.

      + */ + localeId?: string; + + /** + *

      Summary information for the intents that meet the filter criteria + * specified in the request. The length of the list is specified in the + * maxResults parameter of the request. If there are more + * intents available, the nextToken field contains a token to + * get the next page of results.

      + */ + intentSummaries?: IntentSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListIntents operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a ListIntents + * operation request to get the next page of results.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListRecommendedIntentsRequest { + /** + *

      The unique identifier of the bot associated with the recommended + * intents.

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

      The version of the bot that contains the recommended intents.

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

      The identifier of the language and locale of the recommended + * intents.

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

      The identifier of the bot recommendation that contains the + * recommended intents.

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

      If the response from the ListRecommendedIntents operation contains + * more results than specified in the maxResults parameter, a token is + * returned in the response. Use that token in the nextToken parameter to + * return the next page of results.

      + */ + nextToken?: string; + + /** + *

      The maximum number of bot recommendations to return in each page of + * results. If there are fewer results than the max page size, only the + * actual number of results are returned.

      + */ + maxResults?: number; +} + +/** + * @public + *

      An object that contains a summary of a recommended intent.

      + */ +export interface RecommendedIntentSummary { + /** + *

      The unique identifier of a recommended intent associated with the + * bot recommendation.

      + */ + intentId?: string; + + /** + *

      The name of a recommended intent associated with the bot + * recommendation.

      + */ + intentName?: string; + + /** + *

      The count of sample utterances of a recommended intent that is + * associated with a bot recommendation.

      + */ + sampleUtterancesCount?: number; +} + +/** + * @public + */ +export interface ListRecommendedIntentsResponse { + /** + *

      The unique identifier of the bot associated with the recommended + * intent.

      + */ + botId?: string; + + /** + *

      The version of the bot that contains the intent.

      + */ + botVersion?: string; + + /** + *

      The identifier of the language and locale of the intents to list. + * The string must match one of the supported locales. For more + * information, see Supported languages.

      + */ + localeId?: string; + + /** + *

      The identifier of the bot recommendation that contains the + * recommended intent.

      + */ + botRecommendationId?: string; + + /** + *

      Summary information for the intents that meet the filter criteria + * specified in the request. The length of the list is specified in the + * maxResults parameter of the request. If there are more intents + * available, the nextToken field contains a token to get the next page of + * results.

      + */ + summaryList?: RecommendedIntentSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListRecommendedIntents operation. If the nextToken + * field is present, you send the contents as the nextToken parameter of a + * ListRecommendedIntents operation request to get the next page of + * results.

      + */ + nextToken?: string; +} + +/** + * @public + * @enum + */ +export const SlotFilterName = { + SlotName: "SlotName", +} as const; + +/** + * @public + */ +export type SlotFilterName = (typeof SlotFilterName)[keyof typeof SlotFilterName]; + +/** + * @public + * @enum + */ +export const SlotFilterOperator = { + Contains: "CO", + Equals: "EQ", +} as const; + +/** + * @public + */ +export type SlotFilterOperator = (typeof SlotFilterOperator)[keyof typeof SlotFilterOperator]; + +/** + * @public + *

      Filters the response from the ListSlots + * operation.

      + */ +export interface SlotFilter { + /** + *

      The name of the field to use for filtering.

      + */ + name: SlotFilterName | string | undefined; + + /** + *

      The value to use to filter the response.

      + */ + values: string[] | undefined; + + /** + *

      The operator to use for the filter. Specify EQ when the + * ListSlots operation should return only aliases that + * equal the specified value. Specify CO when the + * ListSlots operation should return aliases that contain + * the specified value.

      + */ + operator: SlotFilterOperator | string | undefined; +} + +/** + * @public + * @enum + */ +export const SlotSortAttribute = { + LastUpdatedDateTime: "LastUpdatedDateTime", + SlotName: "SlotName", +} as const; + +/** + * @public + */ +export type SlotSortAttribute = (typeof SlotSortAttribute)[keyof typeof SlotSortAttribute]; + +/** + * @public + *

      Specifies attributes for sorting a list of bots.

      + */ +export interface SlotSortBy { + /** + *

      The attribute to use to sort the list.

      + */ + attribute: SlotSortAttribute | string | undefined; + + /** + *

      The order to sort the list. You can choose ascending or + * descending.

      + */ + order: SortOrder | string | undefined; +} + +/** + * @public + */ +export interface ListSlotsRequest { + /** + *

      The identifier of the bot that contains the slot.

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

      The version of the bot that contains the slot.

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

      The identifier of the language and locale of the slots to list. The + * string must match one of the supported locales. For more information, + * see Supported languages.

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

      The unique identifier of the intent that contains the slot.

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

      Determines the sort order for the response from the + * ListSlots operation. You can choose to sort by the slot + * name or last updated date in either ascending or descending + * order.

      + */ + sortBy?: SlotSortBy; + + /** + *

      Provides the specification of a filter used to limit the slots in + * the response to only those that match the filter specification. You can + * only specify one filter and only one string to filter on.

      + */ + filters?: SlotFilter[]; + + /** + *

      The maximum number of slots to return in each page of results. If + * there are fewer results than the max page size, only the actual number + * of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListSlots operation contains + * more results than specified in the maxResults parameter, a + * token is returned in the response. Use that token in the + * nextToken parameter to return the next page of + * results.

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

      Summary information about a slot, a value that the bot elicits from + * the user.

      + */ +export interface SlotSummary { + /** + *

      The unique identifier of the slot.

      + */ + slotId?: string; + + /** + *

      The name given to the slot.

      + */ + slotName?: string; + + /** + *

      The description of the slot.

      + */ + description?: string; + + /** + *

      Whether the slot is required or optional. An intent is complete when + * all required slots are filled.

      + */ + slotConstraint?: SlotConstraint | string; + + /** + *

      The unique identifier for the slot type that defines the values for + * the slot.

      + */ + slotTypeId?: string; + + /** + *

      Prompts that are sent to the user to elicit a value for the + * slot.

      + */ + valueElicitationPromptSpecification?: PromptSpecification; + + /** + *

      The timestamp of the last date and time that the slot was + * updated.

      + */ + lastUpdatedDateTime?: Date; +} + +/** + * @public + */ +export interface ListSlotsResponse { + /** + *

      The identifier of the bot that contains the slots.

      + */ + botId?: string; + + /** + *

      The version of the bot that contains the slots.

      + */ + botVersion?: string; + + /** + *

      The language and locale of the slots in the list.

      + */ + localeId?: string; + + /** + *

      The identifier of the intent that contains the slots.

      + */ + intentId?: string; + + /** + *

      Summary information for the slots that meet the filter criteria + * specified in the request. The length of the list is specified in the + * maxResults parameter of the request. If there are more + * slots available, the nextToken field contains a token to + * get the next page of results.

      + */ + slotSummaries?: SlotSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListSlots operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a ListSlots + * operation request to get the next page of results.

      + */ + nextToken?: string; +} + +/** + * @public + * @enum + */ +export const SlotTypeFilterName = { + ExternalSourceType: "ExternalSourceType", + SlotTypeName: "SlotTypeName", +} as const; + +/** + * @public + */ +export type SlotTypeFilterName = (typeof SlotTypeFilterName)[keyof typeof SlotTypeFilterName]; + +/** + * @public + * @enum + */ +export const SlotTypeFilterOperator = { + Contains: "CO", + Equals: "EQ", +} as const; + +/** + * @public + */ +export type SlotTypeFilterOperator = (typeof SlotTypeFilterOperator)[keyof typeof SlotTypeFilterOperator]; + +/** + * @public + *

      Filters the response from the ListSlotTypes + * operation.

      + */ +export interface SlotTypeFilter { + /** + *

      The name of the field to use for filtering.

      + */ + name: SlotTypeFilterName | string | undefined; + + /** + *

      The value to use to filter the response.

      + */ + values: string[] | undefined; + + /** + *

      The operator to use for the filter. Specify EQ when the + * ListSlotTypes operation should return only aliases that + * equal the specified value. Specify CO when the + * ListSlotTypes operation should return aliases that + * contain the specified value.

      + */ + operator: SlotTypeFilterOperator | string | undefined; +} + +/** + * @public + * @enum + */ +export const SlotTypeSortAttribute = { + LastUpdatedDateTime: "LastUpdatedDateTime", + SlotTypeName: "SlotTypeName", +} as const; + +/** + * @public + */ +export type SlotTypeSortAttribute = (typeof SlotTypeSortAttribute)[keyof typeof SlotTypeSortAttribute]; + +/** + * @public + *

      Specifies attributes for sorting a list of slot types.

      + */ +export interface SlotTypeSortBy { + /** + *

      The attribute to use to sort the list of slot types.

      + */ + attribute: SlotTypeSortAttribute | string | undefined; + + /** + *

      The order to sort the list. You can say ascending or + * descending.

      + */ + order: SortOrder | string | undefined; +} + +/** + * @public + */ +export interface ListSlotTypesRequest { + /** + *

      The unique identifier of the bot that contains the slot + * types.

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

      The version of the bot that contains the slot type.

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

      The identifier of the language and locale of the slot types to list. + * The string must match one of the supported locales. For more + * information, see Supported languages.

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

      Determines the sort order for the response from the + * ListSlotTypes operation. You can choose to sort by the + * slot type name or last updated date in either ascending or descending + * order.

      + */ + sortBy?: SlotTypeSortBy; + + /** + *

      Provides the specification of a filter used to limit the slot types + * in the response to only those that match the filter specification. You + * can only specify one filter and only one string to filter on.

      + */ + filters?: SlotTypeFilter[]; + + /** + *

      The maximum number of slot types to return in each page of results. + * If there are fewer results than the max page size, only the actual + * number of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListSlotTypes operation + * contains more results than specified in the maxResults + * parameter, a token is returned in the response. Use that token in the + * nextToken parameter to return the next page of + * results.

      + */ + nextToken?: string; +} + +/** + * @public + * @enum + */ +export const SlotTypeCategory = { + Composite: "Composite", + Custom: "Custom", + Extended: "Extended", + ExternalGrammar: "ExternalGrammar", +} as const; + +/** + * @public + */ +export type SlotTypeCategory = (typeof SlotTypeCategory)[keyof typeof SlotTypeCategory]; + +/** + * @public + *

      Provides summary information about a slot type.

      + */ +export interface SlotTypeSummary { + /** + *

      The unique identifier assigned to the slot type.

      + */ + slotTypeId?: string; + + /** + *

      The name of the slot type.

      + */ + slotTypeName?: string; + + /** + *

      The description of the slot type.

      + */ + description?: string; + + /** + *

      If the slot type is derived from a built-on slot type, the name of + * the parent slot type.

      + */ + parentSlotTypeSignature?: string; + + /** + *

      A timestamp of the date and time that the slot type was last + * updated.

      + */ + lastUpdatedDateTime?: Date; + + /** + *

      Indicates the type of the slot type.

      + *
        + *
      • + *

        + * Custom - A slot type that you created using + * custom values. For more information, see Creating custom slot + * types.

        + *
      • + *
      • + *

        + * Extended - A slot type created by extending the + * AMAZON.AlphaNumeric built-in slot type. For more information, see + * + * AMAZON.AlphaNumeric + * .

        + *
      • + *
      • + *

        + * ExternalGrammar - A slot type using a custom + * GRXML grammar to define values. For more information, see Using a custom grammar slot type.

        + *
      • + *
      + */ + slotTypeCategory?: SlotTypeCategory | string; +} + +/** + * @public + */ +export interface ListSlotTypesResponse { + /** + *

      The identifier of the bot that contains the slot types.

      + */ + botId?: string; + + /** + *

      The version of the bot that contains the slot types.

      + */ + botVersion?: string; + + /** + *

      The language and local of the slot types in the list.

      + */ + localeId?: string; + + /** + *

      Summary information for the slot types that meet the filter criteria + * specified in the request. The length of the list is specified in the + * maxResults parameter of the request. If there are more + * slot types available, the nextToken field contains a token + * to get the next page of results.

      + */ + slotTypeSummaries?: SlotTypeSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a + * response to the ListSlotTypes operation. If the + * nextToken field is present, you send the contents as + * the nextToken parameter of a ListSlotTypes + * operation request to get the next page of results.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListTagsForResourceRequest { + /** + *

      The Amazon Resource Name (ARN) of the resource to get a list of tags + * for.

      + */ + resourceARN: string | undefined; +} + +/** + * @public + */ +export interface ListTagsForResourceResponse { + /** + *

      The tags associated with a resource.

      + */ + tags?: Record; +} + +/** + * @public + * @enum + */ +export const TestResultTypeFilter = { + ConversationLevelTestResults: "ConversationLevelTestResults", + IntentClassificationTestResults: "IntentClassificationTestResults", + OverallTestResults: "OverallTestResults", + SlotResolutionTestResults: "SlotResolutionTestResults", + UtteranceLevelResults: "UtteranceLevelResults", +} as const; + +/** + * @public + */ +export type TestResultTypeFilter = (typeof TestResultTypeFilter)[keyof typeof TestResultTypeFilter]; + +/** + * @public + *

      Contains information about the method by which to filter the results of the test execution.

      + */ +export interface TestExecutionResultFilterBy { + /** + *

      Specifies which results to filter. See Test result details">Test results details + * for details about different types of results.

      + */ + resultTypeFilter: TestResultTypeFilter | string | undefined; + + /** + *

      Contains information about the method for filtering Conversation level test results.

      + */ + conversationLevelTestResultsFilterBy?: ConversationLevelTestResultsFilterBy; +} + +/** + * @public + */ +export interface ListTestExecutionResultItemsRequest { + /** + *

      The unique identifier of the test execution to list the result items.

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

      The filter for the list of results from the test set execution.

      + */ + resultFilterBy: TestExecutionResultFilterBy | undefined; + + /** + *

      The maximum number of test execution result items to return in each + * page. If there are fewer results than the max page size, only the actual + * number of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListTestExecutionResultItems operation + * contains more results than specified in the maxResults parameter, + * a token is returned in the response. Use that token in the nextToken + * parameter to return the next page of results.

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

      Information about the overall results for a test execution result.

      + */ +export interface OverallTestResultItem { + /** + *

      Indicates whether the conversation contains multiple turns or not.

      + */ + multiTurnConversation: boolean | undefined; + + /** + *

      The total number of overall results in the result of the test execution.

      + */ + totalResultCount: number | undefined; + + /** + *

      The number of speech transcription results in the overall test.

      + */ + speechTranscriptionResultCounts?: Record; + + /** + *

      The number of results that succeeded.

      + */ + endToEndResultCounts: Record | undefined; +} + +/** + * @public + *

      Information about the overall test results.

      + */ +export interface OverallTestResults { + /** + *

      A list of the overall test results.

      + */ + items: OverallTestResultItem[] | undefined; +} + +/** + * @public + *

      Contains information about the audio for an utterance.

      + */ +export interface UtteranceAudioInputSpecification { + /** + *

      Amazon S3 file pointing to the audio.

      + */ + audioFileS3Location: string | undefined; +} + +/** + * @public + *

      Contains information about input of an utterance.

      + */ +export interface UtteranceInputSpecification { + /** + *

      A text input transcription of the utterance. It is only applicable for test-sets containing text data.

      + */ + textInput?: string; + + /** + *

      Contains information about the audio input for an utterance.

      + */ + audioInput?: UtteranceAudioInputSpecification; +} + +/** + * @public + * @enum + */ +export const TestExecutionSortAttribute = { + CreationDateTime: "CreationDateTime", + TestSetName: "TestSetName", +} as const; + +/** + * @public + */ +export type TestExecutionSortAttribute = (typeof TestExecutionSortAttribute)[keyof typeof TestExecutionSortAttribute]; + +/** + * @public + *

      Contains information about the method by which to sort the instances of + * test executions you have carried out.

      + */ +export interface TestExecutionSortBy { + /** + *

      Specifies whether to sort the test set executions by the date and time at which the test sets were created.

      + */ + attribute: TestExecutionSortAttribute | string | undefined; + + /** + *

      Specifies whether to sort in ascending or descending order.

      + */ + order: SortOrder | string | undefined; +} + +/** + * @public + */ +export interface ListTestExecutionsRequest { + /** + *

      The sort order of the test set executions.

      + */ + sortBy?: TestExecutionSortBy; + + /** + *

      The maximum number of test executions to return in each page. If there are + * fewer results than the max page size, only the actual number of results are + * returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListTestExecutions operation contains more results + * than specified in the maxResults parameter, a token is returned in the response. + * Use that token in the nextToken parameter to return the next page of results.

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

      Summarizes metadata about the test execution.

      + */ +export interface TestExecutionSummary { + /** + *

      The unique identifier of the test execution.

      + */ + testExecutionId?: string; + + /** + *

      The date and time at which the test execution was created.

      + */ + creationDateTime?: Date; + + /** + *

      The date and time at which the test execution was last updated.

      + */ + lastUpdatedDateTime?: Date; + + /** + *

      The current status of the test execution.

      + */ + testExecutionStatus?: TestExecutionStatus | string; + + /** + *

      The unique identifier of the test set used in the test execution.

      + */ + testSetId?: string; + + /** + *

      The name of the test set used in the test execution.

      + */ + testSetName?: string; + + /** + *

      Contains information about the bot used for the test execution..

      + */ + target?: TestExecutionTarget; + + /** + *

      Specifies whether the API mode for the test execution is streaming + * or non-streaming.

      + */ + apiMode?: TestExecutionApiMode | string; + + /** + *

      Specifies whether the data used for the test execution is written + * or spoken.

      + */ + testExecutionModality?: TestExecutionModality | string; +} + +/** + * @public + */ +export interface ListTestExecutionsResponse { + /** + *

      The list of test executions.

      + */ + testExecutions?: TestExecutionSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a response to + * the ListTestExecutions operation. If the nextToken field is present, you send the + * contents as the nextToken parameter of a ListTestExecutions operation request to + * get the next page of results.

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListTestSetRecordsRequest { + /** + *

      The identifier of the test set to list its test set records.

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

      The maximum number of test set records to return in each page. If there are + * fewer records than the max page size, only the actual number of records are + * returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListTestSetRecords operation contains more results + * than specified in the maxResults parameter, a token is returned in the response. + * Use that token in the nextToken parameter to return the next page of results.

      + */ + nextToken?: string; +} + +/** + * @public + * @enum + */ +export const TestSetSortAttribute = { + LastUpdatedDateTime: "LastUpdatedDateTime", + TestSetName: "TestSetName", +} as const; + +/** + * @public + */ +export type TestSetSortAttribute = (typeof TestSetSortAttribute)[keyof typeof TestSetSortAttribute]; + +/** + * @public + *

      Contains information about the methods by which to sort the test set.

      + */ +export interface TestSetSortBy { + /** + *

      Specifies whether to sort the test sets by name or by the time they were last updated.

      + */ + attribute: TestSetSortAttribute | string | undefined; + + /** + *

      Specifies whether to sort in ascending or descending order.

      + */ + order: SortOrder | string | undefined; +} + +/** + * @public + */ +export interface ListTestSetsRequest { + /** + *

      The sort order for the list of test sets.

      + */ + sortBy?: TestSetSortBy; + + /** + *

      The maximum number of test sets to return in each page. If there are fewer + * results than the max page size, only the actual number of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the ListTestSets operation contains more results than + * specified in the maxResults parameter, a token is returned in the response. Use + * that token in the nextToken parameter to return the next page of results.

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

      Contains summary information about the test set.

      + */ +export interface TestSetSummary { + /** + *

      The unique identifier of the test set.

      + */ + testSetId?: string; + + /** + *

      The name of the test set.

      + */ + testSetName?: string; + + /** + *

      The description of the test set.

      + */ + description?: string; + + /** + *

      Specifies whether the test set contains written or spoken data.

      + */ + modality?: TestSetModality | string; + + /** + *

      The status of the test set.

      + */ + status?: TestSetStatus | string; + + /** + *

      The Amazon Resource Name (ARN) of an IAM role + * that has permission to access the test set.

      + */ + roleArn?: string; + + /** + *

      The number of turns in the test set.

      + */ + numTurns?: number; + + /** + *

      Contains information about the location at which the test set is stored.

      + */ + storageLocation?: TestSetStorageLocation; + + /** + *

      The date and time at which the test set was created.

      + */ + creationDateTime?: Date; + + /** + *

      The date and time at which the test set was last updated.

      + */ + lastUpdatedDateTime?: Date; +} + +/** + * @public + */ +export interface ListTestSetsResponse { + /** + *

      The selected test sets in a list of test sets.

      + */ + testSets?: TestSetSummary[]; + + /** + *

      A token that indicates whether there are more results to return in a response + * to the ListTestSets operation. If the nextToken field is present, you send the + * contents as the nextToken parameter of a ListTestSets operation request to get + * the next page of results.

      + */ + nextToken?: string; +} + +/** + * @public + * @enum + */ +export const SearchOrder = { + Ascending: "Ascending", + Descending: "Descending", +} as const; + +/** + * @public + */ +export type SearchOrder = (typeof SearchOrder)[keyof typeof SearchOrder]; + +/** + * @public + */ +export interface SearchAssociatedTranscriptsRequest { + /** + *

      The unique identifier of the bot associated with the transcripts + * that you are searching.

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

      The version of the bot containing the transcripts that you are + * searching.

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

      The identifier of the language and locale of the transcripts to + * search. The string must match one of the supported locales. For more + * information, see Supported languages + *

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

      The unique identifier of the bot recommendation associated with the + * transcripts to search.

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

      How SearchResults are ordered. Valid values are Ascending or + * Descending. The default is Descending.

      + */ + searchOrder?: SearchOrder | string; + + /** + *

      A list of filter objects.

      + */ + filters: AssociatedTranscriptFilter[] | undefined; + + /** + *

      The maximum number of bot recommendations to return in each page of + * results. If there are fewer results than the max page size, only the + * actual number of results are returned.

      + */ + maxResults?: number; + + /** + *

      If the response from the SearchAssociatedTranscriptsRequest + * operation contains more results than specified in the maxResults + * parameter, an index is returned in the response. Use that index in the + * nextIndex parameter to return the next page of results.

      + */ + nextIndex?: number; +} + +/** + * @public + */ +export interface SearchAssociatedTranscriptsResponse { + /** + *

      The unique identifier of the bot associated with the transcripts + * that you are searching.

      + */ + botId?: string; + + /** + *

      The version of the bot containing the transcripts that you are + * searching.

      + */ + botVersion?: string; + + /** + *

      The identifier of the language and locale of the transcripts to + * search. The string must match one of the supported locales. For more + * information, see Supported languages + *

      + */ + localeId?: string; + + /** + *

      The unique identifier of the bot recommendation associated with the + * transcripts to search.

      + */ + botRecommendationId?: string; + + /** + *

      A index that indicates whether there are more results to return in a + * response to the SearchAssociatedTranscripts operation. If the nextIndex + * field is present, you send the contents as the nextIndex parameter of a + * SearchAssociatedTranscriptsRequest operation to get the next page of + * results.

      + */ + nextIndex?: number; + + /** + *

      The object that contains the associated transcript that meet the + * criteria you specified.

      + */ + associatedTranscripts?: AssociatedTranscript[]; + + /** + *

      The total number of transcripts returned by the search.

      + */ + totalResults?: number; +} + +/** + * @public + */ +export interface StartBotRecommendationRequest { + /** + *

      The unique identifier of the bot containing the bot + * recommendation.

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

      The version of the bot containing the bot recommendation.

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

      The identifier of the language and locale of the bot recommendation + * to start. The string must match one of the supported locales. For more + * information, see Supported languages + *

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

      The object representing the Amazon S3 bucket containing the transcript, + * as well as the associated metadata.

      + */ + transcriptSourceSetting: TranscriptSourceSetting | undefined; + + /** + *

      The object representing the passwords that will be used to encrypt + * the data related to the bot recommendation results, as well as the KMS + * key ARN used to encrypt the associated metadata.

      + */ + encryptionSetting?: EncryptionSetting; +} + +/** + * @public + */ +export interface StartBotRecommendationResponse { + /** + *

      The unique identifier of the bot containing the bot + * recommendation.

      + */ + botId?: string; + + /** + *

      The version of the bot containing the bot recommendation.

      + */ + botVersion?: string; + + /** + *

      The identifier of the language and locale of the bot recommendation + * to start. The string must match one of the supported locales. For more + * information, see Supported languages + *

      + */ + localeId?: string; + + /** + *

      The status of the bot recommendation.

      + *

      If the status is Failed, then the reasons for the failure are listed + * in the failureReasons field.

      + */ + botRecommendationStatus?: BotRecommendationStatus | string; + + /** + *

      The identifier of the bot recommendation that you have + * created.

      + */ + botRecommendationId?: string; + + /** + *

      A timestamp of the date and time that the bot recommendation was + * created.

      + */ + creationDateTime?: Date; + + /** + *

      The object representing the Amazon S3 bucket containing the transcript, + * as well as the associated metadata.

      + */ + transcriptSourceSetting?: TranscriptSourceSetting; + + /** + *

      The object representing the passwords that were used to encrypt the + * data related to the bot recommendation results, as well as the KMS key + * ARN used to encrypt the associated metadata.

      + */ + encryptionSetting?: EncryptionSetting; +} + +/** + * @public + */ +export interface StartImportRequest { + /** + *

      The unique identifier for the import. It is included in the response + * from the CreateUploadUrl operation.

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

      Parameters for creating the bot, bot locale or custom + * vocabulary.

      + */ + resourceSpecification: ImportResourceSpecification | undefined; + + /** + *

      The strategy to use when there is a name conflict between the + * imported resource and an existing resource. When the merge strategy is + * FailOnConflict existing resources are not overwritten + * and the import fails.

      + */ + mergeStrategy: MergeStrategy | string | undefined; + + /** + *

      The password used to encrypt the zip archive that contains the + * resource definition. You should always encrypt the zip archive to + * protect it during transit between your site and Amazon Lex.

      + */ + filePassword?: string; +} + +/** + * @public + */ +export interface StartImportResponse { + /** + *

      A unique identifier for the import.

      + */ + importId?: string; + + /** + *

      The parameters used when importing the resource.

      + */ + resourceSpecification?: ImportResourceSpecification; + + /** + *

      The strategy used when there was a name conflict between the + * imported resource and an existing resource. When the merge strategy is + * FailOnConflict existing resources are not overwritten + * and the import fails.

      + */ + mergeStrategy?: MergeStrategy | string; + + /** + *

      The current status of the import. When the status is + * Complete the bot, bot alias, or custom vocabulary is + * ready to use.

      + */ + importStatus?: ImportStatus | string; + + /** + *

      The date and time that the import request was created.

      + */ + creationDateTime?: Date; +} + +/** + * @public + */ +export interface StartTestExecutionRequest { + /** + *

      The test set Id for the test set execution.

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

      The target bot for the test set execution.

      + */ + target: TestExecutionTarget | undefined; + + /** + *

      Indicates whether we use streaming or non-streaming APIs for the test set + * execution. For streaming, StartConversation Runtime API is used. Whereas, for + * non-streaming, RecognizeUtterance and RecognizeText Amazon Lex + * Runtime API are used.

      + */ + apiMode: TestExecutionApiMode | string | undefined; + + /** + *

      Indicates whether audio or text is used.

      + */ + testExecutionModality?: TestExecutionModality | string; +} + +/** + * @public + */ +export interface StartTestExecutionResponse { + /** + *

      The unique identifier of the test set execution.

      + */ + testExecutionId?: string; + + /** + *

      The creation date and time for the test set execution.

      + */ + creationDateTime?: Date; + + /** + *

      The test set Id for the test set execution.

      + */ + testSetId?: string; + + /** + *

      The target bot for the test set execution.

      + */ + target?: TestExecutionTarget; + + /** + *

      Indicates whether we use streaming or non-streaming APIs for the test set + * execution. For streaming, StartConversation Amazon Lex Runtime API is used. Whereas + * for non-streaming, RecognizeUtterance and RecognizeText Amazon Lex Runtime API are used.

      + */ + apiMode?: TestExecutionApiMode | string; + + /** + *

      Indicates whether audio or text is used.

      + */ + testExecutionModality?: TestExecutionModality | string; +} + +/** + * @public + */ +export interface StartTestSetGenerationRequest { + /** + *

      The test set name for the test set generation request.

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

      The test set description for the test set generation request.

      + */ + description?: string; + + /** + *

      The Amazon S3 storage location for the test set generation.

      + */ + storageLocation: TestSetStorageLocation | undefined; + + /** + *

      The data source for the test set generation.

      + */ + generationDataSource: TestSetGenerationDataSource | undefined; + + /** + *

      The roleARN used for any operation in the test set to access + * resources in the Amazon Web Services account.

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

      A list of tags to add to the test set. You can only add tags when you import/generate a new test set. You can't use the UpdateTestSet operation to update tags. To update tags, use the TagResource operation.

      + */ + testSetTags?: Record; +} + +/** + * @public + */ +export interface StartTestSetGenerationResponse { + /** + *

      The unique identifier of the test set generation to describe.

      + */ + testSetGenerationId?: string; + + /** + *

      The creation date and time for the test set generation.

      + */ + creationDateTime?: Date; + + /** + *

      The status for the test set generation.

      + */ + testSetGenerationStatus?: TestSetGenerationStatus | string; + + /** + *

      The test set name used for the test set generation.

      + */ + testSetName?: string; + + /** + *

      The description used for the test set generation.

      + */ + description?: string; + + /** + *

      The Amazon S3 storage location for the test set generation.

      + */ + storageLocation?: TestSetStorageLocation; + + /** + *

      The data source for the test set generation.

      + */ + generationDataSource?: TestSetGenerationDataSource; + + /** + *

      The roleARN used for any operation in the test set to access resources + * in the Amazon Web Services account.

      + */ + roleArn?: string; + + /** + *

      A list of tags that was used for the test set that is being generated.

      + */ + testSetTags?: Record; +} + +/** + * @public + */ +export interface StopBotRecommendationRequest { + /** + *

      The unique identifier of the bot containing the bot + * recommendation to be stopped.

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

      The version of the bot containing the bot recommendation.

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

      The identifier of the language and locale of the bot recommendation + * to stop. The string must match one of the supported locales. For more + * information, see Supported languages + *

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

      The unique identifier of the bot recommendation to be + * stopped.

      + */ + botRecommendationId: string | undefined; +} + +/** + * @public + */ +export interface StopBotRecommendationResponse { + /** + *

      The unique identifier of the bot containing the bot recommendation that + * is being stopped.

      + */ + botId?: string; + + /** + *

      The version of the bot containing the recommendation that is being + * stopped.

      + */ + botVersion?: string; + + /** + *

      The identifier of the language and locale of the bot response + * to stop. The string must match one of the supported locales. For more + * information, see Supported languages + *

      + */ + localeId?: string; + + /** + *

      The status of the bot recommendation. If the status is Failed, + * then the reasons for the failure are listed in the failureReasons field.

      + */ + botRecommendationStatus?: BotRecommendationStatus | string; + + /** + *

      The unique identifier of the bot recommendation that is being + * stopped.

      + */ + botRecommendationId?: string; +} + +/** + * @public + */ +export interface TagResourceRequest { + /** + *

      The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel + * to tag.

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

      A list of tag keys to add to the resource. If a tag key already + * exists, the existing value is replaced with the new value.

      + */ + tags: Record | undefined; +} + /** * @public */ @@ -683,8 +3087,7 @@ export interface UpdateSlotTypeRequest { localeId: string | undefined; /** - *

      Provides information about the external source of the slot type's - * definition.

      + *

      Provides information about the external source of the slot type's definition.

      */ externalSourceSetting?: ExternalSourceSetting; @@ -716,58 +3119,155 @@ export interface UpdateSlotTypeResponse { /** *

      The updated values that the slot type provides.

      */ - slotTypeValues?: SlotTypeValue[]; + slotTypeValues?: SlotTypeValue[]; + + /** + *

      The updated strategy that Amazon Lex uses to determine which value to + * select from the slot type.

      + */ + valueSelectionSetting?: SlotValueSelectionSetting; + + /** + *

      The updated signature of the built-in slot type that is the parent + * of this slot type.

      + */ + parentSlotTypeSignature?: string; + + /** + *

      The identifier of the bot that contains the slot type.

      + */ + botId?: string; + + /** + *

      The version of the bot that contains the slot type. This is always + * DRAFT.

      + */ + botVersion?: string; + + /** + *

      The language and locale of the updated slot type.

      + */ + localeId?: string; + + /** + *

      The timestamp of the date and time that the slot type was + * created.

      + */ + creationDateTime?: Date; + + /** + *

      A timestamp of the date and time that the slot type was last + * updated.

      + */ + lastUpdatedDateTime?: Date; + + /** + *

      Provides information about the external source of the slot type's definition.

      + */ + externalSourceSetting?: ExternalSourceSetting; + + /** + *

      Specifications for a composite slot type.

      + */ + compositeSlotTypeSetting?: CompositeSlotTypeSetting; +} + +/** + * @public + */ +export interface UpdateTestSetRequest { + /** + *

      The test set Id for which update test operation to be performed.

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

      The new test set name.

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

      The new test set description.

      + */ + description?: string; +} + +/** + * @public + */ +export interface UpdateTestSetResponse { + /** + *

      The test set Id for which update test operation to be performed.

      + */ + testSetId?: string; + + /** + *

      The test set name for the updated test set.

      + */ + testSetName?: string; + + /** + *

      The test set description for the updated test set.

      + */ + description?: string; /** - *

      The updated strategy that Amazon Lex uses to determine which value to - * select from the slot type.

      + *

      Indicates whether audio or text is used for the updated test set.

      */ - valueSelectionSetting?: SlotValueSelectionSetting; + modality?: TestSetModality | string; /** - *

      The updated signature of the built-in slot type that is the parent - * of this slot type.

      + *

      The status for the updated test set.

      */ - parentSlotTypeSignature?: string; + status?: TestSetStatus | string; /** - *

      The identifier of the bot that contains the slot type.

      + *

      The roleARN used for any operation in the test set to access + * resources in the Amazon Web Services account.

      */ - botId?: string; + roleArn?: string; /** - *

      The version of the bot that contains the slot type. This is always - * DRAFT.

      + *

      The number of conversation turns from the updated test set.

      */ - botVersion?: string; + numTurns?: number; /** - *

      The language and locale of the updated slot type.

      + *

      The Amazon S3 storage location for the updated test set.

      */ - localeId?: string; + storageLocation?: TestSetStorageLocation; /** - *

      The timestamp of the date and time that the slot type was - * created.

      + *

      The creation date and time for the updated test set.

      */ creationDateTime?: Date; /** - *

      A timestamp of the date and time that the slot type was last - * updated.

      + *

      The date and time of the last update for the updated test set.

      */ lastUpdatedDateTime?: Date; +} +/** + * @public + *

      Provides an array of phrases that should be given preference when + * resolving values for a slot.

      + */ +export interface RuntimeHintDetails { /** - *

      Provides information about the external source of the slot type's - * definition.

      + *

      One or more strings that Amazon Lex should look for in the input to the + * bot. Each phrase is given preference when deciding on slot + * values.

      */ - externalSourceSetting?: ExternalSourceSetting; + runtimeHintValues?: RuntimeHintValue[]; /** - *

      Specifications for a composite slot type.

      + *

      A map of constituent sub slot names inside a composite slot in the intent and the phrases + * that should be added for each sub slot. Inside each composite slot hints, this structure provides + * a mechanism to add granular sub slot phrases. Only sub slot hints are supported for composite slots. + * The intent name, composite slot name and the constituent sub slot names must exist.

      */ - compositeSlotTypeSetting?: CompositeSlotTypeSetting; + subSlotHints?: Record; } /** @@ -811,18 +3311,64 @@ export interface IntentOverride { /** *

      A map of all of the slot value overrides for the intent. The name of * the slot maps to the value of the slot. Slots that are not included in - * the map aren't overridden.,

      + * the map aren't overridden.

      */ slots?: Record; } +/** + * @public + *

      You can provide Amazon Lex with hints to the phrases that a customer is + * likely to use for a slot. When a slot with hints is resolved, the + * phrases in the runtime hints are preferred in the resolution. You can + * provide hints for a maximum of 100 intents. You can provide a maximum + * of 100 slots.

      + *

      Before you can use runtime hints with an existing bot, you must + * first rebuild the bot.

      + *

      For more information, see Using runtime hints to + * improve recognition of slot values.

      + */ +export interface RuntimeHints { + /** + *

      A list of the slots in the intent that should have runtime hints + * added, and the phrases that should be added for each slot.

      + *

      The first level of the slotHints map is the name of the + * intent. The second level is the name of the slot within the intent. For + * more information, see Using hints to improve + * accuracy.

      + *

      The intent name and slot name must exist.

      + */ + slotHints?: Record>; +} + +/** + * @public + *

      Contains information about a slot output by the test set execution.

      + */ +export interface UserTurnSlotOutput { + /** + *

      The value output by the slot recognition.

      + */ + value?: string; + + /** + *

      Values that are output by the slot recognition.

      + */ + values?: UserTurnSlotOutput[]; + + /** + *

      A list of items mapping the name of the subslots to information about those subslots.

      + */ + subSlots?: Record; +} + /** * @public *

      The current state of the conversation with the user.

      */ export interface DialogState { /** - *

      Defines the action that the bot executes at runtime when the + *

      Defines the action that the bot executes at runtime when the * conversation reaches this step.

      */ dialogAction?: DialogAction; @@ -839,6 +3385,28 @@ export interface DialogState { sessionAttributes?: Record; } +/** + * @public + *

      Specifications for the current state of the dialog + * between the user and the bot in the test set.

      + */ +export interface InputSessionStateSpecification { + /** + *

      Session attributes for the session state.

      + */ + sessionAttributes?: Record; + + /** + *

      Active contexts for the session state.

      + */ + activeContexts?: ActiveContext[]; + + /** + *

      Runtime hints for the session state.

      + */ + runtimeHints?: RuntimeHints; +} + /** * @public *

      A set of actions that Amazon Lex should run if the condition @@ -886,6 +3454,64 @@ export interface DefaultConditionalBranch { response?: ResponseSpecification; } +/** + * @public + *

      Contains information about the user messages in the turn in the input.

      + */ +export interface UserTurnInputSpecification { + /** + *

      The utterance input in the user turn.

      + */ + utteranceInput: UtteranceInputSpecification | undefined; + + /** + *

      Request attributes of the user turn.

      + */ + requestAttributes?: Record; + + /** + *

      Contains information about the session state in the input.

      + */ + sessionState?: InputSessionStateSpecification; +} + +/** + * @public + *

      Contains information about the intent that is output for the turn by the test execution.

      + */ +export interface UserTurnIntentOutput { + /** + *

      The name of the intent.

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

      The slots associated with the intent.

      + */ + slots?: Record; +} + +/** + * @public + *

      Contains results that are output for the user turn by the test execution.

      + */ +export interface UserTurnOutputSpecification { + /** + *

      Contains information about the intent.

      + */ + intent: UserTurnIntentOutput | undefined; + + /** + *

      The contexts that are active in the turn.

      + */ + activeContexts?: ActiveContext[]; + + /** + *

      The transcript that is output for the user turn by the test execution.

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

      Provides a list of conditional branches. Branches are evaluated in @@ -918,6 +3544,38 @@ export interface ConditionalSpecification { defaultBranch: DefaultConditionalBranch | undefined; } +/** + * @public + *

      Contains information about the expected and input values for the user turn.

      + */ +export interface UserTurnSpecification { + /** + *

      Contains information about the user messages in the turn in the input.

      + */ + input: UserTurnInputSpecification | undefined; + + /** + *

      Contains results about the expected output for the user turn.

      + */ + expected: UserTurnOutputSpecification | undefined; +} + +/** + * @public + *

      Contains information about the messages in the turn.

      + */ +export interface TurnSpecification { + /** + *

      Contains information about the agent messages in the turn.

      + */ + agentTurn?: AgentTurnSpecification; + + /** + *

      Contains information about the user messages in the turn.

      + */ + userTurn?: UserTurnSpecification; +} + /** * @public *

      Provides a statement the Amazon Lex conveys to the user when the intent @@ -952,6 +3610,205 @@ export interface IntentClosingSetting { conditional?: ConditionalSpecification; } +/** + * @public + *

      Contains information about a turn in a test set.

      + */ +export interface TestSetTurnRecord { + /** + *

      The record number associated with the turn.

      + */ + recordNumber: number | undefined; + + /** + *

      The unique identifier for the conversation associated with the turn.

      + */ + conversationId?: string; + + /** + *

      The number of turns that has elapsed up to that turn.

      + */ + turnNumber?: number; + + /** + *

      Contains information about the agent or user turn depending upon type of turn.

      + */ + turnSpecification: TurnSpecification | undefined; +} + +/** + * @public + *

      Contains the results for the user turn by the test execution.

      + */ +export interface UserTurnResult { + /** + *

      Contains information about the user messages in the turn in the input.

      + */ + input: UserTurnInputSpecification | undefined; + + /** + *

      Contains information about the expected output for the user turn.

      + */ + expectedOutput: UserTurnOutputSpecification | undefined; + + /** + *

      Contains information about the actual output for the user turn.

      + */ + actualOutput?: UserTurnOutputSpecification; + + /** + *

      Details about an error in an execution of a test set.

      + */ + errorDetails?: ExecutionErrorDetails; + + /** + *

      Specifies whether the expected and actual outputs match or not, or if there is an error in execution.

      + */ + endToEndResult?: TestResultMatchStatus | string; + + /** + *

      Specifies whether the expected and actual intents match or not.

      + */ + intentMatchResult?: TestResultMatchStatus | string; + + /** + *

      Specifies whether the expected and actual slots match or not.

      + */ + slotMatchResult?: TestResultMatchStatus | string; + + /** + *

      Specifies whether the expected and actual speech transcriptions match or not, or if there is an error in execution.

      + */ + speechTranscriptionResult?: TestResultMatchStatus | string; + + /** + *

      Contains information about the results related to the conversation associated with the user turn.

      + */ + conversationLevelResult?: ConversationLevelResultDetail; +} + +/** + * @public + */ +export interface ListTestSetRecordsResponse { + /** + *

      The list of records from the test set.

      + */ + testSetRecords?: TestSetTurnRecord[]; + + /** + *

      A token that indicates whether there are more records to return in a response + * to the ListTestSetRecords operation. If the nextToken field is present, you + * send the contents as the nextToken parameter of a ListTestSetRecords operation + * request to get the next page of records.

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

      Contains information about the results of the analysis of a turn in the test set.

      + */ +export interface TestSetTurnResult { + /** + *

      Contains information about the agent messages in the turn.

      + */ + agent?: AgentTurnResult; + + /** + *

      Contains information about the user messages in the turn.

      + */ + user?: UserTurnResult; +} + +/** + * @public + *

      Contains information about multiple utterances in the results of a test set execution.

      + */ +export interface UtteranceLevelTestResultItem { + /** + *

      The record number of the result.

      + */ + recordNumber: number | undefined; + + /** + *

      The unique identifier for the conversation associated with the result.

      + */ + conversationId?: string; + + /** + *

      Contains information about the turn associated with the result.

      + */ + turnResult: TestSetTurnResult | undefined; +} + +/** + * @public + *

      Contains information about the utterances in the results of the test set execution.

      + */ +export interface UtteranceLevelTestResults { + /** + *

      Contains information about an utterance in the results of the test set execution.

      + */ + items: UtteranceLevelTestResultItem[] | undefined; +} + +/** + * @public + *

      Contains the results of the test execution, grouped by type of results. + * See Test result details">Test results details + * for details about different types of results.

      + */ +export interface TestExecutionResultItems { + /** + *

      Overall results for the test execution, including the breakdown of conversations and + * single-input utterances.

      + */ + overallTestResults?: OverallTestResults; + + /** + *

      Results related to conversations in the test set, including metrics about success and failure of + * conversations and intent and slot failures.

      + */ + conversationLevelTestResults?: ConversationLevelTestResults; + + /** + *

      Intent recognition results aggregated by intent name. The aggregated results contain success and failure rates of intent recognition, + * speech transcriptions, and end-to-end conversations.

      + */ + intentClassificationTestResults?: IntentClassificationTestResults; + + /** + *

      Slot resolution results aggregated by intent and slot name. The aggregated results contain success and failure rates of slot resolution, + * speech transcriptions, and end-to-end conversations

      + */ + intentLevelSlotResolutionTestResults?: IntentLevelSlotResolutionTestResults; + + /** + *

      Results related to utterances in the test set.

      + */ + utteranceLevelTestResults?: UtteranceLevelTestResults; +} + +/** + * @public + */ +export interface ListTestExecutionResultItemsResponse { + /** + *

      The list of results from the test execution.

      + */ + testExecutionResults?: TestExecutionResultItems; + + /** + *

      A token that indicates whether there are more results to return in a response + * to the ListTestExecutionResultItems operation. If the + * nextToken field is present, you send the contents as the + * nextToken parameter of a ListTestExecutionResultItems + * operation request to get the next page of results.

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

      Specifies next steps to run after the dialog code hook @@ -1082,7 +3939,7 @@ export interface PostFulfillmentStatusSpecification { /** * @public - *

      Settings that specify the dialog code hook that is + *

      Settings that specify the dialog code hook that is * called by Amazon Lex at a step of the conversation.

      */ export interface DialogCodeHookInvocationSetting { @@ -1171,7 +4028,7 @@ export interface InitialResponseSetting { conditional?: ConditionalSpecification; /** - *

      Settings that specify the dialog code hook that is + *

      Settings that specify the dialog code hook that is * called by Amazon Lex at a step of the conversation.

      */ codeHook?: DialogCodeHookInvocationSetting; @@ -1234,7 +4091,7 @@ export interface SlotCaptureSetting { /** * @public - *

      Specifies the elicitation setting details for constituent sub slots of a composite slot.

      + *

      Specifies the elicitation setting details eliciting a slot.

      */ export interface SlotValueElicitationSetting { /** @@ -1442,8 +4299,8 @@ export interface CreateSlotRequest { /** *

      Indicates whether the slot returns multiple values in one response. - * Multi-value slots are only available in the en-US locale. If you set - * this value to true in any other locale, Amazon Lex throws a + * Multi-value slots are only available in the en-US locale. + * If you set this value to true in any other locale, Amazon Lex throws a * ValidationException.

      *

      If the multipleValuesSetting is not set, the default * value is false.

      @@ -1735,7 +4592,7 @@ export interface UpdateSlotResponse { botId?: string; /** - *

      The identifier of the slot version that contains the slot. Will + *

      The version of the bot that contains the slot. Will * always be DRAFT.

      */ botVersion?: string; @@ -1889,7 +4746,7 @@ export interface CreateIntentRequest { botId: string | undefined; /** - *

      The identifier of the version of the bot associated with this + *

      The version of the bot associated with this * intent.

      */ botVersion: string | undefined; @@ -1979,7 +4836,7 @@ export interface CreateIntentResponse { botId?: string; /** - *

      The identifier of the version of the bot associated with the + *

      The version of the bot associated with the * intent.

      */ botVersion?: string; @@ -2106,7 +4963,7 @@ export interface DescribeIntentResponse { lastUpdatedDateTime?: Date; /** - *

      + *

      Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.

      */ initialResponseSetting?: InitialResponseSetting; } @@ -2207,7 +5064,7 @@ export interface UpdateIntentRequest { localeId: string | undefined; /** - *

      + *

      Configuration settings for a response sent to the user before Amazon Lex starts eliciting slots.

      */ initialResponseSetting?: InitialResponseSetting; } @@ -2317,11 +5174,35 @@ export interface UpdateIntentResponse { lastUpdatedDateTime?: Date; /** - *

      + *

      Configuration settings for a response sent to the user before Amazon Lex starts eliciting slots.

      */ initialResponseSetting?: InitialResponseSetting; } +/** + * @internal + */ +export const StartBotRecommendationRequestFilterSensitiveLog = (obj: StartBotRecommendationRequest): any => ({ + ...obj, + ...(obj.encryptionSetting && { encryptionSetting: EncryptionSettingFilterSensitiveLog(obj.encryptionSetting) }), +}); + +/** + * @internal + */ +export const StartBotRecommendationResponseFilterSensitiveLog = (obj: StartBotRecommendationResponse): any => ({ + ...obj, + ...(obj.encryptionSetting && { encryptionSetting: EncryptionSettingFilterSensitiveLog(obj.encryptionSetting) }), +}); + +/** + * @internal + */ +export const StartImportRequestFilterSensitiveLog = (obj: StartImportRequest): any => ({ + ...obj, + ...(obj.filePassword && { filePassword: SENSITIVE_STRING }), +}); + /** * @internal */ diff --git a/clients/client-lex-models-v2/src/pagination/ListTestExecutionResultItemsPaginator.ts b/clients/client-lex-models-v2/src/pagination/ListTestExecutionResultItemsPaginator.ts new file mode 100644 index 000000000000..67702d21c7f6 --- /dev/null +++ b/clients/client-lex-models-v2/src/pagination/ListTestExecutionResultItemsPaginator.ts @@ -0,0 +1,50 @@ +// smithy-typescript generated code +import { Paginator } from "@aws-sdk/types"; + +import { + ListTestExecutionResultItemsCommand, + ListTestExecutionResultItemsCommandInput, + ListTestExecutionResultItemsCommandOutput, +} from "../commands/ListTestExecutionResultItemsCommand"; +import { LexModelsV2Client } from "../LexModelsV2Client"; +import { LexModelsV2PaginationConfiguration } from "./Interfaces"; + +/** + * @internal + */ +const makePagedClientRequest = async ( + client: LexModelsV2Client, + input: ListTestExecutionResultItemsCommandInput, + ...args: any +): Promise => { + // @ts-ignore + return await client.send(new ListTestExecutionResultItemsCommand(input), ...args); +}; +/** + * @public + */ +export async function* paginateListTestExecutionResultItems( + config: LexModelsV2PaginationConfiguration, + input: ListTestExecutionResultItemsCommandInput, + ...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: ListTestExecutionResultItemsCommandOutput; + while (hasNext) { + input.nextToken = token; + input["maxResults"] = config.pageSize; + if (config.client instanceof LexModelsV2Client) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected LexModelsV2 | LexModelsV2Client"); + } + yield page; + const prevToken = token; + token = page.nextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + // @ts-ignore + return undefined; +} diff --git a/clients/client-lex-models-v2/src/pagination/ListTestExecutionsPaginator.ts b/clients/client-lex-models-v2/src/pagination/ListTestExecutionsPaginator.ts new file mode 100644 index 000000000000..724ce001053e --- /dev/null +++ b/clients/client-lex-models-v2/src/pagination/ListTestExecutionsPaginator.ts @@ -0,0 +1,50 @@ +// smithy-typescript generated code +import { Paginator } from "@aws-sdk/types"; + +import { + ListTestExecutionsCommand, + ListTestExecutionsCommandInput, + ListTestExecutionsCommandOutput, +} from "../commands/ListTestExecutionsCommand"; +import { LexModelsV2Client } from "../LexModelsV2Client"; +import { LexModelsV2PaginationConfiguration } from "./Interfaces"; + +/** + * @internal + */ +const makePagedClientRequest = async ( + client: LexModelsV2Client, + input: ListTestExecutionsCommandInput, + ...args: any +): Promise => { + // @ts-ignore + return await client.send(new ListTestExecutionsCommand(input), ...args); +}; +/** + * @public + */ +export async function* paginateListTestExecutions( + config: LexModelsV2PaginationConfiguration, + input: ListTestExecutionsCommandInput, + ...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: ListTestExecutionsCommandOutput; + while (hasNext) { + input.nextToken = token; + input["maxResults"] = config.pageSize; + if (config.client instanceof LexModelsV2Client) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected LexModelsV2 | LexModelsV2Client"); + } + yield page; + const prevToken = token; + token = page.nextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + // @ts-ignore + return undefined; +} diff --git a/clients/client-lex-models-v2/src/pagination/ListTestSetRecordsPaginator.ts b/clients/client-lex-models-v2/src/pagination/ListTestSetRecordsPaginator.ts new file mode 100644 index 000000000000..5f7dc0863250 --- /dev/null +++ b/clients/client-lex-models-v2/src/pagination/ListTestSetRecordsPaginator.ts @@ -0,0 +1,50 @@ +// smithy-typescript generated code +import { Paginator } from "@aws-sdk/types"; + +import { + ListTestSetRecordsCommand, + ListTestSetRecordsCommandInput, + ListTestSetRecordsCommandOutput, +} from "../commands/ListTestSetRecordsCommand"; +import { LexModelsV2Client } from "../LexModelsV2Client"; +import { LexModelsV2PaginationConfiguration } from "./Interfaces"; + +/** + * @internal + */ +const makePagedClientRequest = async ( + client: LexModelsV2Client, + input: ListTestSetRecordsCommandInput, + ...args: any +): Promise => { + // @ts-ignore + return await client.send(new ListTestSetRecordsCommand(input), ...args); +}; +/** + * @public + */ +export async function* paginateListTestSetRecords( + config: LexModelsV2PaginationConfiguration, + input: ListTestSetRecordsCommandInput, + ...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: ListTestSetRecordsCommandOutput; + while (hasNext) { + input.nextToken = token; + input["maxResults"] = config.pageSize; + if (config.client instanceof LexModelsV2Client) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected LexModelsV2 | LexModelsV2Client"); + } + yield page; + const prevToken = token; + token = page.nextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + // @ts-ignore + return undefined; +} diff --git a/clients/client-lex-models-v2/src/pagination/ListTestSetsPaginator.ts b/clients/client-lex-models-v2/src/pagination/ListTestSetsPaginator.ts new file mode 100644 index 000000000000..beaac5338340 --- /dev/null +++ b/clients/client-lex-models-v2/src/pagination/ListTestSetsPaginator.ts @@ -0,0 +1,50 @@ +// smithy-typescript generated code +import { Paginator } from "@aws-sdk/types"; + +import { + ListTestSetsCommand, + ListTestSetsCommandInput, + ListTestSetsCommandOutput, +} from "../commands/ListTestSetsCommand"; +import { LexModelsV2Client } from "../LexModelsV2Client"; +import { LexModelsV2PaginationConfiguration } from "./Interfaces"; + +/** + * @internal + */ +const makePagedClientRequest = async ( + client: LexModelsV2Client, + input: ListTestSetsCommandInput, + ...args: any +): Promise => { + // @ts-ignore + return await client.send(new ListTestSetsCommand(input), ...args); +}; +/** + * @public + */ +export async function* paginateListTestSets( + config: LexModelsV2PaginationConfiguration, + input: ListTestSetsCommandInput, + ...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: ListTestSetsCommandOutput; + while (hasNext) { + input.nextToken = token; + input["maxResults"] = config.pageSize; + if (config.client instanceof LexModelsV2Client) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected LexModelsV2 | LexModelsV2Client"); + } + yield page; + const prevToken = token; + token = page.nextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + // @ts-ignore + return undefined; +} diff --git a/clients/client-lex-models-v2/src/pagination/index.ts b/clients/client-lex-models-v2/src/pagination/index.ts index 71c94327562e..ffdb05a8576f 100644 --- a/clients/client-lex-models-v2/src/pagination/index.ts +++ b/clients/client-lex-models-v2/src/pagination/index.ts @@ -15,3 +15,7 @@ export * from "./ListIntentsPaginator"; export * from "./ListRecommendedIntentsPaginator"; export * from "./ListSlotTypesPaginator"; export * from "./ListSlotsPaginator"; +export * from "./ListTestExecutionResultItemsPaginator"; +export * from "./ListTestExecutionsPaginator"; +export * from "./ListTestSetRecordsPaginator"; +export * from "./ListTestSetsPaginator"; diff --git a/clients/client-lex-models-v2/src/protocols/Aws_restJson1.ts b/clients/client-lex-models-v2/src/protocols/Aws_restJson1.ts index 5ec513eeb143..a249d5624edb 100644 --- a/clients/client-lex-models-v2/src/protocols/Aws_restJson1.ts +++ b/clients/client-lex-models-v2/src/protocols/Aws_restJson1.ts @@ -4,6 +4,7 @@ import { decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, + expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, @@ -51,6 +52,10 @@ import { } from "../commands/CreateResourcePolicyStatementCommand"; import { CreateSlotCommandInput, CreateSlotCommandOutput } from "../commands/CreateSlotCommand"; import { CreateSlotTypeCommandInput, CreateSlotTypeCommandOutput } from "../commands/CreateSlotTypeCommand"; +import { + CreateTestSetDiscrepancyReportCommandInput, + CreateTestSetDiscrepancyReportCommandOutput, +} from "../commands/CreateTestSetDiscrepancyReportCommand"; import { CreateUploadUrlCommandInput, CreateUploadUrlCommandOutput } from "../commands/CreateUploadUrlCommand"; import { DeleteBotAliasCommandInput, DeleteBotAliasCommandOutput } from "../commands/DeleteBotAliasCommand"; import { DeleteBotCommandInput, DeleteBotCommandOutput } from "../commands/DeleteBotCommand"; @@ -73,6 +78,7 @@ import { } from "../commands/DeleteResourcePolicyStatementCommand"; import { DeleteSlotCommandInput, DeleteSlotCommandOutput } from "../commands/DeleteSlotCommand"; import { DeleteSlotTypeCommandInput, DeleteSlotTypeCommandOutput } from "../commands/DeleteSlotTypeCommand"; +import { DeleteTestSetCommandInput, DeleteTestSetCommandOutput } from "../commands/DeleteTestSetCommand"; import { DeleteUtterancesCommandInput, DeleteUtterancesCommandOutput } from "../commands/DeleteUtterancesCommand"; import { DescribeBotAliasCommandInput, DescribeBotAliasCommandOutput } from "../commands/DescribeBotAliasCommand"; import { DescribeBotCommandInput, DescribeBotCommandOutput } from "../commands/DescribeBotCommand"; @@ -95,6 +101,23 @@ import { } from "../commands/DescribeResourcePolicyCommand"; import { DescribeSlotCommandInput, DescribeSlotCommandOutput } from "../commands/DescribeSlotCommand"; import { DescribeSlotTypeCommandInput, DescribeSlotTypeCommandOutput } from "../commands/DescribeSlotTypeCommand"; +import { + DescribeTestExecutionCommandInput, + DescribeTestExecutionCommandOutput, +} from "../commands/DescribeTestExecutionCommand"; +import { DescribeTestSetCommandInput, DescribeTestSetCommandOutput } from "../commands/DescribeTestSetCommand"; +import { + DescribeTestSetDiscrepancyReportCommandInput, + DescribeTestSetDiscrepancyReportCommandOutput, +} from "../commands/DescribeTestSetDiscrepancyReportCommand"; +import { + DescribeTestSetGenerationCommandInput, + DescribeTestSetGenerationCommandOutput, +} from "../commands/DescribeTestSetGenerationCommand"; +import { + GetTestExecutionArtifactsUrlCommandInput, + GetTestExecutionArtifactsUrlCommandOutput, +} from "../commands/GetTestExecutionArtifactsUrlCommand"; import { ListAggregatedUtterancesCommandInput, ListAggregatedUtterancesCommandOutput, @@ -129,6 +152,13 @@ import { ListTagsForResourceCommandInput, ListTagsForResourceCommandOutput, } from "../commands/ListTagsForResourceCommand"; +import { + ListTestExecutionResultItemsCommandInput, + ListTestExecutionResultItemsCommandOutput, +} from "../commands/ListTestExecutionResultItemsCommand"; +import { ListTestExecutionsCommandInput, ListTestExecutionsCommandOutput } from "../commands/ListTestExecutionsCommand"; +import { ListTestSetRecordsCommandInput, ListTestSetRecordsCommandOutput } from "../commands/ListTestSetRecordsCommand"; +import { ListTestSetsCommandInput, ListTestSetsCommandOutput } from "../commands/ListTestSetsCommand"; import { SearchAssociatedTranscriptsCommandInput, SearchAssociatedTranscriptsCommandOutput, @@ -138,6 +168,11 @@ import { StartBotRecommendationCommandOutput, } from "../commands/StartBotRecommendationCommand"; import { StartImportCommandInput, StartImportCommandOutput } from "../commands/StartImportCommand"; +import { StartTestExecutionCommandInput, StartTestExecutionCommandOutput } from "../commands/StartTestExecutionCommand"; +import { + StartTestSetGenerationCommandInput, + StartTestSetGenerationCommandOutput, +} from "../commands/StartTestSetGenerationCommand"; import { StopBotRecommendationCommandInput, StopBotRecommendationCommandOutput, @@ -159,6 +194,7 @@ import { } from "../commands/UpdateResourcePolicyCommand"; import { UpdateSlotCommandInput, UpdateSlotCommandOutput } from "../commands/UpdateSlotCommand"; import { UpdateSlotTypeCommandInput, UpdateSlotTypeCommandOutput } from "../commands/UpdateSlotTypeCommand"; +import { UpdateTestSetCommandInput, UpdateTestSetCommandOutput } from "../commands/UpdateTestSetCommand"; import { LexModelsV2ServiceException as __BaseException } from "../models/LexModelsV2ServiceException"; import { AdvancedRecognitionSetting, @@ -174,6 +210,7 @@ import { BotAliasHistoryEvent, BotAliasLocaleSettings, BotAliasSummary, + BotAliasTestExecutionTarget, BotExportSpecification, BotFilter, BotImportSpecification, @@ -198,6 +235,9 @@ import { CompositeSlotTypeSetting, Condition, ConflictException, + ConversationLevelTestResultsFilterBy, + ConversationLogsDataSource, + ConversationLogsDataSourceFilterBy, ConversationLogSettings, CustomPayload, CustomVocabularyEntryId, @@ -257,13 +297,7 @@ import { ServiceQuotaExceededException, SlotDefaultValue, SlotDefaultValueSpecification, - SlotFilter, SlotPriority, - SlotSortBy, - SlotSummary, - SlotTypeFilter, - SlotTypeSortBy, - SlotTypeSummary, SlotTypeValue, SlotValue, SlotValueRegexFilter, @@ -274,6 +308,14 @@ import { SubSlotSetting, SubSlotTypeComposition, SubSlotValueElicitationSetting, + TestExecutionTarget, + TestSetDiscrepancyReportBotAliasTarget, + TestSetDiscrepancyReportResourceTarget, + TestSetExportSpecification, + TestSetGenerationDataSource, + TestSetImportInputLocation, + TestSetImportResourceSpecification, + TestSetStorageLocation, TextInputSpecification, TextLogDestination, TextLogSetting, @@ -293,14 +335,40 @@ import { DialogState, FulfillmentCodeHookSettings, InitialResponseSetting, + InputSessionStateSpecification, IntentClosingSetting, IntentConfirmationSetting, IntentOverride, PostDialogCodeHookInvocationSpecification, PostFulfillmentStatusSpecification, + RuntimeHintDetails, + RuntimeHints, SlotCaptureSetting, + SlotFilter, + SlotSortBy, + SlotSummary, + SlotTypeFilter, + SlotTypeSortBy, + SlotTypeSummary, SlotValueElicitationSetting, SlotValueOverride, + TestExecutionResultFilterBy, + TestExecutionResultItems, + TestExecutionSortBy, + TestExecutionSummary, + TestSetSortBy, + TestSetSummary, + TestSetTurnRecord, + TestSetTurnResult, + TurnSpecification, + UserTurnInputSpecification, + UserTurnIntentOutput, + UserTurnOutputSpecification, + UserTurnResult, + UserTurnSlotOutput, + UserTurnSpecification, + UtteranceLevelTestResultItem, + UtteranceLevelTestResults, } from "../models/models_1"; /** @@ -799,6 +867,37 @@ export const se_CreateSlotTypeCommand = async ( }); }; +/** + * serializeAws_restJson1CreateTestSetDiscrepancyReportCommand + */ +export const se_CreateTestSetDiscrepancyReportCommand = async ( + input: CreateTestSetDiscrepancyReportCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testsets/{testSetId}/testsetdiscrepancy"; + resolvedPath = __resolvedPath(resolvedPath, input, "testSetId", () => input.testSetId!, "{testSetId}", false); + let body: any; + body = JSON.stringify( + take(input, { + target: (_) => _json(_), + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + /** * serializeAws_restJson1CreateUploadUrlCommand */ @@ -1167,6 +1266,29 @@ export const se_DeleteSlotTypeCommand = async ( }); }; +/** + * serializeAws_restJson1DeleteTestSetCommand + */ +export const se_DeleteTestSetCommand = async ( + input: DeleteTestSetCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testsets/{testSetId}"; + resolvedPath = __resolvedPath(resolvedPath, input, "testSetId", () => input.testSetId!, "{testSetId}", false); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "DELETE", + headers, + path: resolvedPath, + body, + }); +}; + /** * serializeAws_restJson1DeleteUtterancesCommand */ @@ -1511,6 +1633,155 @@ export const se_DescribeSlotTypeCommand = async ( }); }; +/** + * serializeAws_restJson1DescribeTestExecutionCommand + */ +export const se_DescribeTestExecutionCommand = async ( + input: DescribeTestExecutionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testexecutions/{testExecutionId}"; + resolvedPath = __resolvedPath( + resolvedPath, + input, + "testExecutionId", + () => input.testExecutionId!, + "{testExecutionId}", + false + ); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1DescribeTestSetCommand + */ +export const se_DescribeTestSetCommand = async ( + input: DescribeTestSetCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testsets/{testSetId}"; + resolvedPath = __resolvedPath(resolvedPath, input, "testSetId", () => input.testSetId!, "{testSetId}", false); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1DescribeTestSetDiscrepancyReportCommand + */ +export const se_DescribeTestSetDiscrepancyReportCommand = async ( + input: DescribeTestSetDiscrepancyReportCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + + "/testsetdiscrepancy/{testSetDiscrepancyReportId}"; + resolvedPath = __resolvedPath( + resolvedPath, + input, + "testSetDiscrepancyReportId", + () => input.testSetDiscrepancyReportId!, + "{testSetDiscrepancyReportId}", + false + ); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1DescribeTestSetGenerationCommand + */ +export const se_DescribeTestSetGenerationCommand = async ( + input: DescribeTestSetGenerationCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testsetgenerations/{testSetGenerationId}"; + resolvedPath = __resolvedPath( + resolvedPath, + input, + "testSetGenerationId", + () => input.testSetGenerationId!, + "{testSetGenerationId}", + false + ); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1GetTestExecutionArtifactsUrlCommand + */ +export const se_GetTestExecutionArtifactsUrlCommand = async ( + input: GetTestExecutionArtifactsUrlCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + + "/testexecutions/{testExecutionId}/artifacturl"; + resolvedPath = __resolvedPath( + resolvedPath, + input, + "testExecutionId", + () => input.testExecutionId!, + "{testExecutionId}", + false + ); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + body, + }); +}; + /** * serializeAws_restJson1ListAggregatedUtterancesCommand */ @@ -2066,10 +2337,10 @@ export const se_ListTagsForResourceCommand = async ( }; /** - * serializeAws_restJson1SearchAssociatedTranscriptsCommand + * serializeAws_restJson1ListTestExecutionResultItemsCommand */ -export const se_SearchAssociatedTranscriptsCommand = async ( - input: SearchAssociatedTranscriptsCommandInput, +export const se_ListTestExecutionResultItemsCommand = async ( + input: ListTestExecutionResultItemsCommandInput, context: __SerdeContext ): Promise<__HttpRequest> => { const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); @@ -2077,26 +2348,21 @@ export const se_SearchAssociatedTranscriptsCommand = async ( "content-type": "application/json", }; let resolvedPath = - `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + - "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/associatedtranscripts"; - resolvedPath = __resolvedPath(resolvedPath, input, "botId", () => input.botId!, "{botId}", false); - resolvedPath = __resolvedPath(resolvedPath, input, "botVersion", () => input.botVersion!, "{botVersion}", false); - resolvedPath = __resolvedPath(resolvedPath, input, "localeId", () => input.localeId!, "{localeId}", false); + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testexecutions/{testExecutionId}/results"; resolvedPath = __resolvedPath( resolvedPath, input, - "botRecommendationId", - () => input.botRecommendationId!, - "{botRecommendationId}", + "testExecutionId", + () => input.testExecutionId!, + "{testExecutionId}", false ); let body: any; body = JSON.stringify( take(input, { - filters: (_) => _json(_), maxResults: [], - nextIndex: [], - searchOrder: [], + nextToken: [], + resultFilterBy: (_) => _json(_), }) ); return new __HttpRequest({ @@ -2111,34 +2377,30 @@ export const se_SearchAssociatedTranscriptsCommand = async ( }; /** - * serializeAws_restJson1StartBotRecommendationCommand + * serializeAws_restJson1ListTestExecutionsCommand */ -export const se_StartBotRecommendationCommand = async ( - input: StartBotRecommendationCommandInput, +export const se_ListTestExecutionsCommand = async ( + input: ListTestExecutionsCommandInput, context: __SerdeContext ): Promise<__HttpRequest> => { const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); const headers: any = { "content-type": "application/json", }; - let resolvedPath = - `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + - "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations"; - resolvedPath = __resolvedPath(resolvedPath, input, "botId", () => input.botId!, "{botId}", false); - resolvedPath = __resolvedPath(resolvedPath, input, "botVersion", () => input.botVersion!, "{botVersion}", false); - resolvedPath = __resolvedPath(resolvedPath, input, "localeId", () => input.localeId!, "{localeId}", false); + const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testexecutions"; let body: any; body = JSON.stringify( take(input, { - encryptionSetting: (_) => _json(_), - transcriptSourceSetting: (_) => se_TranscriptSourceSetting(_, context), + maxResults: [], + nextToken: [], + sortBy: (_) => _json(_), }) ); return new __HttpRequest({ protocol, hostname, port, - method: "PUT", + method: "POST", headers, path: resolvedPath, body, @@ -2146,31 +2408,31 @@ export const se_StartBotRecommendationCommand = async ( }; /** - * serializeAws_restJson1StartImportCommand + * serializeAws_restJson1ListTestSetRecordsCommand */ -export const se_StartImportCommand = async ( - input: StartImportCommandInput, +export const se_ListTestSetRecordsCommand = async ( + input: ListTestSetRecordsCommandInput, context: __SerdeContext ): Promise<__HttpRequest> => { const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); const headers: any = { "content-type": "application/json", }; - const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/imports"; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testsets/{testSetId}/records"; + resolvedPath = __resolvedPath(resolvedPath, input, "testSetId", () => input.testSetId!, "{testSetId}", false); let body: any; body = JSON.stringify( take(input, { - filePassword: [], - importId: [], - mergeStrategy: [], - resourceSpecification: (_) => se_ImportResourceSpecification(_, context), + maxResults: [], + nextToken: [], }) ); return new __HttpRequest({ protocol, hostname, port, - method: "PUT", + method: "POST", headers, path: resolvedPath, body, @@ -2178,34 +2440,30 @@ export const se_StartImportCommand = async ( }; /** - * serializeAws_restJson1StopBotRecommendationCommand + * serializeAws_restJson1ListTestSetsCommand */ -export const se_StopBotRecommendationCommand = async ( - input: StopBotRecommendationCommandInput, +export const se_ListTestSetsCommand = async ( + input: ListTestSetsCommandInput, context: __SerdeContext ): Promise<__HttpRequest> => { const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); - const headers: any = {}; - let resolvedPath = - `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + - "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/stopbotrecommendation"; - resolvedPath = __resolvedPath(resolvedPath, input, "botId", () => input.botId!, "{botId}", false); - resolvedPath = __resolvedPath(resolvedPath, input, "botVersion", () => input.botVersion!, "{botVersion}", false); - resolvedPath = __resolvedPath(resolvedPath, input, "localeId", () => input.localeId!, "{localeId}", false); - resolvedPath = __resolvedPath( - resolvedPath, - input, - "botRecommendationId", - () => input.botRecommendationId!, - "{botRecommendationId}", - false - ); + const headers: any = { + "content-type": "application/json", + }; + const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testsets"; let body: any; + body = JSON.stringify( + take(input, { + maxResults: [], + nextToken: [], + sortBy: (_) => _json(_), + }) + ); return new __HttpRequest({ protocol, hostname, port, - method: "PUT", + method: "POST", headers, path: resolvedPath, body, @@ -2213,10 +2471,224 @@ export const se_StopBotRecommendationCommand = async ( }; /** - * serializeAws_restJson1TagResourceCommand + * serializeAws_restJson1SearchAssociatedTranscriptsCommand */ -export const se_TagResourceCommand = async ( - input: TagResourceCommandInput, +export const se_SearchAssociatedTranscriptsCommand = async ( + input: SearchAssociatedTranscriptsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + + "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/associatedtranscripts"; + resolvedPath = __resolvedPath(resolvedPath, input, "botId", () => input.botId!, "{botId}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "botVersion", () => input.botVersion!, "{botVersion}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "localeId", () => input.localeId!, "{localeId}", false); + resolvedPath = __resolvedPath( + resolvedPath, + input, + "botRecommendationId", + () => input.botRecommendationId!, + "{botRecommendationId}", + false + ); + let body: any; + body = JSON.stringify( + take(input, { + filters: (_) => _json(_), + maxResults: [], + nextIndex: [], + searchOrder: [], + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1StartBotRecommendationCommand + */ +export const se_StartBotRecommendationCommand = async ( + input: StartBotRecommendationCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + + "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations"; + resolvedPath = __resolvedPath(resolvedPath, input, "botId", () => input.botId!, "{botId}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "botVersion", () => input.botVersion!, "{botVersion}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "localeId", () => input.localeId!, "{localeId}", false); + let body: any; + body = JSON.stringify( + take(input, { + encryptionSetting: (_) => _json(_), + transcriptSourceSetting: (_) => se_TranscriptSourceSetting(_, context), + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "PUT", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1StartImportCommand + */ +export const se_StartImportCommand = async ( + input: StartImportCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/imports"; + let body: any; + body = JSON.stringify( + take(input, { + filePassword: [], + importId: [], + mergeStrategy: [], + resourceSpecification: (_) => se_ImportResourceSpecification(_, context), + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "PUT", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1StartTestExecutionCommand + */ +export const se_StartTestExecutionCommand = async ( + input: StartTestExecutionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testsets/{testSetId}/testexecutions"; + resolvedPath = __resolvedPath(resolvedPath, input, "testSetId", () => input.testSetId!, "{testSetId}", false); + let body: any; + body = JSON.stringify( + take(input, { + apiMode: [], + target: (_) => _json(_), + testExecutionModality: [], + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1StartTestSetGenerationCommand + */ +export const se_StartTestSetGenerationCommand = async ( + input: StartTestSetGenerationCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testsetgenerations"; + let body: any; + body = JSON.stringify( + take(input, { + description: [], + generationDataSource: (_) => se_TestSetGenerationDataSource(_, context), + roleArn: [], + storageLocation: (_) => _json(_), + testSetName: [], + testSetTags: (_) => _json(_), + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "PUT", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1StopBotRecommendationCommand + */ +export const se_StopBotRecommendationCommand = async ( + input: StopBotRecommendationCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + + "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/stopbotrecommendation"; + resolvedPath = __resolvedPath(resolvedPath, input, "botId", () => input.botId!, "{botId}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "botVersion", () => input.botVersion!, "{botVersion}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "localeId", () => input.localeId!, "{localeId}", false); + resolvedPath = __resolvedPath( + resolvedPath, + input, + "botRecommendationId", + () => input.botRecommendationId!, + "{botRecommendationId}", + false + ); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "PUT", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1TagResourceCommand + */ +export const se_TagResourceCommand = async ( + input: TagResourceCommandInput, context: __SerdeContext ): Promise<__HttpRequest> => { const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); @@ -2617,6 +3089,37 @@ export const se_UpdateSlotTypeCommand = async ( }); }; +/** + * serializeAws_restJson1UpdateTestSetCommand + */ +export const se_UpdateTestSetCommand = async ( + input: UpdateTestSetCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/testsets/{testSetId}"; + resolvedPath = __resolvedPath(resolvedPath, input, "testSetId", () => input.testSetId!, "{testSetId}", false); + let body: any; + body = JSON.stringify( + take(input, { + description: [], + testSetName: [], + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "PUT", + headers, + path: resolvedPath, + body, + }); +}; + /** * deserializeAws_restJson1BatchCreateCustomVocabularyItemCommand */ @@ -3575,34 +4078,36 @@ const de_CreateSlotTypeCommandError = async ( }; /** - * deserializeAws_restJson1CreateUploadUrlCommand + * deserializeAws_restJson1CreateTestSetDiscrepancyReportCommand */ -export const de_CreateUploadUrlCommand = async ( +export const de_CreateTestSetDiscrepancyReportCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_CreateUploadUrlCommandError(output, context); +): Promise => { + if (output.statusCode !== 202 && output.statusCode >= 300) { + return de_CreateTestSetDiscrepancyReportCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - importId: __expectString, - uploadUrl: __expectString, + creationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + target: _json, + testSetDiscrepancyReportId: __expectString, + testSetId: __expectString, }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1CreateUploadUrlCommandError + * deserializeAws_restJson1CreateTestSetDiscrepancyReportCommandError */ -const de_CreateUploadUrlCommandError = async ( +const de_CreateTestSetDiscrepancyReportCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -3618,6 +4123,9 @@ const de_CreateUploadUrlCommandError = async ( case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); @@ -3635,29 +4143,89 @@ const de_CreateUploadUrlCommandError = async ( }; /** - * deserializeAws_restJson1DeleteBotCommand + * deserializeAws_restJson1CreateUploadUrlCommand */ -export const de_DeleteBotCommand = async ( +export const de_CreateUploadUrlCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { - if (output.statusCode !== 202 && output.statusCode >= 300) { - return de_DeleteBotCommandError(output, context); +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CreateUploadUrlCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - botId: __expectString, - botStatus: __expectString, + importId: __expectString, + uploadUrl: __expectString, }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1DeleteBotCommandError + * deserializeAws_restJson1CreateUploadUrlCommandError + */ +const de_CreateUploadUrlCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ConflictException": + case "com.amazonaws.lexmodelsv2#ConflictException": + throw await de_ConflictExceptionRes(parsedOutput, context); + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1DeleteBotCommand + */ +export const de_DeleteBotCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 202 && output.statusCode >= 300) { + return de_DeleteBotCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + botId: __expectString, + botStatus: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1DeleteBotCommandError */ const de_DeleteBotCommandError = async ( output: __HttpResponse, @@ -4363,6 +4931,64 @@ const de_DeleteSlotTypeCommandError = async ( } }; +/** + * deserializeAws_restJson1DeleteTestSetCommand + */ +export const de_DeleteTestSetCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 204 && output.statusCode >= 300) { + return de_DeleteTestSetCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserializeAws_restJson1DeleteTestSetCommandError + */ +const de_DeleteTestSetCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ConflictException": + case "com.amazonaws.lexmodelsv2#ConflictException": + throw await de_ConflictExceptionRes(parsedOutput, context); + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "PreconditionFailedException": + case "com.amazonaws.lexmodelsv2#PreconditionFailedException": + throw await de_PreconditionFailedExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + /** * deserializeAws_restJson1DeleteUtterancesCommand */ @@ -5231,42 +5857,42 @@ const de_DescribeSlotTypeCommandError = async ( }; /** - * deserializeAws_restJson1ListAggregatedUtterancesCommand + * deserializeAws_restJson1DescribeTestExecutionCommand */ -export const de_ListAggregatedUtterancesCommand = async ( +export const de_DescribeTestExecutionCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListAggregatedUtterancesCommandError(output, context); + return de_DescribeTestExecutionCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - aggregatedUtterancesSummaries: (_) => de_AggregatedUtterancesSummaryList(_, context), - aggregationDuration: _json, - aggregationLastRefreshedDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), - aggregationWindowEndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), - aggregationWindowStartTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), - botAliasId: __expectString, - botId: __expectString, - botVersion: __expectString, - localeId: __expectString, - nextToken: __expectString, + apiMode: __expectString, + creationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + failureReasons: _json, + lastUpdatedDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + target: _json, + testExecutionId: __expectString, + testExecutionModality: __expectString, + testExecutionStatus: __expectString, + testSetId: __expectString, + testSetName: __expectString, }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListAggregatedUtterancesCommandError + * deserializeAws_restJson1DescribeTestExecutionCommandError */ -const de_ListAggregatedUtterancesCommandError = async ( +const de_DescribeTestExecutionCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5276,9 +5902,12 @@ const de_ListAggregatedUtterancesCommandError = async ( case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); - case "PreconditionFailedException": - case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - throw await de_PreconditionFailedExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); @@ -5296,35 +5925,42 @@ const de_ListAggregatedUtterancesCommandError = async ( }; /** - * deserializeAws_restJson1ListBotAliasesCommand + * deserializeAws_restJson1DescribeTestSetCommand */ -export const de_ListBotAliasesCommand = async ( +export const de_DescribeTestSetCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBotAliasesCommandError(output, context); + return de_DescribeTestSetCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - botAliasSummaries: (_) => de_BotAliasSummaryList(_, context), - botId: __expectString, - nextToken: __expectString, + creationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + description: __expectString, + lastUpdatedDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + modality: __expectString, + numTurns: __expectInt32, + roleArn: __expectString, + status: __expectString, + storageLocation: _json, + testSetId: __expectString, + testSetName: __expectString, }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListBotAliasesCommandError + * deserializeAws_restJson1DescribeTestSetCommandError */ -const de_ListBotAliasesCommandError = async ( +const de_DescribeTestSetCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5334,6 +5970,9 @@ const de_ListBotAliasesCommandError = async ( case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); @@ -5354,36 +5993,41 @@ const de_ListBotAliasesCommandError = async ( }; /** - * deserializeAws_restJson1ListBotLocalesCommand + * deserializeAws_restJson1DescribeTestSetDiscrepancyReportCommand */ -export const de_ListBotLocalesCommand = async ( +export const de_DescribeTestSetDiscrepancyReportCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBotLocalesCommandError(output, context); + return de_DescribeTestSetDiscrepancyReportCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - botId: __expectString, - botLocaleSummaries: (_) => de_BotLocaleSummaryList(_, context), - botVersion: __expectString, - nextToken: __expectString, + creationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + failureReasons: _json, + lastUpdatedDataTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + target: _json, + testSetDiscrepancyRawOutputUrl: __expectString, + testSetDiscrepancyReportId: __expectString, + testSetDiscrepancyReportStatus: __expectString, + testSetDiscrepancyTopErrors: _json, + testSetId: __expectString, }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListBotLocalesCommandError + * deserializeAws_restJson1DescribeTestSetDiscrepancyReportCommandError */ -const de_ListBotLocalesCommandError = async ( +const de_DescribeTestSetDiscrepancyReportCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5393,6 +6037,9 @@ const de_ListBotLocalesCommandError = async ( case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); @@ -5413,37 +6060,43 @@ const de_ListBotLocalesCommandError = async ( }; /** - * deserializeAws_restJson1ListBotRecommendationsCommand + * deserializeAws_restJson1DescribeTestSetGenerationCommand */ -export const de_ListBotRecommendationsCommand = async ( +export const de_DescribeTestSetGenerationCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBotRecommendationsCommandError(output, context); + return de_DescribeTestSetGenerationCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - botId: __expectString, - botRecommendationSummaries: (_) => de_BotRecommendationSummaryList(_, context), - botVersion: __expectString, - localeId: __expectString, - nextToken: __expectString, + creationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + description: __expectString, + failureReasons: _json, + generationDataSource: (_) => de_TestSetGenerationDataSource(_, context), + lastUpdatedDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + roleArn: __expectString, + storageLocation: _json, + testSetGenerationId: __expectString, + testSetGenerationStatus: __expectString, + testSetId: __expectString, + testSetName: __expectString, }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListBotRecommendationsCommandError + * deserializeAws_restJson1DescribeTestSetGenerationCommandError */ -const de_ListBotRecommendationsCommandError = async ( +const de_DescribeTestSetGenerationCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5456,6 +6109,9 @@ const de_ListBotRecommendationsCommandError = async ( case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); @@ -5473,34 +6129,34 @@ const de_ListBotRecommendationsCommandError = async ( }; /** - * deserializeAws_restJson1ListBotsCommand + * deserializeAws_restJson1GetTestExecutionArtifactsUrlCommand */ -export const de_ListBotsCommand = async ( +export const de_GetTestExecutionArtifactsUrlCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBotsCommandError(output, context); + return de_GetTestExecutionArtifactsUrlCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - botSummaries: (_) => de_BotSummaryList(_, context), - nextToken: __expectString, + downloadArtifactsUrl: __expectString, + testExecutionId: __expectString, }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListBotsCommandError + * deserializeAws_restJson1GetTestExecutionArtifactsUrlCommandError */ -const de_ListBotsCommandError = async ( +const de_GetTestExecutionArtifactsUrlCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5510,6 +6166,9 @@ const de_ListBotsCommandError = async ( case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); @@ -5530,22 +6189,29 @@ const de_ListBotsCommandError = async ( }; /** - * deserializeAws_restJson1ListBotVersionsCommand + * deserializeAws_restJson1ListAggregatedUtterancesCommand */ -export const de_ListBotVersionsCommand = async ( +export const de_ListAggregatedUtterancesCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBotVersionsCommandError(output, context); + return de_ListAggregatedUtterancesCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { + aggregatedUtterancesSummaries: (_) => de_AggregatedUtterancesSummaryList(_, context), + aggregationDuration: _json, + aggregationLastRefreshedDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + aggregationWindowEndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + aggregationWindowStartTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + botAliasId: __expectString, botId: __expectString, - botVersionSummaries: (_) => de_BotVersionSummaryList(_, context), + botVersion: __expectString, + localeId: __expectString, nextToken: __expectString, }); Object.assign(contents, doc); @@ -5553,12 +6219,12 @@ export const de_ListBotVersionsCommand = async ( }; /** - * deserializeAws_restJson1ListBotVersionsCommandError + * deserializeAws_restJson1ListAggregatedUtterancesCommandError */ -const de_ListBotVersionsCommandError = async ( +const de_ListAggregatedUtterancesCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5568,9 +6234,9 @@ const de_ListBotVersionsCommandError = async ( case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); - case "ServiceQuotaExceededException": - case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "PreconditionFailedException": + case "com.amazonaws.lexmodelsv2#PreconditionFailedException": + throw await de_PreconditionFailedExceptionRes(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); @@ -5588,22 +6254,22 @@ const de_ListBotVersionsCommandError = async ( }; /** - * deserializeAws_restJson1ListBuiltInIntentsCommand + * deserializeAws_restJson1ListBotAliasesCommand */ -export const de_ListBuiltInIntentsCommand = async ( +export const de_ListBotAliasesCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBuiltInIntentsCommandError(output, context); + return de_ListBotAliasesCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - builtInIntentSummaries: _json, - localeId: __expectString, + botAliasSummaries: (_) => de_BotAliasSummaryList(_, context), + botId: __expectString, nextToken: __expectString, }); Object.assign(contents, doc); @@ -5611,12 +6277,12 @@ export const de_ListBuiltInIntentsCommand = async ( }; /** - * deserializeAws_restJson1ListBuiltInIntentsCommandError + * deserializeAws_restJson1ListBotAliasesCommandError */ -const de_ListBuiltInIntentsCommandError = async ( +const de_ListBotAliasesCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5646,21 +6312,493 @@ const de_ListBuiltInIntentsCommandError = async ( }; /** - * deserializeAws_restJson1ListBuiltInSlotTypesCommand + * deserializeAws_restJson1ListBotLocalesCommand */ -export const de_ListBuiltInSlotTypesCommand = async ( +export const de_ListBotLocalesCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListBotLocalesCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + botId: __expectString, + botLocaleSummaries: (_) => de_BotLocaleSummaryList(_, context), + botVersion: __expectString, + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListBotLocalesCommandError + */ +const de_ListBotLocalesCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListBotRecommendationsCommand + */ +export const de_ListBotRecommendationsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListBotRecommendationsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + botId: __expectString, + botRecommendationSummaries: (_) => de_BotRecommendationSummaryList(_, context), + botVersion: __expectString, + localeId: __expectString, + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListBotRecommendationsCommandError + */ +const de_ListBotRecommendationsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListBotsCommand + */ +export const de_ListBotsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListBotsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + botSummaries: (_) => de_BotSummaryList(_, context), + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListBotsCommandError + */ +const de_ListBotsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListBotVersionsCommand + */ +export const de_ListBotVersionsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListBotVersionsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + botId: __expectString, + botVersionSummaries: (_) => de_BotVersionSummaryList(_, context), + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListBotVersionsCommandError + */ +const de_ListBotVersionsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListBuiltInIntentsCommand + */ +export const de_ListBuiltInIntentsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListBuiltInIntentsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + builtInIntentSummaries: _json, + localeId: __expectString, + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListBuiltInIntentsCommandError + */ +const de_ListBuiltInIntentsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListBuiltInSlotTypesCommand + */ +export const de_ListBuiltInSlotTypesCommand = async ( output: __HttpResponse, context: __SerdeContext ): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListBuiltInSlotTypesCommandError(output, context); + return de_ListBuiltInSlotTypesCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + builtInSlotTypeSummaries: _json, + localeId: __expectString, + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListBuiltInSlotTypesCommandError + */ +const de_ListBuiltInSlotTypesCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListCustomVocabularyItemsCommand + */ +export const de_ListCustomVocabularyItemsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListCustomVocabularyItemsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + botId: __expectString, + botVersion: __expectString, + customVocabularyItems: _json, + localeId: __expectString, + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListCustomVocabularyItemsCommandError + */ +const de_ListCustomVocabularyItemsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListExportsCommand + */ +export const de_ListExportsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListExportsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + botId: __expectString, + botVersion: __expectString, + exportSummaries: (_) => de_ExportSummaryList(_, context), + localeId: __expectString, + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListExportsCommandError + */ +const de_ListExportsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListImportsCommand + */ +export const de_ListImportsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListImportsCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - builtInSlotTypeSummaries: _json, + botId: __expectString, + botVersion: __expectString, + importSummaries: (_) => de_ImportSummaryList(_, context), localeId: __expectString, nextToken: __expectString, }); @@ -5669,12 +6807,69 @@ export const de_ListBuiltInSlotTypesCommand = async ( }; /** - * deserializeAws_restJson1ListBuiltInSlotTypesCommandError + * deserializeAws_restJson1ListImportsCommandError */ -const de_ListBuiltInSlotTypesCommandError = async ( +const de_ListImportsCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListIntentsCommand + */ +export const de_ListIntentsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListIntentsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + botId: __expectString, + botVersion: __expectString, + intentSummaries: (_) => de_IntentSummaryList(_, context), + localeId: __expectString, + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListIntentsCommandError + */ +const de_ListIntentsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5704,14 +6899,14 @@ const de_ListBuiltInSlotTypesCommandError = async ( }; /** - * deserializeAws_restJson1ListCustomVocabularyItemsCommand + * deserializeAws_restJson1ListRecommendedIntentsCommand */ -export const de_ListCustomVocabularyItemsCommand = async ( +export const de_ListRecommendedIntentsCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListCustomVocabularyItemsCommandError(output, context); + return de_ListRecommendedIntentsCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), @@ -5719,22 +6914,23 @@ export const de_ListCustomVocabularyItemsCommand = async ( const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { botId: __expectString, + botRecommendationId: __expectString, botVersion: __expectString, - customVocabularyItems: _json, localeId: __expectString, nextToken: __expectString, + summaryList: _json, }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListCustomVocabularyItemsCommandError + * deserializeAws_restJson1ListRecommendedIntentsCommandError */ -const de_ListCustomVocabularyItemsCommandError = async ( +const de_ListRecommendedIntentsCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5767,14 +6963,14 @@ const de_ListCustomVocabularyItemsCommandError = async ( }; /** - * deserializeAws_restJson1ListExportsCommand + * deserializeAws_restJson1ListSlotsCommand */ -export const de_ListExportsCommand = async ( +export const de_ListSlotsCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListExportsCommandError(output, context); + return de_ListSlotsCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), @@ -5783,21 +6979,22 @@ export const de_ListExportsCommand = async ( const doc = take(data, { botId: __expectString, botVersion: __expectString, - exportSummaries: (_) => de_ExportSummaryList(_, context), + intentId: __expectString, localeId: __expectString, nextToken: __expectString, + slotSummaries: (_) => de_SlotSummaryList(_, context), }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListExportsCommandError + * deserializeAws_restJson1ListSlotsCommandError */ -const de_ListExportsCommandError = async ( +const de_ListSlotsCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5807,6 +7004,9 @@ const de_ListExportsCommandError = async ( case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); @@ -5824,14 +7024,14 @@ const de_ListExportsCommandError = async ( }; /** - * deserializeAws_restJson1ListImportsCommand + * deserializeAws_restJson1ListSlotTypesCommand */ -export const de_ListImportsCommand = async ( +export const de_ListSlotTypesCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListImportsCommandError(output, context); + return de_ListSlotTypesCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), @@ -5840,21 +7040,134 @@ export const de_ListImportsCommand = async ( const doc = take(data, { botId: __expectString, botVersion: __expectString, - importSummaries: (_) => de_ImportSummaryList(_, context), localeId: __expectString, nextToken: __expectString, + slotTypeSummaries: (_) => de_SlotTypeSummaryList(_, context), }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListImportsCommandError + * deserializeAws_restJson1ListSlotTypesCommandError */ -const de_ListImportsCommandError = async ( +const de_ListSlotTypesCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListTagsForResourceCommand + */ +export const de_ListTagsForResourceCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListTagsForResourceCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + tags: _json, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListTagsForResourceCommandError + */ +const de_ListTagsForResourceCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListTestExecutionResultItemsCommand + */ +export const de_ListTestExecutionResultItemsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListTestExecutionResultItemsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + nextToken: __expectString, + testExecutionResults: (_) => de_TestExecutionResultItems(_, context), + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListTestExecutionResultItemsCommandError + */ +const de_ListTestExecutionResultItemsCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5864,6 +7177,12 @@ const de_ListImportsCommandError = async ( case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); @@ -5881,37 +7200,34 @@ const de_ListImportsCommandError = async ( }; /** - * deserializeAws_restJson1ListIntentsCommand + * deserializeAws_restJson1ListTestExecutionsCommand */ -export const de_ListIntentsCommand = async ( +export const de_ListTestExecutionsCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListIntentsCommandError(output, context); + return de_ListTestExecutionsCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - botId: __expectString, - botVersion: __expectString, - intentSummaries: (_) => de_IntentSummaryList(_, context), - localeId: __expectString, nextToken: __expectString, + testExecutions: (_) => de_TestExecutionSummaryList(_, context), }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListIntentsCommandError + * deserializeAws_restJson1ListTestExecutionsCommandError */ -const de_ListIntentsCommandError = async ( +const de_ListTestExecutionsCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -5941,38 +7257,34 @@ const de_ListIntentsCommandError = async ( }; /** - * deserializeAws_restJson1ListRecommendedIntentsCommand + * deserializeAws_restJson1ListTestSetRecordsCommand */ -export const de_ListRecommendedIntentsCommand = async ( +export const de_ListTestSetRecordsCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListRecommendedIntentsCommandError(output, context); + return de_ListTestSetRecordsCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - botId: __expectString, - botRecommendationId: __expectString, - botVersion: __expectString, - localeId: __expectString, nextToken: __expectString, - summaryList: _json, + testSetRecords: (_) => de_TestSetTurnRecordList(_, context), }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListRecommendedIntentsCommandError + * deserializeAws_restJson1ListTestSetRecordsCommandError */ -const de_ListRecommendedIntentsCommandError = async ( +const de_ListTestSetRecordsCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -6005,38 +7317,34 @@ const de_ListRecommendedIntentsCommandError = async ( }; /** - * deserializeAws_restJson1ListSlotsCommand + * deserializeAws_restJson1ListTestSetsCommand */ -export const de_ListSlotsCommand = async ( +export const de_ListTestSetsCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListSlotsCommandError(output, context); + return de_ListTestSetsCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - botId: __expectString, - botVersion: __expectString, - intentId: __expectString, - localeId: __expectString, nextToken: __expectString, - slotSummaries: (_) => de_SlotSummaryList(_, context), + testSets: (_) => de_TestSetSummaryList(_, context), }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListSlotsCommandError + * deserializeAws_restJson1ListTestSetsCommandError */ -const de_ListSlotsCommandError = async ( +const de_ListTestSetsCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -6066,37 +7374,39 @@ const de_ListSlotsCommandError = async ( }; /** - * deserializeAws_restJson1ListSlotTypesCommand + * deserializeAws_restJson1SearchAssociatedTranscriptsCommand */ -export const de_ListSlotTypesCommand = async ( +export const de_SearchAssociatedTranscriptsCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListSlotTypesCommandError(output, context); + return de_SearchAssociatedTranscriptsCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { + associatedTranscripts: _json, botId: __expectString, + botRecommendationId: __expectString, botVersion: __expectString, localeId: __expectString, - nextToken: __expectString, - slotTypeSummaries: (_) => de_SlotTypeSummaryList(_, context), + nextIndex: __expectInt32, + totalResults: __expectInt32, }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListSlotTypesCommandError + * deserializeAws_restJson1SearchAssociatedTranscriptsCommandError */ -const de_ListSlotTypesCommandError = async ( +const de_SearchAssociatedTranscriptsCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -6106,6 +7416,9 @@ const de_ListSlotTypesCommandError = async ( case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); @@ -6126,45 +7439,61 @@ const de_ListSlotTypesCommandError = async ( }; /** - * deserializeAws_restJson1ListTagsForResourceCommand + * deserializeAws_restJson1StartBotRecommendationCommand */ -export const de_ListTagsForResourceCommand = async ( +export const de_StartBotRecommendationCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_ListTagsForResourceCommandError(output, context); +): Promise => { + if (output.statusCode !== 202 && output.statusCode >= 300) { + return de_StartBotRecommendationCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - tags: _json, + botId: __expectString, + botRecommendationId: __expectString, + botRecommendationStatus: __expectString, + botVersion: __expectString, + creationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + encryptionSetting: _json, + localeId: __expectString, + transcriptSourceSetting: (_) => de_TranscriptSourceSetting(_, context), }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1ListTagsForResourceCommandError + * deserializeAws_restJson1StartBotRecommendationCommandError */ -const de_ListTagsForResourceCommandError = async ( +const de_StartBotRecommendationCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), }; const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { + case "ConflictException": + case "com.amazonaws.lexmodelsv2#ConflictException": + throw await de_ConflictExceptionRes(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); + case "PreconditionFailedException": + case "com.amazonaws.lexmodelsv2#PreconditionFailedException": + throw await de_PreconditionFailedExceptionRes(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); @@ -6182,45 +7511,46 @@ const de_ListTagsForResourceCommandError = async ( }; /** - * deserializeAws_restJson1SearchAssociatedTranscriptsCommand + * deserializeAws_restJson1StartImportCommand */ -export const de_SearchAssociatedTranscriptsCommand = async ( +export const de_StartImportCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { - if (output.statusCode !== 200 && output.statusCode >= 300) { - return de_SearchAssociatedTranscriptsCommandError(output, context); +): Promise => { + if (output.statusCode !== 202 && output.statusCode >= 300) { + return de_StartImportCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - associatedTranscripts: _json, - botId: __expectString, - botRecommendationId: __expectString, - botVersion: __expectString, - localeId: __expectString, - nextIndex: __expectInt32, - totalResults: __expectInt32, + creationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + importId: __expectString, + importStatus: __expectString, + mergeStrategy: __expectString, + resourceSpecification: (_) => de_ImportResourceSpecification(_, context), }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1SearchAssociatedTranscriptsCommandError + * deserializeAws_restJson1StartImportCommandError */ -const de_SearchAssociatedTranscriptsCommandError = async ( +const de_StartImportCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), }; const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { + case "ConflictException": + case "com.amazonaws.lexmodelsv2#ConflictException": + throw await de_ConflictExceptionRes(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); @@ -6247,40 +7577,38 @@ const de_SearchAssociatedTranscriptsCommandError = async ( }; /** - * deserializeAws_restJson1StartBotRecommendationCommand + * deserializeAws_restJson1StartTestExecutionCommand */ -export const de_StartBotRecommendationCommand = async ( +export const de_StartTestExecutionCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 202 && output.statusCode >= 300) { - return de_StartBotRecommendationCommandError(output, context); + return de_StartTestExecutionCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - botId: __expectString, - botRecommendationId: __expectString, - botRecommendationStatus: __expectString, - botVersion: __expectString, + apiMode: __expectString, creationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), - encryptionSetting: _json, - localeId: __expectString, - transcriptSourceSetting: (_) => de_TranscriptSourceSetting(_, context), + target: _json, + testExecutionId: __expectString, + testExecutionModality: __expectString, + testSetId: __expectString, }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1StartBotRecommendationCommandError + * deserializeAws_restJson1StartTestExecutionCommandError */ -const de_StartBotRecommendationCommandError = async ( +const de_StartTestExecutionCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -6293,9 +7621,6 @@ const de_StartBotRecommendationCommandError = async ( case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); - case "PreconditionFailedException": - case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - throw await de_PreconditionFailedExceptionRes(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); @@ -6319,14 +7644,14 @@ const de_StartBotRecommendationCommandError = async ( }; /** - * deserializeAws_restJson1StartImportCommand + * deserializeAws_restJson1StartTestSetGenerationCommand */ -export const de_StartImportCommand = async ( +export const de_StartTestSetGenerationCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 202 && output.statusCode >= 300) { - return de_StartImportCommandError(output, context); + return de_StartTestSetGenerationCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), @@ -6334,22 +7659,26 @@ export const de_StartImportCommand = async ( const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { creationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), - importId: __expectString, - importStatus: __expectString, - mergeStrategy: __expectString, - resourceSpecification: (_) => de_ImportResourceSpecification(_, context), + description: __expectString, + generationDataSource: (_) => de_TestSetGenerationDataSource(_, context), + roleArn: __expectString, + storageLocation: _json, + testSetGenerationId: __expectString, + testSetGenerationStatus: __expectString, + testSetName: __expectString, + testSetTags: _json, }); Object.assign(contents, doc); return contents; }; /** - * deserializeAws_restJson1StartImportCommandError + * deserializeAws_restJson1StartTestSetGenerationCommandError */ -const de_StartImportCommandError = async ( +const de_StartTestSetGenerationCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -7206,6 +8535,77 @@ const de_UpdateSlotTypeCommandError = async ( } }; +/** + * deserializeAws_restJson1UpdateTestSetCommand + */ +export const de_UpdateTestSetCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_UpdateTestSetCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + creationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + description: __expectString, + lastUpdatedDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + modality: __expectString, + numTurns: __expectInt32, + roleArn: __expectString, + status: __expectString, + storageLocation: _json, + testSetId: __expectString, + testSetName: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1UpdateTestSetCommandError + */ +const de_UpdateTestSetCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "ConflictException": + case "com.amazonaws.lexmodelsv2#ConflictException": + throw await de_ConflictExceptionRes(parsedOutput, context); + case "InternalServerException": + case "com.amazonaws.lexmodelsv2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "PreconditionFailedException": + case "com.amazonaws.lexmodelsv2#PreconditionFailedException": + throw await de_PreconditionFailedExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.lexmodelsv2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.lexmodelsv2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + const throwDefaultError = withBaseException(__BaseException); /** * deserializeAws_restJson1ConflictExceptionRes @@ -7371,6 +8771,8 @@ const de_ValidationExceptionRes = async (parsedOutput: any, context: __SerdeCont // se_BotAliasLocaleSettingsMap omitted. +// se_BotAliasTestExecutionTarget omitted. + // se_BotExportSpecification omitted. // se_BotFilter omitted. @@ -7466,6 +8868,34 @@ const se_ConditionalSpecification = (input: ConditionalSpecification, context: _ // se_ConditionMap omitted. +// se_ConversationLevelTestResultsFilterBy omitted. + +/** + * serializeAws_restJson1ConversationLogsDataSource + */ +const se_ConversationLogsDataSource = (input: ConversationLogsDataSource, context: __SerdeContext): any => { + return take(input, { + botAliasId: [], + botId: [], + filter: (_) => se_ConversationLogsDataSourceFilterBy(_, context), + localeId: [], + }); +}; + +/** + * serializeAws_restJson1ConversationLogsDataSourceFilterBy + */ +const se_ConversationLogsDataSourceFilterBy = ( + input: ConversationLogsDataSourceFilterBy, + context: __SerdeContext +): any => { + return take(input, { + endTime: (_) => Math.round(_.getTime() / 1000), + inputMode: [], + startTime: (_) => Math.round(_.getTime() / 1000), + }); +}; + // se_ConversationLogSettings omitted. // se_CreateCustomVocabularyItemsList omitted. @@ -7585,6 +9015,7 @@ const se_ImportResourceSpecification = (input: ImportResourceSpecification, cont botImportSpecification: _json, botLocaleImportSpecification: (_) => se_BotLocaleImportSpecification(_, context), customVocabularyImportSpecification: _json, + testSetImportResourceSpecification: _json, }); }; @@ -7907,15 +9338,44 @@ const se_SubSlotSpecificationMap = (input: Record, conte }, {}); }; -// se_SubSlotTypeComposition omitted. - -// se_SubSlotTypeList omitted. +// se_SubSlotTypeComposition omitted. + +// se_SubSlotTypeList omitted. + +// se_SubSlotValueElicitationSetting omitted. + +// se_SynonymList omitted. + +// se_TagMap omitted. + +// se_TestExecutionResultFilterBy omitted. + +// se_TestExecutionSortBy omitted. + +// se_TestExecutionTarget omitted. + +// se_TestSetDiscrepancyReportBotAliasTarget omitted. + +// se_TestSetDiscrepancyReportResourceTarget omitted. + +// se_TestSetExportSpecification omitted. + +/** + * serializeAws_restJson1TestSetGenerationDataSource + */ +const se_TestSetGenerationDataSource = (input: TestSetGenerationDataSource, context: __SerdeContext): any => { + return take(input, { + conversationLogsDataSource: (_) => se_ConversationLogsDataSource(_, context), + }); +}; + +// se_TestSetImportInputLocation omitted. -// se_SubSlotValueElicitationSetting omitted. +// se_TestSetImportResourceSpecification omitted. -// se_SynonymList omitted. +// se_TestSetSortBy omitted. -// se_TagMap omitted. +// se_TestSetStorageLocation omitted. // se_TextInputSpecification omitted. @@ -7951,8 +9411,16 @@ const se_TranscriptSourceSetting = (input: TranscriptSourceSetting, context: __S // se_WaitAndContinueSpecification omitted. +// de_ActiveContext omitted. + +// de_ActiveContextList omitted. + // de_AdvancedRecognitionSetting omitted. +// de_AgentTurnResult omitted. + +// de_AgentTurnSpecification omitted. + /** * deserializeAws_restJson1AggregatedUtterancesSummary */ @@ -8049,6 +9517,8 @@ const de_BotAliasSummaryList = (output: any, context: __SerdeContext): BotAliasS return retVal; }; +// de_BotAliasTestExecutionTarget omitted. + // de_BotExportSpecification omitted. // de_BotImportSpecification omitted. @@ -8259,6 +9729,48 @@ const de_ConditionalSpecification = (output: any, context: __SerdeContext): Cond }) as any; }; +// de_ConversationLevelIntentClassificationResultItem omitted. + +// de_ConversationLevelIntentClassificationResults omitted. + +// de_ConversationLevelResultDetail omitted. + +// de_ConversationLevelSlotResolutionResultItem omitted. + +// de_ConversationLevelSlotResolutionResults omitted. + +// de_ConversationLevelTestResultItem omitted. + +// de_ConversationLevelTestResultItemList omitted. + +// de_ConversationLevelTestResults omitted. + +/** + * deserializeAws_restJson1ConversationLogsDataSource + */ +const de_ConversationLogsDataSource = (output: any, context: __SerdeContext): ConversationLogsDataSource => { + return take(output, { + botAliasId: __expectString, + botId: __expectString, + filter: (_: any) => de_ConversationLogsDataSourceFilterBy(_, context), + localeId: __expectString, + }) as any; +}; + +/** + * deserializeAws_restJson1ConversationLogsDataSourceFilterBy + */ +const de_ConversationLogsDataSourceFilterBy = ( + output: any, + context: __SerdeContext +): ConversationLogsDataSourceFilterBy => { + return take(output, { + endTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + inputMode: __expectString, + startTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + }) as any; +}; + // de_ConversationLogSettings omitted. // de_CustomPayload omitted. @@ -8326,6 +9838,8 @@ const de_DialogState = (output: any, context: __SerdeContext): DialogState => { // de_EncryptionSetting omitted. +// de_ExecutionErrorDetails omitted. + // de_ExportResourceSpecification omitted. /** @@ -8394,6 +9908,7 @@ const de_ImportResourceSpecification = (output: any, context: __SerdeContext): I botImportSpecification: _json, botLocaleImportSpecification: (_: any) => de_BotLocaleImportSpecification(_, context), customVocabularyImportSpecification: _json, + testSetImportResourceSpecification: _json, }) as any; }; @@ -8441,6 +9956,25 @@ const de_InitialResponseSetting = (output: any, context: __SerdeContext): Initia // de_InputContextsList omitted. +/** + * deserializeAws_restJson1InputSessionStateSpecification + */ +const de_InputSessionStateSpecification = (output: any, context: __SerdeContext): InputSessionStateSpecification => { + return take(output, { + activeContexts: _json, + runtimeHints: (_: any) => de_RuntimeHints(_, context), + sessionAttributes: _json, + }) as any; +}; + +// de_IntentClassificationTestResultItem omitted. + +// de_IntentClassificationTestResultItemCounts omitted. + +// de_IntentClassificationTestResultItemList omitted. + +// de_IntentClassificationTestResults omitted. + /** * deserializeAws_restJson1IntentClosingSetting */ @@ -8474,6 +10008,12 @@ const de_IntentConfirmationSetting = (output: any, context: __SerdeContext): Int }) as any; }; +// de_IntentLevelSlotResolutionTestResultItem omitted. + +// de_IntentLevelSlotResolutionTestResultItemList omitted. + +// de_IntentLevelSlotResolutionTestResults omitted. + /** * deserializeAws_restJson1IntentOverride */ @@ -8544,6 +10084,12 @@ const de_LexTranscriptFilter = (output: any, context: __SerdeContext): LexTransc // de_OutputContextsList omitted. +// de_OverallTestResultItem omitted. + +// de_OverallTestResultItemList omitted. + +// de_OverallTestResults omitted. + // de_ParentBotNetwork omitted. // de_ParentBotNetworks omitted. @@ -8608,6 +10154,29 @@ const de_PostFulfillmentStatusSpecification = ( // de_ResponseSpecification omitted. +/** + * deserializeAws_restJson1RuntimeHintDetails + */ +const de_RuntimeHintDetails = (output: any, context: __SerdeContext): RuntimeHintDetails => { + return take(output, { + runtimeHintValues: _json, + subSlotHints: (_: any) => de_SlotHintsSlotMap(_, context), + }) as any; +}; + +/** + * deserializeAws_restJson1RuntimeHints + */ +const de_RuntimeHints = (output: any, context: __SerdeContext): RuntimeHints => { + return take(output, { + slotHints: (_: any) => de_SlotHintsIntentMap(_, context), + }) as any; +}; + +// de_RuntimeHintValue omitted. + +// de_RuntimeHintValuesList omitted. + // de_S3BucketLogDestination omitted. /** @@ -8653,10 +10222,48 @@ const de_SlotCaptureSetting = (output: any, context: __SerdeContext): SlotCaptur // de_SlotDefaultValueSpecification omitted. +/** + * deserializeAws_restJson1SlotHintsIntentMap + */ +const de_SlotHintsIntentMap = ( + output: any, + context: __SerdeContext +): Record> => { + return Object.entries(output).reduce( + (acc: Record>, [key, value]: [string, any]) => { + if (value === null) { + return acc; + } + acc[key] = de_SlotHintsSlotMap(value, context); + return acc; + }, + {} + ); +}; + +/** + * deserializeAws_restJson1SlotHintsSlotMap + */ +const de_SlotHintsSlotMap = (output: any, context: __SerdeContext): Record => { + return Object.entries(output).reduce((acc: Record, [key, value]: [string, any]) => { + if (value === null) { + return acc; + } + acc[key] = de_RuntimeHintDetails(value, context); + return acc; + }, {}); +}; + // de_SlotPrioritiesList omitted. // de_SlotPriority omitted. +// de_SlotResolutionTestResultItem omitted. + +// de_SlotResolutionTestResultItemCounts omitted. + +// de_SlotResolutionTestResultItems omitted. + /** * deserializeAws_restJson1SlotSummary */ @@ -8821,6 +10428,147 @@ const de_SubSlotSpecificationMap = (output: any, context: __SerdeContext): Recor // de_TagMap omitted. +/** + * deserializeAws_restJson1TestExecutionResultItems + */ +const de_TestExecutionResultItems = (output: any, context: __SerdeContext): TestExecutionResultItems => { + return take(output, { + conversationLevelTestResults: _json, + intentClassificationTestResults: _json, + intentLevelSlotResolutionTestResults: _json, + overallTestResults: _json, + utteranceLevelTestResults: (_: any) => de_UtteranceLevelTestResults(_, context), + }) as any; +}; + +/** + * deserializeAws_restJson1TestExecutionSummary + */ +const de_TestExecutionSummary = (output: any, context: __SerdeContext): TestExecutionSummary => { + return take(output, { + apiMode: __expectString, + creationDateTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + lastUpdatedDateTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + target: _json, + testExecutionId: __expectString, + testExecutionModality: __expectString, + testExecutionStatus: __expectString, + testSetId: __expectString, + testSetName: __expectString, + }) as any; +}; + +/** + * deserializeAws_restJson1TestExecutionSummaryList + */ +const de_TestExecutionSummaryList = (output: any, context: __SerdeContext): TestExecutionSummary[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_TestExecutionSummary(entry, context); + }); + return retVal; +}; + +// de_TestExecutionTarget omitted. + +// de_TestResultMatchStatusCountMap omitted. + +// de_TestSetDiscrepancyErrors omitted. + +// de_TestSetDiscrepancyReportBotAliasTarget omitted. + +// de_TestSetDiscrepancyReportResourceTarget omitted. + +// de_TestSetExportSpecification omitted. + +/** + * deserializeAws_restJson1TestSetGenerationDataSource + */ +const de_TestSetGenerationDataSource = (output: any, context: __SerdeContext): TestSetGenerationDataSource => { + return take(output, { + conversationLogsDataSource: (_: any) => de_ConversationLogsDataSource(_, context), + }) as any; +}; + +// de_TestSetImportInputLocation omitted. + +// de_TestSetImportResourceSpecification omitted. + +// de_TestSetIntentDiscrepancyItem omitted. + +// de_TestSetIntentDiscrepancyList omitted. + +// de_TestSetSlotDiscrepancyItem omitted. + +// de_TestSetSlotDiscrepancyList omitted. + +// de_TestSetStorageLocation omitted. + +/** + * deserializeAws_restJson1TestSetSummary + */ +const de_TestSetSummary = (output: any, context: __SerdeContext): TestSetSummary => { + return take(output, { + creationDateTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + description: __expectString, + lastUpdatedDateTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + modality: __expectString, + numTurns: __expectInt32, + roleArn: __expectString, + status: __expectString, + storageLocation: _json, + testSetId: __expectString, + testSetName: __expectString, + }) as any; +}; + +/** + * deserializeAws_restJson1TestSetSummaryList + */ +const de_TestSetSummaryList = (output: any, context: __SerdeContext): TestSetSummary[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_TestSetSummary(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_restJson1TestSetTurnRecord + */ +const de_TestSetTurnRecord = (output: any, context: __SerdeContext): TestSetTurnRecord => { + return take(output, { + conversationId: __expectString, + recordNumber: __expectLong, + turnNumber: __expectInt32, + turnSpecification: (_: any) => de_TurnSpecification(_, context), + }) as any; +}; + +/** + * deserializeAws_restJson1TestSetTurnRecordList + */ +const de_TestSetTurnRecordList = (output: any, context: __SerdeContext): TestSetTurnRecord[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_TestSetTurnRecord(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_restJson1TestSetTurnResult + */ +const de_TestSetTurnResult = (output: any, context: __SerdeContext): TestSetTurnResult => { + return take(output, { + agent: _json, + user: (_: any) => de_UserTurnResult(_, context), + }) as any; +}; + // de_TextInputSpecification omitted. // de_TextLogDestination omitted. @@ -8847,8 +10595,149 @@ const de_TranscriptSourceSetting = (output: any, context: __SerdeContext): Trans }) as any; }; +/** + * deserializeAws_restJson1TurnSpecification + */ +const de_TurnSpecification = (output: any, context: __SerdeContext): TurnSpecification => { + return take(output, { + agentTurn: _json, + userTurn: (_: any) => de_UserTurnSpecification(_, context), + }) as any; +}; + +/** + * deserializeAws_restJson1UserTurnInputSpecification + */ +const de_UserTurnInputSpecification = (output: any, context: __SerdeContext): UserTurnInputSpecification => { + return take(output, { + requestAttributes: _json, + sessionState: (_: any) => de_InputSessionStateSpecification(_, context), + utteranceInput: _json, + }) as any; +}; + +/** + * deserializeAws_restJson1UserTurnIntentOutput + */ +const de_UserTurnIntentOutput = (output: any, context: __SerdeContext): UserTurnIntentOutput => { + return take(output, { + name: __expectString, + slots: (_: any) => de_UserTurnSlotOutputMap(_, context), + }) as any; +}; + +/** + * deserializeAws_restJson1UserTurnOutputSpecification + */ +const de_UserTurnOutputSpecification = (output: any, context: __SerdeContext): UserTurnOutputSpecification => { + return take(output, { + activeContexts: _json, + intent: (_: any) => de_UserTurnIntentOutput(_, context), + transcript: __expectString, + }) as any; +}; + +/** + * deserializeAws_restJson1UserTurnResult + */ +const de_UserTurnResult = (output: any, context: __SerdeContext): UserTurnResult => { + return take(output, { + actualOutput: (_: any) => de_UserTurnOutputSpecification(_, context), + conversationLevelResult: _json, + endToEndResult: __expectString, + errorDetails: _json, + expectedOutput: (_: any) => de_UserTurnOutputSpecification(_, context), + input: (_: any) => de_UserTurnInputSpecification(_, context), + intentMatchResult: __expectString, + slotMatchResult: __expectString, + speechTranscriptionResult: __expectString, + }) as any; +}; + +/** + * deserializeAws_restJson1UserTurnSlotOutput + */ +const de_UserTurnSlotOutput = (output: any, context: __SerdeContext): UserTurnSlotOutput => { + return take(output, { + subSlots: (_: any) => de_UserTurnSlotOutputMap(_, context), + value: __expectString, + values: (_: any) => de_UserTurnSlotOutputList(_, context), + }) as any; +}; + +/** + * deserializeAws_restJson1UserTurnSlotOutputList + */ +const de_UserTurnSlotOutputList = (output: any, context: __SerdeContext): UserTurnSlotOutput[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_UserTurnSlotOutput(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_restJson1UserTurnSlotOutputMap + */ +const de_UserTurnSlotOutputMap = (output: any, context: __SerdeContext): Record => { + return Object.entries(output).reduce((acc: Record, [key, value]: [string, any]) => { + if (value === null) { + return acc; + } + acc[key] = de_UserTurnSlotOutput(value, context); + return acc; + }, {}); +}; + +/** + * deserializeAws_restJson1UserTurnSpecification + */ +const de_UserTurnSpecification = (output: any, context: __SerdeContext): UserTurnSpecification => { + return take(output, { + expected: (_: any) => de_UserTurnOutputSpecification(_, context), + input: (_: any) => de_UserTurnInputSpecification(_, context), + }) as any; +}; + // de_UtteranceAggregationDuration omitted. +// de_UtteranceAudioInputSpecification omitted. + +// de_UtteranceInputSpecification omitted. + +/** + * deserializeAws_restJson1UtteranceLevelTestResultItem + */ +const de_UtteranceLevelTestResultItem = (output: any, context: __SerdeContext): UtteranceLevelTestResultItem => { + return take(output, { + conversationId: __expectString, + recordNumber: __expectLong, + turnResult: (_: any) => de_TestSetTurnResult(_, context), + }) as any; +}; + +/** + * deserializeAws_restJson1UtteranceLevelTestResultItemList + */ +const de_UtteranceLevelTestResultItemList = (output: any, context: __SerdeContext): UtteranceLevelTestResultItem[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_UtteranceLevelTestResultItem(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_restJson1UtteranceLevelTestResults + */ +const de_UtteranceLevelTestResults = (output: any, context: __SerdeContext): UtteranceLevelTestResults => { + return take(output, { + items: (_: any) => de_UtteranceLevelTestResultItemList(_, context), + }) as any; +}; + // de_VoiceSettings omitted. // de_WaitAndContinueSpecification omitted. diff --git a/codegen/sdk-codegen/aws-models/lex-models-v2.json b/codegen/sdk-codegen/aws-models/lex-models-v2.json index d4bf6339b9d3..6820fdb8177b 100644 --- a/codegen/sdk-codegen/aws-models/lex-models-v2.json +++ b/codegen/sdk-codegen/aws-models/lex-models-v2.json @@ -29,6 +29,43 @@ ] }, "shapes": { + "com.amazonaws.lexmodelsv2#ActiveContext": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.lexmodelsv2#ActiveContextName", + "traits": { + "smithy.api#documentation": "

      The name of active context.

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

      The active context used in the test execution.

      " + } + }, + "com.amazonaws.lexmodelsv2#ActiveContextList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#ActiveContext" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 20 + } + } + }, + "com.amazonaws.lexmodelsv2#ActiveContextName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + }, + "smithy.api#pattern": "^([A-Za-z]_?)+$" + } + }, "com.amazonaws.lexmodelsv2#AdvancedRecognitionSetting": { "type": "structure", "members": { @@ -43,6 +80,57 @@ "smithy.api#documentation": "

      Provides settings that enable advanced recognition settings for slot values.

      " } }, + "com.amazonaws.lexmodelsv2#AgentTurnResult": { + "type": "structure", + "members": { + "expectedAgentPrompt": { + "target": "com.amazonaws.lexmodelsv2#TestSetAgentPrompt", + "traits": { + "smithy.api#documentation": "

      The expected agent prompt for the agent turn in a test set execution.

      ", + "smithy.api#required": {} + } + }, + "actualAgentPrompt": { + "target": "com.amazonaws.lexmodelsv2#TestSetAgentPrompt", + "traits": { + "smithy.api#documentation": "

      The actual agent prompt for the agent turn in a test set execution.

      " + } + }, + "errorDetails": { + "target": "com.amazonaws.lexmodelsv2#ExecutionErrorDetails" + }, + "actualElicitedSlot": { + "target": "com.amazonaws.lexmodelsv2#TestResultSlotName", + "traits": { + "smithy.api#documentation": "

      The actual elicited slot for the agent turn in a test set execution.

      " + } + }, + "actualIntent": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      The actual intent for the agent turn in a test set execution.

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

      The information about the agent turn in a test set execution.

      " + } + }, + "com.amazonaws.lexmodelsv2#AgentTurnSpecification": { + "type": "structure", + "members": { + "agentPrompt": { + "target": "com.amazonaws.lexmodelsv2#TestSetAgentPrompt", + "traits": { + "smithy.api#documentation": "

      The agent prompt for the agent turn in a test set.

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

      The specification of an agent turn.

      " + } + }, "com.amazonaws.lexmodelsv2#AggregatedUtterancesFilter": { "type": "structure", "members": { @@ -348,6 +436,16 @@ "smithy.api#documentation": "

      Specifies the audio and DTMF input specification.

      " } }, + "com.amazonaws.lexmodelsv2#AudioFileS3Location": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + }, + "smithy.api#pattern": "^s3://([a-z0-9\\\\.-]+)/(.+)$" + } + }, "com.amazonaws.lexmodelsv2#AudioLogDestination": { "type": "structure", "members": { @@ -498,6 +596,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#BatchCreateCustomVocabularyItemResponse": { @@ -533,6 +634,9 @@ "smithy.api#documentation": "

      A list of custom vocabulary items that were \n successfully created during the operation.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#BatchDeleteCustomVocabularyItem": { @@ -603,6 +707,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#BatchDeleteCustomVocabularyItemResponse": { @@ -638,6 +745,9 @@ "smithy.api#documentation": "

      A list of custom vocabulary items that were \n successfully deleted during the operation.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#BatchUpdateCustomVocabularyItem": { @@ -708,6 +818,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#BatchUpdateCustomVocabularyItemResponse": { @@ -743,6 +856,9 @@ "smithy.api#documentation": "

      A list of custom vocabulary items that were \n successfully updated during the operation.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#Boolean": { @@ -898,7 +1014,7 @@ "botAliasStatus": { "target": "com.amazonaws.lexmodelsv2#BotAliasStatus", "traits": { - "smithy.api#documentation": "

      The current state of the bot alias. If the status is\n Available, the alias is ready for use.

      " + "smithy.api#documentation": "

      The current state of the bot alias. If the status is\n Available, the alias is ready for use.

      " } }, "creationDateTime": { @@ -924,6 +1040,35 @@ "target": "com.amazonaws.lexmodelsv2#BotAliasSummary" } }, + "com.amazonaws.lexmodelsv2#BotAliasTestExecutionTarget": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The bot Id of the bot alias used in the test set execution.

      ", + "smithy.api#required": {} + } + }, + "botAliasId": { + "target": "com.amazonaws.lexmodelsv2#BotAliasId", + "traits": { + "smithy.api#documentation": "

      The bot alias Id of the bot alias used in the test set execution.

      ", + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The locale Id of the bot alias used in the test set execution.

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

      The target Amazon S3 location for the test set execution using a bot alias.

      " + } + }, "com.amazonaws.lexmodelsv2#BotExportSpecification": { "type": "structure", "members": { @@ -966,7 +1111,7 @@ "operator": { "target": "com.amazonaws.lexmodelsv2#BotFilterOperator", "traits": { - "smithy.api#documentation": "

      The operator to use for the filter. Specify EQ when the\n ListBots operation should return only aliases that\n equal the specified value. Specify CO when the\n ListBots operation should return aliases that contain\n the specified value.

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

      The operator to use for the filter. Specify EQ when the\n ListBots operation should return only aliases that\n equal the specified value. Specify CO when the\n ListBots operation should return aliases that contain\n the specified value.

      ", "smithy.api#required": {} } } @@ -1122,7 +1267,7 @@ "operator": { "target": "com.amazonaws.lexmodelsv2#BotLocaleFilterOperator", "traits": { - "smithy.api#documentation": "

      The operator to use for the filter. Specify EQ when the\n ListBotLocales operation should return only aliases\n that equal the specified value. Specify CO when the\n ListBotLocales operation should return aliases that\n contain the specified value.

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

      The operator to use for the filter. Specify EQ when the\n ListBotLocales operation should return only aliases\n that equal the specified value. Specify CO when the\n ListBotLocales operation should return aliases that\n contain the specified value.

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

      Provides information about an event that occurred affecting the bot\n locale.

      " + "smithy.api#documentation": "

      Provides information about an event that occurred affecting the bot\n locale.

      " } }, "com.amazonaws.lexmodelsv2#BotLocaleHistoryEventDescription": { @@ -1356,7 +1501,7 @@ "botLocaleStatus": { "target": "com.amazonaws.lexmodelsv2#BotLocaleStatus", "traits": { - "smithy.api#documentation": "

      The current status of the bot locale. When the status is\n Built the locale is ready for use.

      " + "smithy.api#documentation": "

      The current status of the bot locale. When the status is\n Built the locale is ready for use.

      " } }, "lastUpdatedDateTime": { @@ -1443,13 +1588,13 @@ "intents": { "target": "com.amazonaws.lexmodelsv2#IntentStatistics", "traits": { - "smithy.api#documentation": "

      Statistical information about about the intents associated with the\n bot recommendation results.

      " + "smithy.api#documentation": "

      Statistical information about about the intents associated with the\n bot recommendation results.

      " } }, "slotTypes": { "target": "com.amazonaws.lexmodelsv2#SlotTypeStatistics", "traits": { - "smithy.api#documentation": "

      Statistical information about the slot types associated with the bot\n recommendation results.

      " + "smithy.api#documentation": "

      Statistical information about the slot types associated with the bot\n recommendation results.

      " } } }, @@ -1480,7 +1625,7 @@ } }, "traits": { - "smithy.api#documentation": "

      The object representing the URL of the bot definition, the URL of\n the associated transcript, and a statistical summary of the bot\n recommendation results.

      " + "smithy.api#documentation": "

      The object representing the URL of the bot definition, the URL of\n the associated transcript, and a statistical summary of the bot\n recommendation results.

      " } }, "com.amazonaws.lexmodelsv2#BotRecommendationStatus": { @@ -1692,7 +1837,7 @@ "botStatus": { "target": "com.amazonaws.lexmodelsv2#BotStatus", "traits": { - "smithy.api#documentation": "

      The current status of the bot. When the status is\n Available the bot is ready for use.

      " + "smithy.api#documentation": "

      The current status of the bot. When the status is\n Available the bot is ready for use.

      " } }, "latestBotVersion": { @@ -1924,6 +2069,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#BuildBotLocaleResponse": { @@ -1959,6 +2107,9 @@ "smithy.api#documentation": "

      A timestamp indicating the date and time that the bot was last built\n for this locale.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#BuiltInIntentSortAttribute": { @@ -2080,7 +2231,7 @@ } }, "traits": { - "smithy.api#documentation": "

      Provides summary information about a built-in slot type for the\n ListBuiltInSlotTypes \n operation.

      " + "smithy.api#documentation": "

      Provides summary information about a built-in slot type for the\n ListBuiltInSlotTypes \n operation.

      " } }, "com.amazonaws.lexmodelsv2#BuiltInSlotTypeSummaryList": { @@ -2418,163 +2569,409 @@ } } }, - "com.amazonaws.lexmodelsv2#ConversationLogSettings": { + "com.amazonaws.lexmodelsv2#ConversationLevelIntentClassificationResultItem": { "type": "structure", "members": { - "textLogSettings": { - "target": "com.amazonaws.lexmodelsv2#TextLogSettingsList", + "intentName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The Amazon CloudWatch Logs settings for logging text and metadata.

      " + "smithy.api#documentation": "

      The intent name used in the evaluation of intent level success or failure.

      ", + "smithy.api#required": {} } }, - "audioLogSettings": { - "target": "com.amazonaws.lexmodelsv2#AudioLogSettingsList", + "matchResult": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus", "traits": { - "smithy.api#documentation": "

      The Amazon S3 settings for logging audio to an S3 bucket.

      " + "smithy.api#documentation": "

      The number of times the specific intent is used in the evaluation of intent level\n success or failure.

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

      Configures conversation logging that saves audio, text, and metadata\n for the conversations with your users.

      " + "smithy.api#documentation": "

      The item listing the evaluation of intent level success or failure.

      " } }, - "com.amazonaws.lexmodelsv2#Count": { - "type": "integer" - }, - "com.amazonaws.lexmodelsv2#CreateBot": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#CreateBotRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#CreateBotResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#ConflictException" - }, - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

      Creates an Amazon Lex conversational bot.

      ", - "smithy.api#http": { - "method": "PUT", - "uri": "/bots", - "code": 202 - } + "com.amazonaws.lexmodelsv2#ConversationLevelIntentClassificationResults": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#ConversationLevelIntentClassificationResultItem" } }, - "com.amazonaws.lexmodelsv2#CreateBotAlias": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#CreateBotAliasRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#CreateBotAliasResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#ConflictException" - }, - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + "com.amazonaws.lexmodelsv2#ConversationLevelResultDetail": { + "type": "structure", + "members": { + "endToEndResult": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus", + "traits": { + "smithy.api#documentation": "

      The success or failure of the streaming of the conversation.

      ", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" + "speechTranscriptionResult": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus", + "traits": { + "smithy.api#documentation": "

      The speech transcription success or failure details of the conversation.

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

      Creates an alias for the specified version of a bot. Use an alias to\n enable you to change the version of a bot without updating applications\n that use the bot.

      \n

      For example, you can create an alias called \"PROD\" that your\n applications use to call the Amazon Lex bot.

      ", - "smithy.api#http": { - "method": "PUT", - "uri": "/bots/{botId}/botaliases", - "code": 202 - } + "smithy.api#documentation": "

      The conversation level details of the conversation used in the test set.

      " } }, - "com.amazonaws.lexmodelsv2#CreateBotAliasRequest": { + "com.amazonaws.lexmodelsv2#ConversationLevelSlotResolutionResultItem": { "type": "structure", "members": { - "botAliasName": { + "intentName": { "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The alias to create. The name must be unique for the bot.

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

      The intents used in the slots list for the slot resolution details.

      ", "smithy.api#required": {} } }, - "description": { - "target": "com.amazonaws.lexmodelsv2#Description", + "slotName": { + "target": "com.amazonaws.lexmodelsv2#TestResultSlotName", "traits": { - "smithy.api#documentation": "

      A description of the alias. Use this description to help identify\n the alias.

      " + "smithy.api#documentation": "

      The slot name in the slots list for the slot resolution details.

      ", + "smithy.api#required": {} } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#NumericalBotVersion", + "matchResult": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus", "traits": { - "smithy.api#documentation": "

      The version of the bot that this alias points to. You can use the\n UpdateBotAlias operation to change the\n bot version associated with the alias.

      " + "smithy.api#documentation": "

      The number of matching slots used in the slots listings for the slot resolution evaluation.

      ", + "smithy.api#required": {} } - }, - "botAliasLocaleSettings": { - "target": "com.amazonaws.lexmodelsv2#BotAliasLocaleSettingsMap", + } + }, + "traits": { + "smithy.api#documentation": "

      The slots used for the slot resolution in the conversation.

      " + } + }, + "com.amazonaws.lexmodelsv2#ConversationLevelSlotResolutionResults": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#ConversationLevelSlotResolutionResultItem" + } + }, + "com.amazonaws.lexmodelsv2#ConversationLevelTestResultItem": { + "type": "structure", + "members": { + "conversationId": { + "target": "com.amazonaws.lexmodelsv2#TestSetConversationId", "traits": { - "smithy.api#documentation": "

      Maps configuration information to a specific locale. You can use\n this parameter to specify a specific Lambda function to run different\n functions in different locales.

      " + "smithy.api#documentation": "

      The conversation Id of the test result evaluation item.

      ", + "smithy.api#required": {} } }, - "conversationLogSettings": { - "target": "com.amazonaws.lexmodelsv2#ConversationLogSettings", + "endToEndResult": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus", "traits": { - "smithy.api#documentation": "

      Specifies whether Amazon Lex logs text and audio for a conversation with\n the bot. When you enable conversation logs, text logs store text input,\n transcripts of audio input, and associated metadata in Amazon CloudWatch Logs. Audio\n logs store audio input in Amazon S3.

      " + "smithy.api#documentation": "

      The end-to-end success or failure of the test result evaluation item.

      ", + "smithy.api#required": {} } }, - "sentimentAnalysisSettings": { - "target": "com.amazonaws.lexmodelsv2#SentimentAnalysisSettings" + "speechTranscriptionResult": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus", + "traits": { + "smithy.api#documentation": "

      The speech transcription success or failure of the test result evaluation item.

      " + } }, - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "intentClassificationResults": { + "target": "com.amazonaws.lexmodelsv2#ConversationLevelIntentClassificationResults", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot that the alias applies to.

      ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

      The intent classification of the test result evaluation item.

      ", "smithy.api#required": {} } }, - "tags": { - "target": "com.amazonaws.lexmodelsv2#TagMap", + "slotResolutionResults": { + "target": "com.amazonaws.lexmodelsv2#ConversationLevelSlotResolutionResults", "traits": { - "smithy.api#documentation": "

      A list of tags to add to the bot alias. You can only add tags when\n you create an alias, you can't use the UpdateBotAlias\n operation to update the tags on a bot alias. To update tags, use the\n TagResource operation.

      " + "smithy.api#documentation": "

      The slot success or failure of the test result evaluation item.

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

      The test result evaluation item at the conversation level.

      " } }, - "com.amazonaws.lexmodelsv2#CreateBotAliasResponse": { + "com.amazonaws.lexmodelsv2#ConversationLevelTestResultItemList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#ConversationLevelTestResultItem" + } + }, + "com.amazonaws.lexmodelsv2#ConversationLevelTestResults": { "type": "structure", "members": { - "botAliasId": { - "target": "com.amazonaws.lexmodelsv2#BotAliasId", + "items": { + "target": "com.amazonaws.lexmodelsv2#ConversationLevelTestResultItemList", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot alias.

      " + "smithy.api#documentation": "

      The item list in the test set results data at the conversation level.

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

      The test set results data at the conversation level.

      " + } + }, + "com.amazonaws.lexmodelsv2#ConversationLevelTestResultsFilterBy": { + "type": "structure", + "members": { + "endToEndResult": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus", + "traits": { + "smithy.api#documentation": "

      The selection of matched or mismatched end-to-end status to filter test set results data\n at the conversation level.

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

      The selection to filter the test set results data at the conversation level.

      " + } + }, + "com.amazonaws.lexmodelsv2#ConversationLogSettings": { + "type": "structure", + "members": { + "textLogSettings": { + "target": "com.amazonaws.lexmodelsv2#TextLogSettingsList", + "traits": { + "smithy.api#documentation": "

      The Amazon CloudWatch Logs settings for logging text and metadata.

      " + } + }, + "audioLogSettings": { + "target": "com.amazonaws.lexmodelsv2#AudioLogSettingsList", + "traits": { + "smithy.api#documentation": "

      The Amazon S3 settings for logging audio to an S3 bucket.

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

      Configures conversation logging that saves audio, text, and metadata\n for the conversations with your users.

      " + } + }, + "com.amazonaws.lexmodelsv2#ConversationLogsDataSource": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The bot Id from the conversation logs.

      ", + "smithy.api#required": {} + } + }, + "botAliasId": { + "target": "com.amazonaws.lexmodelsv2#BotAliasId", + "traits": { + "smithy.api#documentation": "

      The bot alias Id from the conversation logs.

      ", + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The locale Id of the conversation log.

      ", + "smithy.api#required": {} + } + }, + "filter": { + "target": "com.amazonaws.lexmodelsv2#ConversationLogsDataSourceFilterBy", + "traits": { + "smithy.api#documentation": "

      The filter for the data source of the conversation log.

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

      The data source that uses conversation logs.

      " + } + }, + "com.amazonaws.lexmodelsv2#ConversationLogsDataSourceFilterBy": { + "type": "structure", + "members": { + "startTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", + "traits": { + "smithy.api#documentation": "

      The start time for the conversation log.

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

      The end time for the conversation log.

      ", + "smithy.api#required": {} + } + }, + "inputMode": { + "target": "com.amazonaws.lexmodelsv2#ConversationLogsInputModeFilter", + "traits": { + "smithy.api#documentation": "

      The selection to filter by input mode for the conversation logs.

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

      The selected data source to filter the conversation log.

      " + } + }, + "com.amazonaws.lexmodelsv2#ConversationLogsInputModeFilter": { + "type": "enum", + "members": { + "Speech": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Speech" + } + }, + "Text": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Text" + } + } + } + }, + "com.amazonaws.lexmodelsv2#Count": { + "type": "integer" + }, + "com.amazonaws.lexmodelsv2#CreateBot": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#CreateBotRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#CreateBotResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#ConflictException" + }, + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Creates an Amazon Lex conversational bot.

      ", + "smithy.api#http": { + "method": "PUT", + "uri": "/bots", + "code": 202 + } + } + }, + "com.amazonaws.lexmodelsv2#CreateBotAlias": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#CreateBotAliasRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#CreateBotAliasResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#ConflictException" + }, + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Creates an alias for the specified version of a bot. Use an alias to\n enable you to change the version of a bot without updating applications\n that use the bot.

      \n

      For example, you can create an alias called \"PROD\" that your\n applications use to call the Amazon Lex bot.

      ", + "smithy.api#http": { + "method": "PUT", + "uri": "/bots/{botId}/botaliases", + "code": 202 + } + } + }, + "com.amazonaws.lexmodelsv2#CreateBotAliasRequest": { + "type": "structure", + "members": { + "botAliasName": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      The alias to create. The name must be unique for the bot.

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

      A description of the alias. Use this description to help identify\n the alias.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#NumericalBotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that this alias points to. You can use the\n UpdateBotAlias operation to change the\n bot version associated with the alias.

      " + } + }, + "botAliasLocaleSettings": { + "target": "com.amazonaws.lexmodelsv2#BotAliasLocaleSettingsMap", + "traits": { + "smithy.api#documentation": "

      Maps configuration information to a specific locale. You can use\n this parameter to specify a specific Lambda function to run different\n functions in different locales.

      " + } + }, + "conversationLogSettings": { + "target": "com.amazonaws.lexmodelsv2#ConversationLogSettings", + "traits": { + "smithy.api#documentation": "

      Specifies whether Amazon Lex logs text and audio for a conversation with\n the bot. When you enable conversation logs, text logs store text input,\n transcripts of audio input, and associated metadata in Amazon CloudWatch Logs. Audio\n logs store audio input in Amazon S3.

      " + } + }, + "sentimentAnalysisSettings": { + "target": "com.amazonaws.lexmodelsv2#SentimentAnalysisSettings" + }, + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot that the alias applies to.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "tags": { + "target": "com.amazonaws.lexmodelsv2#TagMap", + "traits": { + "smithy.api#documentation": "

      A list of tags to add to the bot alias. You can only add tags when\n you create an alias, you can't use the UpdateBotAlias\n operation to update the tags on a bot alias. To update tags, use the\n TagResource operation.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#CreateBotAliasResponse": { + "type": "structure", + "members": { + "botAliasId": { + "target": "com.amazonaws.lexmodelsv2#BotAliasId", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot alias.

      " } }, "botAliasName": { @@ -2634,6 +3031,9 @@ "smithy.api#documentation": "

      A list of tags associated with the bot alias.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#CreateBotLocale": { @@ -2718,6 +3118,9 @@ "smithy.api#documentation": "

      The Amazon Polly voice ID that Amazon Lex uses for voice interaction with the\n user.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#CreateBotLocaleResponse": { @@ -2777,6 +3180,9 @@ "smithy.api#documentation": "

      A timestamp specifying the date and time that the bot locale was\n created.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#CreateBotRequest": { @@ -2840,6 +3246,9 @@ "smithy.api#documentation": "

      The list of bot members in a network to be created.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#CreateBotResponse": { @@ -2917,6 +3326,9 @@ "smithy.api#documentation": "

      The list of bots in a network that was created.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#CreateBotVersion": { @@ -2980,6 +3392,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#CreateBotVersionResponse": { @@ -3021,6 +3436,9 @@ "smithy.api#documentation": "

      A timestamp of the date and time that the version was\n created.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#CreateCustomVocabularyItemsList": { @@ -3095,6 +3513,9 @@ "smithy.api#documentation": "

      An password to use to encrypt the exported archive. Using a password\n is optional, but you should encrypt the archive to protect the data in\n transit between Amazon Lex and your local computer.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#CreateExportResponse": { @@ -3130,6 +3551,9 @@ "smithy.api#documentation": "

      The date and time that the request to export a bot was\n created.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#CreateIntent": { @@ -3250,7 +3674,7 @@ "botVersion": { "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", "traits": { - "smithy.api#documentation": "

      The identifier of the version of the bot associated with this\n intent.

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

      The version of the bot associated with this\n intent.

      ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -3269,6 +3693,9 @@ "smithy.api#documentation": "

      Configuration settings for the response that is sent to the user at\n the beginning of a conversation, before eliciting slot values.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#CreateIntentResponse": { @@ -3355,7 +3782,7 @@ "botVersion": { "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", "traits": { - "smithy.api#documentation": "

      The identifier of the version of the bot associated with the\n intent.

      " + "smithy.api#documentation": "

      The version of the bot associated with the\n intent.

      " } }, "localeId": { @@ -3376,6 +3803,9 @@ "smithy.api#documentation": "

      Configuration settings for the response that is sent to the user at\n the beginning of a conversation, before eliciting slot values.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#CreateResourcePolicy": { @@ -3433,6 +3863,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#CreateResourcePolicyResponse": { @@ -3450,6 +3883,9 @@ "smithy.api#documentation": "

      The current revision of the resource policy. Use the revision ID to\n make sure that you are updating the most current version of a resource\n policy when you add a policy statement to a resource, delete a\n resource, or update a resource.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#CreateResourcePolicyStatement": { @@ -3520,7 +3956,7 @@ "principal": { "target": "com.amazonaws.lexmodelsv2#PrincipalList", "traits": { - "smithy.api#documentation": "

      An IAM principal, such as an IAM users, IAM roles, or AWS services\n that is allowed or denied access to a resource. For more information,\n see AWS JSON policy elements: Principal.

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

      An IAM principal, such as an IAM user, IAM role, \n or Amazon Web Services services\n that is allowed or denied access to a resource. For more information,\n see Amazon Web Services JSON policy elements: Principal.

      ", "smithy.api#required": {} } }, @@ -3544,6 +3980,9 @@ "smithy.api#httpQuery": "expectedRevisionId" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#CreateResourcePolicyStatementResponse": { @@ -3561,6 +4000,9 @@ "smithy.api#documentation": "

      The current revision of the resource policy. Use the revision ID to\n make sure that you are updating the most current version of a resource\n policy when you add a policy statement to a resource, delete a\n resource, or update a resource.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#CreateSlot": { @@ -3670,7 +4112,7 @@ "multipleValuesSetting": { "target": "com.amazonaws.lexmodelsv2#MultipleValuesSetting", "traits": { - "smithy.api#documentation": "

      Indicates whether the slot returns multiple values in one response.\n Multi-value slots are only available in the en-US locale. If you set\n this value to true in any other locale, Amazon Lex throws a\n ValidationException.

      \n

      If the multipleValuesSetting is not set, the default\n value is false.

      " + "smithy.api#documentation": "

      Indicates whether the slot returns multiple values in one response.\n Multi-value slots are only available in the en-US locale. \n If you set this value to true in any other locale, Amazon Lex throws a\n ValidationException.

      \n

      If the multipleValuesSetting is not set, the default\n value is false.

      " } }, "subSlotSetting": { @@ -3679,6 +4121,9 @@ "smithy.api#documentation": "

      Specifications for the constituent sub slots and the \n expression for the composite slot.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#CreateSlotResponse": { @@ -3762,6 +4207,9 @@ "smithy.api#documentation": "

      Specifications for the constituent sub slots and the \n expression for the composite slot.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#CreateSlotType": { @@ -3807,7 +4255,7 @@ "slotTypeName": { "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The name for the slot. A slot type name must be unique within the\n account.

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

      The name for the slot. A slot type name must be unique within the\n intent.

      ", "smithy.api#required": {} } }, @@ -3826,7 +4274,7 @@ "valueSelectionSetting": { "target": "com.amazonaws.lexmodelsv2#SlotValueSelectionSetting", "traits": { - "smithy.api#documentation": "

      Determines the strategy that Amazon Lex uses to select a value from the\n list of possible values. The field can be set to one of the following\n values:

      \n
        \n
      • \n

        \n OriginalValue - Returns the value entered by the\n user, if the user value is similar to the slot value.

        \n
      • \n
      • \n

        \n TopResolution - If there is a resolution list for\n the slot, return the first value in the resolution list. If there\n is no resolution list, return null.

        \n
      • \n
      \n

      If you don't specify the valueSelectionSetting\n parameter, the default is OriginalValue.

      " + "smithy.api#documentation": "

      Determines the strategy that Amazon Lex uses to select a value from the\n list of possible values. The field can be set to one of the following\n values:

      \n
        \n
      • \n

        \n ORIGINAL_VALUE - Returns the value entered by the\n user, if the user value is similar to the slot value.

        \n
      • \n
      • \n

        \n TOP_RESOLUTION - If there is a resolution list for\n the slot, return the first value in the resolution list. If there\n is no resolution list, return null.

        \n
      • \n
      \n

      If you don't specify the valueSelectionSetting\n parameter, the default is ORIGINAL_VALUE.

      " } }, "parentSlotTypeSignature": { @@ -3871,6 +4319,9 @@ "smithy.api#documentation": "

      Specifications for a composite slot type.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#CreateSlotTypeResponse": { @@ -3948,6 +4399,101 @@ "smithy.api#documentation": "

      Specifications for a composite slot type.

      " } } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#CreateTestSetDiscrepancyReport": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#CreateTestSetDiscrepancyReportRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#CreateTestSetDiscrepancyReportResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#ConflictException" + }, + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Create a report that describes the differences between the bot and the test set.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/testsets/{testSetId}/testsetdiscrepancy", + "code": 202 + } + } + }, + "com.amazonaws.lexmodelsv2#CreateTestSetDiscrepancyReportRequest": { + "type": "structure", + "members": { + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The test set Id for the test set discrepancy report.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "target": { + "target": "com.amazonaws.lexmodelsv2#TestSetDiscrepancyReportResourceTarget", + "traits": { + "smithy.api#documentation": "

      The target bot for the test set discrepancy report.

      ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#CreateTestSetDiscrepancyReportResponse": { + "type": "structure", + "members": { + "testSetDiscrepancyReportId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the test set discrepancy report to describe.

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

      The creation date and time for the test set discrepancy report.

      " + } + }, + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The test set Id for the test set discrepancy report.

      " + } + }, + "target": { + "target": "com.amazonaws.lexmodelsv2#TestSetDiscrepancyReportResourceTarget", + "traits": { + "smithy.api#documentation": "

      The target bot for the test set discrepancy report.

      " + } + } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#CreateUploadUrl": { @@ -3986,7 +4532,10 @@ }, "com.amazonaws.lexmodelsv2#CreateUploadUrlRequest": { "type": "structure", - "members": {} + "members": {}, + "traits": { + "smithy.api#input": {} + } }, "com.amazonaws.lexmodelsv2#CreateUploadUrlResponse": { "type": "structure", @@ -4003,6 +4552,9 @@ "smithy.api#documentation": "

      A pre-signed S3 write URL. Upload the zip archive file that contains\n the definition of your bot or bot locale.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#CustomPayload": { @@ -4093,7 +4645,7 @@ "localeId": { "target": "com.amazonaws.lexmodelsv2#LocaleId", "traits": { - "smithy.api#documentation": "

      The identifier of the local to import the custom vocabulary to. The value must\n be en_GB.

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

      The identifier of the local to import the custom vocabulary to. The value must\n be en_GB.

      ", "smithy.api#required": {} } } @@ -4226,7 +4778,7 @@ "target": "com.amazonaws.lexmodelsv2#ChildDirected", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

      For each Amazon Lex bot created with the Amazon Lex Model Building Service,\n you must specify whether your use of Amazon Lex is related to a website,\n program, or other application that is directed or targeted, in whole or\n in part, to children under age 13 and subject to the Children's Online\n Privacy Protection Act (COPPA) by specifying true or\n false in the childDirected field. By\n specifying true in the childDirected field,\n you confirm that your use of Amazon Lex is\n related to a website, program, or other application that is directed or\n targeted, in whole or in part, to children under age 13 and subject to\n COPPA. By specifying false in the\n childDirected field, you confirm that your use of Amazon Lex\n is not related to a website,\n program, or other application that is directed or targeted, in whole or\n in part, to children under age 13 and subject to COPPA. You may not\n specify a default value for the childDirected field that\n does not accurately reflect whether your use of Amazon Lex is related to a\n website, program, or other application that is directed or targeted, in\n whole or in part, to children under age 13 and subject to COPPA. If\n your use of Amazon Lex relates to a website, program, or other application\n that is directed in whole or in part, to children under age 13, you\n must obtain any required verifiable parental consent under COPPA. For\n information regarding the use of Amazon Lex in connection with websites,\n programs, or other applications that are directed or targeted, in whole\n or in part, to children under age 13, see the Amazon Lex\n FAQ.

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

      For each Amazon Lex bot created with the Amazon Lex Model Building Service,\n you must specify whether your use of Amazon Lex is related to a website,\n program, or other application that is directed or targeted, in whole or\n in part, to children under age 13 and subject to the Children's Online\n Privacy Protection Act (COPPA) by specifying true or\n false in the childDirected field. By\n specifying true in the childDirected field,\n you confirm that your use of Amazon Lex is\n related to a website, program, or other application that is directed or\n targeted, in whole or in part, to children under age 13 and subject to\n COPPA. By specifying false in the\n childDirected field, you confirm that your use of Amazon Lex\n is not related to a website,\n program, or other application that is directed or targeted, in whole or\n in part, to children under age 13 and subject to COPPA. You may not\n specify a default value for the childDirected field that\n does not accurately reflect whether your use of Amazon Lex is related to a\n website, program, or other application that is directed or targeted, in\n whole or in part, to children under age 13 and subject to COPPA. If\n your use of Amazon Lex relates to a website, program, or other application\n that is directed in whole or in part, to children under age 13, you\n must obtain any required verifiable parental consent under COPPA. For\n information regarding the use of Amazon Lex in connection with websites,\n programs, or other applications that are directed or targeted, in whole\n or in part, to children under age 13, see the Amazon Lex\n FAQ.

      ", "smithy.api#required": {} } } @@ -4241,20 +4793,20 @@ "startDateTime": { "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      A timestamp indicating the start date for the date range\n filter.

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

      A timestamp indicating the start date for the date range\n filter.

      ", "smithy.api#required": {} } }, "endDateTime": { "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      A timestamp indicating the end date for the date range\n filter.

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

      A timestamp indicating the end date for the date range\n filter.

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

      The object used for specifying the data range that the customer\n wants Amazon Lex to read through in the input transcripts.

      " + "smithy.api#documentation": "

      The object used for specifying the data range that the customer\n wants Amazon Lex to read through in the input transcripts.

      " } }, "com.amazonaws.lexmodelsv2#DefaultConditionalBranch": { @@ -4375,6 +4927,9 @@ "smithy.api#httpQuery": "skipResourceInUseCheck" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteBotAliasResponse": { @@ -4398,6 +4953,9 @@ "smithy.api#documentation": "

      The current status of the alias. The status is Deleting\n while the alias is in the process of being deleted. Once the alias is\n deleted, it will no longer appear in the list of aliases returned by\n the ListBotAliases operation.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DeleteBotLocale": { @@ -4464,6 +5022,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteBotLocaleResponse": { @@ -4493,6 +5054,9 @@ "smithy.api#documentation": "

      The status of deleting the bot locale. The locale first enters the\n Deleting status. Once the locale is deleted it no\n longer appears in the list of locales for the bot.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DeleteBotRequest": { @@ -4514,6 +5078,9 @@ "smithy.api#httpQuery": "skipResourceInUseCheck" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteBotResponse": { @@ -4531,6 +5098,9 @@ "smithy.api#documentation": "

      The current status of the bot. The status is Deleting\n while the bot and its associated resources are being deleted.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DeleteBotVersion": { @@ -4597,6 +5167,9 @@ "smithy.api#httpQuery": "skipResourceInUseCheck" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteBotVersionResponse": { @@ -4620,6 +5193,9 @@ "smithy.api#documentation": "

      The current status of the bot.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DeleteCustomVocabulary": { @@ -4698,6 +5274,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteCustomVocabularyResponse": { @@ -4727,6 +5306,9 @@ "smithy.api#documentation": "

      The status of removing the custom vocabulary.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DeleteExport": { @@ -4774,6 +5356,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteExportResponse": { @@ -4791,6 +5376,9 @@ "smithy.api#documentation": "

      The current status of the deletion. When the deletion is complete,\n the export will no longer be returned by the ListExports operation and calls to the \n DescribeExport operation with the export identifier will\n fail.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DeleteImport": { @@ -4838,6 +5426,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteImportResponse": { @@ -4855,6 +5446,9 @@ "smithy.api#documentation": "

      The current status of the deletion. When the deletion is complete,\n the import will no longer be returned by the ListImports operation and calls to the DescribeImport operation with the import identifier will\n fail.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DeleteIntent": { @@ -4929,6 +5523,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteResourcePolicy": { @@ -4980,6 +5577,9 @@ "smithy.api#httpQuery": "expectedRevisionId" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteResourcePolicyResponse": { @@ -4997,6 +5597,9 @@ "smithy.api#documentation": "

      The current revision of the resource policy. Use the revision ID to\n make sure that you are updating the most current version of a resource\n policy when you add a policy statement to a resource, delete a\n resource, or update a resource.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DeleteResourcePolicyStatement": { @@ -5056,6 +5659,9 @@ "smithy.api#httpQuery": "expectedRevisionId" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteResourcePolicyStatementResponse": { @@ -5073,6 +5679,9 @@ "smithy.api#documentation": "

      The current revision of the resource policy. Use the revision ID to\n make sure that you are updating the most current version of a resource\n policy when you add a policy statement to a resource, delete a\n resource, or update a resource.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DeleteSlot": { @@ -5155,6 +5764,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteSlotType": { @@ -5237,6 +5849,63 @@ "smithy.api#httpQuery": "skipResourceInUseCheck" } } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#DeleteTestSet": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#DeleteTestSetRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#ConflictException" + }, + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      The action to delete the selected test set.

      ", + "smithy.api#http": { + "method": "DELETE", + "uri": "/testsets/{testSetId}", + "code": 204 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.lexmodelsv2#DeleteTestSetRequest": { + "type": "structure", + "members": { + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The test set Id of the test set to be deleted.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteUtterances": { @@ -5292,11 +5961,17 @@ "smithy.api#httpQuery": "sessionId" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DeleteUtterancesResponse": { "type": "structure", - "members": {} + "members": {}, + "traits": { + "smithy.api#output": {} + } }, "com.amazonaws.lexmodelsv2#DescribeBot": { "type": "operation", @@ -5471,6 +6146,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeBotAliasResponse": { @@ -5551,6 +6229,9 @@ "smithy.api#documentation": "

      A list of the networks to which the bot alias you described belongs.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DescribeBotLocale": { @@ -5761,7 +6442,7 @@ "botVersion": { "target": "com.amazonaws.lexmodelsv2#BotVersion", "traits": { - "smithy.api#documentation": "

      The identifier of the version of the bot associated with the\n locale.

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

      The version of the bot associated with the\n locale.

      ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -5774,6 +6455,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeBotLocaleResponse": { @@ -5788,7 +6472,7 @@ "botVersion": { "target": "com.amazonaws.lexmodelsv2#BotVersion", "traits": { - "smithy.api#documentation": "

      The identifier of the version of the bot associated with the\n locale.

      " + "smithy.api#documentation": "

      The version of the bot associated with the\n locale.

      " } }, "localeId": { @@ -5875,6 +6559,9 @@ "smithy.api#documentation": "

      Recommended actions to take to resolve an error in the\n failureReasons field.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DescribeBotRecommendation": { @@ -5943,6 +6630,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeBotRecommendationResponse": { @@ -6014,6 +6704,9 @@ "smithy.api#documentation": "

      The object representing the URL of the bot definition, the URL of\n the associated transcript and a statistical summary of the bot\n recommendation results.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DescribeBotRequest": { @@ -6027,6 +6720,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeBotResponse": { @@ -6104,6 +6800,9 @@ "smithy.api#documentation": "

      If the botStatus is Failed, this contains\n a list of reasons that the bot couldn't be built.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DescribeBotVersion": { @@ -6203,6 +6902,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeBotVersionResponse": { @@ -6286,6 +6988,9 @@ "smithy.api#documentation": "

      The members of bot network in the version that was described.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DescribeCustomVocabularyMetadata": { @@ -6349,6 +7054,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeCustomVocabularyMetadataResponse": { @@ -6390,6 +7098,9 @@ "smithy.api#documentation": "

      The date and time that the custom vocabulary was last updated.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DescribeExport": { @@ -6472,6 +7183,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeExportResponse": { @@ -6525,6 +7239,9 @@ "smithy.api#documentation": "

      The last date and time that the export was updated.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DescribeImport": { @@ -6607,6 +7324,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeImportResponse": { @@ -6666,6 +7386,9 @@ "smithy.api#documentation": "

      The date and time that the import was last updated.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DescribeIntent": { @@ -6737,6 +7460,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeIntentResponse": { @@ -6853,9 +7579,12 @@ "initialResponseSetting": { "target": "com.amazonaws.lexmodelsv2#InitialResponseSetting", "traits": { - "smithy.api#documentation": "

      " + "smithy.api#documentation": "

      Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DescribeResourcePolicy": { @@ -6897,6 +7626,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeResourcePolicyResponse": { @@ -6920,6 +7652,9 @@ "smithy.api#documentation": "

      The current revision of the resource policy. Use the revision ID to\n make sure that you are updating the most current version of a resource\n policy when you add a policy statement to a resource, delete a\n resource, or update a resource.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DescribeSlot": { @@ -6999,6 +7734,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeSlotResponse": { @@ -7088,6 +7826,9 @@ "smithy.api#documentation": "

      Specifications for the constituent sub slots and the \n expression for the composite slot.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#DescribeSlotType": { @@ -7159,6 +7900,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#DescribeSlotTypeResponse": { @@ -7239,847 +7983,785 @@ "smithy.api#documentation": "

      Specifications for a composite slot type.

      " } } - } - }, - "com.amazonaws.lexmodelsv2#Description": { - "type": "string", + }, "traits": { - "smithy.api#length": { - "min": 0, - "max": 200 - } + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#DialogAction": { - "type": "structure", - "members": { - "type": { - "target": "com.amazonaws.lexmodelsv2#DialogActionType", - "traits": { - "smithy.api#documentation": "

      The action that the bot should execute.

      ", - "smithy.api#required": {} - } + "com.amazonaws.lexmodelsv2#DescribeTestExecution": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#DescribeTestExecutionRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#DescribeTestExecutionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" }, - "slotToElicit": { - "target": "com.amazonaws.lexmodelsv2#Name", - "traits": { - "smithy.api#documentation": "

      If the dialog action is ElicitSlot, defines the slot to\n elicit from the user.

      " - } + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" }, - "suppressNextMessage": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets metadata information about the test execution.

      ", + "smithy.api#http": { + "method": "GET", + "uri": "/testexecutions/{testExecutionId}", + "code": 200 + } + } + }, + "com.amazonaws.lexmodelsv2#DescribeTestExecutionRequest": { + "type": "structure", + "members": { + "testExecutionId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      When true the next message for the intent is not used.

      " + "smithy.api#documentation": "

      The execution Id of the test set execution.

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

      Defines the action that the bot executes at runtime when the\n conversation reaches this step.

      " + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#DialogActionType": { - "type": "enum", + "com.amazonaws.lexmodelsv2#DescribeTestExecutionResponse": { + "type": "structure", "members": { - "ElicitIntent": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ElicitIntent" - } - }, - "StartIntent": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "StartIntent" - } - }, - "ElicitSlot": { - "target": "smithy.api#Unit", + "testExecutionId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#enumValue": "ElicitSlot" + "smithy.api#documentation": "

      The execution Id for the test set execution.

      " } }, - "EvaluateConditional": { - "target": "smithy.api#Unit", + "creationDateTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#enumValue": "EvaluateConditional" + "smithy.api#documentation": "

      The execution creation date and time for the test set execution.

      " } }, - "InvokeDialogCodeHook": { - "target": "smithy.api#Unit", + "lastUpdatedDateTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#enumValue": "InvokeDialogCodeHook" + "smithy.api#documentation": "

      The date and time of the last update for the execution.

      " } }, - "ConfirmIntent": { - "target": "smithy.api#Unit", + "testExecutionStatus": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionStatus", "traits": { - "smithy.api#enumValue": "ConfirmIntent" + "smithy.api#documentation": "

      The test execution status for the test execution.

      " } }, - "FulfillIntent": { - "target": "smithy.api#Unit", + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#enumValue": "FulfillIntent" + "smithy.api#documentation": "

      The test set Id for the test set execution.

      " } }, - "CloseIntent": { - "target": "smithy.api#Unit", + "testSetName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#enumValue": "CloseIntent" + "smithy.api#documentation": "

      The test set name of the test set execution.

      " } }, - "EndConversation": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "EndConversation" - } - } - } - }, - "com.amazonaws.lexmodelsv2#DialogCodeHookInvocationSetting": { - "type": "structure", - "members": { - "enableCodeHookInvocation": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + "target": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionTarget", "traits": { - "smithy.api#documentation": "

      Indicates whether a Lambda function should be invoked\n for the dialog.

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

      The target bot for the test set execution details.

      " } }, - "active": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + "apiMode": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionApiMode", "traits": { - "smithy.api#documentation": "

      Determines whether a dialog code hook is used when the intent is\n activated.

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

      Indicates whether we use streaming or non-streaming APIs are used for \n the test set execution. For streaming, StartConversation \n Amazon Lex Runtime API is used. Whereas for non-streaming, RecognizeUtterance \n and RecognizeText Amazon Lex Runtime API is used.

      " } }, - "invocationLabel": { - "target": "com.amazonaws.lexmodelsv2#Name", + "testExecutionModality": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionModality", "traits": { - "smithy.api#documentation": "

      A label that indicates the dialog step from which the dialog code\n hook is happening.

      " + "smithy.api#documentation": "

      Indicates whether test set is audio or text.

      " } }, - "postCodeHookSpecification": { - "target": "com.amazonaws.lexmodelsv2#PostDialogCodeHookInvocationSpecification", + "failureReasons": { + "target": "com.amazonaws.lexmodelsv2#FailureReasons", "traits": { - "smithy.api#documentation": "

      Contains the responses and actions that Amazon Lex takes\n after the Lambda function is complete.

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

      Reasons for the failure of the test set execution.

      " } } }, "traits": { - "smithy.api#documentation": "

      Settings that specify the dialog code hook that is\n called by Amazon Lex at a step of the conversation.

      " + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#DialogCodeHookSettings": { - "type": "structure", - "members": { - "enabled": { - "target": "com.amazonaws.lexmodelsv2#Boolean", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

      Enables the dialog code hook so that it processes user\n requests.

      ", - "smithy.api#required": {} - } - } + "com.amazonaws.lexmodelsv2#DescribeTestSet": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#DescribeTestSetRequest" }, - "traits": { - "smithy.api#documentation": "

      Settings that determine the Lambda function that Amazon Lex uses for\n processing user responses.

      " - } - }, - "com.amazonaws.lexmodelsv2#DialogState": { - "type": "structure", - "members": { - "dialogAction": { - "target": "com.amazonaws.lexmodelsv2#DialogAction" + "output": { + "target": "com.amazonaws.lexmodelsv2#DescribeTestSetResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" }, - "intent": { - "target": "com.amazonaws.lexmodelsv2#IntentOverride" + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" }, - "sessionAttributes": { - "target": "com.amazonaws.lexmodelsv2#StringMap", - "traits": { - "smithy.api#documentation": "

      Map of key/value pairs representing session-specific context\n information. It contains application information passed between Amazon Lex and a client application.

      " - } + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" } - }, + ], "traits": { - "smithy.api#documentation": "

      The current state of the conversation with the user.

      " + "smithy.api#documentation": "

      Gets metadata information about the test set.

      ", + "smithy.api#http": { + "method": "GET", + "uri": "/testsets/{testSetId}", + "code": 200 + } } }, - "com.amazonaws.lexmodelsv2#DraftBotVersion": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 5, - "max": 5 + "com.amazonaws.lexmodelsv2#DescribeTestSetDiscrepancyReport": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#DescribeTestSetDiscrepancyReportRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#DescribeTestSetDiscrepancyReportResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" }, - "smithy.api#pattern": "^DRAFT$" - } - }, - "com.amazonaws.lexmodelsv2#Effect": { - "type": "enum", - "members": { - "Allow": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Allow" - } + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" }, - "Deny": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Deny" - } + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets metadata information about the test set discrepancy report.

      ", + "smithy.api#http": { + "method": "GET", + "uri": "/testsetdiscrepancy/{testSetDiscrepancyReportId}", + "code": 200 } } }, - "com.amazonaws.lexmodelsv2#ElicitationCodeHookInvocationSetting": { + "com.amazonaws.lexmodelsv2#DescribeTestSetDiscrepancyReportRequest": { "type": "structure", "members": { - "enableCodeHookInvocation": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + "testSetDiscrepancyReportId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      Indicates whether a Lambda function should be invoked\n for the dialog.

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

      The unique identifier of the test set discrepancy report.

      ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } - }, - "invocationLabel": { - "target": "com.amazonaws.lexmodelsv2#Name", - "traits": { - "smithy.api#documentation": "

      A label that indicates the dialog step from which the dialog code\n hook is happening.

      " - } } }, "traits": { - "smithy.api#documentation": "

      Settings that specify the dialog code hook that is called by Amazon Lex between eliciting slot values.

      " + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#EncryptionSetting": { + "com.amazonaws.lexmodelsv2#DescribeTestSetDiscrepancyReportResponse": { "type": "structure", "members": { - "kmsKeyArn": { - "target": "com.amazonaws.lexmodelsv2#KmsKeyArn", + "testSetDiscrepancyReportId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The KMS key ARN used to encrypt the metadata associated with the bot\n recommendation.

      " + "smithy.api#documentation": "

      The unique identifier of the test set discrepancy report to describe.

      " } }, - "botLocaleExportPassword": { - "target": "com.amazonaws.lexmodelsv2#FilePassword", + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The password used to encrypt the recommended bot recommendation\n file.

      " + "smithy.api#documentation": "

      The test set Id for the test set discrepancy report.

      " } }, - "associatedTranscriptsPassword": { - "target": "com.amazonaws.lexmodelsv2#FilePassword", + "creationDateTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      The password used to encrypt the associated transcript file.

      " + "smithy.api#documentation": "

      The time and date of creation for the test set discrepancy report.

      " } - } - }, - "traits": { - "smithy.api#documentation": "

      The object representing the passwords that were used to encrypt the\n data related to the bot recommendation, as well as the KMS key ARN used\n to encrypt the associated metadata.

      " - } - }, - "com.amazonaws.lexmodelsv2#ErrorCode": { - "type": "enum", - "members": { - "DUPLICATE_INPUT": { - "target": "smithy.api#Unit", + }, + "target": { + "target": "com.amazonaws.lexmodelsv2#TestSetDiscrepancyReportResourceTarget", "traits": { - "smithy.api#enumValue": "DUPLICATE_INPUT" + "smithy.api#documentation": "

      The target bot location for the test set discrepancy report.

      " } }, - "RESOURCE_DOES_NOT_EXIST": { - "target": "smithy.api#Unit", + "testSetDiscrepancyReportStatus": { + "target": "com.amazonaws.lexmodelsv2#TestSetDiscrepancyReportStatus", "traits": { - "smithy.api#enumValue": "RESOURCE_DOES_NOT_EXIST" + "smithy.api#documentation": "

      The status for the test set discrepancy report.

      " } }, - "RESOURCE_ALREADY_EXISTS": { - "target": "smithy.api#Unit", + "lastUpdatedDataTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#enumValue": "RESOURCE_ALREADY_EXISTS" + "smithy.api#documentation": "

      The date and time of the last update for the test set discrepancy report.

      " } }, - "INTERNAL_SERVER_FAILURE": { - "target": "smithy.api#Unit", + "testSetDiscrepancyTopErrors": { + "target": "com.amazonaws.lexmodelsv2#TestSetDiscrepancyErrors", "traits": { - "smithy.api#enumValue": "INTERNAL_SERVER_FAILURE" + "smithy.api#documentation": "

      The top 200 error results from the test set discrepancy report.

      " + } + }, + "testSetDiscrepancyRawOutputUrl": { + "target": "com.amazonaws.lexmodelsv2#PresignedS3Url", + "traits": { + "smithy.api#documentation": "

      Pre-signed Amazon S3 URL to download the test set discrepancy report.

      " + } + }, + "failureReasons": { + "target": "com.amazonaws.lexmodelsv2#FailureReasons", + "traits": { + "smithy.api#documentation": "

      The failure report for the test set discrepancy report generation action.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#ErrorMessage": { - "type": "string" - }, - "com.amazonaws.lexmodelsv2#ExceptionMessage": { - "type": "string" + "com.amazonaws.lexmodelsv2#DescribeTestSetGeneration": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#DescribeTestSetGenerationRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#DescribeTestSetGenerationResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets metadata information about the test set generation.

      ", + "smithy.api#http": { + "method": "GET", + "uri": "/testsetgenerations/{testSetGenerationId}", + "code": 200 + } + } }, - "com.amazonaws.lexmodelsv2#ExportFilter": { + "com.amazonaws.lexmodelsv2#DescribeTestSetGenerationRequest": { "type": "structure", "members": { - "name": { - "target": "com.amazonaws.lexmodelsv2#ExportFilterName", - "traits": { - "smithy.api#documentation": "

      The name of the field to use for filtering.

      ", - "smithy.api#required": {} - } - }, - "values": { - "target": "com.amazonaws.lexmodelsv2#FilterValues", - "traits": { - "smithy.api#documentation": "

      The values to use to filter the response. The values must be\n Bot, BotLocale, or\n CustomVocabulary.

      ", - "smithy.api#required": {} - } - }, - "operator": { - "target": "com.amazonaws.lexmodelsv2#ExportFilterOperator", + "testSetGenerationId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The operator to use for the filter. Specify EQ when the\n ListExports operation should return only resource types\n that equal the specified value. Specify CO when the\n ListExports operation should return resource types that\n contain the specified value.

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

      The unique identifier of the test set generation.

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

      Filters the response form the ListExports operation

      " + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#ExportFilterName": { - "type": "enum", + "com.amazonaws.lexmodelsv2#DescribeTestSetGenerationResponse": { + "type": "structure", "members": { - "ExportResourceType": { - "target": "smithy.api#Unit", + "testSetGenerationId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#enumValue": "ExportResourceType" + "smithy.api#documentation": "

      The unique identifier of the test set generation.

      " } - } - } - }, - "com.amazonaws.lexmodelsv2#ExportFilterOperator": { - "type": "enum", - "members": { - "Contains": { - "target": "smithy.api#Unit", + }, + "testSetGenerationStatus": { + "target": "com.amazonaws.lexmodelsv2#TestSetGenerationStatus", "traits": { - "smithy.api#enumValue": "CO" + "smithy.api#documentation": "

      The status for the test set generation.

      " } }, - "Equals": { - "target": "smithy.api#Unit", + "failureReasons": { + "target": "com.amazonaws.lexmodelsv2#FailureReasons", "traits": { - "smithy.api#enumValue": "EQ" + "smithy.api#documentation": "

      The reasons the test set generation failed.

      " } - } - } - }, - "com.amazonaws.lexmodelsv2#ExportFilters": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#ExportFilter" - }, - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1 - } - } - }, - "com.amazonaws.lexmodelsv2#ExportResourceSpecification": { - "type": "structure", - "members": { - "botExportSpecification": { - "target": "com.amazonaws.lexmodelsv2#BotExportSpecification", + }, + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      Parameters for exporting a bot.

      " + "smithy.api#documentation": "

      The unique identifier for the test set created for the generated test set.

      " } }, - "botLocaleExportSpecification": { - "target": "com.amazonaws.lexmodelsv2#BotLocaleExportSpecification", + "testSetName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      Parameters for exporting a bot locale.

      " + "smithy.api#documentation": "

      The test set name for the generated test set.

      " } }, - "customVocabularyExportSpecification": { - "target": "com.amazonaws.lexmodelsv2#CustomVocabularyExportSpecification", + "description": { + "target": "com.amazonaws.lexmodelsv2#Description", "traits": { - "smithy.api#documentation": "

      The parameters required to export a custom vocabulary.

      " + "smithy.api#documentation": "

      The test set description for the test set generation.

      " } - } - }, - "traits": { - "smithy.api#documentation": "

      Provides information about the bot or bot locale that you want to\n export. You can specify the botExportSpecification or the\n botLocaleExportSpecification, but not both.

      " - } - }, - "com.amazonaws.lexmodelsv2#ExportSortAttribute": { - "type": "enum", - "members": { - "LastUpdatedDateTime": { - "target": "smithy.api#Unit", + }, + "storageLocation": { + "target": "com.amazonaws.lexmodelsv2#TestSetStorageLocation", "traits": { - "smithy.api#enumValue": "LastUpdatedDateTime" + "smithy.api#documentation": "

      The Amazon S3 storage location for the test set generation.

      " + } + }, + "generationDataSource": { + "target": "com.amazonaws.lexmodelsv2#TestSetGenerationDataSource", + "traits": { + "smithy.api#documentation": "

      The data source of the test set used for the test set generation.

      " + } + }, + "roleArn": { + "target": "com.amazonaws.lexmodelsv2#RoleArn", + "traits": { + "smithy.api#documentation": "

      The roleARN of the test set used for the test set generation.

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

      The creation date and time for the test set generation.

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

      The date and time of the last update for the test set generation.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#ExportSortBy": { + "com.amazonaws.lexmodelsv2#DescribeTestSetRequest": { "type": "structure", "members": { - "attribute": { - "target": "com.amazonaws.lexmodelsv2#ExportSortAttribute", - "traits": { - "smithy.api#documentation": "

      The export field to use for sorting.

      ", - "smithy.api#required": {} - } - }, - "order": { - "target": "com.amazonaws.lexmodelsv2#SortOrder", + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The order to sort the list.

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

      The test set Id for the test set request.

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

      Provides information about sorting a list of exports.

      " + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#ExportStatus": { - "type": "enum", + "com.amazonaws.lexmodelsv2#DescribeTestSetResponse": { + "type": "structure", "members": { - "InProgress": { - "target": "smithy.api#Unit", + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#enumValue": "InProgress" + "smithy.api#documentation": "

      The test set Id for the test set response.

      " } }, - "Completed": { - "target": "smithy.api#Unit", + "testSetName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#enumValue": "Completed" + "smithy.api#documentation": "

      The test set name of the test set.

      " } }, - "Failed": { - "target": "smithy.api#Unit", + "description": { + "target": "com.amazonaws.lexmodelsv2#Description", "traits": { - "smithy.api#enumValue": "Failed" + "smithy.api#documentation": "

      The description of the test set.

      " } }, - "Deleting": { - "target": "smithy.api#Unit", + "modality": { + "target": "com.amazonaws.lexmodelsv2#TestSetModality", "traits": { - "smithy.api#enumValue": "Deleting" + "smithy.api#documentation": "

      Indicates whether the test set is audio or text data.

      " } - } - } - }, - "com.amazonaws.lexmodelsv2#ExportSummary": { - "type": "structure", - "members": { - "exportId": { - "target": "com.amazonaws.lexmodelsv2#Id", + }, + "status": { + "target": "com.amazonaws.lexmodelsv2#TestSetStatus", "traits": { - "smithy.api#documentation": "

      The unique identifier that Amazon Lex assigned to the export.

      " + "smithy.api#documentation": "

      The status of the test set.

      " } }, - "resourceSpecification": { - "target": "com.amazonaws.lexmodelsv2#ExportResourceSpecification", + "roleArn": { + "target": "com.amazonaws.lexmodelsv2#RoleArn", "traits": { - "smithy.api#documentation": "

      Information about the bot or bot locale that was exported.

      " + "smithy.api#documentation": "

      The roleARN used for any operation in the test set to access \n resources in the Amazon Web Services account.

      " } }, - "fileFormat": { - "target": "com.amazonaws.lexmodelsv2#ImportExportFileFormat", + "numTurns": { + "target": "com.amazonaws.lexmodelsv2#Count", "traits": { - "smithy.api#documentation": "

      The file format used in the export files.

      " + "smithy.api#documentation": "

      The total number of agent and user turn in the test set.

      " } }, - "exportStatus": { - "target": "com.amazonaws.lexmodelsv2#ExportStatus", + "storageLocation": { + "target": "com.amazonaws.lexmodelsv2#TestSetStorageLocation", "traits": { - "smithy.api#documentation": "

      The status of the export. When the status is Completed\n the export is ready to download.

      " + "smithy.api#documentation": "

      The Amazon S3 storage location for the test set data.

      " } }, "creationDateTime": { "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      The date and time that the export was created.

      " + "smithy.api#documentation": "

      The creation date and time for the test set data.

      " } }, "lastUpdatedDateTime": { "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      The date and time that the export was last updated.

      " + "smithy.api#documentation": "

      The date and time for the last update of the test set data.

      " } } }, "traits": { - "smithy.api#documentation": "

      Provides summary information about an export in an export list.\n

      " + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#ExportSummaryList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#ExportSummary" + "com.amazonaws.lexmodelsv2#Description": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 200 + } } }, - "com.amazonaws.lexmodelsv2#ExternalSourceSetting": { + "com.amazonaws.lexmodelsv2#DialogAction": { "type": "structure", "members": { - "grammarSlotTypeSetting": { - "target": "com.amazonaws.lexmodelsv2#GrammarSlotTypeSetting", + "type": { + "target": "com.amazonaws.lexmodelsv2#DialogActionType", + "traits": { + "smithy.api#documentation": "

      The action that the bot should execute.

      ", + "smithy.api#required": {} + } + }, + "slotToElicit": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      If the dialog action is ElicitSlot, defines the slot to\n elicit from the user.

      " + } + }, + "suppressNextMessage": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", "traits": { - "smithy.api#documentation": "

      Settings required for a slot type based on a grammar that you\n provide.

      " + "smithy.api#documentation": "

      When true the next message for the intent is not used.

      " } } }, "traits": { - "smithy.api#documentation": "

      Provides information about the external source of the slot type's\n definition.

      " + "smithy.api#documentation": "

      Defines the action that the bot executes at runtime when the\n conversation reaches this step.

      " } }, - "com.amazonaws.lexmodelsv2#FailedCustomVocabularyItem": { - "type": "structure", + "com.amazonaws.lexmodelsv2#DialogActionType": { + "type": "enum", "members": { - "itemId": { - "target": "com.amazonaws.lexmodelsv2#ItemId", + "ElicitIntent": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The unique item identifer for the failed custom vocabulary item \n from the custom vocabulary list.

      " + "smithy.api#enumValue": "ElicitIntent" } }, - "errorMessage": { - "target": "com.amazonaws.lexmodelsv2#ErrorMessage", + "StartIntent": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The error message for the failed custom vocabulary item \n from the custom vocabulary list.

      " + "smithy.api#enumValue": "StartIntent" } }, - "errorCode": { - "target": "com.amazonaws.lexmodelsv2#ErrorCode", + "ElicitSlot": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The unique error code for the failed custom vocabulary item \n from the custom vocabulary list.

      " + "smithy.api#enumValue": "ElicitSlot" } - } - }, - "traits": { - "smithy.api#documentation": "

      The unique failed custom vocabulary item from the custom \n vocabulary list.

      " - } - }, - "com.amazonaws.lexmodelsv2#FailedCustomVocabularyItems": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#FailedCustomVocabularyItem" - } - }, - "com.amazonaws.lexmodelsv2#FailureReason": { - "type": "string" - }, - "com.amazonaws.lexmodelsv2#FailureReasons": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#FailureReason" - } - }, - "com.amazonaws.lexmodelsv2#FilePassword": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 1024 }, - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.lexmodelsv2#FilterValue": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 100 + "EvaluateConditional": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EvaluateConditional" + } }, - "smithy.api#pattern": "^[0-9a-zA-Z_()\\s-]+$" - } - }, - "com.amazonaws.lexmodelsv2#FilterValues": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#FilterValue" - }, - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1 - } - } - }, - "com.amazonaws.lexmodelsv2#FulfillmentCodeHookSettings": { - "type": "structure", - "members": { - "enabled": { - "target": "com.amazonaws.lexmodelsv2#Boolean", + "InvokeDialogCodeHook": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

      Indicates whether a Lambda function should be invoked to fulfill a\n specific intent.

      ", - "smithy.api#required": {} + "smithy.api#enumValue": "InvokeDialogCodeHook" } }, - "postFulfillmentStatusSpecification": { - "target": "com.amazonaws.lexmodelsv2#PostFulfillmentStatusSpecification", + "ConfirmIntent": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Provides settings for messages sent to the user for after the Lambda\n fulfillment function completes. Post-fulfillment messages can be sent\n for both streaming and non-streaming conversations.

      " + "smithy.api#enumValue": "ConfirmIntent" } }, - "fulfillmentUpdatesSpecification": { - "target": "com.amazonaws.lexmodelsv2#FulfillmentUpdatesSpecification", + "FulfillIntent": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Provides settings for update messages sent to the user for\n long-running Lambda fulfillment functions. Fulfillment updates can be\n used only with streaming conversations.

      " + "smithy.api#enumValue": "FulfillIntent" } }, - "active": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + "CloseIntent": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Determines whether the fulfillment code hook is used. When\n active is false, the code hook doesn't run.

      " + "smithy.api#enumValue": "CloseIntent" + } + }, + "EndConversation": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EndConversation" } - } - }, - "traits": { - "smithy.api#documentation": "

      Determines if a Lambda function should be invoked for a specific\n intent.

      " - } - }, - "com.amazonaws.lexmodelsv2#FulfillmentStartResponseDelay": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 900 } } }, - "com.amazonaws.lexmodelsv2#FulfillmentStartResponseSpecification": { + "com.amazonaws.lexmodelsv2#DialogCodeHookInvocationSetting": { "type": "structure", "members": { - "delayInSeconds": { - "target": "com.amazonaws.lexmodelsv2#FulfillmentStartResponseDelay", + "enableCodeHookInvocation": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", "traits": { - "smithy.api#documentation": "

      The delay between when the Lambda fulfillment function starts running\n and the start message is played. If the Lambda function returns before\n the delay is over, the start message isn't played.

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

      Indicates whether a Lambda function should be invoked\n for the dialog.

      ", "smithy.api#required": {} } }, - "messageGroups": { - "target": "com.amazonaws.lexmodelsv2#MessageGroupsList", + "active": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", "traits": { - "smithy.api#documentation": "

      One to 5 message groups that contain start messages. Amazon Lex chooses\n one of the messages to play to the user.

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

      Determines whether a dialog code hook is used when the intent is\n activated.

      ", "smithy.api#required": {} } }, - "allowInterrupt": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + "invocationLabel": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      Determines whether the user can interrupt the start message while it\n is playing.

      " + "smithy.api#documentation": "

      A label that indicates the dialog step from which the dialog code\n hook is happening.

      " + } + }, + "postCodeHookSpecification": { + "target": "com.amazonaws.lexmodelsv2#PostDialogCodeHookInvocationSpecification", + "traits": { + "smithy.api#documentation": "

      Contains the responses and actions that Amazon Lex takes\n after the Lambda function is complete.

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

      Provides settings for a message that is sent to the user when a\n fulfillment Lambda function starts running.

      " - } - }, - "com.amazonaws.lexmodelsv2#FulfillmentTimeout": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 900 - } - } - }, - "com.amazonaws.lexmodelsv2#FulfillmentUpdateResponseFrequency": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 900 - } + "smithy.api#documentation": "

      Settings that specify the dialog code hook that is\n called by Amazon Lex at a step of the conversation.

      " } }, - "com.amazonaws.lexmodelsv2#FulfillmentUpdateResponseSpecification": { + "com.amazonaws.lexmodelsv2#DialogCodeHookSettings": { "type": "structure", "members": { - "frequencyInSeconds": { - "target": "com.amazonaws.lexmodelsv2#FulfillmentUpdateResponseFrequency", - "traits": { - "smithy.api#documentation": "

      The frequency that a message is sent to the user. When the period\n ends, Amazon Lex chooses a message from the message groups and plays it to\n the user. If the fulfillment Lambda returns before the first period\n ends, an update message is not played to the user.

      ", - "smithy.api#required": {} - } - }, - "messageGroups": { - "target": "com.amazonaws.lexmodelsv2#MessageGroupsList", + "enabled": { + "target": "com.amazonaws.lexmodelsv2#Boolean", "traits": { - "smithy.api#documentation": "

      One to 5 message groups that contain update messages. Amazon Lex chooses\n one of the messages to play to the user.

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

      Enables the dialog code hook so that it processes user\n requests.

      ", "smithy.api#required": {} } - }, - "allowInterrupt": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", - "traits": { - "smithy.api#documentation": "

      Determines whether the user can interrupt an update message while it\n is playing.

      " - } } }, "traits": { - "smithy.api#documentation": "

      Provides settings for a message that is sent periodically to the\n user while a fulfillment Lambda function is running.

      " + "smithy.api#documentation": "

      Settings that determine the Lambda function that Amazon Lex uses for\n processing user responses.

      " } }, - "com.amazonaws.lexmodelsv2#FulfillmentUpdatesSpecification": { + "com.amazonaws.lexmodelsv2#DialogState": { "type": "structure", "members": { - "active": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", - "traits": { - "smithy.api#documentation": "

      Determines whether fulfillment updates are sent to the user. When\n this field is true, updates are sent.

      \n

      If the active field is set to true, the\n startResponse, updateResponse, and\n timeoutInSeconds fields are required.

      ", - "smithy.api#required": {} - } + "dialogAction": { + "target": "com.amazonaws.lexmodelsv2#DialogAction" }, - "startResponse": { - "target": "com.amazonaws.lexmodelsv2#FulfillmentStartResponseSpecification", + "intent": { + "target": "com.amazonaws.lexmodelsv2#IntentOverride" + }, + "sessionAttributes": { + "target": "com.amazonaws.lexmodelsv2#StringMap", "traits": { - "smithy.api#documentation": "

      Provides configuration information for the message sent to users\n when the fulfillment Lambda functions starts running.

      " + "smithy.api#documentation": "

      Map of key/value pairs representing session-specific context\n information. It contains application information passed between Amazon Lex and a client application.

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

      The current state of the conversation with the user.

      " + } + }, + "com.amazonaws.lexmodelsv2#DraftBotVersion": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 5, + "max": 5 }, - "updateResponse": { - "target": "com.amazonaws.lexmodelsv2#FulfillmentUpdateResponseSpecification", + "smithy.api#pattern": "^DRAFT$" + } + }, + "com.amazonaws.lexmodelsv2#Effect": { + "type": "enum", + "members": { + "Allow": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Provides configuration information for messages sent periodically to\n the user while the fulfillment Lambda function is running.

      " + "smithy.api#enumValue": "Allow" } }, - "timeoutInSeconds": { - "target": "com.amazonaws.lexmodelsv2#FulfillmentTimeout", + "Deny": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The length of time that the fulfillment Lambda function should run\n before it times out.

      " + "smithy.api#enumValue": "Deny" } } - }, - "traits": { - "smithy.api#documentation": "

      Provides information for updating the user on the progress of\n fulfilling an intent.

      " } }, - "com.amazonaws.lexmodelsv2#GrammarSlotTypeSetting": { + "com.amazonaws.lexmodelsv2#ElicitationCodeHookInvocationSetting": { "type": "structure", "members": { - "source": { - "target": "com.amazonaws.lexmodelsv2#GrammarSlotTypeSource", + "enableCodeHookInvocation": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", "traits": { - "smithy.api#documentation": "

      The source of the grammar used to create the slot type.

      " + "smithy.api#documentation": "

      Indicates whether a Lambda function should be invoked\n for the dialog.

      ", + "smithy.api#required": {} + } + }, + "invocationLabel": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      A label that indicates the dialog step from which the dialog code\n hook is happening.

      " } } }, "traits": { - "smithy.api#documentation": "

      Settings requried for a slot type based on a grammar that you\n provide.

      " + "smithy.api#documentation": "

      Settings that specify the dialog code hook that is called by Amazon Lex between eliciting slot values.

      " } }, - "com.amazonaws.lexmodelsv2#GrammarSlotTypeSource": { + "com.amazonaws.lexmodelsv2#EncryptionSetting": { "type": "structure", "members": { - "s3BucketName": { - "target": "com.amazonaws.lexmodelsv2#S3BucketName", + "kmsKeyArn": { + "target": "com.amazonaws.lexmodelsv2#KmsKeyArn", "traits": { - "smithy.api#documentation": "

      The name of the S3 bucket that contains the grammar source.

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

      The KMS key ARN used to encrypt the metadata associated with the bot\n recommendation.

      " } }, - "s3ObjectKey": { - "target": "com.amazonaws.lexmodelsv2#S3ObjectPath", + "botLocaleExportPassword": { + "target": "com.amazonaws.lexmodelsv2#FilePassword", "traits": { - "smithy.api#documentation": "

      The path to the grammar in the S3 bucket.

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

      The password used to encrypt the recommended bot recommendation\n file.

      " } }, - "kmsKeyArn": { - "target": "com.amazonaws.lexmodelsv2#KmsKeyArn", + "associatedTranscriptsPassword": { + "target": "com.amazonaws.lexmodelsv2#FilePassword", "traits": { - "smithy.api#documentation": "

      The Amazon KMS key required to decrypt the contents of the grammar,\n if any.

      " + "smithy.api#documentation": "

      The password used to encrypt the associated transcript file.

      " } } }, "traits": { - "smithy.api#documentation": "

      Describes the Amazon S3 bucket name and location for the grammar\n that is the source for the slot type.

      " + "smithy.api#documentation": "

      The object representing the passwords that were used to encrypt the\n data related to the bot recommendation, as well as the KMS key ARN used\n to encrypt the associated metadata.

      " } }, - "com.amazonaws.lexmodelsv2#HitCount": { - "type": "integer" - }, - "com.amazonaws.lexmodelsv2#Id": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 10, - "max": 10 - }, - "smithy.api#pattern": "^[0-9a-zA-Z]+$" - } - }, - "com.amazonaws.lexmodelsv2#ImageResponseCard": { - "type": "structure", + "com.amazonaws.lexmodelsv2#ErrorCode": { + "type": "enum", "members": { - "title": { - "target": "com.amazonaws.lexmodelsv2#AttachmentTitle", + "DUPLICATE_INPUT": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The title to display on the response card. The format of the title\n is determined by the platform displaying the response card.

      ", - "smithy.api#required": {} + "smithy.api#enumValue": "DUPLICATE_INPUT" } }, - "subtitle": { - "target": "com.amazonaws.lexmodelsv2#AttachmentTitle", + "RESOURCE_DOES_NOT_EXIST": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The subtitle to display on the response card. The format of the\n subtitle is determined by the platform displaying the response\n card.

      " + "smithy.api#enumValue": "RESOURCE_DOES_NOT_EXIST" } }, - "imageUrl": { - "target": "com.amazonaws.lexmodelsv2#AttachmentUrl", + "RESOURCE_ALREADY_EXISTS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The URL of an image to display on the response card. The image URL\n must be publicly available so that the platform displaying the response\n card has access to the image.

      " + "smithy.api#enumValue": "RESOURCE_ALREADY_EXISTS" } }, - "buttons": { - "target": "com.amazonaws.lexmodelsv2#ButtonsList", + "INTERNAL_SERVER_FAILURE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      A list of buttons that should be displayed on the response card. The\n arrangement of the buttons is determined by the platform that displays\n the button.

      " + "smithy.api#enumValue": "INTERNAL_SERVER_FAILURE" } } - }, - "traits": { - "smithy.api#documentation": "

      A card that is shown to the user by a messaging platform. You define\n the contents of the card, the card is displayed by the platform.

      \n

      When you use a response card, the response from the user is\n constrained to the text associated with a button on the card.

      " } }, - "com.amazonaws.lexmodelsv2#ImportExportFileFormat": { - "type": "enum", + "com.amazonaws.lexmodelsv2#ErrorMessage": { + "type": "string" + }, + "com.amazonaws.lexmodelsv2#ExceptionMessage": { + "type": "string" + }, + "com.amazonaws.lexmodelsv2#ExecutionErrorDetails": { + "type": "structure", "members": { - "LexJson": { - "target": "smithy.api#Unit", + "errorCode": { + "target": "com.amazonaws.lexmodelsv2#NonEmptyString", "traits": { - "smithy.api#enumValue": "LexJson" + "smithy.api#documentation": "

      The error code for the error.

      ", + "smithy.api#required": {} } }, - "TSV": { - "target": "smithy.api#Unit", + "errorMessage": { + "target": "com.amazonaws.lexmodelsv2#NonEmptyString", "traits": { - "smithy.api#enumValue": "TSV" + "smithy.api#documentation": "

      The message describing the error.

      ", + "smithy.api#required": {} } } - } - }, - "com.amazonaws.lexmodelsv2#ImportExportFilePassword": { - "type": "string", + }, "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - }, - "smithy.api#sensitive": {} + "smithy.api#documentation": "

      Details about an error in an execution of a test set.

      " } }, - "com.amazonaws.lexmodelsv2#ImportFilter": { + "com.amazonaws.lexmodelsv2#ExportFilter": { "type": "structure", "members": { "name": { - "target": "com.amazonaws.lexmodelsv2#ImportFilterName", + "target": "com.amazonaws.lexmodelsv2#ExportFilterName", "traits": { "smithy.api#documentation": "

      The name of the field to use for filtering.

      ", "smithy.api#required": {} @@ -8088,34 +8770,34 @@ "values": { "target": "com.amazonaws.lexmodelsv2#FilterValues", "traits": { - "smithy.api#documentation": "

      The values to use to filter the response. The values must be\n Bot, BotLocale, or\n CustomVocabulary.

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

      The values to use to filter the response. The values must be\n Bot, BotLocale, or\n CustomVocabulary.

      ", "smithy.api#required": {} } }, "operator": { - "target": "com.amazonaws.lexmodelsv2#ImportFilterOperator", + "target": "com.amazonaws.lexmodelsv2#ExportFilterOperator", "traits": { - "smithy.api#documentation": "

      The operator to use for the filter. Specify EQ when the\n ListImports operation should return only resource types\n that equal the specified value. Specify CO when the\n ListImports operation should return resource types that\n contain the specified value.

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

      The operator to use for the filter. Specify EQ when the\n ListExports operation should return only resource types\n that equal the specified value. Specify CO when the\n ListExports operation should return resource types that\n contain the specified value.

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

      Filters the response from the ListImports operation.

      " + "smithy.api#documentation": "

      Filters the response form the ListExports operation

      " } }, - "com.amazonaws.lexmodelsv2#ImportFilterName": { + "com.amazonaws.lexmodelsv2#ExportFilterName": { "type": "enum", "members": { - "ImportResourceType": { + "ExportResourceType": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ImportResourceType" + "smithy.api#enumValue": "ExportResourceType" } } } }, - "com.amazonaws.lexmodelsv2#ImportFilterOperator": { + "com.amazonaws.lexmodelsv2#ExportFilterOperator": { "type": "enum", "members": { "Contains": { @@ -8132,10 +8814,10 @@ } } }, - "com.amazonaws.lexmodelsv2#ImportFilters": { + "com.amazonaws.lexmodelsv2#ExportFilters": { "type": "list", "member": { - "target": "com.amazonaws.lexmodelsv2#ImportFilter" + "target": "com.amazonaws.lexmodelsv2#ExportFilter" }, "traits": { "smithy.api#length": { @@ -8144,53 +8826,39 @@ } } }, - "com.amazonaws.lexmodelsv2#ImportResourceSpecification": { + "com.amazonaws.lexmodelsv2#ExportResourceSpecification": { "type": "structure", "members": { - "botImportSpecification": { - "target": "com.amazonaws.lexmodelsv2#BotImportSpecification", - "traits": { - "smithy.api#documentation": "

      Parameters for importing a bot.

      " - } - }, - "botLocaleImportSpecification": { - "target": "com.amazonaws.lexmodelsv2#BotLocaleImportSpecification", + "botExportSpecification": { + "target": "com.amazonaws.lexmodelsv2#BotExportSpecification", "traits": { - "smithy.api#documentation": "

      Parameters for importing a bot locale.

      " + "smithy.api#documentation": "

      Parameters for exporting a bot.

      " } }, - "customVocabularyImportSpecification": { - "target": "com.amazonaws.lexmodelsv2#CustomVocabularyImportSpecification" - } - }, - "traits": { - "smithy.api#documentation": "

      Provides information about the bot or bot locale that you want to\n import. You can specify the botImportSpecification or the\n botLocaleImportSpecification, but not both.

      " - } - }, - "com.amazonaws.lexmodelsv2#ImportResourceType": { - "type": "enum", - "members": { - "Bot": { - "target": "smithy.api#Unit", + "botLocaleExportSpecification": { + "target": "com.amazonaws.lexmodelsv2#BotLocaleExportSpecification", "traits": { - "smithy.api#enumValue": "Bot" + "smithy.api#documentation": "

      Parameters for exporting a bot locale.

      " } }, - "BotLocale": { - "target": "smithy.api#Unit", + "customVocabularyExportSpecification": { + "target": "com.amazonaws.lexmodelsv2#CustomVocabularyExportSpecification", "traits": { - "smithy.api#enumValue": "BotLocale" + "smithy.api#documentation": "

      The parameters required to export a custom vocabulary.

      " } }, - "CustomVocabulary": { - "target": "smithy.api#Unit", + "testSetExportSpecification": { + "target": "com.amazonaws.lexmodelsv2#TestSetExportSpecification", "traits": { - "smithy.api#enumValue": "CustomVocabulary" + "smithy.api#documentation": "

      Specifications for the test set that is exported as a resource.

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

      Provides information about the bot or bot locale that you want to\n export. You can specify the botExportSpecification or the\n botLocaleExportSpecification, but not both.

      " } }, - "com.amazonaws.lexmodelsv2#ImportSortAttribute": { + "com.amazonaws.lexmodelsv2#ExportSortAttribute": { "type": "enum", "members": { "LastUpdatedDateTime": { @@ -8201,11 +8869,11 @@ } } }, - "com.amazonaws.lexmodelsv2#ImportSortBy": { + "com.amazonaws.lexmodelsv2#ExportSortBy": { "type": "structure", "members": { "attribute": { - "target": "com.amazonaws.lexmodelsv2#ImportSortAttribute", + "target": "com.amazonaws.lexmodelsv2#ExportSortAttribute", "traits": { "smithy.api#documentation": "

      The export field to use for sorting.

      ", "smithy.api#required": {} @@ -8220,10 +8888,10 @@ } }, "traits": { - "smithy.api#documentation": "

      Provides information for sorting a list of imports.

      " + "smithy.api#documentation": "

      Provides information about sorting a list of exports.

      " } }, - "com.amazonaws.lexmodelsv2#ImportStatus": { + "com.amazonaws.lexmodelsv2#ExportStatus": { "type": "enum", "members": { "InProgress": { @@ -8252,745 +8920,1607 @@ } } }, - "com.amazonaws.lexmodelsv2#ImportSummary": { + "com.amazonaws.lexmodelsv2#ExportSummary": { "type": "structure", "members": { - "importId": { + "exportId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The unique identifier that Amazon Lex assigned to the import.

      " - } - }, - "importedResourceId": { - "target": "com.amazonaws.lexmodelsv2#ImportedResourceId", - "traits": { - "smithy.api#documentation": "

      The unique identifier that Amazon Lex assigned to the imported\n resource.

      " + "smithy.api#documentation": "

      The unique identifier that Amazon Lex assigned to the export.

      " } }, - "importedResourceName": { - "target": "com.amazonaws.lexmodelsv2#Name", + "resourceSpecification": { + "target": "com.amazonaws.lexmodelsv2#ExportResourceSpecification", "traits": { - "smithy.api#documentation": "

      The name that you gave the imported resource.

      " + "smithy.api#documentation": "

      Information about the bot or bot locale that was exported.

      " } }, - "importStatus": { - "target": "com.amazonaws.lexmodelsv2#ImportStatus", + "fileFormat": { + "target": "com.amazonaws.lexmodelsv2#ImportExportFileFormat", "traits": { - "smithy.api#documentation": "

      The status of the resource. When the status is\n Completed the resource is ready to build.

      " + "smithy.api#documentation": "

      The file format used in the export files.

      " } }, - "mergeStrategy": { - "target": "com.amazonaws.lexmodelsv2#MergeStrategy", + "exportStatus": { + "target": "com.amazonaws.lexmodelsv2#ExportStatus", "traits": { - "smithy.api#documentation": "

      The strategy used to merge existing bot or bot locale definitions\n with the imported definition.

      " + "smithy.api#documentation": "

      The status of the export. When the status is Completed\n the export is ready to download.

      " } }, "creationDateTime": { "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      The date and time that the import was created.

      " + "smithy.api#documentation": "

      The date and time that the export was created.

      " } }, "lastUpdatedDateTime": { "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      The date and time that the import was last updated.

      " - } - }, - "importedResourceType": { - "target": "com.amazonaws.lexmodelsv2#ImportResourceType", - "traits": { - "smithy.api#documentation": "

      The type of resource that was imported.

      " + "smithy.api#documentation": "

      The date and time that the export was last updated.

      " } } }, "traits": { - "smithy.api#documentation": "

      Provides summary information about an import in an import\n list.

      " + "smithy.api#documentation": "

      Provides summary information about an export in an export list.\n

      " } }, - "com.amazonaws.lexmodelsv2#ImportSummaryList": { + "com.amazonaws.lexmodelsv2#ExportSummaryList": { "type": "list", "member": { - "target": "com.amazonaws.lexmodelsv2#ImportSummary" - } - }, - "com.amazonaws.lexmodelsv2#ImportedResourceId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 5, - "max": 10 - }, - "smithy.api#pattern": "^([0-9a-zA-Z_])+$" + "target": "com.amazonaws.lexmodelsv2#ExportSummary" } }, - "com.amazonaws.lexmodelsv2#InitialResponseSetting": { + "com.amazonaws.lexmodelsv2#ExternalSourceSetting": { "type": "structure", "members": { - "initialResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" - }, - "nextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + "grammarSlotTypeSetting": { + "target": "com.amazonaws.lexmodelsv2#GrammarSlotTypeSetting", "traits": { - "smithy.api#documentation": "

      The next step in the conversation.

      " + "smithy.api#documentation": "

      Settings required for a slot type based on a grammar that you provide.

      " } - }, - "conditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification" - }, - "codeHook": { - "target": "com.amazonaws.lexmodelsv2#DialogCodeHookInvocationSetting" } }, "traits": { - "smithy.api#documentation": "

      Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.

      " + "smithy.api#documentation": "

      Provides information about the external source of the slot type's definition.

      " } }, - "com.amazonaws.lexmodelsv2#InputContext": { + "com.amazonaws.lexmodelsv2#FailedCustomVocabularyItem": { "type": "structure", "members": { - "name": { - "target": "com.amazonaws.lexmodelsv2#Name", + "itemId": { + "target": "com.amazonaws.lexmodelsv2#ItemId", "traits": { - "smithy.api#documentation": "

      The name of the context.

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

      The unique item identifer for the failed custom vocabulary item \n from the custom vocabulary list.

      " + } + }, + "errorMessage": { + "target": "com.amazonaws.lexmodelsv2#ErrorMessage", + "traits": { + "smithy.api#documentation": "

      The error message for the failed custom vocabulary item \n from the custom vocabulary list.

      " + } + }, + "errorCode": { + "target": "com.amazonaws.lexmodelsv2#ErrorCode", + "traits": { + "smithy.api#documentation": "

      The unique error code for the failed custom vocabulary item \n from the custom vocabulary list.

      " } } }, "traits": { - "smithy.api#documentation": "

      The name of a context that must be active for an intent to be\n selected by Amazon Lex.

      " + "smithy.api#documentation": "

      The unique failed custom vocabulary item from the custom \n vocabulary list.

      " } }, - "com.amazonaws.lexmodelsv2#InputContextsList": { + "com.amazonaws.lexmodelsv2#FailedCustomVocabularyItems": { "type": "list", "member": { - "target": "com.amazonaws.lexmodelsv2#InputContext" - }, + "target": "com.amazonaws.lexmodelsv2#FailedCustomVocabularyItem" + } + }, + "com.amazonaws.lexmodelsv2#FailureReason": { + "type": "string" + }, + "com.amazonaws.lexmodelsv2#FailureReasons": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#FailureReason" + } + }, + "com.amazonaws.lexmodelsv2#FilePassword": { + "type": "string", "traits": { "smithy.api#length": { "min": 0, - "max": 5 - } + "max": 1024 + }, + "smithy.api#sensitive": {} } }, - "com.amazonaws.lexmodelsv2#IntentClosingSetting": { + "com.amazonaws.lexmodelsv2#FilterValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + }, + "smithy.api#pattern": "^[0-9a-zA-Z_()\\s-]+$" + } + }, + "com.amazonaws.lexmodelsv2#FilterValues": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#FilterValue" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.lexmodelsv2#FulfillmentCodeHookSettings": { "type": "structure", "members": { - "closingResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification", + "enabled": { + "target": "com.amazonaws.lexmodelsv2#Boolean", "traits": { - "smithy.api#documentation": "

      The response that Amazon Lex sends to the user when the intent is\n complete.

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

      Indicates whether a Lambda function should be invoked to fulfill a\n specific intent.

      ", + "smithy.api#required": {} } }, - "active": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + "postFulfillmentStatusSpecification": { + "target": "com.amazonaws.lexmodelsv2#PostFulfillmentStatusSpecification", "traits": { - "smithy.api#documentation": "

      Specifies whether an intent's closing response is used. When this\n field is false, the closing response isn't sent to the user. If the\n active field isn't specified, the default is\n true.

      " + "smithy.api#documentation": "

      Provides settings for messages sent to the user for after the Lambda\n fulfillment function completes. Post-fulfillment messages can be sent\n for both streaming and non-streaming conversations.

      " } }, - "nextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + "fulfillmentUpdatesSpecification": { + "target": "com.amazonaws.lexmodelsv2#FulfillmentUpdatesSpecification", "traits": { - "smithy.api#documentation": "

      Specifies the next step that the bot executes after playing the\n intent's closing response.

      " + "smithy.api#documentation": "

      Provides settings for update messages sent to the user for\n long-running Lambda fulfillment functions. Fulfillment updates can be\n used only with streaming conversations.

      " } }, - "conditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "active": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", "traits": { - "smithy.api#documentation": "

      A list of conditional branches associated with the intent's closing\n response. These branches are executed when the nextStep\n attribute is set to EvalutateConditional.

      " + "smithy.api#documentation": "

      Determines whether the fulfillment code hook is used. When\n active is false, the code hook doesn't run.

      " } } }, "traits": { - "smithy.api#documentation": "

      Provides a statement the Amazon Lex conveys to the user when the intent\n is successfully fulfilled.

      " + "smithy.api#documentation": "

      Determines if a Lambda function should be invoked for a specific\n intent.

      " } }, - "com.amazonaws.lexmodelsv2#IntentConfirmationSetting": { + "com.amazonaws.lexmodelsv2#FulfillmentStartResponseDelay": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 900 + } + } + }, + "com.amazonaws.lexmodelsv2#FulfillmentStartResponseSpecification": { "type": "structure", "members": { - "promptSpecification": { - "target": "com.amazonaws.lexmodelsv2#PromptSpecification", + "delayInSeconds": { + "target": "com.amazonaws.lexmodelsv2#FulfillmentStartResponseDelay", "traits": { - "smithy.api#documentation": "

      Prompts the user to confirm the intent. This question should have a\n yes or no answer.

      \n

      Amazon Lex uses this prompt to ensure that the user acknowledges that the\n intent is ready for fulfillment. For example, with the\n OrderPizza intent, you might want to confirm that the\n order is correct before placing it. For other intents, such as intents\n that simply respond to user questions, you might not need to ask the\n user for confirmation before providing the information.

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

      The delay between when the Lambda fulfillment function starts running\n and the start message is played. If the Lambda function returns before\n the delay is over, the start message isn't played.

      ", "smithy.api#required": {} } }, - "declinationResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification", + "messageGroups": { + "target": "com.amazonaws.lexmodelsv2#MessageGroupsList", "traits": { - "smithy.api#documentation": "

      When the user answers \"no\" to the question defined in\n promptSpecification, Amazon Lex responds with this response\n to acknowledge that the intent was canceled.

      " + "smithy.api#documentation": "

      1 - 5 message groups that contain start messages. Amazon Lex chooses\n one of the messages to play to the user.

      ", + "smithy.api#required": {} } }, - "active": { + "allowInterrupt": { "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", "traits": { - "smithy.api#documentation": "

      Specifies whether the intent's confirmation is sent to the user.\n When this field is false, confirmation and declination responses aren't\n sent. If the active field isn't specified, the default is\n true.

      " + "smithy.api#documentation": "

      Determines whether the user can interrupt the start message while it\n is playing.

      " } - }, - "confirmationResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" - }, - "confirmationNextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + } + }, + "traits": { + "smithy.api#documentation": "

      Provides settings for a message that is sent to the user when a\n fulfillment Lambda function starts running.

      " + } + }, + "com.amazonaws.lexmodelsv2#FulfillmentTimeout": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 900 + } + } + }, + "com.amazonaws.lexmodelsv2#FulfillmentUpdateResponseFrequency": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 900 + } + } + }, + "com.amazonaws.lexmodelsv2#FulfillmentUpdateResponseSpecification": { + "type": "structure", + "members": { + "frequencyInSeconds": { + "target": "com.amazonaws.lexmodelsv2#FulfillmentUpdateResponseFrequency", "traits": { - "smithy.api#documentation": "

      Specifies the next step that the bot executes when the customer\n confirms the intent.

      " + "smithy.api#documentation": "

      The frequency that a message is sent to the user. When the period\n ends, Amazon Lex chooses a message from the message groups and plays it to\n the user. If the fulfillment Lambda returns before the first period\n ends, an update message is not played to the user.

      ", + "smithy.api#required": {} } }, - "confirmationConditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "messageGroups": { + "target": "com.amazonaws.lexmodelsv2#MessageGroupsList", "traits": { - "smithy.api#documentation": "

      A list of conditional branches to evaluate after the intent is\n closed.

      " + "smithy.api#documentation": "

      1 - 5 message groups that contain update messages. Amazon Lex chooses\n one of the messages to play to the user.

      ", + "smithy.api#required": {} } }, - "declinationNextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + "allowInterrupt": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", "traits": { - "smithy.api#documentation": "

      Specifies the next step that the bot executes when the customer\n declines the intent.

      " + "smithy.api#documentation": "

      Determines whether the user can interrupt an update message while it\n is playing.

      " } - }, - "declinationConditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + } + }, + "traits": { + "smithy.api#documentation": "

      Provides settings for a message that is sent periodically to the\n user while a fulfillment Lambda function is running.

      " + } + }, + "com.amazonaws.lexmodelsv2#FulfillmentUpdatesSpecification": { + "type": "structure", + "members": { + "active": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", "traits": { - "smithy.api#documentation": "

      A list of conditional branches to evaluate after the intent is\n declined.

      " + "smithy.api#documentation": "

      Determines whether fulfillment updates are sent to the user. When\n this field is true, updates are sent.

      \n

      If the active field is set to true, the\n startResponse, updateResponse, and\n timeoutInSeconds fields are required.

      ", + "smithy.api#required": {} } }, - "failureResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" - }, - "failureNextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + "startResponse": { + "target": "com.amazonaws.lexmodelsv2#FulfillmentStartResponseSpecification", "traits": { - "smithy.api#documentation": "

      The next step to take in the conversation if the confirmation step\n fails.

      " + "smithy.api#documentation": "

      Provides configuration information for the message sent to users\n when the fulfillment Lambda functions starts running.

      " } }, - "failureConditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification" - }, - "codeHook": { - "target": "com.amazonaws.lexmodelsv2#DialogCodeHookInvocationSetting", + "updateResponse": { + "target": "com.amazonaws.lexmodelsv2#FulfillmentUpdateResponseSpecification", "traits": { - "smithy.api#documentation": "

      The DialogCodeHookInvocationSetting object associated\n with intent's confirmation step. The dialog code hook is triggered\n based on these invocation settings when the confirmation next step or\n declination next step or failure next step is\n InvokeDialogCodeHook.

      " + "smithy.api#documentation": "

      Provides configuration information for messages sent periodically to\n the user while the fulfillment Lambda function is running.

      " } }, - "elicitationCodeHook": { - "target": "com.amazonaws.lexmodelsv2#ElicitationCodeHookInvocationSetting", + "timeoutInSeconds": { + "target": "com.amazonaws.lexmodelsv2#FulfillmentTimeout", "traits": { - "smithy.api#documentation": "

      The DialogCodeHookInvocationSetting used when the code\n hook is invoked during confirmation prompt retries.

      " + "smithy.api#documentation": "

      The length of time that the fulfillment Lambda function should run\n before it times out.

      " } } }, "traits": { - "smithy.api#documentation": "

      Provides a prompt for making sure that the user is ready for the\n intent to be fulfilled.

      " + "smithy.api#documentation": "

      Provides information for updating the user on the progress of\n fulfilling an intent.

      " } }, - "com.amazonaws.lexmodelsv2#IntentFilter": { + "com.amazonaws.lexmodelsv2#GetTestExecutionArtifactsUrl": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#GetTestExecutionArtifactsUrlRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#GetTestExecutionArtifactsUrlResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      The pre-signed Amazon S3 URL to download the test execution result artifacts.

      ", + "smithy.api#http": { + "method": "GET", + "uri": "/testexecutions/{testExecutionId}/artifacturl", + "code": 200 + } + } + }, + "com.amazonaws.lexmodelsv2#GetTestExecutionArtifactsUrlRequest": { "type": "structure", "members": { - "name": { - "target": "com.amazonaws.lexmodelsv2#IntentFilterName", + "testExecutionId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The name of the field to use for the filter.

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

      The unique identifier of the completed test execution.

      ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } - }, - "values": { - "target": "com.amazonaws.lexmodelsv2#FilterValues", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#GetTestExecutionArtifactsUrlResponse": { + "type": "structure", + "members": { + "testExecutionId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The value to use for the filter.

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

      The unique identifier of the completed test execution.

      " } }, - "operator": { - "target": "com.amazonaws.lexmodelsv2#IntentFilterOperator", + "downloadArtifactsUrl": { + "target": "com.amazonaws.lexmodelsv2#PresignedS3Url", "traits": { - "smithy.api#documentation": "

      The operator to use for the filter. Specify EQ when the\n ListIntents operation should return only aliases that\n equal the specified value. Specify CO when the\n ListIntents operation should return aliases that\n contain the specified value.

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

      The pre-signed Amazon S3 URL to download completed test execution.

      " } } }, "traits": { - "smithy.api#documentation": "

      Filters the response from the ListIntents\n operation.

      " + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#IntentFilterName": { - "type": "enum", + "com.amazonaws.lexmodelsv2#GrammarSlotTypeSetting": { + "type": "structure", "members": { - "IntentName": { - "target": "smithy.api#Unit", + "source": { + "target": "com.amazonaws.lexmodelsv2#GrammarSlotTypeSource", "traits": { - "smithy.api#enumValue": "IntentName" + "smithy.api#documentation": "

      The source of the grammar used to create the slot type.

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

      Settings requried for a slot type based on a grammar that you provide.

      " } }, - "com.amazonaws.lexmodelsv2#IntentFilterOperator": { - "type": "enum", + "com.amazonaws.lexmodelsv2#GrammarSlotTypeSource": { + "type": "structure", "members": { - "Contains": { - "target": "smithy.api#Unit", + "s3BucketName": { + "target": "com.amazonaws.lexmodelsv2#S3BucketName", "traits": { - "smithy.api#enumValue": "CO" + "smithy.api#documentation": "

      The name of the Amazon S3 bucket that contains the grammar source.

      ", + "smithy.api#required": {} } }, - "Equals": { - "target": "smithy.api#Unit", + "s3ObjectKey": { + "target": "com.amazonaws.lexmodelsv2#S3ObjectPath", "traits": { - "smithy.api#enumValue": "EQ" + "smithy.api#documentation": "

      The path to the grammar in the Amazon S3 bucket.

      ", + "smithy.api#required": {} } - } - } - }, - "com.amazonaws.lexmodelsv2#IntentFilters": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#IntentFilter" + }, + "kmsKeyArn": { + "target": "com.amazonaws.lexmodelsv2#KmsKeyArn", + "traits": { + "smithy.api#documentation": "

      The KMS key required to decrypt the contents of the grammar, if any.

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

      Describes the Amazon S3 bucket name and location for the grammar\n that is the source for the slot type.

      " + } + }, + "com.amazonaws.lexmodelsv2#HitCount": { + "type": "integer" + }, + "com.amazonaws.lexmodelsv2#Id": { + "type": "string", "traits": { "smithy.api#length": { - "min": 1, - "max": 1 - } + "min": 10, + "max": 10 + }, + "smithy.api#pattern": "^[0-9a-zA-Z]+$" } }, - "com.amazonaws.lexmodelsv2#IntentOverride": { + "com.amazonaws.lexmodelsv2#ImageResponseCard": { "type": "structure", "members": { - "name": { - "target": "com.amazonaws.lexmodelsv2#Name", + "title": { + "target": "com.amazonaws.lexmodelsv2#AttachmentTitle", "traits": { - "smithy.api#documentation": "

      The name of the intent. Only required when you're switching\n intents.

      " + "smithy.api#documentation": "

      The title to display on the response card. The format of the title\n is determined by the platform displaying the response card.

      ", + "smithy.api#required": {} } }, - "slots": { - "target": "com.amazonaws.lexmodelsv2#SlotValueOverrideMap", + "subtitle": { + "target": "com.amazonaws.lexmodelsv2#AttachmentTitle", + "traits": { + "smithy.api#documentation": "

      The subtitle to display on the response card. The format of the\n subtitle is determined by the platform displaying the response\n card.

      " + } + }, + "imageUrl": { + "target": "com.amazonaws.lexmodelsv2#AttachmentUrl", + "traits": { + "smithy.api#documentation": "

      The URL of an image to display on the response card. The image URL\n must be publicly available so that the platform displaying the response\n card has access to the image.

      " + } + }, + "buttons": { + "target": "com.amazonaws.lexmodelsv2#ButtonsList", "traits": { - "smithy.api#documentation": "

      A map of all of the slot value overrides for the intent. The name of\n the slot maps to the value of the slot. Slots that are not included in\n the map aren't overridden.,

      " + "smithy.api#documentation": "

      A list of buttons that should be displayed on the response card. The\n arrangement of the buttons is determined by the platform that displays\n the button.

      " } } }, "traits": { - "smithy.api#documentation": "

      Override settings to configure the intent state.

      " + "smithy.api#documentation": "

      A card that is shown to the user by a messaging platform. You define\n the contents of the card, the card is displayed by the platform.

      \n

      When you use a response card, the response from the user is\n constrained to the text associated with a button on the card.

      " } }, - "com.amazonaws.lexmodelsv2#IntentSignature": { - "type": "string" - }, - "com.amazonaws.lexmodelsv2#IntentSortAttribute": { + "com.amazonaws.lexmodelsv2#ImportExportFileFormat": { "type": "enum", "members": { - "IntentName": { + "LexJson": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "IntentName" + "smithy.api#enumValue": "LexJson" } }, - "LastUpdatedDateTime": { + "TSV": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "LastUpdatedDateTime" + "smithy.api#enumValue": "TSV" + } + }, + "CSV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CSV" } } } }, - "com.amazonaws.lexmodelsv2#IntentSortBy": { + "com.amazonaws.lexmodelsv2#ImportExportFilePassword": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.lexmodelsv2#ImportFilter": { "type": "structure", "members": { - "attribute": { - "target": "com.amazonaws.lexmodelsv2#IntentSortAttribute", + "name": { + "target": "com.amazonaws.lexmodelsv2#ImportFilterName", "traits": { - "smithy.api#documentation": "

      The attribute to use to sort the list of intents.

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

      The name of the field to use for filtering.

      ", "smithy.api#required": {} } }, - "order": { - "target": "com.amazonaws.lexmodelsv2#SortOrder", + "values": { + "target": "com.amazonaws.lexmodelsv2#FilterValues", "traits": { - "smithy.api#documentation": "

      The order to sort the list. You can choose ascending or\n descending.

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

      The values to use to filter the response. The values must be\n Bot, BotLocale, or\n CustomVocabulary.

      ", + "smithy.api#required": {} + } + }, + "operator": { + "target": "com.amazonaws.lexmodelsv2#ImportFilterOperator", + "traits": { + "smithy.api#documentation": "

      The operator to use for the filter. Specify EQ when the\n ListImports operation should return only resource types\n that equal the specified value. Specify CO when the\n ListImports operation should return resource types that\n contain the specified value.

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

      Specifies attributes for sorting a list of intents.

      " + "smithy.api#documentation": "

      Filters the response from the ListImports operation.

      " } }, - "com.amazonaws.lexmodelsv2#IntentStatistics": { - "type": "structure", + "com.amazonaws.lexmodelsv2#ImportFilterName": { + "type": "enum", "members": { - "discoveredIntentCount": { - "target": "com.amazonaws.lexmodelsv2#Count", + "ImportResourceType": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ImportResourceType" + } + } + } + }, + "com.amazonaws.lexmodelsv2#ImportFilterOperator": { + "type": "enum", + "members": { + "Contains": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The number of recommended intents associated with the bot\n recommendation.

      " + "smithy.api#enumValue": "CO" + } + }, + "Equals": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EQ" } } + } + }, + "com.amazonaws.lexmodelsv2#ImportFilters": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#ImportFilter" }, "traits": { - "smithy.api#documentation": "

      The object that contains the statistical summary of recommended\n intents associated with the bot recommendation.

      " + "smithy.api#length": { + "min": 1, + "max": 1 + } } }, - "com.amazonaws.lexmodelsv2#IntentSummary": { + "com.amazonaws.lexmodelsv2#ImportResourceSpecification": { "type": "structure", "members": { - "intentId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "botImportSpecification": { + "target": "com.amazonaws.lexmodelsv2#BotImportSpecification", "traits": { - "smithy.api#documentation": "

      The unique identifier assigned to the intent. Use this ID to get\n detailed information about the intent with the\n DescribeIntent operation.

      " + "smithy.api#documentation": "

      Parameters for importing a bot.

      " } }, - "intentName": { - "target": "com.amazonaws.lexmodelsv2#Name", + "botLocaleImportSpecification": { + "target": "com.amazonaws.lexmodelsv2#BotLocaleImportSpecification", "traits": { - "smithy.api#documentation": "

      The name of the intent.

      " + "smithy.api#documentation": "

      Parameters for importing a bot locale.

      " } }, - "description": { - "target": "com.amazonaws.lexmodelsv2#Description", + "customVocabularyImportSpecification": { + "target": "com.amazonaws.lexmodelsv2#CustomVocabularyImportSpecification" + }, + "testSetImportResourceSpecification": { + "target": "com.amazonaws.lexmodelsv2#TestSetImportResourceSpecification", "traits": { - "smithy.api#documentation": "

      The description of the intent.

      " + "smithy.api#documentation": "

      Specifications for the test set that is imported.

      " } - }, - "parentIntentSignature": { - "target": "com.amazonaws.lexmodelsv2#IntentSignature", + } + }, + "traits": { + "smithy.api#documentation": "

      Provides information about the bot or bot locale that you want to\n import. You can specify the botImportSpecification or the\n botLocaleImportSpecification, but not both.

      " + } + }, + "com.amazonaws.lexmodelsv2#ImportResourceType": { + "type": "enum", + "members": { + "Bot": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      If this intent is derived from a built-in intent, the name of the\n parent intent.

      " + "smithy.api#enumValue": "Bot" } }, - "inputContexts": { - "target": "com.amazonaws.lexmodelsv2#InputContextsList", + "BotLocale": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The input contexts that must be active for this intent to be\n considered for recognition.

      " + "smithy.api#enumValue": "BotLocale" } }, - "outputContexts": { - "target": "com.amazonaws.lexmodelsv2#OutputContextsList", + "CustomVocabulary": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The output contexts that are activated when this intent is\n fulfilled.

      " + "smithy.api#enumValue": "CustomVocabulary" } }, - "lastUpdatedDateTime": { - "target": "com.amazonaws.lexmodelsv2#Timestamp", + "TestSet": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The timestamp of the date and time that the intent was last\n updated.

      " + "smithy.api#enumValue": "TestSet" } } - }, - "traits": { - "smithy.api#documentation": "

      Summary information about an intent returned by the\n ListIntents operation.

      " - } - }, - "com.amazonaws.lexmodelsv2#IntentSummaryList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#IntentSummary" } }, - "com.amazonaws.lexmodelsv2#InternalServerException": { - "type": "structure", + "com.amazonaws.lexmodelsv2#ImportSortAttribute": { + "type": "enum", "members": { - "message": { - "target": "com.amazonaws.lexmodelsv2#ExceptionMessage" - } - }, - "traits": { - "smithy.api#documentation": "

      The service encountered an unexpected condition. Try your request\n again.

      ", - "smithy.api#error": "server", - "smithy.api#httpError": 500 - } - }, - "com.amazonaws.lexmodelsv2#ItemId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 32 + "LastUpdatedDateTime": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LastUpdatedDateTime" + } } } }, - "com.amazonaws.lexmodelsv2#KendraConfiguration": { + "com.amazonaws.lexmodelsv2#ImportSortBy": { "type": "structure", "members": { - "kendraIndex": { - "target": "com.amazonaws.lexmodelsv2#KendraIndexArn", + "attribute": { + "target": "com.amazonaws.lexmodelsv2#ImportSortAttribute", "traits": { - "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the\n AMAZON.KendraSearchIntent intent to search. The index must be in the\n same account and Region as the Amazon Lex bot.

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

      The export field to use for sorting.

      ", "smithy.api#required": {} } }, - "queryFilterStringEnabled": { - "target": "com.amazonaws.lexmodelsv2#Boolean", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

      Determines whether the AMAZON.KendraSearchIntent intent uses a\n custom query string to query the Amazon Kendra index.

      " - } - }, - "queryFilterString": { - "target": "com.amazonaws.lexmodelsv2#QueryFilterString", + "order": { + "target": "com.amazonaws.lexmodelsv2#SortOrder", "traits": { - "smithy.api#documentation": "

      A query filter that Amazon Lex sends to Amazon Kendra to filter the response from\n a query. The filter is in the format defined by Amazon Kendra. For more\n information, see Filtering\n queries.

      " + "smithy.api#documentation": "

      The order to sort the list.

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

      Provides configuration information for the AMAZON.KendraSearchIntent\n intent. When you use this intent, Amazon Lex searches the specified Amazon Kendra\n index and returns documents from the index that match the user's\n utterance.

      " + "smithy.api#documentation": "

      Provides information for sorting a list of imports.

      " } }, - "com.amazonaws.lexmodelsv2#KendraIndexArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 32, - "max": 2048 + "com.amazonaws.lexmodelsv2#ImportStatus": { + "type": "enum", + "members": { + "InProgress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "InProgress" + } }, - "smithy.api#pattern": "^arn:aws:kendra:[a-z]+-[a-z]+-[0-9]:[0-9]{12}:index\\/[a-zA-Z0-9][a-zA-Z0-9_-]*$" + "Completed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Completed" + } + }, + "Failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Failed" + } + }, + "Deleting": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Deleting" + } + } } }, - "com.amazonaws.lexmodelsv2#KmsKeyArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 20, - "max": 2048 + "com.amazonaws.lexmodelsv2#ImportSummary": { + "type": "structure", + "members": { + "importId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier that Amazon Lex assigned to the import.

      " + } }, - "smithy.api#pattern": "^arn:[\\w\\-]+:kms:[\\w\\-]+:[\\d]{12}:(?:key\\/[\\w\\-]+|alias\\/[a-zA-Z0-9:\\/_\\-]{1,256})$" + "importedResourceId": { + "target": "com.amazonaws.lexmodelsv2#ImportedResourceId", + "traits": { + "smithy.api#documentation": "

      The unique identifier that Amazon Lex assigned to the imported\n resource.

      " + } + }, + "importedResourceName": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      The name that you gave the imported resource.

      " + } + }, + "importStatus": { + "target": "com.amazonaws.lexmodelsv2#ImportStatus", + "traits": { + "smithy.api#documentation": "

      The status of the resource. When the status is\n Completed the resource is ready to build.

      " + } + }, + "mergeStrategy": { + "target": "com.amazonaws.lexmodelsv2#MergeStrategy", + "traits": { + "smithy.api#documentation": "

      The strategy used to merge existing bot or bot locale definitions\n with the imported definition.

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

      The date and time that the import was created.

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

      The date and time that the import was last updated.

      " + } + }, + "importedResourceType": { + "target": "com.amazonaws.lexmodelsv2#ImportResourceType", + "traits": { + "smithy.api#documentation": "

      The type of resource that was imported.

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

      Provides summary information about an import in an import\n list.

      " } }, - "com.amazonaws.lexmodelsv2#LambdaARN": { + "com.amazonaws.lexmodelsv2#ImportSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#ImportSummary" + } + }, + "com.amazonaws.lexmodelsv2#ImportedResourceId": { "type": "string", "traits": { "smithy.api#length": { - "min": 20, - "max": 2048 + "min": 5, + "max": 10 }, - "smithy.api#pattern": "^arn:aws:lambda:[a-z]+-[a-z]+-[0-9]:[0-9]{12}:function:[a-zA-Z0-9-_]+(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})?(:[a-zA-Z0-9-_]+)?$" + "smithy.api#pattern": "^([0-9a-zA-Z_])+$" } }, - "com.amazonaws.lexmodelsv2#LambdaCodeHook": { + "com.amazonaws.lexmodelsv2#InitialResponseSetting": { "type": "structure", "members": { - "lambdaARN": { - "target": "com.amazonaws.lexmodelsv2#LambdaARN", + "initialResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" + }, + "nextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", "traits": { - "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of the Lambda function.

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

      The next step in the conversation.

      " } }, - "codeHookInterfaceVersion": { - "target": "com.amazonaws.lexmodelsv2#CodeHookInterfaceVersion", + "conditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification" + }, + "codeHook": { + "target": "com.amazonaws.lexmodelsv2#DialogCodeHookInvocationSetting" + } + }, + "traits": { + "smithy.api#documentation": "

      Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.

      " + } + }, + "com.amazonaws.lexmodelsv2#InputContext": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The version of the request-response that you want Amazon Lex to use to\n invoke your Lambda function.

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

      The name of the context.

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

      Specifies a Lambda function that verifies requests to a bot or\n fulfills the user's request to a bot.

      " + "smithy.api#documentation": "

      A context that must be active for an intent to be\n selected by Amazon Lex.

      " } }, - "com.amazonaws.lexmodelsv2#LexModelBuildingServiceV2": { - "type": "service", - "version": "2020-08-07", - "operations": [ - { - "target": "com.amazonaws.lexmodelsv2#BatchCreateCustomVocabularyItem" - }, - { - "target": "com.amazonaws.lexmodelsv2#BatchDeleteCustomVocabularyItem" - }, - { - "target": "com.amazonaws.lexmodelsv2#BatchUpdateCustomVocabularyItem" - }, - { - "target": "com.amazonaws.lexmodelsv2#BuildBotLocale" - }, - { - "target": "com.amazonaws.lexmodelsv2#CreateBot" + "com.amazonaws.lexmodelsv2#InputContextsList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#InputContext" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 5 + } + } + }, + "com.amazonaws.lexmodelsv2#InputSessionStateSpecification": { + "type": "structure", + "members": { + "sessionAttributes": { + "target": "com.amazonaws.lexmodelsv2#StringMap", + "traits": { + "smithy.api#documentation": "

      Session attributes for the session state.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#CreateBotAlias" + "activeContexts": { + "target": "com.amazonaws.lexmodelsv2#ActiveContextList", + "traits": { + "smithy.api#documentation": "

      Active contexts for the session state.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#CreateBotLocale" + "runtimeHints": { + "target": "com.amazonaws.lexmodelsv2#RuntimeHints", + "traits": { + "smithy.api#documentation": "

      Runtime hints for the session state.

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

      Specifications for the current state of the dialog \n between the user and the bot in the test set.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentClassificationTestResultItem": { + "type": "structure", + "members": { + "intentName": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      The name of the intent.

      ", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.lexmodelsv2#CreateBotVersion" + "multiTurnConversation": { + "target": "com.amazonaws.lexmodelsv2#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

      Indicates whether the conversation involves multiple turns or not.

      ", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.lexmodelsv2#CreateExport" + "resultCounts": { + "target": "com.amazonaws.lexmodelsv2#IntentClassificationTestResultItemCounts", + "traits": { + "smithy.api#documentation": "

      The result of the intent classification test.

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

      Information for an intent that is classified by the test workbench.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentClassificationTestResultItemCounts": { + "type": "structure", + "members": { + "totalResultCount": { + "target": "com.amazonaws.lexmodelsv2#Count", + "traits": { + "smithy.api#documentation": "

      The total number of results in the intent classification test.

      ", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.lexmodelsv2#CreateIntent" + "speechTranscriptionResultCounts": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatusCountMap", + "traits": { + "smithy.api#documentation": "

      The number of matched, mismatched, and execution error results for speech transcription for the intent.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#CreateResourcePolicy" + "intentMatchResultCounts": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatusCountMap", + "traits": { + "smithy.api#documentation": "

      The number of matched and mismatched results for intent recognition for the intent.

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

      The number of items in the intent classification test.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentClassificationTestResultItemList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#IntentClassificationTestResultItem" + } + }, + "com.amazonaws.lexmodelsv2#IntentClassificationTestResults": { + "type": "structure", + "members": { + "items": { + "target": "com.amazonaws.lexmodelsv2#IntentClassificationTestResultItemList", + "traits": { + "smithy.api#documentation": "

      A list of the results for the intent classification test.

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

      Information for the results of the intent classification test.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentClosingSetting": { + "type": "structure", + "members": { + "closingResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification", + "traits": { + "smithy.api#documentation": "

      The response that Amazon Lex sends to the user when the intent is\n complete.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#CreateResourcePolicyStatement" + "active": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

      Specifies whether an intent's closing response is used. When this\n field is false, the closing response isn't sent to the user. If the\n active field isn't specified, the default is\n true.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#CreateSlot" + "nextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", + "traits": { + "smithy.api#documentation": "

      Specifies the next step that the bot executes after playing the\n intent's closing response.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#CreateSlotType" - }, - { - "target": "com.amazonaws.lexmodelsv2#CreateUploadUrl" - }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteBot" - }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteBotAlias" - }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteBotLocale" - }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteBotVersion" + "conditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "traits": { + "smithy.api#documentation": "

      A list of conditional branches associated with the intent's closing\n response. These branches are executed when the nextStep\n attribute is set to EvalutateConditional.

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

      Provides a statement the Amazon Lex conveys to the user when the intent\n is successfully fulfilled.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentConfirmationSetting": { + "type": "structure", + "members": { + "promptSpecification": { + "target": "com.amazonaws.lexmodelsv2#PromptSpecification", + "traits": { + "smithy.api#documentation": "

      Prompts the user to confirm the intent. This question should have a\n yes or no answer.

      \n

      Amazon Lex uses this prompt to ensure that the user acknowledges that the\n intent is ready for fulfillment. For example, with the\n OrderPizza intent, you might want to confirm that the\n order is correct before placing it. For other intents, such as intents\n that simply respond to user questions, you might not need to ask the\n user for confirmation before providing the information.

      ", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteCustomVocabulary" + "declinationResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification", + "traits": { + "smithy.api#documentation": "

      When the user answers \"no\" to the question defined in\n promptSpecification, Amazon Lex responds with this response\n to acknowledge that the intent was canceled.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteExport" + "active": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

      Specifies whether the intent's confirmation is sent to the user.\n When this field is false, confirmation and declination responses aren't\n sent. If the active field isn't specified, the default is\n true.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteImport" + "confirmationResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteIntent" + "confirmationNextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", + "traits": { + "smithy.api#documentation": "

      Specifies the next step that the bot executes when the customer\n confirms the intent.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteResourcePolicy" + "confirmationConditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "traits": { + "smithy.api#documentation": "

      A list of conditional branches to evaluate after the intent is\n closed.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteResourcePolicyStatement" + "declinationNextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", + "traits": { + "smithy.api#documentation": "

      Specifies the next step that the bot executes when the customer\n declines the intent.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteSlot" + "declinationConditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "traits": { + "smithy.api#documentation": "

      A list of conditional branches to evaluate after the intent is\n declined.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteSlotType" + "failureResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" }, - { - "target": "com.amazonaws.lexmodelsv2#DeleteUtterances" + "failureNextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", + "traits": { + "smithy.api#documentation": "

      The next step to take in the conversation if the confirmation step\n fails.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#DescribeBot" + "failureConditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification" }, - { - "target": "com.amazonaws.lexmodelsv2#DescribeBotAlias" + "codeHook": { + "target": "com.amazonaws.lexmodelsv2#DialogCodeHookInvocationSetting", + "traits": { + "smithy.api#documentation": "

      The DialogCodeHookInvocationSetting object associated\n with intent's confirmation step. The dialog code hook is triggered\n based on these invocation settings when the confirmation next step or\n declination next step or failure next step is\n InvokeDialogCodeHook.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#DescribeBotLocale" + "elicitationCodeHook": { + "target": "com.amazonaws.lexmodelsv2#ElicitationCodeHookInvocationSetting", + "traits": { + "smithy.api#documentation": "

      The DialogCodeHookInvocationSetting used when the code\n hook is invoked during confirmation prompt retries.

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

      Provides a prompt for making sure that the user is ready for the\n intent to be fulfilled.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentFilter": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.lexmodelsv2#IntentFilterName", + "traits": { + "smithy.api#documentation": "

      The name of the field to use for the filter.

      ", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.lexmodelsv2#DescribeBotRecommendation" + "values": { + "target": "com.amazonaws.lexmodelsv2#FilterValues", + "traits": { + "smithy.api#documentation": "

      The value to use for the filter.

      ", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.lexmodelsv2#DescribeBotVersion" + "operator": { + "target": "com.amazonaws.lexmodelsv2#IntentFilterOperator", + "traits": { + "smithy.api#documentation": "

      The operator to use for the filter. Specify EQ when the\n ListIntents operation should return only aliases that\n equal the specified value. Specify CO when the\n ListIntents operation should return aliases that\n contain the specified value.

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

      Filters the response from the ListIntents\n operation.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentFilterName": { + "type": "enum", + "members": { + "IntentName": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IntentName" + } + } + } + }, + "com.amazonaws.lexmodelsv2#IntentFilterOperator": { + "type": "enum", + "members": { + "Contains": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CO" + } }, - { - "target": "com.amazonaws.lexmodelsv2#DescribeCustomVocabularyMetadata" + "Equals": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EQ" + } + } + } + }, + "com.amazonaws.lexmodelsv2#IntentFilters": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#IntentFilter" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.lexmodelsv2#IntentLevelSlotResolutionTestResultItem": { + "type": "structure", + "members": { + "intentName": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      The name of the intent that was recognized.

      ", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.lexmodelsv2#DescribeExport" + "multiTurnConversation": { + "target": "com.amazonaws.lexmodelsv2#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

      Indicates whether the conversation involves multiple turns or not.

      ", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.lexmodelsv2#DescribeImport" + "slotResolutionResults": { + "target": "com.amazonaws.lexmodelsv2#SlotResolutionTestResultItems", + "traits": { + "smithy.api#documentation": "

      The results for the slot resolution in the test execution result.

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

      Information about intent-level slot resolution in a test result.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentLevelSlotResolutionTestResultItemList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#IntentLevelSlotResolutionTestResultItem" + } + }, + "com.amazonaws.lexmodelsv2#IntentLevelSlotResolutionTestResults": { + "type": "structure", + "members": { + "items": { + "target": "com.amazonaws.lexmodelsv2#IntentLevelSlotResolutionTestResultItemList", + "traits": { + "smithy.api#documentation": "

      Indicates the items for the slot level resolution for the intents.

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

      Indicates the success or failure of slots at the intent level.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentOverride": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      The name of the intent. Only required when you're switching\n intents.

      " + } }, - { - "target": "com.amazonaws.lexmodelsv2#DescribeIntent" + "slots": { + "target": "com.amazonaws.lexmodelsv2#SlotValueOverrideMap", + "traits": { + "smithy.api#documentation": "

      A map of all of the slot value overrides for the intent. The name of\n the slot maps to the value of the slot. Slots that are not included in\n the map aren't overridden.

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

      Override settings to configure the intent state.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentSignature": { + "type": "string" + }, + "com.amazonaws.lexmodelsv2#IntentSortAttribute": { + "type": "enum", + "members": { + "IntentName": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IntentName" + } }, - { - "target": "com.amazonaws.lexmodelsv2#DescribeResourcePolicy" + "LastUpdatedDateTime": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LastUpdatedDateTime" + } + } + } + }, + "com.amazonaws.lexmodelsv2#IntentSortBy": { + "type": "structure", + "members": { + "attribute": { + "target": "com.amazonaws.lexmodelsv2#IntentSortAttribute", + "traits": { + "smithy.api#documentation": "

      The attribute to use to sort the list of intents.

      ", + "smithy.api#required": {} + } + }, + "order": { + "target": "com.amazonaws.lexmodelsv2#SortOrder", + "traits": { + "smithy.api#documentation": "

      The order to sort the list. You can choose ascending or\n descending.

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

      Specifies attributes for sorting a list of intents.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentStatistics": { + "type": "structure", + "members": { + "discoveredIntentCount": { + "target": "com.amazonaws.lexmodelsv2#Count", + "traits": { + "smithy.api#documentation": "

      The number of recommended intents associated with the bot\n recommendation.

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

      The object that contains the statistical summary of recommended\n intents associated with the bot recommendation.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentSummary": { + "type": "structure", + "members": { + "intentId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier assigned to the intent. Use this ID to get\n detailed information about the intent with the\n DescribeIntent operation.

      " + } + }, + "intentName": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      The name of the intent.

      " + } + }, + "description": { + "target": "com.amazonaws.lexmodelsv2#Description", + "traits": { + "smithy.api#documentation": "

      The description of the intent.

      " + } + }, + "parentIntentSignature": { + "target": "com.amazonaws.lexmodelsv2#IntentSignature", + "traits": { + "smithy.api#documentation": "

      If this intent is derived from a built-in intent, the name of the\n parent intent.

      " + } + }, + "inputContexts": { + "target": "com.amazonaws.lexmodelsv2#InputContextsList", + "traits": { + "smithy.api#documentation": "

      The input contexts that must be active for this intent to be\n considered for recognition.

      " + } + }, + "outputContexts": { + "target": "com.amazonaws.lexmodelsv2#OutputContextsList", + "traits": { + "smithy.api#documentation": "

      The output contexts that are activated when this intent is\n fulfilled.

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

      The timestamp of the date and time that the intent was last\n updated.

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

      Summary information about an intent returned by the\n ListIntents operation.

      " + } + }, + "com.amazonaws.lexmodelsv2#IntentSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#IntentSummary" + } + }, + "com.amazonaws.lexmodelsv2#InternalServerException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.lexmodelsv2#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

      The service encountered an unexpected condition. Try your request\n again.

      ", + "smithy.api#error": "server", + "smithy.api#httpError": 500 + } + }, + "com.amazonaws.lexmodelsv2#ItemId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 32 + } + } + }, + "com.amazonaws.lexmodelsv2#KendraConfiguration": { + "type": "structure", + "members": { + "kendraIndex": { + "target": "com.amazonaws.lexmodelsv2#KendraIndexArn", + "traits": { + "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the\n AMAZON.KendraSearchIntent intent to search. The index must be in the\n same account and Region as the Amazon Lex bot.

      ", + "smithy.api#required": {} + } }, + "queryFilterStringEnabled": { + "target": "com.amazonaws.lexmodelsv2#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

      Determines whether the AMAZON.KendraSearchIntent intent uses a\n custom query string to query the Amazon Kendra index.

      " + } + }, + "queryFilterString": { + "target": "com.amazonaws.lexmodelsv2#QueryFilterString", + "traits": { + "smithy.api#documentation": "

      A query filter that Amazon Lex sends to Amazon Kendra to filter the response from\n a query. The filter is in the format defined by Amazon Kendra. For more\n information, see Filtering\n queries.

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

      Provides configuration information for the AMAZON.KendraSearchIntent\n intent. When you use this intent, Amazon Lex searches the specified Amazon Kendra\n index and returns documents from the index that match the user's\n utterance.

      " + } + }, + "com.amazonaws.lexmodelsv2#KendraIndexArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 32, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws:kendra:[a-z]+-[a-z]+-[0-9]:[0-9]{12}:index\\/[a-zA-Z0-9][a-zA-Z0-9_-]*$" + } + }, + "com.amazonaws.lexmodelsv2#KmsKeyArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 20, + "max": 2048 + }, + "smithy.api#pattern": "^arn:[\\w\\-]+:kms:[\\w\\-]+:[\\d]{12}:(?:key\\/[\\w\\-]+|alias\\/[a-zA-Z0-9:\\/_\\-]{1,256})$" + } + }, + "com.amazonaws.lexmodelsv2#LambdaARN": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 20, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws:lambda:[a-z]+-[a-z]+-[0-9]:[0-9]{12}:function:[a-zA-Z0-9-_]+(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})?(:[a-zA-Z0-9-_]+)?$" + } + }, + "com.amazonaws.lexmodelsv2#LambdaCodeHook": { + "type": "structure", + "members": { + "lambdaARN": { + "target": "com.amazonaws.lexmodelsv2#LambdaARN", + "traits": { + "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of the Lambda function.

      ", + "smithy.api#required": {} + } + }, + "codeHookInterfaceVersion": { + "target": "com.amazonaws.lexmodelsv2#CodeHookInterfaceVersion", + "traits": { + "smithy.api#documentation": "

      The version of the request-response that you want Amazon Lex to use to\n invoke your Lambda function.

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

      Specifies a Lambda function that verifies requests to a bot or\n fulfills the user's request to a bot.

      " + } + }, + "com.amazonaws.lexmodelsv2#LexModelBuildingServiceV2": { + "type": "service", + "version": "2020-08-07", + "operations": [ { - "target": "com.amazonaws.lexmodelsv2#DescribeSlot" + "target": "com.amazonaws.lexmodelsv2#BatchCreateCustomVocabularyItem" }, { - "target": "com.amazonaws.lexmodelsv2#DescribeSlotType" + "target": "com.amazonaws.lexmodelsv2#BatchDeleteCustomVocabularyItem" }, { - "target": "com.amazonaws.lexmodelsv2#ListAggregatedUtterances" + "target": "com.amazonaws.lexmodelsv2#BatchUpdateCustomVocabularyItem" }, { - "target": "com.amazonaws.lexmodelsv2#ListBotAliases" + "target": "com.amazonaws.lexmodelsv2#BuildBotLocale" }, { - "target": "com.amazonaws.lexmodelsv2#ListBotLocales" + "target": "com.amazonaws.lexmodelsv2#CreateBot" }, { - "target": "com.amazonaws.lexmodelsv2#ListBotRecommendations" + "target": "com.amazonaws.lexmodelsv2#CreateBotAlias" }, { - "target": "com.amazonaws.lexmodelsv2#ListBots" + "target": "com.amazonaws.lexmodelsv2#CreateBotLocale" }, { - "target": "com.amazonaws.lexmodelsv2#ListBotVersions" + "target": "com.amazonaws.lexmodelsv2#CreateBotVersion" }, { - "target": "com.amazonaws.lexmodelsv2#ListBuiltInIntents" + "target": "com.amazonaws.lexmodelsv2#CreateExport" }, { - "target": "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypes" + "target": "com.amazonaws.lexmodelsv2#CreateIntent" }, { - "target": "com.amazonaws.lexmodelsv2#ListCustomVocabularyItems" + "target": "com.amazonaws.lexmodelsv2#CreateResourcePolicy" }, { - "target": "com.amazonaws.lexmodelsv2#ListExports" + "target": "com.amazonaws.lexmodelsv2#CreateResourcePolicyStatement" }, { - "target": "com.amazonaws.lexmodelsv2#ListImports" + "target": "com.amazonaws.lexmodelsv2#CreateSlot" }, { - "target": "com.amazonaws.lexmodelsv2#ListIntents" + "target": "com.amazonaws.lexmodelsv2#CreateSlotType" }, { - "target": "com.amazonaws.lexmodelsv2#ListRecommendedIntents" + "target": "com.amazonaws.lexmodelsv2#CreateTestSetDiscrepancyReport" }, { - "target": "com.amazonaws.lexmodelsv2#ListSlots" + "target": "com.amazonaws.lexmodelsv2#CreateUploadUrl" }, { - "target": "com.amazonaws.lexmodelsv2#ListSlotTypes" + "target": "com.amazonaws.lexmodelsv2#DeleteBot" }, { - "target": "com.amazonaws.lexmodelsv2#ListTagsForResource" + "target": "com.amazonaws.lexmodelsv2#DeleteBotAlias" }, { - "target": "com.amazonaws.lexmodelsv2#SearchAssociatedTranscripts" + "target": "com.amazonaws.lexmodelsv2#DeleteBotLocale" }, { - "target": "com.amazonaws.lexmodelsv2#StartBotRecommendation" + "target": "com.amazonaws.lexmodelsv2#DeleteBotVersion" }, { - "target": "com.amazonaws.lexmodelsv2#StartImport" + "target": "com.amazonaws.lexmodelsv2#DeleteCustomVocabulary" }, { - "target": "com.amazonaws.lexmodelsv2#StopBotRecommendation" + "target": "com.amazonaws.lexmodelsv2#DeleteExport" }, { - "target": "com.amazonaws.lexmodelsv2#TagResource" + "target": "com.amazonaws.lexmodelsv2#DeleteImport" }, { - "target": "com.amazonaws.lexmodelsv2#UntagResource" + "target": "com.amazonaws.lexmodelsv2#DeleteIntent" }, { - "target": "com.amazonaws.lexmodelsv2#UpdateBot" + "target": "com.amazonaws.lexmodelsv2#DeleteResourcePolicy" }, { - "target": "com.amazonaws.lexmodelsv2#UpdateBotAlias" + "target": "com.amazonaws.lexmodelsv2#DeleteResourcePolicyStatement" }, { - "target": "com.amazonaws.lexmodelsv2#UpdateBotLocale" + "target": "com.amazonaws.lexmodelsv2#DeleteSlot" }, { - "target": "com.amazonaws.lexmodelsv2#UpdateBotRecommendation" + "target": "com.amazonaws.lexmodelsv2#DeleteSlotType" }, { - "target": "com.amazonaws.lexmodelsv2#UpdateExport" + "target": "com.amazonaws.lexmodelsv2#DeleteTestSet" + }, + { + "target": "com.amazonaws.lexmodelsv2#DeleteUtterances" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeBot" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeBotAlias" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeBotLocale" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeBotRecommendation" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeBotVersion" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeCustomVocabularyMetadata" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeExport" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeImport" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeIntent" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeResourcePolicy" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeSlot" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeSlotType" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeTestExecution" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeTestSet" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeTestSetDiscrepancyReport" + }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeTestSetGeneration" + }, + { + "target": "com.amazonaws.lexmodelsv2#GetTestExecutionArtifactsUrl" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListAggregatedUtterances" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListBotAliases" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListBotLocales" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListBotRecommendations" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListBots" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListBotVersions" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListBuiltInIntents" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypes" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListCustomVocabularyItems" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListExports" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListImports" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListIntents" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListRecommendedIntents" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListSlots" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListSlotTypes" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListTagsForResource" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListTestExecutionResultItems" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListTestExecutions" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListTestSetRecords" + }, + { + "target": "com.amazonaws.lexmodelsv2#ListTestSets" + }, + { + "target": "com.amazonaws.lexmodelsv2#SearchAssociatedTranscripts" + }, + { + "target": "com.amazonaws.lexmodelsv2#StartBotRecommendation" + }, + { + "target": "com.amazonaws.lexmodelsv2#StartImport" + }, + { + "target": "com.amazonaws.lexmodelsv2#StartTestExecution" + }, + { + "target": "com.amazonaws.lexmodelsv2#StartTestSetGeneration" + }, + { + "target": "com.amazonaws.lexmodelsv2#StopBotRecommendation" + }, + { + "target": "com.amazonaws.lexmodelsv2#TagResource" + }, + { + "target": "com.amazonaws.lexmodelsv2#UntagResource" + }, + { + "target": "com.amazonaws.lexmodelsv2#UpdateBot" + }, + { + "target": "com.amazonaws.lexmodelsv2#UpdateBotAlias" + }, + { + "target": "com.amazonaws.lexmodelsv2#UpdateBotLocale" + }, + { + "target": "com.amazonaws.lexmodelsv2#UpdateBotRecommendation" + }, + { + "target": "com.amazonaws.lexmodelsv2#UpdateExport" }, { "target": "com.amazonaws.lexmodelsv2#UpdateIntent" @@ -9003,6 +10533,9 @@ }, { "target": "com.amazonaws.lexmodelsv2#UpdateSlotType" + }, + { + "target": "com.amazonaws.lexmodelsv2#UpdateTestSet" } ], "traits": { @@ -9024,7 +10557,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -9053,13 +10586,12 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], "type": "tree", @@ -9067,14 +10599,20 @@ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } + "ref": "UseFIPS" + }, + true ] } ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], "type": "tree", "rules": [ { @@ -9083,67 +10621,42 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", "type": "error" }, { "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "endpoint": { + "url": { + "ref": "Endpoint" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, + } + ] + }, + { + "conditions": [], + "type": "tree", + "rules": [ { "conditions": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", + "fn": "isSet", "argv": [ { - "ref": "UseDualStack" - }, - true + "ref": "Region" + } ] } ], @@ -9152,90 +10665,215 @@ { "conditions": [ { - "fn": "booleanEquals", + "fn": "aws.partition", "argv": [ - true, { - "fn": "getAttr", + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] }, - "supportsFIPS" + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://models-v2-lex-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } ] }, { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "supportsDualStack" + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://models-v2-lex-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } ] - } - ], - "type": "tree", - "rules": [ + }, { - "conditions": [], - "endpoint": { - "url": "https://models-v2-lex-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "supportsFIPS" + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://models-v2-lex.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] - } - ], - "type": "tree", - "rules": [ + }, { "conditions": [], "type": "tree", @@ -9243,7 +10881,7 @@ { "conditions": [], "endpoint": { - "url": "https://models-v2-lex-fips.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://models-v2-lex.{Region}.{PartitionResult#dnsSuffix}", "properties": {}, "headers": {} }, @@ -9252,74 +10890,13 @@ ] } ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://models-v2-lex.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } ] }, { "conditions": [], - "endpoint": { - "url": "https://models-v2-lex.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } @@ -9328,94 +10905,81 @@ "smithy.rules#endpointTests": { "testCases": [ { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://models-v2-lex-fips.ca-central-1.api.aws" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "ca-central-1" - } - }, - { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.ca-central-1.amazonaws.com" + "url": "https://models-v2-lex.af-south-1.amazonaws.com" } }, "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "ca-central-1" + "Region": "af-south-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.ca-central-1.api.aws" + "url": "https://models-v2-lex.ap-northeast-1.amazonaws.com" } }, "params": { + "Region": "ap-northeast-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "ca-central-1" + "UseDualStack": false } }, { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.ca-central-1.amazonaws.com" + "url": "https://models-v2-lex.ap-northeast-2.amazonaws.com" } }, "params": { + "Region": "ap-northeast-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "ca-central-1" + "UseDualStack": false } }, { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.eu-central-1.api.aws" + "url": "https://models-v2-lex.ap-southeast-1.amazonaws.com" } }, "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-central-1" + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.eu-central-1.amazonaws.com" + "url": "https://models-v2-lex.ap-southeast-2.amazonaws.com" } }, "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-central-1" + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.eu-central-1.api.aws" + "url": "https://models-v2-lex.ca-central-1.amazonaws.com" } }, "params": { + "Region": "ca-central-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-central-1" + "UseDualStack": false } }, { @@ -9426,48 +10990,48 @@ } }, "params": { + "Region": "eu-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-central-1" + "UseDualStack": false } }, { - "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.us-west-2.api.aws" + "url": "https://models-v2-lex.eu-west-1.amazonaws.com" } }, "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "us-west-2" + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.us-west-2.amazonaws.com" + "url": "https://models-v2-lex.eu-west-2.amazonaws.com" } }, "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "us-west-2" + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.us-west-2.api.aws" + "url": "https://models-v2-lex.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-west-2" + "UseDualStack": false } }, { @@ -9478,463 +11042,305 @@ } }, "params": { + "Region": "us-west-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-2" + "UseDualStack": false } }, { - "documentation": "For region af-south-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.af-south-1.api.aws" + "url": "https://models-v2-lex-fips.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "af-south-1" + "UseDualStack": true } }, { - "documentation": "For region af-south-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.af-south-1.amazonaws.com" + "url": "https://models-v2-lex-fips.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "af-south-1" - } - }, - { - "documentation": "For region af-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://models-v2-lex.af-south-1.api.aws" - } - }, - "params": { - "UseFIPS": false, - "UseDualStack": true, - "Region": "af-south-1" + "UseDualStack": false } }, { - "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.af-south-1.amazonaws.com" + "url": "https://models-v2-lex.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "af-south-1" + "UseDualStack": true } }, { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.eu-west-2.api.aws" + "url": "https://models-v2-lex-fips.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-west-2" + "UseDualStack": true } }, { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.eu-west-2.amazonaws.com" + "url": "https://models-v2-lex-fips.cn-north-1.amazonaws.com.cn" } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-west-2" + "UseDualStack": false } }, { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.eu-west-2.api.aws" + "url": "https://models-v2-lex.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-west-2" + "UseDualStack": true } }, { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.eu-west-2.amazonaws.com" + "url": "https://models-v2-lex.cn-north-1.amazonaws.com.cn" } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-2" + "UseDualStack": false } }, { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.eu-west-1.api.aws" + "url": "https://models-v2-lex-fips.us-gov-east-1.api.aws" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-west-1" + "UseDualStack": true } }, { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.eu-west-1.amazonaws.com" + "url": "https://models-v2-lex-fips.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-west-1" + "UseDualStack": false } }, { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.eu-west-1.api.aws" + "url": "https://models-v2-lex.us-gov-east-1.api.aws" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-west-1" + "UseDualStack": true } }, { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.eu-west-1.amazonaws.com" + "url": "https://models-v2-lex.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-1" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://models-v2-lex-fips.ap-northeast-2.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-northeast-2" + "UseDualStack": true } }, { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.ap-northeast-2.amazonaws.com" + "url": "https://models-v2-lex-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://models-v2-lex.ap-northeast-2.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-northeast-2" + "UseDualStack": true } }, { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.ap-northeast-2.amazonaws.com" + "url": "https://models-v2-lex.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://models-v2-lex-fips.ap-northeast-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-northeast-1" + "UseDualStack": true } }, { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex-fips.ap-northeast-1.amazonaws.com" + "url": "https://models-v2-lex-fips.us-isob-east-1.sc2s.sgov.gov" } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-northeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://models-v2-lex.ap-northeast-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-northeast-1" + "UseDualStack": true } }, { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.ap-northeast-1.amazonaws.com" + "url": "https://models-v2-lex.us-isob-east-1.sc2s.sgov.gov" } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-1" - } - }, - { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://models-v2-lex-fips.ap-southeast-1.api.aws" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-southeast-1" - } - }, - { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://models-v2-lex-fips.ap-southeast-1.amazonaws.com" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.ap-southeast-1.api.aws" + "url": "https://example.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-southeast-1" + "UseDualStack": false, + "Endpoint": "https://example.com" } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", "expect": { "endpoint": { - "url": "https://models-v2-lex.ap-southeast-1.amazonaws.com" + "url": "https://example.com" } }, "params": { "UseFIPS": false, "UseDualStack": false, - "Region": "ap-southeast-1" - } - }, - { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://models-v2-lex-fips.ap-southeast-2.api.aws" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-southeast-2" + "Endpoint": "https://example.com" } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "documentation": "For custom endpoint with fips enabled and dualstack disabled", "expect": { - "endpoint": { - "url": "https://models-v2-lex-fips.ap-southeast-2.amazonaws.com" - } + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false, - "Region": "ap-southeast-2" + "Endpoint": "https://example.com" } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "documentation": "For custom endpoint with fips disabled and dualstack enabled", "expect": { - "endpoint": { - "url": "https://models-v2-lex.ap-southeast-2.api.aws" - } + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true, - "Region": "ap-southeast-2" + "Endpoint": "https://example.com" } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "documentation": "Missing region", "expect": { - "endpoint": { - "url": "https://models-v2-lex.ap-southeast-2.amazonaws.com" - } - }, - "params": { - "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-2" - } - }, - { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://models-v2-lex-fips.us-east-1.api.aws" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "us-east-1" - } - }, - { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://models-v2-lex-fips.us-east-1.amazonaws.com" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-1" - } - }, - { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://models-v2-lex.us-east-1.api.aws" - } - }, - "params": { - "UseFIPS": false, - "UseDualStack": true, - "Region": "us-east-1" - } - }, - { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://models-v2-lex.us-east-1.amazonaws.com" - } - }, - "params": { - "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-1" - } - }, - { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", - "expect": { - "endpoint": { - "url": "https://example.com" - } - }, - "params": { - "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-1", - "Endpoint": "https://example.com" - } - }, - { - "documentation": "For custom endpoint with fips enabled and dualstack disabled", - "expect": { - "error": "Invalid Configuration: FIPS and custom endpoint are not supported" - }, - "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-1", - "Endpoint": "https://example.com" - } - }, - { - "documentation": "For custom endpoint with fips disabled and dualstack enabled", - "expect": { - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" - }, - "params": { - "UseFIPS": false, - "UseDualStack": true, - "Region": "us-east-1", - "Endpoint": "https://example.com" + "error": "Invalid Configuration: Missing Region" } } ], @@ -9942,34 +11348,1806 @@ } } }, - "com.amazonaws.lexmodelsv2#LexTranscriptFilter": { + "com.amazonaws.lexmodelsv2#LexTranscriptFilter": { + "type": "structure", + "members": { + "dateRangeFilter": { + "target": "com.amazonaws.lexmodelsv2#DateRangeFilter", + "traits": { + "smithy.api#documentation": "

      The object that contains a date range filter that will be applied to\n the transcript. Specify this object if you want Amazon Lex to only read the\n files that are within the date range.

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

      The object that contains transcript filter details that are\n associated with a bot recommendation.

      " + } + }, + "com.amazonaws.lexmodelsv2#ListAggregatedUtterances": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListAggregatedUtterancesRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListAggregatedUtterancesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Provides a list of utterances that users have sent to the\n bot.

      \n

      Utterances are aggregated by the text of the utterance. For example,\n all instances where customers used the phrase \"I want to order pizza\"\n are aggregated into the same line in the response.

      \n

      You can see both detected utterances and missed utterances. A\n detected utterance is where the bot properly recognized the utterance\n and activated the associated intent. A missed utterance was not\n recognized by the bot and didn't activate an intent.

      \n

      Utterances can be aggregated for a bot alias or for a bot version,\n but not both at the same time.

      \n

      Utterances statistics are not generated under the following\n conditions:

      \n
        \n
      • \n

        The childDirected field was set to true when the\n bot was created.

        \n
      • \n
      • \n

        You are using slot obfuscation with one or more slots.

        \n
      • \n
      • \n

        You opted out of participating in improving Amazon Lex.

        \n
      • \n
      ", + "smithy.api#http": { + "method": "POST", + "uri": "/bots/{botId}/aggregatedutterances", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListAggregatedUtterancesRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot associated with this\n request.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botAliasId": { + "target": "com.amazonaws.lexmodelsv2#BotAliasId", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot alias associated with this request. If you\n specify the bot alias, you can't specify the bot version.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot version associated with this request. If\n you specify the bot version, you can't specify the bot alias.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale where the utterances were\n collected. For more information, see Supported\n languages.

      ", + "smithy.api#required": {} + } + }, + "aggregationDuration": { + "target": "com.amazonaws.lexmodelsv2#UtteranceAggregationDuration", + "traits": { + "smithy.api#documentation": "

      The time window for aggregating the utterance information. You can\n specify a time between one hour and two weeks.

      ", + "smithy.api#required": {} + } + }, + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#AggregatedUtterancesSortBy", + "traits": { + "smithy.api#documentation": "

      Specifies sorting parameters for the list of utterances. You can\n sort by the hit count, the missed count, or the number of distinct\n sessions the utterance appeared in.

      " + } + }, + "filters": { + "target": "com.amazonaws.lexmodelsv2#AggregatedUtterancesFilters", + "traits": { + "smithy.api#documentation": "

      Provides the specification of a filter used to limit the utterances\n in the response to only those that match the filter specification. You\n can only specify one filter and one string to filter on.

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

      The maximum number of utterances to return in each page of results.\n If there are fewer results than the maximum page size, only the actual\n number of results are returned. If you don't specify the\n maxResults parameter, 1,000 results are\n returned.

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

      If the response from the ListAggregatedUtterances\n operation contains more results that specified in the\n maxResults parameter, a token is returned in the\n response. Use that token in the nextToken parameter to\n return the next page of results.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListAggregatedUtterancesResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot that contains the utterances.

      " + } + }, + "botAliasId": { + "target": "com.amazonaws.lexmodelsv2#BotAliasId", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot alias that contains the utterances. If you\n specified the bot version, the bot alias ID isn't returned.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot version that contains the utterances. If\n you specified the bot alias, the bot version isn't returned.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale that the utterances are\n in.

      " + } + }, + "aggregationDuration": { + "target": "com.amazonaws.lexmodelsv2#UtteranceAggregationDuration", + "traits": { + "smithy.api#documentation": "

      The time period used to aggregate the utterance data.

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

      The date and time that the aggregation window begins. Only data\n collected after this time is returned in the results.

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

      The date and time that the aggregation window ends. Only data\n collected between the start time and the end time are returned in the\n results.

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

      The last date and time that the aggregated data was collected. The\n time period depends on the length of the aggregation window.

      \n
        \n
      • \n

        \n Hours - for 1 hour time\n window, every half hour; otherwise every hour.

        \n
      • \n
      • \n

        \n Days - every 6 hours

        \n
      • \n
      • \n

        \n Weeks - for a one week time\n window, every 12 hours; otherwise, every day

        \n
      • \n
      " + } + }, + "aggregatedUtterancesSummaries": { + "target": "com.amazonaws.lexmodelsv2#AggregatedUtterancesSummaryList", + "traits": { + "smithy.api#documentation": "

      Summaries of the aggregated utterance data. Each response contains\n information about the number of times that the utterance was seen\n during the time period, whether it was detected or missed, and when it\n was seen during the time period.

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

      A token that indicates whether there are more results to return in a\n response to the ListAggregatedUtterances operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a\n ListAggregatedUtterances operation request to get the\n next page of results.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBotAliases": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListBotAliasesRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListBotAliasesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets a list of aliases for the specified bot.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/bots/{botId}/botaliases", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListBotAliasesRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot to list aliases for.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "maxResults": { + "target": "com.amazonaws.lexmodelsv2#MaxResults", + "traits": { + "smithy.api#documentation": "

      The maximum number of aliases to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

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

      If the response from the ListBotAliases operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBotAliasesResponse": { + "type": "structure", + "members": { + "botAliasSummaries": { + "target": "com.amazonaws.lexmodelsv2#BotAliasSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the bot aliases that meet the filter\n criteria specified in the request. The length of the list is specified\n in the maxResults parameter of the request. If there are\n more aliases available, the nextToken field contains a\n token to get the next page of results.

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

      A token that indicates whether there are more results to return in a\n response to the ListBotAliases operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListBotAliases\n operation request to get the next page of results.

      " + } + }, + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot associated with the aliases.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBotLocales": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListBotLocalesRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListBotLocalesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets a list of locales for the specified bot.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListBotLocalesRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot to list locales for.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot to list locales for.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#BotLocaleSortBy", + "traits": { + "smithy.api#documentation": "

      Specifies sorting parameters for the list of locales. You can sort\n by locale name in ascending or descending order.

      " + } + }, + "filters": { + "target": "com.amazonaws.lexmodelsv2#BotLocaleFilters", + "traits": { + "smithy.api#documentation": "

      Provides the specification for a filter used to limit the response\n to only those locales that match the filter specification. You can only\n specify one filter and one value to filter on.

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

      The maximum number of aliases to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

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

      If the response from the ListBotLocales operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token as the\n nextToken parameter to return the next page of results.\n

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBotLocalesResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot to list locales for.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot.

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

      A token that indicates whether there are more results to return in a\n response to the ListBotLocales operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListBotLocales\n operation request to get the next page of results.

      " + } + }, + "botLocaleSummaries": { + "target": "com.amazonaws.lexmodelsv2#BotLocaleSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the locales that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more\n locales available, the nextToken field contains a token to\n get the next page of results.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBotRecommendations": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListBotRecommendationsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListBotRecommendationsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Get a list of bot recommendations that meet the specified\n criteria.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListBotRecommendationsRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot that contains the bot\n recommendation list.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the bot recommendation\n list.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale of the bot recommendation\n list.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "maxResults": { + "target": "com.amazonaws.lexmodelsv2#MaxResults", + "traits": { + "smithy.api#documentation": "

      The maximum number of bot recommendations to return in each page of\n results. If there are fewer results than the max page size, only the\n actual number of results are returned.

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

      If the response from the ListBotRecommendation operation contains\n more results than specified in the maxResults parameter, a token is\n returned in the response. Use that token in the nextToken parameter to\n return the next page of results.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBotRecommendationsResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot that contains the bot\n recommendation list.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the bot recommendation\n list.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale of the bot recommendation\n list.

      " + } + }, + "botRecommendationSummaries": { + "target": "com.amazonaws.lexmodelsv2#BotRecommendationSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the bot recommendations that meet the filter\n specified in this request. The length of the list is specified in the\n maxResults parameter of the request. If there are more bot\n recommendations available, the nextToken field contains a token to get\n the next page of results.

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

      A token that indicates whether there are more results to return in a\n response to the ListBotRecommendations operation. If the nextToken\n field is present, you send the contents as the nextToken parameter of a\n ListBotRecommendations operation request to get the next page of\n results.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBotVersions": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListBotVersionsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListBotVersionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets information about all of the versions of a bot.

      \n

      The ListBotVersions operation returns a summary of each\n version of a bot. For example, if a bot has three numbered versions,\n the ListBotVersions operation returns for summaries, one\n for each numbered version and one for the DRAFT\n version.

      \n

      The ListBotVersions operation always returns at least\n one version, the DRAFT version.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/bots/{botId}/botversions", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListBotVersionsRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot to list versions for.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#BotVersionSortBy", + "traits": { + "smithy.api#documentation": "

      Specifies sorting parameters for the list of versions. You can\n specify that the list be sorted by version name in either ascending or\n descending order.

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

      The maximum number of versions to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

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

      If the response to the ListBotVersion operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBotVersionsResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot to list versions for.

      " + } + }, + "botVersionSummaries": { + "target": "com.amazonaws.lexmodelsv2#BotVersionSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the bot versions that meet the filter\n criteria specified in the request. The length of the list is specified\n in the maxResults parameter of the request. If there are\n more versions available, the nextToken field contains a\n token to get the next page of results.

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

      A token that indicates whether there are more results to return in a\n response to the ListBotVersions operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListBotAliases\n operation request to get the next page of results.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBots": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListBotsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListBotsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets a list of available bots.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/bots", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListBotsRequest": { + "type": "structure", + "members": { + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#BotSortBy", + "traits": { + "smithy.api#documentation": "

      Specifies sorting parameters for the list of bots. You can specify\n that the list be sorted by bot name in ascending or descending\n order.

      " + } + }, + "filters": { + "target": "com.amazonaws.lexmodelsv2#BotFilters", + "traits": { + "smithy.api#documentation": "

      Provides the specification of a filter used to limit the bots in the\n response to only those that match the filter specification. You can\n only specify one filter and one string to filter on.

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

      The maximum number of bots to return in each page of results. If\n there are fewer results than the maximum page size, only the actual\n number of results are returned.

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

      If the response from the ListBots operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response.

      \n

      Use the returned token in the nextToken parameter of a\n ListBots request to return the next page of results.\n For a complete set of results, call the ListBots operation\n until the nextToken returned in the response is\n null.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBotsResponse": { + "type": "structure", + "members": { + "botSummaries": { + "target": "com.amazonaws.lexmodelsv2#BotSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the bots that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more\n bots available, the nextToken field contains a token to\n the next page of results.

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

      A token that indicates whether there are more results to return in a\n response to the ListBots operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListBots\n operation request to get the next page of results.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBuiltInIntents": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListBuiltInIntentsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListBuiltInIntentsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets a list of built-in intents provided by Amazon Lex that you can use\n in your bot.

      \n

      To use a built-in intent as a the base for your own intent, include\n the built-in intent signature in the parentIntentSignature\n parameter when you call the CreateIntent operation. For\n more information, see CreateIntent.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/builtins/locales/{localeId}/intents", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListBuiltInIntentsRequest": { + "type": "structure", + "members": { + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale of the intents to list.\n The string must match one of the supported locales. For more\n information, see Supported languages.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#BuiltInIntentSortBy", + "traits": { + "smithy.api#documentation": "

      Specifies sorting parameters for the list of built-in intents. You\n can specify that the list be sorted by the built-in intent signature in\n either ascending or descending order.

      " + } + }, + "maxResults": { + "target": "com.amazonaws.lexmodelsv2#BuiltInsMaxResults", + "traits": { + "smithy.api#documentation": "

      The maximum number of built-in intents to return in each page of\n results. If there are fewer results than the max page size, only the\n actual number of results are returned.

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

      If the response from the ListBuiltInIntents operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBuiltInIntentsResponse": { + "type": "structure", + "members": { + "builtInIntentSummaries": { + "target": "com.amazonaws.lexmodelsv2#BuiltInIntentSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the built-in intents that meet the filter\n criteria specified in the request. The length of the list is specified\n in the maxResults parameter of the request. If there are\n more intents available, the nextToken field contains a\n token to get the next page of results.

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

      A token that indicates whether there are more results to return in a\n response to the ListBuiltInIntents operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListBotAliases\n operation request to get the next page of results.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The language and locale of the intents in the list.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypes": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypesRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets a list of built-in slot types that meet the specified\n criteria.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/builtins/locales/{localeId}/slottypes", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypesRequest": { + "type": "structure", + "members": { + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale of the slot types to list.\n The string must match one of the supported locales. For more\n information, see Supported languages.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#BuiltInSlotTypeSortBy", + "traits": { + "smithy.api#documentation": "

      Determines the sort order for the response from the\n ListBuiltInSlotTypes operation. You can choose to sort\n by the slot type signature in either ascending or descending\n order.

      " + } + }, + "maxResults": { + "target": "com.amazonaws.lexmodelsv2#BuiltInsMaxResults", + "traits": { + "smithy.api#documentation": "

      The maximum number of built-in slot types to return in each page of\n results. If there are fewer results than the max page size, only the\n actual number of results are returned.

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

      If the response from the ListBuiltInSlotTypes operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypesResponse": { + "type": "structure", + "members": { + "builtInSlotTypeSummaries": { + "target": "com.amazonaws.lexmodelsv2#BuiltInSlotTypeSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the built-in slot types that meet the filter\n criteria specified in the request. The length of the list is specified\n in the maxResults parameter of the request. If there are\n more slot types available, the nextToken field contains a\n token to get the next page of results.

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

      A token that indicates whether there are more results to return in a\n response to the ListBuiltInSlotTypes operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a\n LIstBuiltInSlotTypes operation request to get the next\n page of results.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The language and locale of the slot types in the list.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListCustomVocabularyItems": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListCustomVocabularyItemsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListCustomVocabularyItemsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Paginated list of custom vocabulary items for a given bot locale's \n custom vocabulary.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/customvocabulary/DEFAULT/list", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListCustomVocabularyItemsRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the version of the bot associated with this custom \n vocabulary.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The bot version of the bot to the list custom vocabulary \n request.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale where this custom vocabulary \n is used. The string must match one of the supported locales. For more \n information, see Supported \n languages (https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html).

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "maxResults": { + "target": "com.amazonaws.lexmodelsv2#MaxResults", + "traits": { + "smithy.api#documentation": "

      The maximum number of items returned by the list operation.

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

      The nextToken identifier to the list custom vocabulary \n request.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListCustomVocabularyItemsResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot associated with this custom vocabulary.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The identifier of the version of the bot associated with this custom \n vocabulary.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale where this custom vocabulary \n is used. The string must match one of the supported locales. For more \n information, see Supported Languages .

      " + } + }, + "customVocabularyItems": { + "target": "com.amazonaws.lexmodelsv2#CustomVocabularyItems", + "traits": { + "smithy.api#documentation": "

      The custom vocabulary items from the list custom vocabulary \n response.

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

      The nextToken identifier to the list custom vocabulary \n response.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListExports": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListExportsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListExportsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Lists the exports for a bot, bot locale, or custom vocabulary.\n Exports are kept in the list for 7 days.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/exports", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListExportsRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier that Amazon Lex assigned to the bot.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot to list exports for.

      " + } + }, + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#ExportSortBy", + "traits": { + "smithy.api#documentation": "

      Determines the field that the list of exports is sorted by. You can\n sort by the LastUpdatedDateTime field in ascending or\n descending order.

      " + } + }, + "filters": { + "target": "com.amazonaws.lexmodelsv2#ExportFilters", + "traits": { + "smithy.api#documentation": "

      Provides the specification of a filter used to limit the exports in\n the response to only those that match the filter specification. You can\n only specify one filter and one string to filter on.

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

      The maximum number of exports to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

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

      If the response from the ListExports operation contains\n more results that specified in the maxResults parameter, a\n token is returned in the response.

      \n

      Use the returned token in the nextToken parameter of a\n ListExports request to return the next page of results.\n For a complete set of results, call the ListExports\n operation until the nextToken returned in the response is\n null.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      Specifies the resources that should be exported. If you\n don't specify a resource type in the filters parameter,\n both bot locales and custom vocabularies are exported.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListExportsResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier assigned to the bot by Amazon Lex.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that was exported.

      " + } + }, + "exportSummaries": { + "target": "com.amazonaws.lexmodelsv2#ExportSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the exports that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter. If there are more exports\n available, the nextToken field contains a token to get the\n next page of results.

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

      A token that indicates whether there are more results to return in a\n response to the ListExports operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListExports\n operation request to get the next page of results.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The locale specified in the request.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListImports": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListImportsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListImportsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Lists the imports for a bot, bot locale, or custom vocabulary.\n Imports are kept in the list for 7 days.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/imports", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListImportsRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier that Amazon Lex assigned to the bot.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot to list imports for.

      " + } + }, + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#ImportSortBy", + "traits": { + "smithy.api#documentation": "

      Determines the field that the list of imports is sorted by. You can\n sort by the LastUpdatedDateTime field in ascending or\n descending order.

      " + } + }, + "filters": { + "target": "com.amazonaws.lexmodelsv2#ImportFilters", + "traits": { + "smithy.api#documentation": "

      Provides the specification of a filter used to limit the bots in the\n response to only those that match the filter specification. You can\n only specify one filter and one string to filter on.

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

      The maximum number of imports to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

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

      If the response from the ListImports operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response.

      \n

      Use the returned token in the nextToken parameter of a\n ListImports request to return the next page of results.\n For a complete set of results, call the ListImports\n operation until the nextToken returned in the response is\n null.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      Specifies the locale that should be present in the list. If you\n don't specify a resource type in the filters parameter,\n the list contains both bot locales and custom vocabularies.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListImportsResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier assigned by Amazon Lex to the bot.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that was imported. It will always be\n DRAFT.

      " + } + }, + "importSummaries": { + "target": "com.amazonaws.lexmodelsv2#ImportSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the imports that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter. If there are more imports\n available, the nextToken field contains a token to get the\n next page of results.

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

      A token that indicates whether there are more results to return in a\n response to the ListImports operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListImports\n operation request to get the next page of results.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The locale specified in the request.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListIntents": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListIntentsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListIntentsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Get a list of intents that meet the specified criteria.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListIntentsRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot that contains the intent.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the intent.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale of the intents to list.\n The string must match one of the supported locales. For more\n information, see Supported languages.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#IntentSortBy", + "traits": { + "smithy.api#documentation": "

      Determines the sort order for the response from the\n ListIntents operation. You can choose to sort by the\n intent name or last updated date in either ascending or descending\n order.

      " + } + }, + "filters": { + "target": "com.amazonaws.lexmodelsv2#IntentFilters", + "traits": { + "smithy.api#documentation": "

      Provides the specification of a filter used to limit the intents in\n the response to only those that match the filter specification. You can\n only specify one filter and only one string to filter on.

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

      The maximum number of intents to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

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

      If the response from the ListIntents operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response.

      \n

      Use the returned token in the nextToken parameter of a\n ListIntents request to return the next page of results.\n For a complete set of results, call the ListIntents\n operation until the nextToken returned in the response is\n null.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListIntentsResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot that contains the intent.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the intent.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The language and locale of the intents in the list.

      " + } + }, + "intentSummaries": { + "target": "com.amazonaws.lexmodelsv2#IntentSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the intents that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more\n intents available, the nextToken field contains a token to\n get the next page of results.

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

      A token that indicates whether there are more results to return in a\n response to the ListIntents operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListIntents\n operation request to get the next page of results.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListRecommendedIntents": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListRecommendedIntentsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListRecommendedIntentsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets a list of recommended intents provided by the bot\n recommendation that you can use in your bot. Intents in the \n response are ordered by relevance.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/intents", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListRecommendedIntentsRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot associated with the recommended\n intents.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the recommended intents.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale of the recommended\n intents.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botRecommendationId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot recommendation that contains the\n recommended intents.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.lexmodelsv2#NextToken", + "traits": { + "smithy.api#documentation": "

      If the response from the ListRecommendedIntents operation contains\n more results than specified in the maxResults parameter, a token is\n returned in the response. Use that token in the nextToken parameter to\n return the next page of results.

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

      The maximum number of bot recommendations to return in each page of\n results. If there are fewer results than the max page size, only the\n actual number of results are returned.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListRecommendedIntentsResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot associated with the recommended\n intent.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the intent.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale of the intents to list.\n The string must match one of the supported locales. For more\n information, see Supported languages.

      " + } + }, + "botRecommendationId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot recommendation that contains the\n recommended intent.

      " + } + }, + "summaryList": { + "target": "com.amazonaws.lexmodelsv2#RecommendedIntentSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the intents that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more intents\n available, the nextToken field contains a token to get the next page of\n results.

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

      A token that indicates whether there are more results to return in a\n response to the ListRecommendedIntents operation. If the nextToken\n field is present, you send the contents as the nextToken parameter of a\n ListRecommendedIntents operation request to get the next page of\n results.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListSlotTypes": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListSlotTypesRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListSlotTypesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets a list of slot types that match the specified criteria.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListSlotTypesRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot that contains the slot\n types.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the slot type.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale of the slot types to list.\n The string must match one of the supported locales. For more\n information, see Supported languages.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeSortBy", + "traits": { + "smithy.api#documentation": "

      Determines the sort order for the response from the\n ListSlotTypes operation. You can choose to sort by the\n slot type name or last updated date in either ascending or descending\n order.

      " + } + }, + "filters": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeFilters", + "traits": { + "smithy.api#documentation": "

      Provides the specification of a filter used to limit the slot types\n in the response to only those that match the filter specification. You\n can only specify one filter and only one string to filter on.

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

      The maximum number of slot types to return in each page of results.\n If there are fewer results than the max page size, only the actual\n number of results are returned.

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

      If the response from the ListSlotTypes operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListSlotTypesResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot that contains the slot types.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the slot types.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The language and local of the slot types in the list.

      " + } + }, + "slotTypeSummaries": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the slot types that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more\n slot types available, the nextToken field contains a token\n to get the next page of results.

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

      A token that indicates whether there are more results to return in a\n response to the ListSlotTypes operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListSlotTypes\n operation request to get the next page of results.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListSlots": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListSlotsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListSlotsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets a list of slots that match the specified criteria.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/slots", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListSlotsRequest": { "type": "structure", "members": { - "dateRangeFilter": { - "target": "com.amazonaws.lexmodelsv2#DateRangeFilter", + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot that contains the slot.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the slot.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale of the slots to list. The\n string must match one of the supported locales. For more information,\n see Supported languages.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "intentId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the intent that contains the slot.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#SlotSortBy", + "traits": { + "smithy.api#documentation": "

      Determines the sort order for the response from the\n ListSlots operation. You can choose to sort by the slot\n name or last updated date in either ascending or descending\n order.

      " + } + }, + "filters": { + "target": "com.amazonaws.lexmodelsv2#SlotFilters", + "traits": { + "smithy.api#documentation": "

      Provides the specification of a filter used to limit the slots in\n the response to only those that match the filter specification. You can\n only specify one filter and only one string to filter on.

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

      The maximum number of slots to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

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

      The object that contains a date range filter that will be applied to\n the transcript. Specify this object if you want Amazon Lex to only read the\n files that are within the date range.

      " + "smithy.api#documentation": "

      If the response from the ListSlots operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

      " } } }, "traits": { - "smithy.api#documentation": "

      The object that contains transcript filter details that are\n associated with a bot recommendation.

      " + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#ListAggregatedUtterances": { + "com.amazonaws.lexmodelsv2#ListSlotsResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot that contains the slots.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the slots.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The language and locale of the slots in the list.

      " + } + }, + "intentId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the intent that contains the slots.

      " + } + }, + "slotSummaries": { + "target": "com.amazonaws.lexmodelsv2#SlotSummaryList", + "traits": { + "smithy.api#documentation": "

      Summary information for the slots that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more\n slots available, the nextToken field contains a token to\n get the next page of results.

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

      A token that indicates whether there are more results to return in a\n response to the ListSlots operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListSlots\n operation request to get the next page of results.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListTagsForResource": { "type": "operation", "input": { - "target": "com.amazonaws.lexmodelsv2#ListAggregatedUtterancesRequest" + "target": "com.amazonaws.lexmodelsv2#ListTagsForResourceRequest" }, "output": { - "target": "com.amazonaws.lexmodelsv2#ListAggregatedUtterancesResponse" + "target": "com.amazonaws.lexmodelsv2#ListTagsForResourceResponse" }, "errors": [ { "target": "com.amazonaws.lexmodelsv2#InternalServerException" }, { - "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" }, { "target": "com.amazonaws.lexmodelsv2#ThrottlingException" @@ -9979,10 +13157,74 @@ } ], "traits": { - "smithy.api#documentation": "

      Provides a list of utterances that users have sent to the\n bot.

      \n

      Utterances are aggregated by the text of the utterance. For example,\n all instances where customers used the phrase \"I want to order pizza\"\n are aggregated into the same line in the response.

      \n

      You can see both detected utterances and missed utterances. A\n detected utterance is where the bot properly recognized the utterance\n and activated the associated intent. A missed utterance was not\n recognized by the bot and didn't activate an intent.

      \n

      Utterances can be aggregated for a bot alias or for a bot version,\n but not both at the same time.

      \n

      Utterances statistics are not generated under the following\n conditions:

      \n
        \n
      • \n

        The childDirected field was set to true when the\n bot was created.

        \n
      • \n
      • \n

        You are using slot obfuscation with one or more slots.

        \n
      • \n
      • \n

        You opted out of participating in improving Amazon Lex.

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

      Gets a list of tags associated with a resource. Only bots, bot\n aliases, and bot channels can have tags associated with them.

      ", + "smithy.api#http": { + "method": "GET", + "uri": "/tags/{resourceARN}", + "code": 200 + } + } + }, + "com.amazonaws.lexmodelsv2#ListTagsForResourceRequest": { + "type": "structure", + "members": { + "resourceARN": { + "target": "com.amazonaws.lexmodelsv2#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of the resource to get a list of tags\n for.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListTagsForResourceResponse": { + "type": "structure", + "members": { + "tags": { + "target": "com.amazonaws.lexmodelsv2#TagMap", + "traits": { + "smithy.api#documentation": "

      The tags associated with a resource.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListTestExecutionResultItems": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListTestExecutionResultItemsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListTestExecutionResultItemsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Gets a list of test execution result items.

      ", "smithy.api#http": { "method": "POST", - "uri": "/bots/{botId}/aggregatedutterances", + "uri": "/testexecutions/{testExecutionId}/results", "code": 200 }, "smithy.api#paginated": { @@ -9992,146 +13234,158 @@ } } }, - "com.amazonaws.lexmodelsv2#ListAggregatedUtterancesRequest": { + "com.amazonaws.lexmodelsv2#ListTestExecutionResultItemsRequest": { "type": "structure", "members": { - "botId": { + "testExecutionId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot associated with this\n request.

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

      The unique identifier of the test execution to list the result items.

      ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "botAliasId": { - "target": "com.amazonaws.lexmodelsv2#BotAliasId", + "resultFilterBy": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionResultFilterBy", "traits": { - "smithy.api#documentation": "

      The identifier of the bot alias associated with this request. If you\n specify the bot alias, you can't specify the bot version.

      " + "smithy.api#documentation": "

      The filter for the list of results from the test set execution.

      ", + "smithy.api#required": {} } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", + "maxResults": { + "target": "com.amazonaws.lexmodelsv2#MaxResults", "traits": { - "smithy.api#documentation": "

      The identifier of the bot version associated with this request. If\n you specify the bot version, you can't specify the bot alias.

      " + "smithy.api#documentation": "

      The maximum number of test execution result items to return in each \n page. If there are fewer results than the max page size, only the actual \n number of results are returned.

      " } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "nextToken": { + "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale where the utterances were\n collected. For more information, see Supported\n languages.

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

      If the response from the ListTestExecutionResultItems operation \n contains more results than specified in the maxResults parameter, \n a token is returned in the response. Use that token in the nextToken \n parameter to return the next page of results.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListTestExecutionResultItemsResponse": { + "type": "structure", + "members": { + "testExecutionResults": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionResultItems", + "traits": { + "smithy.api#documentation": "

      The list of results from the test execution.

      " } }, - "aggregationDuration": { - "target": "com.amazonaws.lexmodelsv2#UtteranceAggregationDuration", + "nextToken": { + "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

      The time window for aggregating the utterance information. You can\n specify a time between one hour and two weeks.

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

      A token that indicates whether there are more results to return in a response\n to the ListTestExecutionResultItems operation. If the \n nextToken field is present, you send the contents as the \n nextToken parameter of a ListTestExecutionResultItems \n operation request to get the next page of results.

      " } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#ListTestExecutions": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#ListTestExecutionsRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#ListTestExecutionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      The list of test set executions.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/testexecutions", + "code": 200 }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.lexmodelsv2#ListTestExecutionsRequest": { + "type": "structure", + "members": { "sortBy": { - "target": "com.amazonaws.lexmodelsv2#AggregatedUtterancesSortBy", - "traits": { - "smithy.api#documentation": "

      Specifies sorting parameters for the list of utterances. You can\n sort by the hit count, the missed count, or the number of distinct\n sessions the utterance appeared in.

      " - } - }, - "filters": { - "target": "com.amazonaws.lexmodelsv2#AggregatedUtterancesFilters", + "target": "com.amazonaws.lexmodelsv2#TestExecutionSortBy", "traits": { - "smithy.api#documentation": "

      Provides the specification of a filter used to limit the utterances\n in the response to only those that match the filter specification. You\n can only specify one filter and one string to filter on.

      " + "smithy.api#documentation": "

      The sort order of the test set executions.

      " } }, "maxResults": { "target": "com.amazonaws.lexmodelsv2#MaxResults", "traits": { - "smithy.api#documentation": "

      The maximum number of utterances to return in each page of results.\n If there are fewer results than the maximum page size, only the actual\n number of results are returned. If you don't specify the\n maxResults parameter, 1,000 results are\n returned.

      " + "smithy.api#documentation": "

      The maximum number of test executions to return in each page. If there are \n fewer results than the max page size, only the actual number of results are \n returned.

      " } }, "nextToken": { "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

      If the response from the ListAggregatedUtterances\n operation contains more results that specified in the\n maxResults parameter, a token is returned in the\n response. Use that token in the nextToken parameter to\n return the next page of results.

      " + "smithy.api#documentation": "

      If the response from the ListTestExecutions operation contains more results \n than specified in the maxResults parameter, a token is returned in the response. \n Use that token in the nextToken parameter to return the next page of results.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#ListAggregatedUtterancesResponse": { + "com.amazonaws.lexmodelsv2#ListTestExecutionsResponse": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The identifier of the bot that contains the utterances.

      " - } - }, - "botAliasId": { - "target": "com.amazonaws.lexmodelsv2#BotAliasId", - "traits": { - "smithy.api#documentation": "

      The identifier of the bot alias that contains the utterances. If you\n specified the bot version, the bot alias ID isn't returned.

      " - } - }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", - "traits": { - "smithy.api#documentation": "

      The identifier of the bot version that contains the utterances. If\n you specified the bot alias, the bot version isn't returned.

      " - } - }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", - "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale that the utterances are\n in.

      " - } - }, - "aggregationDuration": { - "target": "com.amazonaws.lexmodelsv2#UtteranceAggregationDuration", - "traits": { - "smithy.api#documentation": "

      The time period used to aggregate the utterance data.

      " - } - }, - "aggregationWindowStartTime": { - "target": "com.amazonaws.lexmodelsv2#Timestamp", - "traits": { - "smithy.api#documentation": "

      The date and time that the aggregation window begins. Only data\n collected after this time is returned in the results.

      " - } - }, - "aggregationWindowEndTime": { - "target": "com.amazonaws.lexmodelsv2#Timestamp", - "traits": { - "smithy.api#documentation": "

      The date and time that the aggregation window ends. Only data\n collected between the start time and the end time are returned in the\n results.

      " - } - }, - "aggregationLastRefreshedDateTime": { - "target": "com.amazonaws.lexmodelsv2#Timestamp", - "traits": { - "smithy.api#documentation": "

      The last date and time that the aggregated data was collected. The\n time period depends on the length of the aggregation window.

      \n
        \n
      • \n

        \n Hours - for 1 hour time\n window, every half hour; otherwise every hour.

        \n
      • \n
      • \n

        \n Days - every 6 hours

        \n
      • \n
      • \n

        \n Weeks - for a one week time\n window, every 12 hours; otherwise, every day

        \n
      • \n
      " - } - }, - "aggregatedUtterancesSummaries": { - "target": "com.amazonaws.lexmodelsv2#AggregatedUtterancesSummaryList", + "testExecutions": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionSummaryList", "traits": { - "smithy.api#documentation": "

      Summaries of the aggregated utterance data. Each response contains\n information about the number of times that the utterance was seen\n during the time period, whether it was detected or missed, and when it\n was seen during the time period.

      " + "smithy.api#documentation": "

      The list of test executions.

      " } }, "nextToken": { "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListAggregatedUtterances operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a\n ListAggregatedUtterances operation request to get the\n next page of results.

      " + "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a response to \n the ListTestExecutions operation. If the nextToken field is present, you send the \n contents as the nextToken parameter of a ListTestExecutions operation request to \n get the next page of results.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#ListBotAliases": { + "com.amazonaws.lexmodelsv2#ListTestSetRecords": { "type": "operation", "input": { - "target": "com.amazonaws.lexmodelsv2#ListBotAliasesRequest" + "target": "com.amazonaws.lexmodelsv2#ListTestSetRecordsRequest" }, "output": { - "target": "com.amazonaws.lexmodelsv2#ListBotAliasesResponse" + "target": "com.amazonaws.lexmodelsv2#ListTestSetRecordsResponse" }, "errors": [ { "target": "com.amazonaws.lexmodelsv2#InternalServerException" }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, { "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" }, @@ -10143,10 +13397,10 @@ } ], "traits": { - "smithy.api#documentation": "

      Gets a list of aliases for the specified bot.

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

      The list of test set records.

      ", "smithy.api#http": { "method": "POST", - "uri": "/bots/{botId}/botaliases", + "uri": "/testsets/{testSetId}/records", "code": 200 }, "smithy.api#paginated": { @@ -10156,13 +13410,13 @@ } } }, - "com.amazonaws.lexmodelsv2#ListBotAliasesRequest": { + "com.amazonaws.lexmodelsv2#ListTestSetRecordsRequest": { "type": "structure", "members": { - "botId": { + "testSetId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The identifier of the bot to list aliases for.

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

      The identifier of the test set to list its test set records.

      ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -10170,47 +13424,47 @@ "maxResults": { "target": "com.amazonaws.lexmodelsv2#MaxResults", "traits": { - "smithy.api#documentation": "

      The maximum number of aliases to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

      " + "smithy.api#documentation": "

      The maximum number of test set records to return in each page. If there are \n fewer records than the max page size, only the actual number of records are \n returned.

      " } }, "nextToken": { "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

      If the response from the ListBotAliases operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

      " + "smithy.api#documentation": "

      If the response from the ListTestSetRecords operation contains more results \n than specified in the maxResults parameter, a token is returned in the response. \n Use that token in the nextToken parameter to return the next page of results.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#ListBotAliasesResponse": { + "com.amazonaws.lexmodelsv2#ListTestSetRecordsResponse": { "type": "structure", "members": { - "botAliasSummaries": { - "target": "com.amazonaws.lexmodelsv2#BotAliasSummaryList", + "testSetRecords": { + "target": "com.amazonaws.lexmodelsv2#TestSetTurnRecordList", "traits": { - "smithy.api#documentation": "

      Summary information for the bot aliases that meet the filter\n criteria specified in the request. The length of the list is specified\n in the maxResults parameter of the request. If there are\n more aliases available, the nextToken field contains a\n token to get the next page of results.

      " + "smithy.api#documentation": "

      The list of records from the test set.

      " } }, "nextToken": { "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListBotAliases operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListBotAliases\n operation request to get the next page of results.

      " - } - }, - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The identifier of the bot associated with the aliases.

      " + "smithy.api#documentation": "

      A token that indicates whether there are more records to return in a response\n to the ListTestSetRecords operation. If the nextToken field is present, you \n send the contents as the nextToken parameter of a ListTestSetRecords operation \n request to get the next page of records.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#ListBotLocales": { + "com.amazonaws.lexmodelsv2#ListTestSets": { "type": "operation", "input": { - "target": "com.amazonaws.lexmodelsv2#ListBotLocalesRequest" + "target": "com.amazonaws.lexmodelsv2#ListTestSetsRequest" }, "output": { - "target": "com.amazonaws.lexmodelsv2#ListBotLocalesResponse" + "target": "com.amazonaws.lexmodelsv2#ListTestSetsResponse" }, "errors": [ { @@ -10227,10 +13481,10 @@ } ], "traits": { - "smithy.api#documentation": "

      Gets a list of locales for the specified bot.

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

      The list of the test sets

      ", "smithy.api#http": { "method": "POST", - "uri": "/bots/{botId}/botversions/{botVersion}/botlocales", + "uri": "/testsets", "code": 200 }, "smithy.api#paginated": { @@ -10240,1020 +13494,1243 @@ } } }, - "com.amazonaws.lexmodelsv2#ListBotLocalesRequest": { + "com.amazonaws.lexmodelsv2#ListTestSetsRequest": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "sortBy": { + "target": "com.amazonaws.lexmodelsv2#TestSetSortBy", "traits": { - "smithy.api#documentation": "

      The identifier of the bot to list locales for.

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

      The sort order for the list of test sets.

      " } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", + "maxResults": { + "target": "com.amazonaws.lexmodelsv2#MaxResults", "traits": { - "smithy.api#documentation": "

      The version of the bot to list locales for.

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

      The maximum number of test sets to return in each page. If there are fewer \n results than the max page size, only the actual number of results are returned.

      " } }, - "sortBy": { - "target": "com.amazonaws.lexmodelsv2#BotLocaleSortBy", + "nextToken": { + "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

      Specifies sorting parameters for the list of locales. You can sort\n by locale name in ascending or descending order.

      " + "smithy.api#documentation": "

      If the response from the ListTestSets operation contains more results than \n specified in the maxResults parameter, a token is returned in the response. Use \n that token in the nextToken parameter to return the next page of results.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#ListTestSetsResponse": { + "type": "structure", + "members": { + "testSets": { + "target": "com.amazonaws.lexmodelsv2#TestSetSummaryList", + "traits": { + "smithy.api#documentation": "

      The selected test sets in a list of test sets.

      " } }, - "filters": { - "target": "com.amazonaws.lexmodelsv2#BotLocaleFilters", + "nextToken": { + "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

      Provides the specification for a filter used to limit the response\n to only those locales that match the filter specification. You can only\n specify one filter and one value to filter on.

      " + "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a response \n to the ListTestSets operation. If the nextToken field is present, you send the \n contents as the nextToken parameter of a ListTestSets operation request to get \n the next page of results.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#LocaleId": { + "type": "string" + }, + "com.amazonaws.lexmodelsv2#LocaleName": { + "type": "string" + }, + "com.amazonaws.lexmodelsv2#LogPrefix": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1024 + } + } + }, + "com.amazonaws.lexmodelsv2#MaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.lexmodelsv2#MaxUtteranceDigits": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.lexmodelsv2#MergeStrategy": { + "type": "enum", + "members": { + "Overwrite": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Overwrite" } }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", + "FailOnConflict": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The maximum number of aliases to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

      " + "smithy.api#enumValue": "FailOnConflict" } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "Append": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      If the response from the ListBotLocales operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token as the\n nextToken parameter to return the next page of results.\n

      " + "smithy.api#enumValue": "Append" } } } }, - "com.amazonaws.lexmodelsv2#ListBotLocalesResponse": { + "com.amazonaws.lexmodelsv2#Message": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "plainTextMessage": { + "target": "com.amazonaws.lexmodelsv2#PlainTextMessage", "traits": { - "smithy.api#documentation": "

      The identifier of the bot to list locales for.

      " + "smithy.api#documentation": "

      A message in plain text format.

      " } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", + "customPayload": { + "target": "com.amazonaws.lexmodelsv2#CustomPayload", "traits": { - "smithy.api#documentation": "

      The version of the bot.

      " + "smithy.api#documentation": "

      A message in a custom format defined by the client\n application.

      " } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "ssmlMessage": { + "target": "com.amazonaws.lexmodelsv2#SSMLMessage", + "traits": { + "smithy.api#documentation": "

      A message in Speech Synthesis Markup Language (SSML).

      " + } + }, + "imageResponseCard": { + "target": "com.amazonaws.lexmodelsv2#ImageResponseCard", + "traits": { + "smithy.api#documentation": "

      A message that defines a response card that the client application\n can show to the user.

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

      The object that provides message text and its type.

      " + } + }, + "com.amazonaws.lexmodelsv2#MessageGroup": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.lexmodelsv2#Message", + "traits": { + "smithy.api#documentation": "

      The primary message that Amazon Lex should send to the user.

      ", + "smithy.api#required": {} + } + }, + "variations": { + "target": "com.amazonaws.lexmodelsv2#MessageVariationsList", + "traits": { + "smithy.api#documentation": "

      Message variations to send to the user. When variations are defined,\n Amazon Lex chooses the primary message or one of the variations to send to\n the user.

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

      Provides one or more messages that Amazon Lex should send to the\n user.

      " + } + }, + "com.amazonaws.lexmodelsv2#MessageGroupsList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#MessageGroup" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 + } + } + }, + "com.amazonaws.lexmodelsv2#MessageSelectionStrategy": { + "type": "enum", + "members": { + "Random": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListBotLocales operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListBotLocales\n operation request to get the next page of results.

      " + "smithy.api#enumValue": "Random" } }, - "botLocaleSummaries": { - "target": "com.amazonaws.lexmodelsv2#BotLocaleSummaryList", + "Ordered": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Summary information for the locales that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more\n locales available, the nextToken field contains a token to\n get the next page of results.

      " + "smithy.api#enumValue": "Ordered" } } } }, - "com.amazonaws.lexmodelsv2#ListBotRecommendations": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListBotRecommendationsRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListBotRecommendationsResponse" + "com.amazonaws.lexmodelsv2#MessageVariationsList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#Message" }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], "traits": { - "smithy.api#documentation": "

      Get a list of bot recommendations that meet the specified\n criteria.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" + "smithy.api#length": { + "min": 0, + "max": 2 } } }, - "com.amazonaws.lexmodelsv2#ListBotRecommendationsRequest": { + "com.amazonaws.lexmodelsv2#MissedCount": { + "type": "integer" + }, + "com.amazonaws.lexmodelsv2#MultipleValuesSetting": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "allowMultipleValues": { + "target": "com.amazonaws.lexmodelsv2#Boolean", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot that contains the bot\n recommendation list.

      ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#default": false, + "smithy.api#documentation": "

      Indicates whether a slot can return multiple values. When\n true, the slot may return more than one value in a\n response. When false, the slot returns only a single\n value.

      \n

      Multi-value slots are only available in the en-US locale. If you set\n this value to true in any other locale, Amazon Lex throws a\n ValidationException.

      \n

      If the allowMutlipleValues is not set, the default\n value is false.

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

      Indicates whether a slot can return multiple values.

      " + } + }, + "com.amazonaws.lexmodelsv2#Name": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "smithy.api#pattern": "^([0-9a-zA-Z][_-]?){1,100}$" + } + }, + "com.amazonaws.lexmodelsv2#NewCustomVocabularyItem": { + "type": "structure", + "members": { + "phrase": { + "target": "com.amazonaws.lexmodelsv2#Phrase", "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the bot recommendation\n list.

      ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

      The unique phrase for the new custom vocabulary item from the custom \n vocabulary list.

      ", "smithy.api#required": {} } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "weight": { + "target": "com.amazonaws.lexmodelsv2#Weight", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the bot recommendation\n list.

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

      The weight assigned to the new custom vocabulary item from the custom \n vocabulary list.

      " } }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", + "displayAs": { + "target": "com.amazonaws.lexmodelsv2#Phrase", "traits": { - "smithy.api#documentation": "

      The maximum number of bot recommendations to return in each page of\n results. If there are fewer results than the max page size, only the\n actual number of results are returned.

      " + "smithy.api#documentation": "

      The display as value assigned to the new custom vocabulary item from the custom \n vocabulary list.

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

      The new custom vocabulary item from the custom \n vocabulary list.

      " + } + }, + "com.amazonaws.lexmodelsv2#NextIndex": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 10000000 + } + } + }, + "com.amazonaws.lexmodelsv2#NextToken": { + "type": "string" + }, + "com.amazonaws.lexmodelsv2#NonEmptyString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1 + } + } + }, + "com.amazonaws.lexmodelsv2#NumericalBotVersion": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "smithy.api#pattern": "^[0-9]+$" + } + }, + "com.amazonaws.lexmodelsv2#ObfuscationSetting": { + "type": "structure", + "members": { + "obfuscationSettingType": { + "target": "com.amazonaws.lexmodelsv2#ObfuscationSettingType", "traits": { - "smithy.api#documentation": "

      If the response from the ListBotRecommendation operation contains\n more results than specified in the maxResults parameter, a token is\n returned in the response. Use that token in the nextToken parameter to\n return the next page of results.

      " + "smithy.api#documentation": "

      Value that determines whether Amazon Lex obscures slot values in\n conversation logs. The default is to obscure the values.

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

      Determines whether Amazon Lex obscures slot values in conversation logs.\n

      " } }, - "com.amazonaws.lexmodelsv2#ListBotRecommendationsResponse": { - "type": "structure", + "com.amazonaws.lexmodelsv2#ObfuscationSettingType": { + "type": "enum", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "None": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot that contains the bot\n recommendation list.

      " + "smithy.api#enumValue": "None" } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "DefaultObfuscation": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the bot recommendation\n list.

      " + "smithy.api#enumValue": "DefaultObfuscation" } + } + } + }, + "com.amazonaws.lexmodelsv2#ObjectPrefix": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1 }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "smithy.api#pattern": "^[\\/]?+[a-zA-Z0-9!_.*'()-]+(\\/[a-zA-Z0-9!_.*'()-]+)*$" + } + }, + "com.amazonaws.lexmodelsv2#ObjectPrefixes": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#ObjectPrefix" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2 + } + } + }, + "com.amazonaws.lexmodelsv2#Operation": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 5, + "max": 50 + }, + "smithy.api#pattern": "^lex:[a-zA-Z*]+$" + } + }, + "com.amazonaws.lexmodelsv2#OperationList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#Operation" + } + }, + "com.amazonaws.lexmodelsv2#OutputContext": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the bot recommendation\n list.

      " + "smithy.api#documentation": "

      The name of the output context.

      ", + "smithy.api#required": {} } }, - "botRecommendationSummaries": { - "target": "com.amazonaws.lexmodelsv2#BotRecommendationSummaryList", + "timeToLiveInSeconds": { + "target": "com.amazonaws.lexmodelsv2#ContextTimeToLiveInSeconds", "traits": { - "smithy.api#documentation": "

      Summary information for the bot recommendations that meet the filter\n specified in this request. The length of the list is specified in the\n maxResults parameter of the request. If there are more bot\n recommendations available, the nextToken field contains a token to get\n the next page of results.

      " + "smithy.api#documentation": "

      The amount of time, in seconds, that the output context should\n remain active. The time is figured from the first time the context is\n sent to the user.

      ", + "smithy.api#required": {} } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "turnsToLive": { + "target": "com.amazonaws.lexmodelsv2#ContextTurnsToLive", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListBotRecommendations operation. If the nextToken\n field is present, you send the contents as the nextToken parameter of a\n ListBotRecommendations operation request to get the next page of\n results.

      " + "smithy.api#documentation": "

      The number of conversation turns that the output context should\n remain active. The number of turns is counted from the first time that\n the context is sent to the user.

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

      Describes a session context that is activated when an intent is\n fulfilled.

      " } }, - "com.amazonaws.lexmodelsv2#ListBotVersions": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListBotVersionsRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListBotVersionsResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], + "com.amazonaws.lexmodelsv2#OutputContextsList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#OutputContext" + }, "traits": { - "smithy.api#documentation": "

      Gets information about all of the versions of a bot.

      \n

      The ListBotVersions operation returns a summary of each\n version of a bot. For example, if a bot has three numbered versions,\n the ListBotVersions operation returns for summaries, one\n for each numbered version and one for the DRAFT\n version.

      \n

      The ListBotVersions operation always returns at least\n one version, the DRAFT version.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/bots/{botId}/botversions", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" + "smithy.api#length": { + "min": 0, + "max": 10 } } }, - "com.amazonaws.lexmodelsv2#ListBotVersionsRequest": { + "com.amazonaws.lexmodelsv2#OverallTestResultItem": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "multiTurnConversation": { + "target": "com.amazonaws.lexmodelsv2#Boolean", "traits": { - "smithy.api#documentation": "

      The identifier of the bot to list versions for.

      ", - "smithy.api#httpLabel": {}, + "smithy.api#default": false, + "smithy.api#documentation": "

      Indicates whether the conversation contains multiple turns or not.

      ", "smithy.api#required": {} } }, - "sortBy": { - "target": "com.amazonaws.lexmodelsv2#BotVersionSortBy", + "totalResultCount": { + "target": "com.amazonaws.lexmodelsv2#Count", "traits": { - "smithy.api#documentation": "

      Specifies sorting parameters for the list of versions. You can\n specify that the list be sorted by version name in either ascending or\n descending order.

      " + "smithy.api#documentation": "

      The total number of overall results in the result of the test execution.

      ", + "smithy.api#required": {} } }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", + "speechTranscriptionResultCounts": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatusCountMap", "traits": { - "smithy.api#documentation": "

      The maximum number of versions to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

      " + "smithy.api#documentation": "

      The number of speech transcription results in the overall test.

      " } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "endToEndResultCounts": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatusCountMap", "traits": { - "smithy.api#documentation": "

      If the response to the ListBotVersion operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

      " + "smithy.api#documentation": "

      The number of results that succeeded.

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

      Information about the overall results for a test execution result.

      " } }, - "com.amazonaws.lexmodelsv2#ListBotVersionsResponse": { + "com.amazonaws.lexmodelsv2#OverallTestResultItemList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#OverallTestResultItem" + } + }, + "com.amazonaws.lexmodelsv2#OverallTestResults": { + "type": "structure", + "members": { + "items": { + "target": "com.amazonaws.lexmodelsv2#OverallTestResultItemList", + "traits": { + "smithy.api#documentation": "

      A list of the overall test results.

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

      Information about the overall test results.

      " + } + }, + "com.amazonaws.lexmodelsv2#ParentBotNetwork": { "type": "structure", "members": { "botId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The identifier of the bot to list versions for.

      " + "smithy.api#documentation": "

      The identifier of the network of bots assigned by Amazon Lex.

      ", + "smithy.api#required": {} } }, - "botVersionSummaries": { - "target": "com.amazonaws.lexmodelsv2#BotVersionSummaryList", + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", "traits": { - "smithy.api#documentation": "

      Summary information for the bot versions that meet the filter\n criteria specified in the request. The length of the list is specified\n in the maxResults parameter of the request. If there are\n more versions available, the nextToken field contains a\n token to get the next page of results.

      " + "smithy.api#documentation": "

      The version of the network of bots.

      ", + "smithy.api#required": {} } - }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + } + }, + "traits": { + "smithy.api#documentation": "

      A network of bots.

      " + } + }, + "com.amazonaws.lexmodelsv2#ParentBotNetworks": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#ParentBotNetwork" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 30 + } + } + }, + "com.amazonaws.lexmodelsv2#PathFormat": { + "type": "structure", + "members": { + "objectPrefixes": { + "target": "com.amazonaws.lexmodelsv2#ObjectPrefixes", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListBotVersions operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListBotAliases\n operation request to get the next page of results.

      " + "smithy.api#documentation": "

      A list of Amazon S3 prefixes that points to sub-folders in the Amazon S3\n bucket. Specify this list if you only want Lex to read the files under\n this set of sub-folders.

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

      The object that contains a path format that will be applied when\n Amazon Lex reads the transcript file in the bucket you provide. Specify this\n object if you only want Lex to read a subset of files in your Amazon S3\n bucket.

      " } }, - "com.amazonaws.lexmodelsv2#ListBots": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListBotsRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListBotsResponse" + "com.amazonaws.lexmodelsv2#Phrase": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.lexmodelsv2#PlainTextMessage": { + "type": "structure", + "members": { + "value": { + "target": "com.amazonaws.lexmodelsv2#PlainTextMessageValue", + "traits": { + "smithy.api#documentation": "

      The message to send to the user.

      ", + "smithy.api#required": {} + } + } }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" + "traits": { + "smithy.api#documentation": "

      Defines an ASCII text message to send to the user.

      " + } + }, + "com.amazonaws.lexmodelsv2#PlainTextMessageValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1000 } - ], + } + }, + "com.amazonaws.lexmodelsv2#Policy": { + "type": "string", "traits": { - "smithy.api#documentation": "

      Gets a list of available bots.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/bots", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" + "smithy.api#length": { + "min": 2 } } }, - "com.amazonaws.lexmodelsv2#ListBotsRequest": { + "com.amazonaws.lexmodelsv2#PostDialogCodeHookInvocationSpecification": { "type": "structure", "members": { - "sortBy": { - "target": "com.amazonaws.lexmodelsv2#BotSortBy", + "successResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" + }, + "successNextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", "traits": { - "smithy.api#documentation": "

      Specifies sorting parameters for the list of bots. You can specify\n that the list be sorted by bot name in ascending or descending\n order.

      " + "smithy.api#documentation": "

      Specifics the next step the bot runs after the dialog code hook\n finishes successfully.

      " } }, - "filters": { - "target": "com.amazonaws.lexmodelsv2#BotFilters", + "successConditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", "traits": { - "smithy.api#documentation": "

      Provides the specification of a filter used to limit the bots in the\n response to only those that match the filter specification. You can\n only specify one filter and one string to filter on.

      " + "smithy.api#documentation": "

      A list of conditional branches to evaluate after the dialog code\n hook finishes successfully.

      " } }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", + "failureResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" + }, + "failureNextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", "traits": { - "smithy.api#documentation": "

      The maximum number of bots to return in each page of results. If\n there are fewer results than the maximum page size, only the actual\n number of results are returned.

      " + "smithy.api#documentation": "

      Specifies the next step the bot runs after the dialog code hook\n throws an exception or returns with the State field of the\n Intent object set to Failed.

      " } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "failureConditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", "traits": { - "smithy.api#documentation": "

      If the response from the ListBots operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response.

      \n

      Use the returned token in the nextToken parameter of a\n ListBots request to return the next page of results.\n For a complete set of results, call the ListBots operation\n until the nextToken returned in the response is\n null.

      " + "smithy.api#documentation": "

      A list of conditional branches to evaluate after the dialog code\n hook throws an exception or returns with the State field\n of the Intent object set to Failed.

      " } - } - } - }, - "com.amazonaws.lexmodelsv2#ListBotsResponse": { - "type": "structure", - "members": { - "botSummaries": { - "target": "com.amazonaws.lexmodelsv2#BotSummaryList", + }, + "timeoutResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" + }, + "timeoutNextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", "traits": { - "smithy.api#documentation": "

      Summary information for the bots that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more\n bots available, the nextToken field contains a token to\n the next page of results.

      " + "smithy.api#documentation": "

      Specifies the next step that the bot runs when the code hook times\n out.

      " } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "timeoutConditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListBots operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListBots\n operation request to get the next page of results.

      " + "smithy.api#documentation": "

      A list of conditional branches to evaluate if the code hook times\n out.

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

      Specifies next steps to run after the dialog code hook\n finishes.

      " } }, - "com.amazonaws.lexmodelsv2#ListBuiltInIntents": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListBuiltInIntentsRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListBuiltInIntentsResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" + "com.amazonaws.lexmodelsv2#PostFulfillmentStatusSpecification": { + "type": "structure", + "members": { + "successResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + "failureResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + "timeoutResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

      Gets a list of built-in intents provided by Amazon Lex that you can use\n in your bot.

      \n

      To use a built-in intent as a the base for your own intent, include\n the built-in intent signature in the parentIntentSignature\n parameter when you call the CreateIntent operation. For\n more information, see CreateIntent.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/builtins/locales/{localeId}/intents", - "code": 200 + "successNextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", + "traits": { + "smithy.api#documentation": "

      Specifies the next step in the conversation that Amazon Lex\n invokes when the fulfillment code hook completes successfully.

      " + } + }, + "successConditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "traits": { + "smithy.api#documentation": "

      A list of conditional branches to evaluate after the fulfillment\n code hook finishes successfully.

      " + } }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" - } - } - }, - "com.amazonaws.lexmodelsv2#ListBuiltInIntentsRequest": { - "type": "structure", - "members": { - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "failureNextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the intents to list.\n The string must match one of the supported locales. For more\n information, see Supported languages.

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

      Specifies the next step the bot runs after the fulfillment code hook\n throws an exception or returns with the State field of the\n Intent object set to Failed.

      " } }, - "sortBy": { - "target": "com.amazonaws.lexmodelsv2#BuiltInIntentSortBy", + "failureConditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", "traits": { - "smithy.api#documentation": "

      Specifies sorting parameters for the list of built-in intents. You\n can specify that the list be sorted by the built-in intent signature in\n either ascending or descending order.

      " + "smithy.api#documentation": "

      A list of conditional branches to evaluate after the fulfillment\n code hook throws an exception or returns with the State\n field of the Intent object set to\n Failed.

      " } }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#BuiltInsMaxResults", + "timeoutNextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", "traits": { - "smithy.api#documentation": "

      The maximum number of built-in intents to return in each page of\n results. If there are fewer results than the max page size, only the\n actual number of results are returned.

      " + "smithy.api#documentation": "

      Specifies the next step that the bot runs when the fulfillment code\n hook times out.

      " } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "timeoutConditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", "traits": { - "smithy.api#documentation": "

      If the response from the ListBuiltInIntents operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

      " + "smithy.api#documentation": "

      A list of conditional branches to evaluate if the fulfillment code\n hook times out.

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

      Provides a setting that determines whether the post-fulfillment\n response is sent to the user. For more information, see https://docs.aws.amazon.com/lexv2/latest/dg/streaming-progress.html#progress-complete\n

      " } }, - "com.amazonaws.lexmodelsv2#ListBuiltInIntentsResponse": { + "com.amazonaws.lexmodelsv2#PreconditionFailedException": { "type": "structure", "members": { - "builtInIntentSummaries": { - "target": "com.amazonaws.lexmodelsv2#BuiltInIntentSummaryList", - "traits": { - "smithy.api#documentation": "

      Summary information for the built-in intents that meet the filter\n criteria specified in the request. The length of the list is specified\n in the maxResults parameter of the request. If there are\n more intents available, the nextToken field contains a\n token to get the next page of results.

      " - } - }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "message": { + "target": "com.amazonaws.lexmodelsv2#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

      Your request couldn't be completed because one or more request\n fields aren't valid. Check the fields in your request and try\n again.

      ", + "smithy.api#error": "client", + "smithy.api#httpError": 412 + } + }, + "com.amazonaws.lexmodelsv2#PresignedS3Url": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.lexmodelsv2#Principal": { + "type": "structure", + "members": { + "service": { + "target": "com.amazonaws.lexmodelsv2#ServicePrincipal", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListBuiltInIntents operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListBotAliases\n operation request to get the next page of results.

      " + "smithy.api#documentation": "

      The name of the Amazon Web Services service that should allowed or denied access to\n an Amazon Lex action.

      " } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "arn": { + "target": "com.amazonaws.lexmodelsv2#PrincipalArn", "traits": { - "smithy.api#documentation": "

      The language and locale of the intents in the list.

      " + "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of the principal.

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

      The IAM principal that you allowing or denying access to an Amazon Lex\n action. You must provide a service or an arn,\n but not both in the same statement. For more information, see AWS JSON policy elements: Principal .

      " } }, - "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypes": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypesRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypesResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], + "com.amazonaws.lexmodelsv2#PrincipalArn": { + "type": "string", "traits": { - "smithy.api#documentation": "

      Gets a list of built-in slot types that meet the specified\n criteria.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/builtins/locales/{localeId}/slottypes", - "code": 200 + "smithy.api#length": { + "min": 30, + "max": 1024 }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" + "smithy.api#pattern": "^arn:aws:iam::[0-9]{12}:(root|(user|role)/.*)$" + } + }, + "com.amazonaws.lexmodelsv2#PrincipalList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#Principal" + } + }, + "com.amazonaws.lexmodelsv2#PriorityValue": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 100 } } }, - "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypesRequest": { - "type": "structure", + "com.amazonaws.lexmodelsv2#PromptAttempt": { + "type": "enum", "members": { - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "Initial": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the slot types to list.\n The string must match one of the supported locales. For more\n information, see Supported languages.

      ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "Initial" } }, - "sortBy": { - "target": "com.amazonaws.lexmodelsv2#BuiltInSlotTypeSortBy", + "Retry1": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Determines the sort order for the response from the\n ListBuiltInSlotTypes operation. You can choose to sort\n by the slot type signature in either ascending or descending\n order.

      " + "smithy.api#enumValue": "Retry1" } }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#BuiltInsMaxResults", + "Retry2": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The maximum number of built-in slot types to return in each page of\n results. If there are fewer results than the max page size, only the\n actual number of results are returned.

      " + "smithy.api#enumValue": "Retry2" } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "Retry3": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      If the response from the ListBuiltInSlotTypes operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

      " + "smithy.api#enumValue": "Retry3" + } + }, + "Retry4": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Retry4" + } + }, + "Retry5": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Retry5" } } + }, + "traits": { + "smithy.api#documentation": "

      The attempt name of attempts of a prompt.

      " } }, - "com.amazonaws.lexmodelsv2#ListBuiltInSlotTypesResponse": { + "com.amazonaws.lexmodelsv2#PromptAttemptSpecification": { "type": "structure", "members": { - "builtInSlotTypeSummaries": { - "target": "com.amazonaws.lexmodelsv2#BuiltInSlotTypeSummaryList", + "allowInterrupt": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", "traits": { - "smithy.api#documentation": "

      Summary information for the built-in slot types that meet the filter\n criteria specified in the request. The length of the list is specified\n in the maxResults parameter of the request. If there are\n more slot types available, the nextToken field contains a\n token to get the next page of results.

      " + "smithy.api#documentation": "

      Indicates whether the user can interrupt a speech prompt attempt from the bot.

      " } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "allowedInputTypes": { + "target": "com.amazonaws.lexmodelsv2#AllowedInputTypes", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListBuiltInSlotTypes operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a\n LIstBuiltInSlotTypes operation request to get the next\n page of results.

      " + "smithy.api#documentation": "

      Indicates the allowed input types of the prompt attempt.

      ", + "smithy.api#required": {} } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "audioAndDTMFInputSpecification": { + "target": "com.amazonaws.lexmodelsv2#AudioAndDTMFInputSpecification", "traits": { - "smithy.api#documentation": "

      The language and locale of the slot types in the list.

      " + "smithy.api#documentation": "

      Specifies the settings on audio and DTMF input.

      " + } + }, + "textInputSpecification": { + "target": "com.amazonaws.lexmodelsv2#TextInputSpecification", + "traits": { + "smithy.api#documentation": "

      Specifies the settings on text input.

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

      Specifies the settings on a prompt attempt.

      " } }, - "com.amazonaws.lexmodelsv2#ListCustomVocabularyItems": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListCustomVocabularyItemsRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListCustomVocabularyItemsResponse" + "com.amazonaws.lexmodelsv2#PromptAttemptsSpecificationMap": { + "type": "map", + "key": { + "target": "com.amazonaws.lexmodelsv2#PromptAttempt" }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

      Paginated list of custom vocabulary items for a given bot locale's \n custom vocabulary.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/customvocabulary/DEFAULT/list", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" + "value": { + "target": "com.amazonaws.lexmodelsv2#PromptAttemptSpecification" + } + }, + "com.amazonaws.lexmodelsv2#PromptMaxRetries": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 5 } } }, - "com.amazonaws.lexmodelsv2#ListCustomVocabularyItemsRequest": { + "com.amazonaws.lexmodelsv2#PromptSpecification": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "messageGroups": { + "target": "com.amazonaws.lexmodelsv2#MessageGroupsList", "traits": { - "smithy.api#documentation": "

      The identifier of the version of the bot associated with this custom \n vocabulary.

      ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

      A collection of messages that Amazon Lex can send to the user. Amazon Lex\n chooses the actual message to send at runtime.

      ", "smithy.api#required": {} } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", + "maxRetries": { + "target": "com.amazonaws.lexmodelsv2#PromptMaxRetries", "traits": { - "smithy.api#documentation": "

      The bot version of the bot to the list custom vocabulary \n request.

      ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

      The maximum number of times the bot tries to elicit a response from\n the user using this prompt.

      ", "smithy.api#required": {} } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "allowInterrupt": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale where this custom vocabulary \n is used. The string must match one of the supported locales. For more \n information, see Supported \n languages (https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html).

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

      Indicates whether the user can interrupt a speech prompt from the\n bot.

      " } }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", + "messageSelectionStrategy": { + "target": "com.amazonaws.lexmodelsv2#MessageSelectionStrategy", "traits": { - "smithy.api#documentation": "

      The maximum number of items returned by the list operation.

      " + "smithy.api#documentation": "

      Indicates how a message is selected from a message group among retries.

      " } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "promptAttemptsSpecification": { + "target": "com.amazonaws.lexmodelsv2#PromptAttemptsSpecificationMap", "traits": { - "smithy.api#documentation": "

      The nextToken identifier to the list custom vocabulary \n request.

      " + "smithy.api#documentation": "

      Specifies the advanced settings on each attempt of the prompt.

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

      Specifies a list of message groups that Amazon Lex sends to a user to\n elicit a response.

      " } }, - "com.amazonaws.lexmodelsv2#ListCustomVocabularyItemsResponse": { + "com.amazonaws.lexmodelsv2#QueryFilterString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5000 + } + } + }, + "com.amazonaws.lexmodelsv2#RecommendedAction": { + "type": "string" + }, + "com.amazonaws.lexmodelsv2#RecommendedActions": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#RecommendedAction" + } + }, + "com.amazonaws.lexmodelsv2#RecommendedIntentSummary": { "type": "structure", "members": { - "botId": { + "intentId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The identifier of the bot associated with this custom vocabulary.

      " - } - }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", - "traits": { - "smithy.api#documentation": "

      The identifier of the version of the bot associated with this custom \n vocabulary.

      " - } - }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", - "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale where this custom vocabulary \n is used. The string must match one of the supported locales. For more \n information, see Supported Languages .

      " + "smithy.api#documentation": "

      The unique identifier of a recommended intent associated with the\n bot recommendation.

      " } }, - "customVocabularyItems": { - "target": "com.amazonaws.lexmodelsv2#CustomVocabularyItems", + "intentName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The custom vocabulary items from the list custom vocabulary \n response.

      " + "smithy.api#documentation": "

      The name of a recommended intent associated with the bot\n recommendation.

      " } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "sampleUtterancesCount": { + "target": "com.amazonaws.lexmodelsv2#SampleUtterancesCount", "traits": { - "smithy.api#documentation": "

      The nextToken identifier to the list custom vocabulary \n response.

      " + "smithy.api#documentation": "

      The count of sample utterances of a recommended intent that is\n associated with a bot recommendation.

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

      An object that contains a summary of a recommended intent.

      " } }, - "com.amazonaws.lexmodelsv2#ListExports": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListExportsRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListExportsResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" + "com.amazonaws.lexmodelsv2#RecommendedIntentSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#RecommendedIntentSummary" + } + }, + "com.amazonaws.lexmodelsv2#RecordNumber": { + "type": "long", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 200000 } - ], + } + }, + "com.amazonaws.lexmodelsv2#RegexPattern": { + "type": "string", "traits": { - "smithy.api#documentation": "

      Lists the exports for a bot, bot locale, or custom vocabulary.\n Exports are kept in the list for 7 days.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/exports", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" + "smithy.api#length": { + "min": 1, + "max": 300 } } }, - "com.amazonaws.lexmodelsv2#ListExportsRequest": { + "com.amazonaws.lexmodelsv2#RelativeAggregationDuration": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The unique identifier that Amazon Lex assigned to the bot.

      " - } - }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", - "traits": { - "smithy.api#documentation": "

      The version of the bot to list exports for.

      " - } - }, - "sortBy": { - "target": "com.amazonaws.lexmodelsv2#ExportSortBy", - "traits": { - "smithy.api#documentation": "

      Determines the field that the list of exports is sorted by. You can\n sort by the LastUpdatedDateTime field in ascending or\n descending order.

      " - } - }, - "filters": { - "target": "com.amazonaws.lexmodelsv2#ExportFilters", - "traits": { - "smithy.api#documentation": "

      Provides the specification of a filter used to limit the exports in\n the response to only those that match the filter specification. You can\n only specify one filter and one string to filter on.

      " - } - }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", - "traits": { - "smithy.api#documentation": "

      The maximum number of exports to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

      " - } - }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "timeDimension": { + "target": "com.amazonaws.lexmodelsv2#TimeDimension", "traits": { - "smithy.api#documentation": "

      If the response from the ListExports operation contains\n more results that specified in the maxResults parameter, a\n token is returned in the response.

      \n

      Use the returned token in the nextToken parameter of a\n ListExports request to return the next page of results.\n For a complete set of results, call the ListExports\n operation until the nextToken returned in the response is\n null.

      " + "smithy.api#documentation": "

      The type of time period that the timeValue field\n represents.

      ", + "smithy.api#required": {} } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "timeValue": { + "target": "com.amazonaws.lexmodelsv2#TimeValue", "traits": { - "smithy.api#documentation": "

      Specifies the resources that should be exported. If you\n don't specify a resource type in the filters parameter,\n both bot locales and custom vocabularies are exported.

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

      The period of the time window to gather statistics for. The valid\n value depends on the setting of the timeDimension\n field.

      \n
        \n
      • \n

        \n Hours - 1/3/6/12/24

        \n
      • \n
      • \n

        \n Days - 3

        \n
      • \n
      • \n

        \n Weeks - 1/2

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

      Specifies the time window that utterance statistics are returned\n for. The time window is always relative to the last time that the that\n utterances were aggregated. For example, if the\n ListAggregatedUtterances operation is called at 1600,\n the time window is set to 1 hour, and the last refresh time was 1530,\n only utterances made between 1430 and 1530 are returned.

      \n

      You can choose the time window that statistics should be returned\n for.

      \n
        \n
      • \n

        \n Hours - You can request\n utterance statistics for 1, 3, 6, 12, or 24 hour time windows.\n Statistics are refreshed every half hour for 1 hour time windows,\n and hourly for the other time windows.

        \n
      • \n
      • \n

        \n Days - You can request\n utterance statistics for 3 days. Statistics are refreshed every 6\n hours.

        \n
      • \n
      • \n

        \n Weeks - You can see\n statistics for one or two weeks. Statistics are refreshed every\n 12 hours for one week time windows, and once per day for two week\n time windows.

        \n
      • \n
      " } }, - "com.amazonaws.lexmodelsv2#ListExportsResponse": { + "com.amazonaws.lexmodelsv2#ResourceCount": { + "type": "integer" + }, + "com.amazonaws.lexmodelsv2#ResourceNotFoundException": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "message": { + "target": "com.amazonaws.lexmodelsv2#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

      You asked to describe a resource that doesn't exist. Check the\n resource that you are requesting and try again.

      ", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.lexmodelsv2#ResponseSpecification": { + "type": "structure", + "members": { + "messageGroups": { + "target": "com.amazonaws.lexmodelsv2#MessageGroupsList", "traits": { - "smithy.api#documentation": "

      The unique identifier assigned to the bot by Amazon Lex.

      " + "smithy.api#documentation": "

      A collection of responses that Amazon Lex can send to the user. Amazon Lex\n chooses the actual response to send at runtime.

      ", + "smithy.api#required": {} } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", + "allowInterrupt": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", "traits": { - "smithy.api#documentation": "

      The version of the bot that was exported.

      " + "smithy.api#documentation": "

      Indicates whether the user can interrupt a speech response from\n Amazon Lex.

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

      Specifies a list of message groups that Amazon Lex uses to respond the\n user input.

      " + } + }, + "com.amazonaws.lexmodelsv2#RetryAfterSeconds": { + "type": "integer", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.lexmodelsv2#RevisionId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 }, - "exportSummaries": { - "target": "com.amazonaws.lexmodelsv2#ExportSummaryList", - "traits": { - "smithy.api#documentation": "

      Summary information for the exports that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter. If there are more exports\n available, the nextToken field contains a token to get the\n next page of results.

      " - } + "smithy.api#pattern": "^[0-9]+$" + } + }, + "com.amazonaws.lexmodelsv2#RoleArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 32, + "max": 2048 }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "smithy.api#pattern": "^arn:aws:iam::[0-9]{12}:role/.*$" + } + }, + "com.amazonaws.lexmodelsv2#RuntimeHintDetails": { + "type": "structure", + "members": { + "runtimeHintValues": { + "target": "com.amazonaws.lexmodelsv2#RuntimeHintValuesList", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListExports operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListExports\n operation request to get the next page of results.

      " + "smithy.api#documentation": "

      One or more strings that Amazon Lex should look for in the input to the\n bot. Each phrase is given preference when deciding on slot\n values.

      " } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "subSlotHints": { + "target": "com.amazonaws.lexmodelsv2#SlotHintsSlotMap", "traits": { - "smithy.api#documentation": "

      The locale specified in the request.

      " + "smithy.api#documentation": "

      A map of constituent sub slot names inside a composite slot in the intent and the phrases \n that should be added for each sub slot. Inside each composite slot hints, this structure provides \n a mechanism to add granular sub slot phrases. Only sub slot hints are supported for composite slots. \n The intent name, composite slot name and the constituent sub slot names must exist.

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

      Provides an array of phrases that should be given preference when\n resolving values for a slot.

      " } }, - "com.amazonaws.lexmodelsv2#ListImports": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListImportsRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListImportsResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], + "com.amazonaws.lexmodelsv2#RuntimeHintPhrase": { + "type": "string", "traits": { - "smithy.api#documentation": "

      Lists the imports for a bot, bot locale, or custom vocabulary.\n Imports are kept in the list for 7 days.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/imports", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" + "smithy.api#length": { + "min": 1, + "max": 140 } } }, - "com.amazonaws.lexmodelsv2#ListImportsRequest": { + "com.amazonaws.lexmodelsv2#RuntimeHintValue": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The unique identifier that Amazon Lex assigned to the bot.

      " - } - }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", - "traits": { - "smithy.api#documentation": "

      The version of the bot to list imports for.

      " - } - }, - "sortBy": { - "target": "com.amazonaws.lexmodelsv2#ImportSortBy", - "traits": { - "smithy.api#documentation": "

      Determines the field that the list of imports is sorted by. You can\n sort by the LastUpdatedDateTime field in ascending or\n descending order.

      " - } - }, - "filters": { - "target": "com.amazonaws.lexmodelsv2#ImportFilters", - "traits": { - "smithy.api#documentation": "

      Provides the specification of a filter used to limit the bots in the\n response to only those that match the filter specification. You can\n only specify one filter and one string to filter on.

      " - } - }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", - "traits": { - "smithy.api#documentation": "

      The maximum number of imports to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

      " - } - }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", - "traits": { - "smithy.api#documentation": "

      If the response from the ListImports operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response.

      \n

      Use the returned token in the nextToken parameter of a\n ListImports request to return the next page of results.\n For a complete set of results, call the ListImports\n operation until the nextToken returned in the response is\n null.

      " - } - }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "phrase": { + "target": "com.amazonaws.lexmodelsv2#RuntimeHintPhrase", "traits": { - "smithy.api#documentation": "

      Specifies the locale that should be present in the list. If you\n don't specify a resource type in the filters parameter,\n the list contains both bot locales and custom vocabularies.

      " + "smithy.api#documentation": "

      The phrase that Amazon Lex should look for in the user's input to the\n bot.

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

      Provides the phrase that Amazon Lex should look for in the user's input\n to the bot.

      " } }, - "com.amazonaws.lexmodelsv2#ListImportsResponse": { + "com.amazonaws.lexmodelsv2#RuntimeHintValuesList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#RuntimeHintValue" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.lexmodelsv2#RuntimeHints": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The unique identifier assigned by Amazon Lex to the bot.

      " - } - }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "slotHints": { + "target": "com.amazonaws.lexmodelsv2#SlotHintsIntentMap", "traits": { - "smithy.api#documentation": "

      The version of the bot that was imported. It will always be\n DRAFT.

      " + "smithy.api#documentation": "

      A list of the slots in the intent that should have runtime hints\n added, and the phrases that should be added for each slot.

      \n

      The first level of the slotHints map is the name of the\n intent. The second level is the name of the slot within the intent. For\n more information, see Using hints to improve\n accuracy.

      \n

      The intent name and slot name must exist.

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

      You can provide Amazon Lex with hints to the phrases that a customer is\n likely to use for a slot. When a slot with hints is resolved, the\n phrases in the runtime hints are preferred in the resolution. You can\n provide hints for a maximum of 100 intents. You can provide a maximum\n of 100 slots.

      \n

      Before you can use runtime hints with an existing bot, you must\n first rebuild the bot.

      \n

      For more information, see Using runtime hints to\n improve recognition of slot values.

      " + } + }, + "com.amazonaws.lexmodelsv2#S3BucketArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 }, - "importSummaries": { - "target": "com.amazonaws.lexmodelsv2#ImportSummaryList", + "smithy.api#pattern": "^arn:[\\w\\-]+:s3:::[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$" + } + }, + "com.amazonaws.lexmodelsv2#S3BucketLogDestination": { + "type": "structure", + "members": { + "kmsKeyArn": { + "target": "com.amazonaws.lexmodelsv2#KmsKeyArn", "traits": { - "smithy.api#documentation": "

      Summary information for the imports that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter. If there are more imports\n available, the nextToken field contains a token to get the\n next page of results.

      " + "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of an Amazon Web Services Key Management Service\n (KMS) key for encrypting audio log files stored in an S3 bucket.

      " } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "s3BucketArn": { + "target": "com.amazonaws.lexmodelsv2#S3BucketArn", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListImports operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListImports\n operation request to get the next page of results.

      " + "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of an Amazon S3 bucket where audio\n log files are stored.

      ", + "smithy.api#required": {} } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "logPrefix": { + "target": "com.amazonaws.lexmodelsv2#LogPrefix", "traits": { - "smithy.api#documentation": "

      The locale specified in the request.

      " + "smithy.api#documentation": "

      The S3 prefix to assign to audio log files.

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

      Specifies an Amazon S3 bucket for logging audio conversations

      " } }, - "com.amazonaws.lexmodelsv2#ListIntents": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListIntentsRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListIntentsResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], + "com.amazonaws.lexmodelsv2#S3BucketName": { + "type": "string", "traits": { - "smithy.api#documentation": "

      Get a list of intents that meet the specified criteria.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents", - "code": 200 + "smithy.api#length": { + "min": 3, + "max": 63 }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" - } + "smithy.api#pattern": "^[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$" } }, - "com.amazonaws.lexmodelsv2#ListIntentsRequest": { + "com.amazonaws.lexmodelsv2#S3BucketTranscriptSource": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "s3BucketName": { + "target": "com.amazonaws.lexmodelsv2#S3BucketName", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot that contains the intent.

      ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

      The name of the bucket containing the transcript and the associated\n metadata.

      ", "smithy.api#required": {} } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", + "pathFormat": { + "target": "com.amazonaws.lexmodelsv2#PathFormat", "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the intent.

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

      The object that contains a path format that will be applied when\n Amazon Lex reads the transcript file in the bucket you provide. Specify this\n object if you only want Lex to read a subset of files in your Amazon S3\n bucket.

      " } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "transcriptFormat": { + "target": "com.amazonaws.lexmodelsv2#TranscriptFormat", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the intents to list.\n The string must match one of the supported locales. For more\n information, see Supported languages.

      ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

      The format of the transcript content. Currently, Genie only supports\n the Amazon Lex transcript format.

      ", "smithy.api#required": {} } }, - "sortBy": { - "target": "com.amazonaws.lexmodelsv2#IntentSortBy", + "transcriptFilter": { + "target": "com.amazonaws.lexmodelsv2#TranscriptFilter", "traits": { - "smithy.api#documentation": "

      Determines the sort order for the response from the\n ListIntents operation. You can choose to sort by the\n intent name or last updated date in either ascending or descending\n order.

      " + "smithy.api#documentation": "

      The object that contains the filter which will be applied when Amazon Lex\n reads through the Amazon S3 bucket. Specify this object if you want Amazon Lex to\n read only a subset of the Amazon S3 bucket based on the filter you\n provide.

      " } }, - "filters": { - "target": "com.amazonaws.lexmodelsv2#IntentFilters", + "kmsKeyArn": { + "target": "com.amazonaws.lexmodelsv2#KmsKeyArn", "traits": { - "smithy.api#documentation": "

      Provides the specification of a filter used to limit the intents in\n the response to only those that match the filter specification. You can\n only specify one filter and only one string to filter on.

      " + "smithy.api#documentation": "

      The ARN of the KMS key that customer use to encrypt their Amazon S3\n bucket. Only use this field if your bucket is encrypted using a\n customer managed KMS key.

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

      The object representing the Amazon S3 bucket containing the transcript,\n as well as the associated metadata.

      " + } + }, + "com.amazonaws.lexmodelsv2#S3ObjectPath": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", + "smithy.api#pattern": "^[\\.\\-\\!\\*\\_\\'\\(\\)a-zA-Z0-9][\\.\\-\\!\\*\\_\\'\\(\\)\\/a-zA-Z0-9]*$" + } + }, + "com.amazonaws.lexmodelsv2#SSMLMessage": { + "type": "structure", + "members": { + "value": { + "target": "com.amazonaws.lexmodelsv2#SSMLMessageValue", "traits": { - "smithy.api#documentation": "

      The maximum number of intents to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

      " + "smithy.api#documentation": "

      The SSML text that defines the prompt.

      ", + "smithy.api#required": {} } - }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + } + }, + "traits": { + "smithy.api#documentation": "

      Defines a Speech Synthesis Markup Language (SSML) prompt.

      " + } + }, + "com.amazonaws.lexmodelsv2#SSMLMessageValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.lexmodelsv2#SampleUtterance": { + "type": "structure", + "members": { + "utterance": { + "target": "com.amazonaws.lexmodelsv2#Utterance", "traits": { - "smithy.api#documentation": "

      If the response from the ListIntents operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response.

      \n

      Use the returned token in the nextToken parameter of a\n ListIntents request to return the next page of results.\n For a complete set of results, call the ListIntents\n operation until the nextToken returned in the response is\n null.

      " + "smithy.api#documentation": "

      The sample utterance that Amazon Lex uses to build its machine-learning\n model to recognize intents.

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

      A sample utterance that invokes an intent or respond to a slot\n elicitation prompt.

      " } }, - "com.amazonaws.lexmodelsv2#ListIntentsResponse": { + "com.amazonaws.lexmodelsv2#SampleUtterancesCount": { + "type": "integer" + }, + "com.amazonaws.lexmodelsv2#SampleUtterancesList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#SampleUtterance" + } + }, + "com.amazonaws.lexmodelsv2#SampleValue": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The identifier of the bot that contains the intent.

      " - } - }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", - "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the intent.

      " - } - }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", - "traits": { - "smithy.api#documentation": "

      The language and locale of the intents in the list.

      " - } - }, - "intentSummaries": { - "target": "com.amazonaws.lexmodelsv2#IntentSummaryList", - "traits": { - "smithy.api#documentation": "

      Summary information for the intents that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more\n intents available, the nextToken field contains a token to\n get the next page of results.

      " - } - }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "value": { + "target": "com.amazonaws.lexmodelsv2#Value", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListIntents operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListIntents\n operation request to get the next page of results.

      " + "smithy.api#documentation": "

      The value that can be used for a slot type.

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

      Defines one of the values for a slot type.

      " } }, - "com.amazonaws.lexmodelsv2#ListRecommendedIntents": { + "com.amazonaws.lexmodelsv2#SearchAssociatedTranscripts": { "type": "operation", "input": { - "target": "com.amazonaws.lexmodelsv2#ListRecommendedIntentsRequest" + "target": "com.amazonaws.lexmodelsv2#SearchAssociatedTranscriptsRequest" }, "output": { - "target": "com.amazonaws.lexmodelsv2#ListRecommendedIntentsResponse" + "target": "com.amazonaws.lexmodelsv2#SearchAssociatedTranscriptsResponse" }, "errors": [ { @@ -11273,34 +14750,29 @@ } ], "traits": { - "smithy.api#documentation": "

      Gets a list of recommended intents provided by the bot\n recommendation that you can use in your bot. Intents in the \n response are ordered by relevance.

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

      Search for associated transcripts that meet the specified\n criteria.

      ", "smithy.api#http": { "method": "POST", - "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/intents", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/associatedtranscripts", "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" } } }, - "com.amazonaws.lexmodelsv2#ListRecommendedIntentsRequest": { + "com.amazonaws.lexmodelsv2#SearchAssociatedTranscriptsRequest": { "type": "structure", "members": { "botId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot associated with the recommended\n intents.

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

      The unique identifier of the bot associated with the transcripts\n that you are searching.

      ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "target": "com.amazonaws.lexmodelsv2#BotVersion", "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the recommended intents.

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

      The version of the bot containing the transcripts that you are\n searching.

      ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -11308,7 +14780,7 @@ "localeId": { "target": "com.amazonaws.lexmodelsv2#LocaleId", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the recommended\n intents.

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

      The identifier of the language and locale of the transcripts to\n search. The string must match one of the supported locales. For more\n information, see Supported languages\n

      ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -11316,15 +14788,22 @@ "botRecommendationId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The identifier of the bot recommendation that contains the\n recommended intents.

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

      The unique identifier of the bot recommendation associated with the\n transcripts to search.

      ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "searchOrder": { + "target": "com.amazonaws.lexmodelsv2#SearchOrder", "traits": { - "smithy.api#documentation": "

      If the response from the ListRecommendedIntents operation contains\n more results than specified in the maxResults parameter, a token is\n returned in the response. Use that token in the nextToken parameter to\n return the next page of results.

      " + "smithy.api#documentation": "

      How SearchResults are ordered. Valid values are Ascending or\n Descending. The default is Descending.

      " + } + }, + "filters": { + "target": "com.amazonaws.lexmodelsv2#AssociatedTranscriptFilters", + "traits": { + "smithy.api#documentation": "

      A list of filter objects.

      ", + "smithy.api#required": {} } }, "maxResults": { @@ -11332,1424 +14811,1373 @@ "traits": { "smithy.api#documentation": "

      The maximum number of bot recommendations to return in each page of\n results. If there are fewer results than the max page size, only the\n actual number of results are returned.

      " } + }, + "nextIndex": { + "target": "com.amazonaws.lexmodelsv2#NextIndex", + "traits": { + "smithy.api#documentation": "

      If the response from the SearchAssociatedTranscriptsRequest\n operation contains more results than specified in the maxResults\n parameter, an index is returned in the response. Use that index in the\n nextIndex parameter to return the next page of results.

      " + } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#ListRecommendedIntentsResponse": { + "com.amazonaws.lexmodelsv2#SearchAssociatedTranscriptsResponse": { "type": "structure", "members": { "botId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot associated with the recommended\n intent.

      " + "smithy.api#documentation": "

      The unique identifier of the bot associated with the transcripts\n that you are searching.

      " } }, "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "target": "com.amazonaws.lexmodelsv2#BotVersion", "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the intent.

      " + "smithy.api#documentation": "

      The version of the bot containing the transcripts that you are\n searching.

      " } }, "localeId": { "target": "com.amazonaws.lexmodelsv2#LocaleId", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the intents to list.\n The string must match one of the supported locales. For more\n information, see Supported languages.

      " + "smithy.api#documentation": "

      The identifier of the language and locale of the transcripts to\n search. The string must match one of the supported locales. For more\n information, see Supported languages\n

      " } }, "botRecommendationId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The identifier of the bot recommendation that contains the\n recommended intent.

      " + "smithy.api#documentation": "

      The unique identifier of the bot recommendation associated with the\n transcripts to search.

      " } }, - "summaryList": { - "target": "com.amazonaws.lexmodelsv2#RecommendedIntentSummaryList", + "nextIndex": { + "target": "com.amazonaws.lexmodelsv2#NextIndex", "traits": { - "smithy.api#documentation": "

      Summary information for the intents that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more intents\n available, the nextToken field contains a token to get the next page of\n results.

      " + "smithy.api#documentation": "

      A index that indicates whether there are more results to return in a\n response to the SearchAssociatedTranscripts operation. If the nextIndex\n field is present, you send the contents as the nextIndex parameter of a\n SearchAssociatedTranscriptsRequest operation to get the next page of\n results.

      " } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "associatedTranscripts": { + "target": "com.amazonaws.lexmodelsv2#AssociatedTranscriptList", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListRecommendedIntents operation. If the nextToken\n field is present, you send the contents as the nextToken parameter of a\n ListRecommendedIntents operation request to get the next page of\n results.

      " + "smithy.api#documentation": "

      The object that contains the associated transcript that meet the\n criteria you specified.

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

      The total number of transcripts returned by the search.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#ListSlotTypes": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListSlotTypesRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListSlotTypesResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + "com.amazonaws.lexmodelsv2#SearchOrder": { + "type": "enum", + "members": { + "Ascending": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Ascending" + } }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + "Descending": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Descending" + } + } + } + }, + "com.amazonaws.lexmodelsv2#SentimentAnalysisSettings": { + "type": "structure", + "members": { + "detectSentiment": { + "target": "com.amazonaws.lexmodelsv2#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

      Sets whether Amazon Lex uses Amazon Comprehend to detect the sentiment of user\n utterances.

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

      Determines whether Amazon Lex will use Amazon Comprehend to detect the sentiment of\n user utterances.

      " + } + }, + "com.amazonaws.lexmodelsv2#ServicePrincipal": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 15, + "max": 1024 }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" + "smithy.api#pattern": "^[0-9a-zA-Z_.]+$" + } + }, + "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.lexmodelsv2#ExceptionMessage" } - ], + }, "traits": { - "smithy.api#documentation": "

      Gets a list of slot types that match the specified criteria.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes", - "code": 200 + "smithy.api#documentation": "

      You have reached a quota for your bot.

      ", + "smithy.api#error": "client", + "smithy.api#httpError": 402 + } + }, + "com.amazonaws.lexmodelsv2#SessionId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 2, + "max": 100 }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" + "smithy.api#pattern": "^[0-9a-zA-Z._:-]+$" + } + }, + "com.amazonaws.lexmodelsv2#SessionTTL": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 60, + "max": 86400 } } }, - "com.amazonaws.lexmodelsv2#ListSlotTypesRequest": { + "com.amazonaws.lexmodelsv2#SkipResourceInUseCheck": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, + "com.amazonaws.lexmodelsv2#SlotCaptureSetting": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot that contains the slot\n types.

      ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } + "captureResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", + "captureNextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the slot type.

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

      Specifies the next step that the bot runs when the slot value is\n captured before the code hook times out.

      " } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "captureConditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the slot types to list.\n The string must match one of the supported locales. For more\n information, see Supported languages.

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

      A list of conditional branches to evaluate after the slot value is\n captured.

      " } }, - "sortBy": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeSortBy", + "failureResponse": { + "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" + }, + "failureNextStep": { + "target": "com.amazonaws.lexmodelsv2#DialogState", "traits": { - "smithy.api#documentation": "

      Determines the sort order for the response from the\n ListSlotTypes operation. You can choose to sort by the\n slot type name or last updated date in either ascending or descending\n order.

      " + "smithy.api#documentation": "

      Specifies the next step that the bot runs when the slot value code\n is not recognized.

      " } }, - "filters": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeFilters", + "failureConditional": { + "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", "traits": { - "smithy.api#documentation": "

      Provides the specification of a filter used to limit the slot types\n in the response to only those that match the filter specification. You\n can only specify one filter and only one string to filter on.

      " + "smithy.api#documentation": "

      A list of conditional branches to evaluate when the slot value isn't\n captured.

      " } }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", + "codeHook": { + "target": "com.amazonaws.lexmodelsv2#DialogCodeHookInvocationSetting", "traits": { - "smithy.api#documentation": "

      The maximum number of slot types to return in each page of results.\n If there are fewer results than the max page size, only the actual\n number of results are returned.

      " + "smithy.api#documentation": "

      Code hook called after Amazon Lex successfully captures a\n slot value.

      " } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "elicitationCodeHook": { + "target": "com.amazonaws.lexmodelsv2#ElicitationCodeHookInvocationSetting", "traits": { - "smithy.api#documentation": "

      If the response from the ListSlotTypes operation\n contains more results than specified in the maxResults\n parameter, a token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

      " + "smithy.api#documentation": "

      Code hook called when Amazon Lex doesn't capture a slot\n value.

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

      Settings used when Amazon Lex successfully captures a slot\n value from a user.

      " } }, - "com.amazonaws.lexmodelsv2#ListSlotTypesResponse": { - "type": "structure", + "com.amazonaws.lexmodelsv2#SlotConstraint": { + "type": "enum", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The identifier of the bot that contains the slot types.

      " - } - }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", - "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the slot types.

      " - } - }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "Required": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The language and local of the slot types in the list.

      " + "smithy.api#enumValue": "Required" } }, - "slotTypeSummaries": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeSummaryList", + "Optional": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Summary information for the slot types that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more\n slot types available, the nextToken field contains a token\n to get the next page of results.

      " + "smithy.api#enumValue": "Optional" } - }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + } + } + }, + "com.amazonaws.lexmodelsv2#SlotDefaultValue": { + "type": "structure", + "members": { + "defaultValue": { + "target": "com.amazonaws.lexmodelsv2#SlotDefaultValueString", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListSlotTypes operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListSlotTypes\n operation request to get the next page of results.

      " + "smithy.api#documentation": "

      The default value to use when a user doesn't provide a value for a\n slot.

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

      Specifies the default value to use when a user doesn't provide a\n value for a slot.

      " } }, - "com.amazonaws.lexmodelsv2#ListSlots": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListSlotsRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListSlotsResponse" + "com.amazonaws.lexmodelsv2#SlotDefaultValueList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#SlotDefaultValue" }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], "traits": { - "smithy.api#documentation": "

      Gets a list of slots that match the specified criteria.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/slots", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults" + "smithy.api#length": { + "min": 0, + "max": 10 } } }, - "com.amazonaws.lexmodelsv2#ListSlotsRequest": { + "com.amazonaws.lexmodelsv2#SlotDefaultValueSpecification": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The identifier of the bot that contains the slot.

      ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", - "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the slot.

      ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", - "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the slots to list. The\n string must match one of the supported locales. For more information,\n see Supported languages.

      ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "intentId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "defaultValueList": { + "target": "com.amazonaws.lexmodelsv2#SlotDefaultValueList", "traits": { - "smithy.api#documentation": "

      The unique identifier of the intent that contains the slot.

      ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

      A list of default values. Amazon Lex chooses the default value to use in\n the order that they are presented in the list.

      ", "smithy.api#required": {} } - }, - "sortBy": { - "target": "com.amazonaws.lexmodelsv2#SlotSortBy", - "traits": { - "smithy.api#documentation": "

      Determines the sort order for the response from the\n ListSlots operation. You can choose to sort by the slot\n name or last updated date in either ascending or descending\n order.

      " - } - }, - "filters": { - "target": "com.amazonaws.lexmodelsv2#SlotFilters", - "traits": { - "smithy.api#documentation": "

      Provides the specification of a filter used to limit the slots in\n the response to only those that match the filter specification. You can\n only specify one filter and only one string to filter on.

      " - } - }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", - "traits": { - "smithy.api#documentation": "

      The maximum number of slots to return in each page of results. If\n there are fewer results than the max page size, only the actual number\n of results are returned.

      " - } - }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", - "traits": { - "smithy.api#documentation": "

      If the response from the ListSlots operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

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

      Defines a list of values that Amazon Lex should use as the default value\n for a slot.

      " + } + }, + "com.amazonaws.lexmodelsv2#SlotDefaultValueString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 202 } } }, - "com.amazonaws.lexmodelsv2#ListSlotsResponse": { + "com.amazonaws.lexmodelsv2#SlotFilter": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The identifier of the bot that contains the slots.

      " - } - }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", - "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the slots.

      " - } - }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", - "traits": { - "smithy.api#documentation": "

      The language and locale of the slots in the list.

      " - } - }, - "intentId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "name": { + "target": "com.amazonaws.lexmodelsv2#SlotFilterName", "traits": { - "smithy.api#documentation": "

      The identifier of the intent that contains the slots.

      " + "smithy.api#documentation": "

      The name of the field to use for filtering.

      ", + "smithy.api#required": {} } }, - "slotSummaries": { - "target": "com.amazonaws.lexmodelsv2#SlotSummaryList", + "values": { + "target": "com.amazonaws.lexmodelsv2#FilterValues", "traits": { - "smithy.api#documentation": "

      Summary information for the slots that meet the filter criteria\n specified in the request. The length of the list is specified in the\n maxResults parameter of the request. If there are more\n slots available, the nextToken field contains a token to\n get the next page of results.

      " + "smithy.api#documentation": "

      The value to use to filter the response.

      ", + "smithy.api#required": {} } }, - "nextToken": { - "target": "com.amazonaws.lexmodelsv2#NextToken", + "operator": { + "target": "com.amazonaws.lexmodelsv2#SlotFilterOperator", "traits": { - "smithy.api#documentation": "

      A token that indicates whether there are more results to return in a\n response to the ListSlots operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListSlots\n operation request to get the next page of results.

      " + "smithy.api#documentation": "

      The operator to use for the filter. Specify EQ when the\n ListSlots operation should return only aliases that\n equal the specified value. Specify CO when the\n ListSlots operation should return aliases that contain\n the specified value.

      ", + "smithy.api#required": {} } } - } - }, - "com.amazonaws.lexmodelsv2#ListTagsForResource": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#ListTagsForResourceRequest" }, - "output": { - "target": "com.amazonaws.lexmodelsv2#ListTagsForResourceResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

      Gets a list of tags associated with a resource. Only bots, bot\n aliases, and bot channels can have tags associated with them.

      ", - "smithy.api#http": { - "method": "GET", - "uri": "/tags/{resourceARN}", - "code": 200 - } + "traits": { + "smithy.api#documentation": "

      Filters the response from the ListSlots\n operation.

      " } }, - "com.amazonaws.lexmodelsv2#ListTagsForResourceRequest": { - "type": "structure", + "com.amazonaws.lexmodelsv2#SlotFilterName": { + "type": "enum", "members": { - "resourceARN": { - "target": "com.amazonaws.lexmodelsv2#AmazonResourceName", + "SlotName": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of the resource to get a list of tags\n for.

      ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "SlotName" } } } }, - "com.amazonaws.lexmodelsv2#ListTagsForResourceResponse": { - "type": "structure", + "com.amazonaws.lexmodelsv2#SlotFilterOperator": { + "type": "enum", "members": { - "tags": { - "target": "com.amazonaws.lexmodelsv2#TagMap", + "Contains": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The tags associated with a resource.

      " + "smithy.api#enumValue": "CO" + } + }, + "Equals": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EQ" } } } }, - "com.amazonaws.lexmodelsv2#LocaleId": { - "type": "string" - }, - "com.amazonaws.lexmodelsv2#LocaleName": { - "type": "string" - }, - "com.amazonaws.lexmodelsv2#LogPrefix": { - "type": "string", + "com.amazonaws.lexmodelsv2#SlotFilters": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#SlotFilter" + }, "traits": { "smithy.api#length": { - "min": 0, - "max": 1024 + "min": 1, + "max": 1 } } }, - "com.amazonaws.lexmodelsv2#MaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 - } + "com.amazonaws.lexmodelsv2#SlotHintsIntentMap": { + "type": "map", + "key": { + "target": "com.amazonaws.lexmodelsv2#Name" + }, + "value": { + "target": "com.amazonaws.lexmodelsv2#SlotHintsSlotMap" } }, - "com.amazonaws.lexmodelsv2#MaxUtteranceDigits": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1024 - } + "com.amazonaws.lexmodelsv2#SlotHintsSlotMap": { + "type": "map", + "key": { + "target": "com.amazonaws.lexmodelsv2#Name" + }, + "value": { + "target": "com.amazonaws.lexmodelsv2#RuntimeHintDetails" } }, - "com.amazonaws.lexmodelsv2#MergeStrategy": { - "type": "enum", + "com.amazonaws.lexmodelsv2#SlotPrioritiesList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#SlotPriority" + } + }, + "com.amazonaws.lexmodelsv2#SlotPriority": { + "type": "structure", "members": { - "Overwrite": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Overwrite" - } - }, - "FailOnConflict": { - "target": "smithy.api#Unit", + "priority": { + "target": "com.amazonaws.lexmodelsv2#PriorityValue", "traits": { - "smithy.api#enumValue": "FailOnConflict" + "smithy.api#documentation": "

      The priority that Amazon Lex should apply to the slot.

      ", + "smithy.api#required": {} } }, - "Append": { - "target": "smithy.api#Unit", + "slotId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#enumValue": "Append" + "smithy.api#documentation": "

      The unique identifier of the slot.

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

      Sets the priority that Amazon Lex should use when eliciting slot values\n from a user.

      " } }, - "com.amazonaws.lexmodelsv2#Message": { + "com.amazonaws.lexmodelsv2#SlotResolutionTestResultItem": { "type": "structure", "members": { - "plainTextMessage": { - "target": "com.amazonaws.lexmodelsv2#PlainTextMessage", - "traits": { - "smithy.api#documentation": "

      A message in plain text format.

      " - } - }, - "customPayload": { - "target": "com.amazonaws.lexmodelsv2#CustomPayload", - "traits": { - "smithy.api#documentation": "

      A message in a custom format defined by the client\n application.

      " - } - }, - "ssmlMessage": { - "target": "com.amazonaws.lexmodelsv2#SSMLMessage", + "slotName": { + "target": "com.amazonaws.lexmodelsv2#TestResultSlotName", "traits": { - "smithy.api#documentation": "

      A message in Speech Synthesis Markup Language (SSML).

      " + "smithy.api#documentation": "

      The name of the slot.

      ", + "smithy.api#required": {} } }, - "imageResponseCard": { - "target": "com.amazonaws.lexmodelsv2#ImageResponseCard", + "resultCounts": { + "target": "com.amazonaws.lexmodelsv2#SlotResolutionTestResultItemCounts", "traits": { - "smithy.api#documentation": "

      A message that defines a response card that the client application\n can show to the user.

      " + "smithy.api#documentation": "

      A result for slot resolution in the results of a test execution.

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

      The object that provides message text and it's type.

      " + "smithy.api#documentation": "

      Information about the success and failure rate of slot resolution \n in the results of a test execution.

      " } }, - "com.amazonaws.lexmodelsv2#MessageGroup": { + "com.amazonaws.lexmodelsv2#SlotResolutionTestResultItemCounts": { "type": "structure", "members": { - "message": { - "target": "com.amazonaws.lexmodelsv2#Message", + "totalResultCount": { + "target": "com.amazonaws.lexmodelsv2#Count", "traits": { - "smithy.api#documentation": "

      The primary message that Amazon Lex should send to the user.

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

      The total number of results.

      ", "smithy.api#required": {} } }, - "variations": { - "target": "com.amazonaws.lexmodelsv2#MessageVariationsList", + "speechTranscriptionResultCounts": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatusCountMap", "traits": { - "smithy.api#documentation": "

      Message variations to send to the user. When variations are defined,\n Amazon Lex chooses the primary message or one of the variations to send to\n the user.

      " + "smithy.api#documentation": "

      The number of matched, mismatched and execution error results for speech transcription for the slot.

      " + } + }, + "slotMatchResultCounts": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatusCountMap", + "traits": { + "smithy.api#documentation": "

      The number of matched and mismatched results for slot resolution for the slot.

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

      Provides one or more messages that Amazon Lex should send to the\n user.

      " + "smithy.api#documentation": "

      Information about the counts for a slot resolution in the results of a test execution.

      " } }, - "com.amazonaws.lexmodelsv2#MessageGroupsList": { + "com.amazonaws.lexmodelsv2#SlotResolutionTestResultItems": { "type": "list", "member": { - "target": "com.amazonaws.lexmodelsv2#MessageGroup" - }, - "traits": { - "smithy.api#length": { - "min": 1, - "max": 5 - } + "target": "com.amazonaws.lexmodelsv2#SlotResolutionTestResultItem" } }, - "com.amazonaws.lexmodelsv2#MessageSelectionStrategy": { + "com.amazonaws.lexmodelsv2#SlotShape": { "type": "enum", "members": { - "Random": { + "Scalar": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Random" + "smithy.api#enumValue": "Scalar" } }, - "Ordered": { + "List": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Ordered" + "smithy.api#enumValue": "List" } } } }, - "com.amazonaws.lexmodelsv2#MessageVariationsList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#Message" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 2 + "com.amazonaws.lexmodelsv2#SlotSortAttribute": { + "type": "enum", + "members": { + "SlotName": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SlotName" + } + }, + "LastUpdatedDateTime": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LastUpdatedDateTime" + } } } }, - "com.amazonaws.lexmodelsv2#MissedCount": { - "type": "integer" - }, - "com.amazonaws.lexmodelsv2#MultipleValuesSetting": { + "com.amazonaws.lexmodelsv2#SlotSortBy": { "type": "structure", "members": { - "allowMultipleValues": { - "target": "com.amazonaws.lexmodelsv2#Boolean", + "attribute": { + "target": "com.amazonaws.lexmodelsv2#SlotSortAttribute", "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

      Indicates whether a slot can return multiple values. When\n true, the slot may return more than one value in a\n response. When false, the slot returns only a single\n value.

      \n

      Multi-value slots are only available in the en-US locale. If you set\n this value to true in any other locale, Amazon Lex throws a\n ValidationException.

      \n

      If the allowMutlipleValues is not set, the default\n value is false.

      " + "smithy.api#documentation": "

      The attribute to use to sort the list.

      ", + "smithy.api#required": {} + } + }, + "order": { + "target": "com.amazonaws.lexmodelsv2#SortOrder", + "traits": { + "smithy.api#documentation": "

      The order to sort the list. You can choose ascending or\n descending.

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

      Indicates whether a slot can return multiple values.

      " - } - }, - "com.amazonaws.lexmodelsv2#Name": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 100 - }, - "smithy.api#pattern": "^([0-9a-zA-Z][_-]?)+$" + "smithy.api#documentation": "

      Specifies attributes for sorting a list of bots.

      " } }, - "com.amazonaws.lexmodelsv2#NewCustomVocabularyItem": { + "com.amazonaws.lexmodelsv2#SlotSummary": { "type": "structure", "members": { - "phrase": { - "target": "com.amazonaws.lexmodelsv2#Phrase", + "slotId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The unique phrase for the new custom vocabulary item from the custom \n vocabulary list.

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

      The unique identifier of the slot.

      " } }, - "weight": { - "target": "com.amazonaws.lexmodelsv2#Weight", + "slotName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The weight assigned to the new custom vocabulary item from the custom \n vocabulary list.

      " + "smithy.api#documentation": "

      The name given to the slot.

      " } }, - "displayAs": { - "target": "com.amazonaws.lexmodelsv2#Phrase", + "description": { + "target": "com.amazonaws.lexmodelsv2#Description", "traits": { - "smithy.api#documentation": "

      The display as value assigned to the new custom vocabulary item from the custom \n vocabulary list.

      " + "smithy.api#documentation": "

      The description of the slot.

      " + } + }, + "slotConstraint": { + "target": "com.amazonaws.lexmodelsv2#SlotConstraint", + "traits": { + "smithy.api#documentation": "

      Whether the slot is required or optional. An intent is complete when\n all required slots are filled.

      " + } + }, + "slotTypeId": { + "target": "com.amazonaws.lexmodelsv2#BuiltInOrCustomSlotTypeId", + "traits": { + "smithy.api#documentation": "

      The unique identifier for the slot type that defines the values for\n the slot.

      " + } + }, + "valueElicitationPromptSpecification": { + "target": "com.amazonaws.lexmodelsv2#PromptSpecification", + "traits": { + "smithy.api#documentation": "

      Prompts that are sent to the user to elicit a value for the\n slot.

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

      The timestamp of the last date and time that the slot was\n updated.

      " } } }, "traits": { - "smithy.api#documentation": "

      The new custom vocabulary item from the custom \n vocabulary list.

      " - } - }, - "com.amazonaws.lexmodelsv2#NextIndex": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 10000000 - } - } - }, - "com.amazonaws.lexmodelsv2#NextToken": { - "type": "string" - }, - "com.amazonaws.lexmodelsv2#NonEmptyString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1 - } + "smithy.api#documentation": "

      Summary information about a slot, a value that the bot elicits from\n the user.

      " } }, - "com.amazonaws.lexmodelsv2#NumericalBotVersion": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 5 - }, - "smithy.api#pattern": "^[0-9]+$" + "com.amazonaws.lexmodelsv2#SlotSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#SlotSummary" } }, - "com.amazonaws.lexmodelsv2#ObfuscationSetting": { - "type": "structure", + "com.amazonaws.lexmodelsv2#SlotTypeCategory": { + "type": "enum", "members": { - "obfuscationSettingType": { - "target": "com.amazonaws.lexmodelsv2#ObfuscationSettingType", + "Custom": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Value that determines whether Amazon Lex obscures slot values in\n conversation logs. The default is to obscure the values.

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

      Determines whether Amazon Lex obscures slot values in conversation logs.\n

      " - } - }, - "com.amazonaws.lexmodelsv2#ObfuscationSettingType": { - "type": "enum", - "members": { - "None": { + }, + "Extended": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "None" + "smithy.api#enumValue": "Extended" } }, - "DefaultObfuscation": { + "ExternalGrammar": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "DefaultObfuscation" + "smithy.api#enumValue": "ExternalGrammar" } - } - } - }, - "com.amazonaws.lexmodelsv2#ObjectPrefix": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1 }, - "smithy.api#pattern": "^[\\/]?+[a-zA-Z0-9!_.*'()-]+(\\/[a-zA-Z0-9!_.*'()-]+)*$" - } - }, - "com.amazonaws.lexmodelsv2#ObjectPrefixes": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#ObjectPrefix" - }, - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2 + "Composite": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Composite" + } } } }, - "com.amazonaws.lexmodelsv2#Operation": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 5, - "max": 50 - }, - "smithy.api#pattern": "^lex:[a-zA-Z*]+$" - } - }, - "com.amazonaws.lexmodelsv2#OperationList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#Operation" - } - }, - "com.amazonaws.lexmodelsv2#OutputContext": { + "com.amazonaws.lexmodelsv2#SlotTypeFilter": { "type": "structure", "members": { "name": { - "target": "com.amazonaws.lexmodelsv2#Name", + "target": "com.amazonaws.lexmodelsv2#SlotTypeFilterName", "traits": { - "smithy.api#documentation": "

      The name of the output context.

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

      The name of the field to use for filtering.

      ", "smithy.api#required": {} } }, - "timeToLiveInSeconds": { - "target": "com.amazonaws.lexmodelsv2#ContextTimeToLiveInSeconds", + "values": { + "target": "com.amazonaws.lexmodelsv2#FilterValues", "traits": { - "smithy.api#documentation": "

      The amount of time, in seconds, that the output context should\n remain active. The time is figured from the first time the context is\n sent to the user.

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

      The value to use to filter the response.

      ", "smithy.api#required": {} } }, - "turnsToLive": { - "target": "com.amazonaws.lexmodelsv2#ContextTurnsToLive", + "operator": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeFilterOperator", "traits": { - "smithy.api#documentation": "

      The number of conversation turns that the output context should\n remain active. The number of turns is counted from the first time that\n the context is sent to the user.

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

      The operator to use for the filter. Specify EQ when the\n ListSlotTypes operation should return only aliases that\n equal the specified value. Specify CO when the\n ListSlotTypes operation should return aliases that\n contain the specified value.

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

      Describes a session context that is activated when an intent is\n fulfilled.

      " - } - }, - "com.amazonaws.lexmodelsv2#OutputContextsList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#OutputContext" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 10 - } + "smithy.api#documentation": "

      Filters the response from the ListSlotTypes\n operation.

      " } }, - "com.amazonaws.lexmodelsv2#ParentBotNetwork": { - "type": "structure", + "com.amazonaws.lexmodelsv2#SlotTypeFilterName": { + "type": "enum", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "SlotTypeName": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The identifier of the network of bots assigned by Amazon Lex.

      ", - "smithy.api#required": {} + "smithy.api#enumValue": "SlotTypeName" } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", + "ExternalSourceType": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The version of the network of bots.

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

      A network of bots.

      " - } - }, - "com.amazonaws.lexmodelsv2#ParentBotNetworks": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#ParentBotNetwork" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 30 - } } }, - "com.amazonaws.lexmodelsv2#PathFormat": { - "type": "structure", + "com.amazonaws.lexmodelsv2#SlotTypeFilterOperator": { + "type": "enum", "members": { - "objectPrefixes": { - "target": "com.amazonaws.lexmodelsv2#ObjectPrefixes", + "Contains": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      A list of Amazon S3 prefixes that points to sub-folders in the Amazon S3\n bucket. Specify this list if you only want Lex to read the files under\n this set of sub-folders.

      " + "smithy.api#enumValue": "CO" } - } - }, - "traits": { - "smithy.api#documentation": "

      The object that contains a path format that will be applied when\n Amazon Lex reads the transcript file in the bucket you provide. Specify this\n object if you only want Lex to read a subset of files in your Amazon S3\n bucket.

      " - } - }, - "com.amazonaws.lexmodelsv2#Phrase": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 100 - } - } - }, - "com.amazonaws.lexmodelsv2#PlainTextMessage": { - "type": "structure", - "members": { - "value": { - "target": "com.amazonaws.lexmodelsv2#PlainTextMessageValue", + }, + "Equals": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The message to send to the user.

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

      Defines an ASCII text message to send to the user.

      " } }, - "com.amazonaws.lexmodelsv2#PlainTextMessageValue": { - "type": "string", + "com.amazonaws.lexmodelsv2#SlotTypeFilters": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeFilter" + }, "traits": { "smithy.api#length": { "min": 1, - "max": 1000 + "max": 1 } } }, - "com.amazonaws.lexmodelsv2#Policy": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 2 - } - } + "com.amazonaws.lexmodelsv2#SlotTypeSignature": { + "type": "string" }, - "com.amazonaws.lexmodelsv2#PostDialogCodeHookInvocationSpecification": { - "type": "structure", + "com.amazonaws.lexmodelsv2#SlotTypeSortAttribute": { + "type": "enum", "members": { - "successResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" - }, - "successNextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", - "traits": { - "smithy.api#documentation": "

      Specifics the next step the bot runs after the dialog code hook\n finishes successfully.

      " - } - }, - "successConditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "SlotTypeName": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      A list of conditional branches to evaluate after the dialog code\n hook finishes successfully.

      " + "smithy.api#enumValue": "SlotTypeName" } }, - "failureResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" - }, - "failureNextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + "LastUpdatedDateTime": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Specifies the next step the bot runs after the dialog code hook\n throws an exception or returns with the State field of the\n Intent object set to Failed.

      " + "smithy.api#enumValue": "LastUpdatedDateTime" } - }, - "failureConditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + } + } + }, + "com.amazonaws.lexmodelsv2#SlotTypeSortBy": { + "type": "structure", + "members": { + "attribute": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeSortAttribute", "traits": { - "smithy.api#documentation": "

      A list of conditional branches to evaluate after the dialog code\n hook throws an exception or returns with the State field\n of the Intent object set to Failed.

      " + "smithy.api#documentation": "

      The attribute to use to sort the list of slot types.

      ", + "smithy.api#required": {} } }, - "timeoutResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" - }, - "timeoutNextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + "order": { + "target": "com.amazonaws.lexmodelsv2#SortOrder", "traits": { - "smithy.api#documentation": "

      Specifies the next step that the bot runs when the code hook times\n out.

      " + "smithy.api#documentation": "

      The order to sort the list. You can say ascending or\n descending.

      ", + "smithy.api#required": {} } - }, - "timeoutConditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + } + }, + "traits": { + "smithy.api#documentation": "

      Specifies attributes for sorting a list of slot types.

      " + } + }, + "com.amazonaws.lexmodelsv2#SlotTypeStatistics": { + "type": "structure", + "members": { + "discoveredSlotTypeCount": { + "target": "com.amazonaws.lexmodelsv2#Count", "traits": { - "smithy.api#documentation": "

      A list of conditional branches to evaluate if the code hook times\n out.

      " + "smithy.api#documentation": "

      The number of recommended slot types associated with the bot\n recommendation.

      " } } }, "traits": { - "smithy.api#documentation": "

      Specifies next steps to run after the dialog code hook\n finishes.

      " + "smithy.api#documentation": "

      The object that contains the statistical summary of the recommended\n slot type associated with the bot recommendation.

      " } }, - "com.amazonaws.lexmodelsv2#PostFulfillmentStatusSpecification": { + "com.amazonaws.lexmodelsv2#SlotTypeSummary": { "type": "structure", "members": { - "successResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" - }, - "failureResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" - }, - "timeoutResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" - }, - "successNextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + "slotTypeId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      Specifies the next step in the conversation that Amazon Lex\n invokes when the fulfillment code hook completes successfully.

      " + "smithy.api#documentation": "

      The unique identifier assigned to the slot type.

      " } }, - "successConditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "slotTypeName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      A list of conditional branches to evaluate after the fulfillment\n code hook finishes successfully.

      " + "smithy.api#documentation": "

      The name of the slot type.

      " } }, - "failureNextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + "description": { + "target": "com.amazonaws.lexmodelsv2#Description", "traits": { - "smithy.api#documentation": "

      Specifies the next step the bot runs after the fulfillment code hook\n throws an exception or returns with the State field of the\n Intent object set to Failed.

      " + "smithy.api#documentation": "

      The description of the slot type.

      " } }, - "failureConditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "parentSlotTypeSignature": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeSignature", "traits": { - "smithy.api#documentation": "

      A list of conditional branches to evaluate after the fulfillment\n code hook throws an exception or returns with the State\n field of the Intent object set to\n Failed.

      " + "smithy.api#documentation": "

      If the slot type is derived from a built-on slot type, the name of\n the parent slot type.

      " } }, - "timeoutNextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + "lastUpdatedDateTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      Specifies the next step that the bot runs when the fulfillment code\n hook times out.

      " + "smithy.api#documentation": "

      A timestamp of the date and time that the slot type was last\n updated.

      " } }, - "timeoutConditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "slotTypeCategory": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeCategory", "traits": { - "smithy.api#documentation": "

      A list of conditional branches to evaluate if the fulfillment code\n hook times out.

      " + "smithy.api#documentation": "

      Indicates the type of the slot type.

      \n
        \n
      • \n

        \n Custom - A slot type that you created using\n custom values. For more information, see Creating custom slot\n types.

        \n
      • \n
      • \n

        \n Extended - A slot type created by extending the\n AMAZON.AlphaNumeric built-in slot type. For more information, see\n \n AMAZON.AlphaNumeric\n .

        \n
      • \n
      • \n

        \n ExternalGrammar - A slot type using a custom\n GRXML grammar to define values. For more information, see Using a custom grammar slot type.

        \n
      • \n
      " } } }, "traits": { - "smithy.api#documentation": "

      Provides a setting that determines whether the post-fulfillment\n response is sent to the user. For more information, see https://docs.aws.amazon.com/lexv2/latest/dg/streaming-progress.html#progress-complete\n

      " + "smithy.api#documentation": "

      Provides summary information about a slot type.

      " } }, - "com.amazonaws.lexmodelsv2#PreconditionFailedException": { + "com.amazonaws.lexmodelsv2#SlotTypeSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeSummary" + } + }, + "com.amazonaws.lexmodelsv2#SlotTypeValue": { "type": "structure", "members": { - "message": { - "target": "com.amazonaws.lexmodelsv2#ExceptionMessage" + "sampleValue": { + "target": "com.amazonaws.lexmodelsv2#SampleValue", + "traits": { + "smithy.api#documentation": "

      The value of the slot type entry.

      " + } + }, + "synonyms": { + "target": "com.amazonaws.lexmodelsv2#SynonymList", + "traits": { + "smithy.api#documentation": "

      Additional values related to the slot type entry.

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

      Your request couldn't be completed because one or more request\n fields aren't valid. Check the fields in your request and try\n again.

      ", - "smithy.api#error": "client", - "smithy.api#httpError": 412 + "smithy.api#documentation": "

      Each slot type can have a set of values. Each\n SlotTypeValue represents a value that the slot type can\n take.

      " } }, - "com.amazonaws.lexmodelsv2#PresignedS3Url": { - "type": "string", + "com.amazonaws.lexmodelsv2#SlotTypeValues": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeValue" + }, "traits": { "smithy.api#length": { "min": 1, - "max": 1024 + "max": 10000 } } }, - "com.amazonaws.lexmodelsv2#Principal": { + "com.amazonaws.lexmodelsv2#SlotValue": { "type": "structure", "members": { - "service": { - "target": "com.amazonaws.lexmodelsv2#ServicePrincipal", - "traits": { - "smithy.api#documentation": "

      The name of the AWS service that should allowed or denied access to\n an Amazon Lex action.

      " - } - }, - "arn": { - "target": "com.amazonaws.lexmodelsv2#PrincipalArn", + "interpretedValue": { + "target": "com.amazonaws.lexmodelsv2#NonEmptyString", "traits": { - "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of the principal.

      " + "smithy.api#documentation": "

      The value that Amazon Lex determines for the slot. The\n actual value depends on the setting of the value selection strategy for\n the bot. You can choose to use the value entered by the user, or you\n can have Amazon Lex choose the first value in the\n resolvedValues list.

      " } } }, "traits": { - "smithy.api#documentation": "

      The IAM principal that you allowing or denying access to an Amazon Lex\n action. You must provide a service or an arn,\n but not both in the same statement. For more information, see AWS JSON policy elements: Principal .

      " - } - }, - "com.amazonaws.lexmodelsv2#PrincipalArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 30, - "max": 1024 - }, - "smithy.api#pattern": "^arn:aws:iam::[0-9]{12}:(root|(user|role)/.*)$" - } - }, - "com.amazonaws.lexmodelsv2#PrincipalList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#Principal" - } - }, - "com.amazonaws.lexmodelsv2#PriorityValue": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 100 - } + "smithy.api#documentation": "

      The value to set in a slot.

      " } }, - "com.amazonaws.lexmodelsv2#PromptAttempt": { - "type": "enum", + "com.amazonaws.lexmodelsv2#SlotValueElicitationSetting": { + "type": "structure", "members": { - "Initial": { - "target": "smithy.api#Unit", + "defaultValueSpecification": { + "target": "com.amazonaws.lexmodelsv2#SlotDefaultValueSpecification", "traits": { - "smithy.api#enumValue": "Initial" + "smithy.api#documentation": "

      A list of default values for a slot. Default values are used when\n Amazon Lex hasn't determined a value for a slot. You can specify default\n values from context variables, session attributes, and defined\n values.

      " } }, - "Retry1": { - "target": "smithy.api#Unit", + "slotConstraint": { + "target": "com.amazonaws.lexmodelsv2#SlotConstraint", "traits": { - "smithy.api#enumValue": "Retry1" + "smithy.api#documentation": "

      Specifies whether the slot is required or optional.

      ", + "smithy.api#required": {} } }, - "Retry2": { - "target": "smithy.api#Unit", + "promptSpecification": { + "target": "com.amazonaws.lexmodelsv2#PromptSpecification", "traits": { - "smithy.api#enumValue": "Retry2" + "smithy.api#documentation": "

      The prompt that Amazon Lex uses to elicit the slot value from the\n user.

      " } }, - "Retry3": { - "target": "smithy.api#Unit", + "sampleUtterances": { + "target": "com.amazonaws.lexmodelsv2#SampleUtterancesList", "traits": { - "smithy.api#enumValue": "Retry3" + "smithy.api#documentation": "

      If you know a specific pattern that users might respond to an Amazon Lex\n request for a slot value, you can provide those utterances to improve\n accuracy. This is optional. In most cases, Amazon Lex is capable of\n understanding user utterances.

      " } }, - "Retry4": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Retry4" - } + "waitAndContinueSpecification": { + "target": "com.amazonaws.lexmodelsv2#WaitAndContinueSpecification" }, - "Retry5": { - "target": "smithy.api#Unit", + "slotCaptureSetting": { + "target": "com.amazonaws.lexmodelsv2#SlotCaptureSetting", "traits": { - "smithy.api#enumValue": "Retry5" + "smithy.api#documentation": "

      Specifies the settings that Amazon Lex uses when a slot\n value is successfully entered by a user.

      " } } }, "traits": { - "smithy.api#documentation": "

      The attempt name of attempts of a prompt.

      " + "smithy.api#documentation": "

      Specifies the elicitation setting details eliciting a slot.

      " } }, - "com.amazonaws.lexmodelsv2#PromptAttemptSpecification": { + "com.amazonaws.lexmodelsv2#SlotValueOverride": { "type": "structure", "members": { - "allowInterrupt": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", - "traits": { - "smithy.api#documentation": "

      Indicates whether the user can interrupt a speech prompt attempt from the bot.

      " - } - }, - "allowedInputTypes": { - "target": "com.amazonaws.lexmodelsv2#AllowedInputTypes", + "shape": { + "target": "com.amazonaws.lexmodelsv2#SlotShape", "traits": { - "smithy.api#documentation": "

      Indicates the allowed input types of the prompt attempt.

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

      When the shape value is List, it indicates that the\n values field contains a list of slot values. When the\n value is Scalar, it indicates that the value\n field contains a single value.

      " } }, - "audioAndDTMFInputSpecification": { - "target": "com.amazonaws.lexmodelsv2#AudioAndDTMFInputSpecification", + "value": { + "target": "com.amazonaws.lexmodelsv2#SlotValue", "traits": { - "smithy.api#documentation": "

      Specifies the settings on audio and DTMF input.

      " + "smithy.api#documentation": "

      The current value of the slot.

      " } }, - "textInputSpecification": { - "target": "com.amazonaws.lexmodelsv2#TextInputSpecification", + "values": { + "target": "com.amazonaws.lexmodelsv2#SlotValues", "traits": { - "smithy.api#documentation": "

      Specifies the settings on text input.

      " + "smithy.api#documentation": "

      A list of one or more values that the user provided for the slot.\n For example, for a slot that elicits pizza toppings, the values\n might be \"pepperoni\" and \"pineapple.\"

      " } } }, "traits": { - "smithy.api#documentation": "

      Specifies the settings on a prompt attempt.

      " + "smithy.api#documentation": "

      The slot values that Amazon Lex uses when it sets slot\n values in a dialog step.

      " } }, - "com.amazonaws.lexmodelsv2#PromptAttemptsSpecificationMap": { + "com.amazonaws.lexmodelsv2#SlotValueOverrideMap": { "type": "map", "key": { - "target": "com.amazonaws.lexmodelsv2#PromptAttempt" + "target": "com.amazonaws.lexmodelsv2#Name" }, "value": { - "target": "com.amazonaws.lexmodelsv2#PromptAttemptSpecification" - } - }, - "com.amazonaws.lexmodelsv2#PromptMaxRetries": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 5 - } + "target": "com.amazonaws.lexmodelsv2#SlotValueOverride" } }, - "com.amazonaws.lexmodelsv2#PromptSpecification": { + "com.amazonaws.lexmodelsv2#SlotValueRegexFilter": { "type": "structure", - "members": { - "messageGroups": { - "target": "com.amazonaws.lexmodelsv2#MessageGroupsList", - "traits": { - "smithy.api#documentation": "

      A collection of messages that Amazon Lex can send to the user. Amazon Lex\n chooses the actual message to send at runtime.

      ", - "smithy.api#required": {} - } - }, - "maxRetries": { - "target": "com.amazonaws.lexmodelsv2#PromptMaxRetries", + "members": { + "pattern": { + "target": "com.amazonaws.lexmodelsv2#RegexPattern", "traits": { - "smithy.api#documentation": "

      The maximum number of times the bot tries to elicit a response from\n the user using this prompt.

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

      A regular expression used to validate the value of a slot.

      \n

      Use a standard regular expression. Amazon Lex supports the following\n characters in the regular expression:

      \n
        \n
      • \n

        A-Z, a-z

        \n
      • \n
      • \n

        0-9

        \n
      • \n
      • \n

        Unicode characters (\"\\⁠u\")

        \n
      • \n
      \n

      Represent Unicode characters with four digits, for example \"\\⁠u0041\"\n or \"\\⁠u005A\".

      \n

      The following regular expression operators are not supported:

      \n
        \n
      • \n

        Infinite repeaters: *, +, or {x,} with no upper bound.

        \n
      • \n
      • \n

        Wild card (.)

        \n
      • \n
      ", "smithy.api#required": {} } - }, - "allowInterrupt": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + } + }, + "traits": { + "smithy.api#documentation": "

      Provides a regular expression used to validate the value of a\n slot.

      " + } + }, + "com.amazonaws.lexmodelsv2#SlotValueResolutionStrategy": { + "type": "enum", + "members": { + "OriginalValue": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Indicates whether the user can interrupt a speech prompt from the\n bot.

      " + "smithy.api#enumValue": "OriginalValue" } }, - "messageSelectionStrategy": { - "target": "com.amazonaws.lexmodelsv2#MessageSelectionStrategy", + "TopResolution": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Indicates how a message is selected from a message group among retries.

      " + "smithy.api#enumValue": "TopResolution" } }, - "promptAttemptsSpecification": { - "target": "com.amazonaws.lexmodelsv2#PromptAttemptsSpecificationMap", + "Concatenation": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Specifies the advanced settings on each attempt of the prompt.

      " + "smithy.api#enumValue": "Concatenation" } } - }, - "traits": { - "smithy.api#documentation": "

      Specifies a list of message groups that Amazon Lex sends to a user to\n elicit a response.

      " - } - }, - "com.amazonaws.lexmodelsv2#QueryFilterString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 5000 - } - } - }, - "com.amazonaws.lexmodelsv2#RecommendedAction": { - "type": "string" - }, - "com.amazonaws.lexmodelsv2#RecommendedActions": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#RecommendedAction" } }, - "com.amazonaws.lexmodelsv2#RecommendedIntentSummary": { + "com.amazonaws.lexmodelsv2#SlotValueSelectionSetting": { "type": "structure", "members": { - "intentId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "resolutionStrategy": { + "target": "com.amazonaws.lexmodelsv2#SlotValueResolutionStrategy", "traits": { - "smithy.api#documentation": "

      The unique identifier of a recommended intent associated with the\n bot recommendation.

      " + "smithy.api#documentation": "

      Determines the slot resolution strategy that Amazon Lex uses to\n return slot type values. The field can be set to one of the following\n values:

      \n
        \n
      • \n

        \n ORIGINAL_VALUE - Returns the value entered by the user, if the\n user value is similar to the slot value.

        \n
      • \n
      • \n

        \n TOP_RESOLUTION - If there is a resolution list for the slot,\n return the first value in the resolution list as the slot type\n value. If there is no resolution list, null is returned.

        \n
      • \n
      \n

      If you don't specify the valueSelectionStrategy, the \n default is ORIGINAL_VALUE.

      ", + "smithy.api#required": {} } }, - "intentName": { - "target": "com.amazonaws.lexmodelsv2#Name", + "regexFilter": { + "target": "com.amazonaws.lexmodelsv2#SlotValueRegexFilter", "traits": { - "smithy.api#documentation": "

      The name of a recommended intent associated with the bot\n recommendation.

      " + "smithy.api#documentation": "

      A regular expression used to validate the value of a slot.

      " } }, - "sampleUtterancesCount": { - "target": "com.amazonaws.lexmodelsv2#SampleUtterancesCount", + "advancedRecognitionSetting": { + "target": "com.amazonaws.lexmodelsv2#AdvancedRecognitionSetting", "traits": { - "smithy.api#documentation": "

      The count of sample utterances of a recommended intent that is\n associated with a bot recommendation.

      " + "smithy.api#documentation": "

      Provides settings that enable advanced recognition settings for slot\n values. You can use this to enable using slot values as a custom\n vocabulary for recognizing user utterances.

      " } } }, "traits": { - "smithy.api#documentation": "

      An object that contains a summary of a recommended intent.

      " + "smithy.api#documentation": "

      Contains settings used by Amazon Lex to select a slot value.

      " } }, - "com.amazonaws.lexmodelsv2#RecommendedIntentSummaryList": { + "com.amazonaws.lexmodelsv2#SlotValues": { "type": "list", "member": { - "target": "com.amazonaws.lexmodelsv2#RecommendedIntentSummary" + "target": "com.amazonaws.lexmodelsv2#SlotValueOverride" } }, - "com.amazonaws.lexmodelsv2#RegexPattern": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 300 + "com.amazonaws.lexmodelsv2#SortOrder": { + "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.lexmodelsv2#RelativeAggregationDuration": { + "com.amazonaws.lexmodelsv2#Specifications": { "type": "structure", "members": { - "timeDimension": { - "target": "com.amazonaws.lexmodelsv2#TimeDimension", + "slotTypeId": { + "target": "com.amazonaws.lexmodelsv2#BuiltInOrCustomSlotTypeId", "traits": { - "smithy.api#documentation": "

      The type of time period that the timeValue field\n represents.

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

      The unique identifier assigned to the slot type.

      ", "smithy.api#required": {} } }, - "timeValue": { - "target": "com.amazonaws.lexmodelsv2#TimeValue", + "valueElicitationSetting": { + "target": "com.amazonaws.lexmodelsv2#SubSlotValueElicitationSetting", "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

      The period of the time window to gather statistics for. The valid\n value depends on the setting of the timeDimension\n field.

      \n
        \n
      • \n

        \n Hours - 1/3/6/12/24

        \n
      • \n
      • \n

        \n Days - 3

        \n
      • \n
      • \n

        \n Weeks - 1/2

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

      Specifies the elicitation setting details for constituent sub slots of a composite slot.

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

      Specifies the time window that utterance statistics are returned\n for. The time window is always relative to the last time that the that\n utterances were aggregated. For example, if the\n ListAggregatedUtterances operation is called at 1600,\n the time window is set to 1 hour, and the last refresh time was 1530,\n only utterances made between 1430 and 1530 are returned.

      \n

      You can choose the time window that statistics should be returned\n for.

      \n
        \n
      • \n

        \n Hours - You can request\n utterance statistics for 1, 3, 6, 12, or 24 hour time windows.\n Statistics are refreshed every half hour for 1 hour time windows,\n and hourly for the other time windows.

        \n
      • \n
      • \n

        \n Days - You can request\n utterance statistics for 3 days. Statistics are refreshed every 6\n hours.

        \n
      • \n
      • \n

        \n Weeks - You can see\n statistics for one or two weeks. Statistics are refreshed every\n 12 hours for one week time windows, and once per day for two week\n time windows.

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

      Subslot specifications.

      " } }, - "com.amazonaws.lexmodelsv2#ResourceCount": { - "type": "integer" - }, - "com.amazonaws.lexmodelsv2#ResourceNotFoundException": { - "type": "structure", - "members": { - "message": { - "target": "com.amazonaws.lexmodelsv2#ExceptionMessage" - } + "com.amazonaws.lexmodelsv2#StartBotRecommendation": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#StartBotRecommendationRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#StartBotRecommendationResponse" }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#ConflictException" + }, + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], "traits": { - "smithy.api#documentation": "

      You asked to describe a resource that doesn't exist. Check the\n resource that you are requesting and try again.

      ", - "smithy.api#error": "client", - "smithy.api#httpError": 404 + "smithy.api#documentation": "

      Use this to provide your transcript data, and to start the bot\n recommendation process.

      ", + "smithy.api#http": { + "method": "PUT", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations", + "code": 202 + } } }, - "com.amazonaws.lexmodelsv2#ResponseSpecification": { + "com.amazonaws.lexmodelsv2#StartBotRecommendationRequest": { "type": "structure", "members": { - "messageGroups": { - "target": "com.amazonaws.lexmodelsv2#MessageGroupsList", + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      A collection of responses that Amazon Lex can send to the user. Amazon Lex\n chooses the actual response to send at runtime.

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

      The unique identifier of the bot containing the bot\n recommendation.

      ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "allowInterrupt": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", "traits": { - "smithy.api#documentation": "

      Indicates whether the user can interrupt a speech response from\n Amazon Lex.

      " + "smithy.api#documentation": "

      The version of the bot containing the bot recommendation.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale of the bot recommendation\n to start. The string must match one of the supported locales. For more\n information, see Supported languages\n

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "transcriptSourceSetting": { + "target": "com.amazonaws.lexmodelsv2#TranscriptSourceSetting", + "traits": { + "smithy.api#documentation": "

      The object representing the Amazon S3 bucket containing the transcript,\n as well as the associated metadata.

      ", + "smithy.api#required": {} + } + }, + "encryptionSetting": { + "target": "com.amazonaws.lexmodelsv2#EncryptionSetting", + "traits": { + "smithy.api#documentation": "

      The object representing the passwords that will be used to encrypt\n the data related to the bot recommendation results, as well as the KMS\n key ARN used to encrypt the associated metadata.

      " } } }, "traits": { - "smithy.api#documentation": "

      Specifies a list of message groups that Amazon Lex uses to respond the\n user input.

      " - } - }, - "com.amazonaws.lexmodelsv2#RetryAfterSeconds": { - "type": "integer", - "traits": { - "smithy.api#default": 0 + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#RevisionId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 5 + "com.amazonaws.lexmodelsv2#StartBotRecommendationResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot containing the bot\n recommendation.

      " + } }, - "smithy.api#pattern": "^[0-9]+$" - } - }, - "com.amazonaws.lexmodelsv2#RoleArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 32, - "max": 2048 + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot containing the bot recommendation.

      " + } }, - "smithy.api#pattern": "^arn:aws:iam::[0-9]{12}:role/.*$" - } - }, - "com.amazonaws.lexmodelsv2#S3BucketArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale of the bot recommendation\n to start. The string must match one of the supported locales. For more\n information, see Supported languages\n

      " + } + }, + "botRecommendationStatus": { + "target": "com.amazonaws.lexmodelsv2#BotRecommendationStatus", + "traits": { + "smithy.api#documentation": "

      The status of the bot recommendation.

      \n

      If the status is Failed, then the reasons for the failure are listed\n in the failureReasons field.

      " + } + }, + "botRecommendationId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot recommendation that you have\n created.

      " + } }, - "smithy.api#pattern": "^arn:[\\w\\-]+:s3:::[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$" - } - }, - "com.amazonaws.lexmodelsv2#S3BucketLogDestination": { - "type": "structure", - "members": { - "kmsKeyArn": { - "target": "com.amazonaws.lexmodelsv2#KmsKeyArn", + "creationDateTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of an AWS Key Management Service\n (KMS) key for encrypting audio log files stored in an S3 bucket.

      " + "smithy.api#documentation": "

      A timestamp of the date and time that the bot recommendation was\n created.

      " } }, - "s3BucketArn": { - "target": "com.amazonaws.lexmodelsv2#S3BucketArn", + "transcriptSourceSetting": { + "target": "com.amazonaws.lexmodelsv2#TranscriptSourceSetting", "traits": { - "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of an Amazon S3 bucket where audio\n log files are stored.

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

      The object representing the Amazon S3 bucket containing the transcript,\n as well as the associated metadata.

      " } }, - "logPrefix": { - "target": "com.amazonaws.lexmodelsv2#LogPrefix", + "encryptionSetting": { + "target": "com.amazonaws.lexmodelsv2#EncryptionSetting", "traits": { - "smithy.api#documentation": "

      The S3 prefix to assign to audio log files.

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

      The object representing the passwords that were used to encrypt the\n data related to the bot recommendation results, as well as the KMS key\n ARN used to encrypt the associated metadata.

      " } } }, "traits": { - "smithy.api#documentation": "

      Specifies an Amazon S3 bucket for logging audio conversations

      " + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#S3BucketName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 3, - "max": 63 + "com.amazonaws.lexmodelsv2#StartImport": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#StartImportRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#StartImportResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#ConflictException" }, - "smithy.api#pattern": "^[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$" + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Starts importing a bot, bot locale, or custom vocabulary from a zip\n archive that you uploaded to an S3 bucket.

      ", + "smithy.api#http": { + "method": "PUT", + "uri": "/imports", + "code": 202 + } } }, - "com.amazonaws.lexmodelsv2#S3BucketTranscriptSource": { + "com.amazonaws.lexmodelsv2#StartImportRequest": { "type": "structure", "members": { - "s3BucketName": { - "target": "com.amazonaws.lexmodelsv2#S3BucketName", + "importId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The name of the bucket containing the transcript and the associated\n metadata.

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

      The unique identifier for the import. It is included in the response\n from the CreateUploadUrl operation.

      ", "smithy.api#required": {} } }, - "pathFormat": { - "target": "com.amazonaws.lexmodelsv2#PathFormat", - "traits": { - "smithy.api#documentation": "

      The object that contains a path format that will be applied when\n Amazon Lex reads the transcript file in the bucket you provide. Specify this\n object if you only want Lex to read a subset of files in your Amazon S3\n bucket.

      " - } - }, - "transcriptFormat": { - "target": "com.amazonaws.lexmodelsv2#TranscriptFormat", + "resourceSpecification": { + "target": "com.amazonaws.lexmodelsv2#ImportResourceSpecification", "traits": { - "smithy.api#documentation": "

      The format of the transcript content. Currently, Genie only supports\n the Amazon Lex transcript format.

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

      Parameters for creating the bot, bot locale or custom\n vocabulary.

      ", "smithy.api#required": {} } }, - "transcriptFilter": { - "target": "com.amazonaws.lexmodelsv2#TranscriptFilter", + "mergeStrategy": { + "target": "com.amazonaws.lexmodelsv2#MergeStrategy", "traits": { - "smithy.api#documentation": "

      The object that contains the filter which will be applied when Amazon Lex\n reads through the Amazon S3 bucket. Specify this object if you want Amazon Lex to\n read only a subset of the Amazon S3 bucket based on the filter you\n provide.

      " + "smithy.api#documentation": "

      The strategy to use when there is a name conflict between the\n imported resource and an existing resource. When the merge strategy is\n FailOnConflict existing resources are not overwritten\n and the import fails.

      ", + "smithy.api#required": {} } }, - "kmsKeyArn": { - "target": "com.amazonaws.lexmodelsv2#KmsKeyArn", + "filePassword": { + "target": "com.amazonaws.lexmodelsv2#ImportExportFilePassword", "traits": { - "smithy.api#documentation": "

      The ARN of the KMS key that customer use to encrypt their Amazon S3\n bucket. Only use this field if your bucket is encrypted using a\n customer managed KMS key.

      " + "smithy.api#documentation": "

      The password used to encrypt the zip archive that contains the\n resource definition. You should always encrypt the zip archive to\n protect it during transit between your site and Amazon Lex.

      " } } }, "traits": { - "smithy.api#documentation": "

      The object representing the Amazon S3 bucket containing the transcript,\n as well as the associated metadata.

      " - } - }, - "com.amazonaws.lexmodelsv2#S3ObjectPath": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - }, - "smithy.api#pattern": "^[\\.\\-\\!\\*\\_\\'\\(\\)a-zA-Z0-9][\\.\\-\\!\\*\\_\\'\\(\\)\\/a-zA-Z0-9]*$" + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#SSMLMessage": { + "com.amazonaws.lexmodelsv2#StartImportResponse": { "type": "structure", "members": { - "value": { - "target": "com.amazonaws.lexmodelsv2#SSMLMessageValue", + "importId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The SSML text that defines the prompt.

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

      A unique identifier for the import.

      " + } + }, + "resourceSpecification": { + "target": "com.amazonaws.lexmodelsv2#ImportResourceSpecification", + "traits": { + "smithy.api#documentation": "

      The parameters used when importing the resource.

      " + } + }, + "mergeStrategy": { + "target": "com.amazonaws.lexmodelsv2#MergeStrategy", + "traits": { + "smithy.api#documentation": "

      The strategy used when there was a name conflict between the\n imported resource and an existing resource. When the merge strategy is\n FailOnConflict existing resources are not overwritten\n and the import fails.

      " + } + }, + "importStatus": { + "target": "com.amazonaws.lexmodelsv2#ImportStatus", + "traits": { + "smithy.api#documentation": "

      The current status of the import. When the status is\n Complete the bot, bot alias, or custom vocabulary is\n ready to use.

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

      The date and time that the import request was created.

      " } } }, "traits": { - "smithy.api#documentation": "

      Defines a Speech Synthesis Markup Language (SSML) prompt.

      " + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#SSMLMessageValue": { - "type": "string", + "com.amazonaws.lexmodelsv2#StartTestExecution": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#StartTestExecutionRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#StartTestExecutionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#ConflictException" + }, + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], "traits": { - "smithy.api#length": { - "min": 1, - "max": 1000 + "smithy.api#documentation": "

      The action to start test set execution.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/testsets/{testSetId}/testexecutions", + "code": 202 } } }, - "com.amazonaws.lexmodelsv2#SampleUtterance": { + "com.amazonaws.lexmodelsv2#StartTestExecutionRequest": { "type": "structure", "members": { - "utterance": { - "target": "com.amazonaws.lexmodelsv2#Utterance", + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The sample utterance that Amazon Lex uses to build its machine-learning\n model to recognize intents.

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

      The test set Id for the test set execution.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "target": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionTarget", + "traits": { + "smithy.api#documentation": "

      The target bot for the test set execution.

      ", + "smithy.api#required": {} + } + }, + "apiMode": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionApiMode", + "traits": { + "smithy.api#documentation": "

      Indicates whether we use streaming or non-streaming APIs for the test set \n execution. For streaming, StartConversation Runtime API is used. Whereas, for \n non-streaming, RecognizeUtterance and RecognizeText Amazon Lex \n Runtime API are used.

      ", "smithy.api#required": {} } + }, + "testExecutionModality": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionModality", + "traits": { + "smithy.api#documentation": "

      Indicates whether audio or text is used.

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

      A sample utterance that invokes an intent or respond to a slot\n elicitation prompt.

      " - } - }, - "com.amazonaws.lexmodelsv2#SampleUtterancesCount": { - "type": "integer" - }, - "com.amazonaws.lexmodelsv2#SampleUtterancesList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#SampleUtterance" + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#SampleValue": { + "com.amazonaws.lexmodelsv2#StartTestExecutionResponse": { "type": "structure", "members": { - "value": { - "target": "com.amazonaws.lexmodelsv2#Value", + "testExecutionId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The value that can be used for a slot type.

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

      The unique identifier of the test set execution.

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

      The creation date and time for the test set execution.

      " + } + }, + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The test set Id for the test set execution.

      " + } + }, + "target": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionTarget", + "traits": { + "smithy.api#documentation": "

      The target bot for the test set execution.

      " + } + }, + "apiMode": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionApiMode", + "traits": { + "smithy.api#documentation": "

      Indicates whether we use streaming or non-streaming APIs for the test set \n execution. For streaming, StartConversation Amazon Lex Runtime API is used. Whereas \n for non-streaming, RecognizeUtterance and RecognizeText Amazon Lex Runtime API are used.

      " + } + }, + "testExecutionModality": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionModality", + "traits": { + "smithy.api#documentation": "

      Indicates whether audio or text is used.

      " } } }, "traits": { - "smithy.api#documentation": "

      Defines one of the values for a slot type.

      " + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#SearchAssociatedTranscripts": { + "com.amazonaws.lexmodelsv2#StartTestSetGeneration": { "type": "operation", "input": { - "target": "com.amazonaws.lexmodelsv2#SearchAssociatedTranscriptsRequest" + "target": "com.amazonaws.lexmodelsv2#StartTestSetGenerationRequest" }, "output": { - "target": "com.amazonaws.lexmodelsv2#SearchAssociatedTranscriptsResponse" + "target": "com.amazonaws.lexmodelsv2#StartTestSetGenerationResponse" }, "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#ConflictException" + }, { "target": "com.amazonaws.lexmodelsv2#InternalServerException" }, @@ -12767,1604 +16195,1433 @@ } ], "traits": { - "smithy.api#documentation": "

      Search for associated transcripts that meet the specified\n criteria.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/associatedtranscripts", - "code": 200 - } - } - }, - "com.amazonaws.lexmodelsv2#SearchAssociatedTranscriptsRequest": { - "type": "structure", - "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot associated with the transcripts\n that you are searching.

      ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", - "traits": { - "smithy.api#documentation": "

      The version of the bot containing the transcripts that you are\n searching.

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

      The action to start the generation of test set.

      ", + "smithy.api#http": { + "method": "PUT", + "uri": "/testsetgenerations", + "code": 202 }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.lexmodelsv2#StartTestSetGenerationRequest": { + "type": "structure", + "members": { + "testSetName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the transcripts to\n search. The string must match one of the supported locales. For more\n information, see Supported languages\n

      ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

      The test set name for the test set generation request.

      ", "smithy.api#required": {} } }, - "botRecommendationId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "description": { + "target": "com.amazonaws.lexmodelsv2#Description", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot recommendation associated with the\n transcripts to search.

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

      The test set description for the test set generation request.

      " } }, - "searchOrder": { - "target": "com.amazonaws.lexmodelsv2#SearchOrder", + "storageLocation": { + "target": "com.amazonaws.lexmodelsv2#TestSetStorageLocation", "traits": { - "smithy.api#documentation": "

      How SearchResults are ordered. Valid values are Ascending or\n Descending. The default is Descending.

      " + "smithy.api#documentation": "

      The Amazon S3 storage location for the test set generation.

      ", + "smithy.api#required": {} } }, - "filters": { - "target": "com.amazonaws.lexmodelsv2#AssociatedTranscriptFilters", + "generationDataSource": { + "target": "com.amazonaws.lexmodelsv2#TestSetGenerationDataSource", "traits": { - "smithy.api#documentation": "

      A list of filter objects.

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

      The data source for the test set generation.

      ", "smithy.api#required": {} } }, - "maxResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", + "roleArn": { + "target": "com.amazonaws.lexmodelsv2#RoleArn", "traits": { - "smithy.api#documentation": "

      The maximum number of bot recommendations to return in each page of\n results. If there are fewer results than the max page size, only the\n actual number of results are returned.

      " + "smithy.api#documentation": "

      The roleARN used for any operation in the test set to access \n resources in the Amazon Web Services account.

      ", + "smithy.api#required": {} } }, - "nextIndex": { - "target": "com.amazonaws.lexmodelsv2#NextIndex", + "testSetTags": { + "target": "com.amazonaws.lexmodelsv2#TagMap", "traits": { - "smithy.api#documentation": "

      If the response from the SearchAssociatedTranscriptsRequest\n operation contains more results than specified in the maxResults\n parameter, an index is returned in the response. Use that index in the\n nextIndex parameter to return the next page of results.

      " + "smithy.api#documentation": "

      A list of tags to add to the test set. You can only add tags when you import/generate a new test set. You can't use the UpdateTestSet operation to update tags. To update tags, use the TagResource operation.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#SearchAssociatedTranscriptsResponse": { + "com.amazonaws.lexmodelsv2#StartTestSetGenerationResponse": { "type": "structure", "members": { - "botId": { + "testSetGenerationId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot associated with the transcripts\n that you are searching.

      " + "smithy.api#documentation": "

      The unique identifier of the test set generation to describe.

      " } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#BotVersion", + "creationDateTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      The version of the bot containing the transcripts that you are\n searching.

      " + "smithy.api#documentation": "

      The creation date and time for the test set generation.

      " } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "testSetGenerationStatus": { + "target": "com.amazonaws.lexmodelsv2#TestSetGenerationStatus", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the transcripts to\n search. The string must match one of the supported locales. For more\n information, see Supported languages\n

      " + "smithy.api#documentation": "

      The status for the test set generation.

      " } }, - "botRecommendationId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "testSetName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot recommendation associated with the\n transcripts to search.

      " + "smithy.api#documentation": "

      The test set name used for the test set generation.

      " } }, - "nextIndex": { - "target": "com.amazonaws.lexmodelsv2#NextIndex", + "description": { + "target": "com.amazonaws.lexmodelsv2#Description", "traits": { - "smithy.api#documentation": "

      A index that indicates whether there are more results to return in a\n response to the SearchAssociatedTranscripts operation. If the nextIndex\n field is present, you send the contents as the nextIndex parameter of a\n SearchAssociatedTranscriptsRequest operation to get the next page of\n results.

      " + "smithy.api#documentation": "

      The description used for the test set generation.

      " } }, - "associatedTranscripts": { - "target": "com.amazonaws.lexmodelsv2#AssociatedTranscriptList", + "storageLocation": { + "target": "com.amazonaws.lexmodelsv2#TestSetStorageLocation", "traits": { - "smithy.api#documentation": "

      The object that contains the associated transcript that meet the\n criteria you specified.

      " + "smithy.api#documentation": "

      The Amazon S3 storage location for the test set generation.

      " } }, - "totalResults": { - "target": "com.amazonaws.lexmodelsv2#MaxResults", - "traits": { - "smithy.api#documentation": "

      The total number of transcripts returned by the search.

      " - } - } - } - }, - "com.amazonaws.lexmodelsv2#SearchOrder": { - "type": "enum", - "members": { - "Ascending": { - "target": "smithy.api#Unit", + "generationDataSource": { + "target": "com.amazonaws.lexmodelsv2#TestSetGenerationDataSource", "traits": { - "smithy.api#enumValue": "Ascending" + "smithy.api#documentation": "

      The data source for the test set generation.

      " } }, - "Descending": { - "target": "smithy.api#Unit", + "roleArn": { + "target": "com.amazonaws.lexmodelsv2#RoleArn", "traits": { - "smithy.api#enumValue": "Descending" + "smithy.api#documentation": "

      The roleARN used for any operation in the test set to access resources \n in the Amazon Web Services account.

      " } - } - } - }, - "com.amazonaws.lexmodelsv2#SentimentAnalysisSettings": { - "type": "structure", - "members": { - "detectSentiment": { - "target": "com.amazonaws.lexmodelsv2#Boolean", + }, + "testSetTags": { + "target": "com.amazonaws.lexmodelsv2#TagMap", "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

      Sets whether Amazon Lex uses Amazon Comprehend to detect the sentiment of user\n utterances.

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

      A list of tags that was used for the test set that is being generated.

      " } } }, "traits": { - "smithy.api#documentation": "

      Determines whether Amazon Lex will use Amazon Comprehend to detect the sentiment of\n user utterances.

      " + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#ServicePrincipal": { - "type": "string", + "com.amazonaws.lexmodelsv2#StillWaitingResponseFrequency": { + "type": "integer", "traits": { - "smithy.api#length": { - "min": 15, - "max": 1024 - }, - "smithy.api#pattern": "^[0-9a-zA-Z_.]+$" + "smithy.api#range": { + "min": 1, + "max": 300 + } } }, - "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": { + "com.amazonaws.lexmodelsv2#StillWaitingResponseSpecification": { "type": "structure", "members": { - "message": { - "target": "com.amazonaws.lexmodelsv2#ExceptionMessage" + "messageGroups": { + "target": "com.amazonaws.lexmodelsv2#MessageGroupsList", + "traits": { + "smithy.api#documentation": "

      One or more message groups, each containing one or more messages,\n that define the prompts that Amazon Lex sends to the user.

      ", + "smithy.api#required": {} + } + }, + "frequencyInSeconds": { + "target": "com.amazonaws.lexmodelsv2#StillWaitingResponseFrequency", + "traits": { + "smithy.api#documentation": "

      How often a message should be sent to the user. Minimum of 1 second,\n maximum of 5 minutes.

      ", + "smithy.api#required": {} + } + }, + "timeoutInSeconds": { + "target": "com.amazonaws.lexmodelsv2#StillWaitingResponseTimeout", + "traits": { + "smithy.api#documentation": "

      If Amazon Lex waits longer than this length of time for a response, it\n will stop sending messages.

      ", + "smithy.api#required": {} + } + }, + "allowInterrupt": { + "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

      Indicates that the user can interrupt the response by speaking while\n the message is being played.

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

      You have reached a quota for your bot.

      ", - "smithy.api#error": "client", - "smithy.api#httpError": 402 - } - }, - "com.amazonaws.lexmodelsv2#SessionId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 2, - "max": 100 - }, - "smithy.api#pattern": "^[0-9a-zA-Z._:-]+$" + "smithy.api#documentation": "

      Defines the messages that Amazon Lex sends to a user to remind them that\n the bot is waiting for a response.

      " } }, - "com.amazonaws.lexmodelsv2#SessionTTL": { + "com.amazonaws.lexmodelsv2#StillWaitingResponseTimeout": { "type": "integer", "traits": { "smithy.api#range": { - "min": 60, - "max": 86400 + "min": 1, + "max": 900 } } }, - "com.amazonaws.lexmodelsv2#SkipResourceInUseCheck": { - "type": "boolean", + "com.amazonaws.lexmodelsv2#StopBotRecommendation": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#StopBotRecommendationRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#StopBotRecommendationResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#ConflictException" + }, + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], "traits": { - "smithy.api#default": false + "smithy.api#documentation": "

      Stop an already running Bot Recommendation request.

      ", + "smithy.api#http": { + "method": "PUT", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/stopbotrecommendation", + "code": 202 + } } }, - "com.amazonaws.lexmodelsv2#SlotCaptureSetting": { + "com.amazonaws.lexmodelsv2#StopBotRecommendationRequest": { "type": "structure", "members": { - "captureResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot containing the bot\n recommendation to be stopped.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } }, - "captureNextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", "traits": { - "smithy.api#documentation": "

      Specifies the next step that the bot runs when the slot value is\n captured before the code hook times out.

      " + "smithy.api#documentation": "

      The version of the bot containing the bot recommendation.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "captureConditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", "traits": { - "smithy.api#documentation": "

      A list of conditional branches to evaluate after the slot value is\n captured.

      " + "smithy.api#documentation": "

      The identifier of the language and locale of the bot recommendation\n to stop. The string must match one of the supported locales. For more\n information, see Supported languages\n

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "failureResponse": { - "target": "com.amazonaws.lexmodelsv2#ResponseSpecification" + "botRecommendationId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot recommendation to be\n stopped.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#StopBotRecommendationResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the bot containing the bot recommendation that \n is being stopped.

      " + } }, - "failureNextStep": { - "target": "com.amazonaws.lexmodelsv2#DialogState", + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", "traits": { - "smithy.api#documentation": "

      Specifies the next step that the bot runs when the slot value code\n is not recognized.

      " + "smithy.api#documentation": "

      The version of the bot containing the recommendation that is being \n stopped.

      " } }, - "failureConditional": { - "target": "com.amazonaws.lexmodelsv2#ConditionalSpecification", + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", "traits": { - "smithy.api#documentation": "

      A list of conditional branches to evaluate when the slot value isn't\n captured.

      " + "smithy.api#documentation": "

      The identifier of the language and locale of the bot response\n to stop. The string must match one of the supported locales. For more\n information, see Supported languages\n

      " } }, - "codeHook": { - "target": "com.amazonaws.lexmodelsv2#DialogCodeHookInvocationSetting", + "botRecommendationStatus": { + "target": "com.amazonaws.lexmodelsv2#BotRecommendationStatus", "traits": { - "smithy.api#documentation": "

      Code hook called after Amazon Lex successfully captures a\n slot value.

      " + "smithy.api#documentation": "

      The status of the bot recommendation. If the status is Failed, \n then the reasons for the failure are listed in the failureReasons field.

      " } }, - "elicitationCodeHook": { - "target": "com.amazonaws.lexmodelsv2#ElicitationCodeHookInvocationSetting", + "botRecommendationId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      Code hook called when Amazon Lex doesn't capture a slot\n value.

      " + "smithy.api#documentation": "

      The unique identifier of the bot recommendation that is being\n stopped.

      " } } }, "traits": { - "smithy.api#documentation": "

      Settings used when Amazon Lex successfully captures a slot\n value from a user.

      " + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#SlotConstraint": { - "type": "enum", - "members": { - "Required": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Required" - } - }, - "Optional": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Optional" - } - } - } + "com.amazonaws.lexmodelsv2#String": { + "type": "string" }, - "com.amazonaws.lexmodelsv2#SlotDefaultValue": { - "type": "structure", - "members": { - "defaultValue": { - "target": "com.amazonaws.lexmodelsv2#SlotDefaultValueString", - "traits": { - "smithy.api#documentation": "

      The default value to use when a user doesn't provide a value for a\n slot.

      ", - "smithy.api#required": {} - } - } + "com.amazonaws.lexmodelsv2#StringMap": { + "type": "map", + "key": { + "target": "com.amazonaws.lexmodelsv2#NonEmptyString" }, - "traits": { - "smithy.api#documentation": "

      Specifies the default value to use when a user doesn't provide a\n value for a slot.

      " + "value": { + "target": "com.amazonaws.lexmodelsv2#String" } }, - "com.amazonaws.lexmodelsv2#SlotDefaultValueList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#SlotDefaultValue" - }, + "com.amazonaws.lexmodelsv2#SubSlotExpression": { + "type": "string", "traits": { "smithy.api#length": { "min": 0, - "max": 10 - } + "max": 640 + }, + "smithy.api#pattern": "^[0-9A-Za-z_\\-\\s\\(\\)]+$" } }, - "com.amazonaws.lexmodelsv2#SlotDefaultValueSpecification": { + "com.amazonaws.lexmodelsv2#SubSlotSetting": { "type": "structure", "members": { - "defaultValueList": { - "target": "com.amazonaws.lexmodelsv2#SlotDefaultValueList", + "expression": { + "target": "com.amazonaws.lexmodelsv2#SubSlotExpression", "traits": { - "smithy.api#documentation": "

      A list of default values. Amazon Lex chooses the default value to use in\n the order that they are presented in the list.

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

      The expression text for defining the constituent sub slots in the composite slot using logical AND and OR operators.

      " + } + }, + "slotSpecifications": { + "target": "com.amazonaws.lexmodelsv2#SubSlotSpecificationMap", + "traits": { + "smithy.api#documentation": "

      Specifications for the constituent sub slots of a composite slot.

      " } } }, "traits": { - "smithy.api#documentation": "

      Defines a list of values that Amazon Lex should use as the default value\n for a slot.

      " + "smithy.api#documentation": "

      Specifications for the constituent sub slots and the \n expression for the composite slot.

      " } }, - "com.amazonaws.lexmodelsv2#SlotDefaultValueString": { - "type": "string", + "com.amazonaws.lexmodelsv2#SubSlotSpecificationMap": { + "type": "map", + "key": { + "target": "com.amazonaws.lexmodelsv2#Name" + }, + "value": { + "target": "com.amazonaws.lexmodelsv2#Specifications" + }, "traits": { "smithy.api#length": { - "min": 1, - "max": 202 + "min": 0, + "max": 6 } } }, - "com.amazonaws.lexmodelsv2#SlotFilter": { + "com.amazonaws.lexmodelsv2#SubSlotTypeComposition": { "type": "structure", "members": { "name": { - "target": "com.amazonaws.lexmodelsv2#SlotFilterName", - "traits": { - "smithy.api#documentation": "

      The name of the field to use for filtering.

      ", - "smithy.api#required": {} - } - }, - "values": { - "target": "com.amazonaws.lexmodelsv2#FilterValues", + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The value to use to filter the response.

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

      Name of a constituent sub slot inside a composite slot.

      ", "smithy.api#required": {} } }, - "operator": { - "target": "com.amazonaws.lexmodelsv2#SlotFilterOperator", + "slotTypeId": { + "target": "com.amazonaws.lexmodelsv2#BuiltInOrCustomSlotTypeId", "traits": { - "smithy.api#documentation": "

      The operator to use for the filter. Specify EQ when the\n ListSlots operation should return only aliases that\n equal the specified value. Specify CO when the\n ListSlots operation should return aliases that contain\n the specified value.

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

      The unique identifier assigned to a slot type. \n This refers to either a built-in slot type or the unique slotTypeId of a custom slot type.

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

      Filters the response from the ListSlots\n operation.

      " + "smithy.api#documentation": "

      Subslot type composition.

      " } }, - "com.amazonaws.lexmodelsv2#SlotFilterName": { - "type": "enum", - "members": { - "SlotName": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SlotName" - } + "com.amazonaws.lexmodelsv2#SubSlotTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#SubSlotTypeComposition" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 6 } } }, - "com.amazonaws.lexmodelsv2#SlotFilterOperator": { - "type": "enum", + "com.amazonaws.lexmodelsv2#SubSlotValueElicitationSetting": { + "type": "structure", "members": { - "Contains": { - "target": "smithy.api#Unit", + "defaultValueSpecification": { + "target": "com.amazonaws.lexmodelsv2#SlotDefaultValueSpecification" + }, + "promptSpecification": { + "target": "com.amazonaws.lexmodelsv2#PromptSpecification", "traits": { - "smithy.api#enumValue": "CO" + "smithy.api#required": {} } }, - "Equals": { - "target": "smithy.api#Unit", + "sampleUtterances": { + "target": "com.amazonaws.lexmodelsv2#SampleUtterancesList", "traits": { - "smithy.api#enumValue": "EQ" + "smithy.api#documentation": "

      If you know a specific pattern that users might respond to an Amazon Lex request for a sub slot value, \n you can provide those utterances to improve accuracy. This is optional. In most cases Amazon Lex is capable \n of understanding user utterances. This is similar to SampleUtterances for slots.

      " } + }, + "waitAndContinueSpecification": { + "target": "com.amazonaws.lexmodelsv2#WaitAndContinueSpecification" } + }, + "traits": { + "smithy.api#documentation": "

      Subslot elicitation settings.

      \n

      \n DefaultValueSpecification is a list of default values for a constituent sub slot in a composite slot. Default values are used when \n Amazon Lex hasn't determined a value for a slot. You can specify default values from context variables, \n session attributes, and defined values. This is similar to DefaultValueSpecification for slots.

      \n

      \n PromptSpecification is the prompt that Amazon Lex uses to elicit the sub slot value from the user. \n This is similar to PromptSpecification for slots.

      " } }, - "com.amazonaws.lexmodelsv2#SlotFilters": { + "com.amazonaws.lexmodelsv2#SynonymList": { "type": "list", "member": { - "target": "com.amazonaws.lexmodelsv2#SlotFilter" + "target": "com.amazonaws.lexmodelsv2#SampleValue" }, "traits": { "smithy.api#length": { "min": 1, - "max": 1 + "max": 10000 } } }, - "com.amazonaws.lexmodelsv2#SlotPrioritiesList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#SlotPriority" + "com.amazonaws.lexmodelsv2#TagKey": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } } }, - "com.amazonaws.lexmodelsv2#SlotPriority": { - "type": "structure", - "members": { - "priority": { - "target": "com.amazonaws.lexmodelsv2#PriorityValue", - "traits": { - "smithy.api#documentation": "

      The priority that a slot should be elicited.

      ", - "smithy.api#required": {} - } - }, - "slotId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The unique identifier of the slot.

      ", - "smithy.api#required": {} - } - } + "com.amazonaws.lexmodelsv2#TagKeyList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#TagKey" }, "traits": { - "smithy.api#documentation": "

      Sets the priority that Amazon Lex should use when eliciting slot values\n from a user.

      " + "smithy.api#length": { + "min": 0, + "max": 200 + } } }, - "com.amazonaws.lexmodelsv2#SlotShape": { - "type": "enum", - "members": { - "Scalar": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Scalar" - } - }, - "List": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "List" - } + "com.amazonaws.lexmodelsv2#TagMap": { + "type": "map", + "key": { + "target": "com.amazonaws.lexmodelsv2#TagKey" + }, + "value": { + "target": "com.amazonaws.lexmodelsv2#TagValue" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 200 } } }, - "com.amazonaws.lexmodelsv2#SlotSortAttribute": { - "type": "enum", - "members": { - "SlotName": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SlotName" - } + "com.amazonaws.lexmodelsv2#TagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#TagResourceRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#TagResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" }, - "LastUpdatedDateTime": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "LastUpdatedDateTime" - } + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Adds the specified tags to the specified resource. If a tag key\n already exists, the existing value is replaced with the new\n value.

      ", + "smithy.api#http": { + "method": "POST", + "uri": "/tags/{resourceARN}", + "code": 200 } } }, - "com.amazonaws.lexmodelsv2#SlotSortBy": { + "com.amazonaws.lexmodelsv2#TagResourceRequest": { "type": "structure", "members": { - "attribute": { - "target": "com.amazonaws.lexmodelsv2#SlotSortAttribute", + "resourceARN": { + "target": "com.amazonaws.lexmodelsv2#AmazonResourceName", "traits": { - "smithy.api#documentation": "

      The attribute to use to sort the list.

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

      The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel\n to tag.

      ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "order": { - "target": "com.amazonaws.lexmodelsv2#SortOrder", + "tags": { + "target": "com.amazonaws.lexmodelsv2#TagMap", "traits": { - "smithy.api#documentation": "

      The order to sort the list. You can choose ascending or\n descending.

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

      A list of tag keys to add to the resource. If a tag key already\n exists, the existing value is replaced with the new value.

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

      Specifies attributes for sorting a list of bots.

      " + "smithy.api#input": {} } }, - "com.amazonaws.lexmodelsv2#SlotSummary": { + "com.amazonaws.lexmodelsv2#TagResourceResponse": { "type": "structure", - "members": { - "slotId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The unique identifier of the slot.

      " - } - }, - "slotName": { - "target": "com.amazonaws.lexmodelsv2#Name", - "traits": { - "smithy.api#documentation": "

      The name given to the slot.

      " - } - }, - "description": { - "target": "com.amazonaws.lexmodelsv2#Description", - "traits": { - "smithy.api#documentation": "

      The description of the slot.

      " - } - }, - "slotConstraint": { - "target": "com.amazonaws.lexmodelsv2#SlotConstraint", - "traits": { - "smithy.api#documentation": "

      Whether the slot is required or optional. An intent is complete when\n all required slots are filled.

      " - } - }, - "slotTypeId": { - "target": "com.amazonaws.lexmodelsv2#BuiltInOrCustomSlotTypeId", - "traits": { - "smithy.api#documentation": "

      The unique identifier for the slot type that defines the values for\n the slot.

      " - } - }, - "valueElicitationPromptSpecification": { - "target": "com.amazonaws.lexmodelsv2#PromptSpecification", - "traits": { - "smithy.api#documentation": "

      Prompts that are sent to the user to elicit a value for the\n slot.

      " - } - }, - "lastUpdatedDateTime": { - "target": "com.amazonaws.lexmodelsv2#Timestamp", - "traits": { - "smithy.api#documentation": "

      The timestamp of the last date and time that the slot was\n updated.

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

      Summary information about a slot, a value that the bot elicits from\n the user.

      " + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#SlotSummaryList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#SlotSummary" + "com.amazonaws.lexmodelsv2#TagValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + } } }, - "com.amazonaws.lexmodelsv2#SlotTypeCategory": { + "com.amazonaws.lexmodelsv2#TestExecutionApiMode": { "type": "enum", "members": { - "Custom": { + "Streaming": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Custom" + "smithy.api#enumValue": "Streaming" } }, - "Extended": { + "NonStreaming": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Extended" + "smithy.api#enumValue": "NonStreaming" } - }, - "ExternalGrammar": { + } + } + }, + "com.amazonaws.lexmodelsv2#TestExecutionModality": { + "type": "enum", + "members": { + "Text": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ExternalGrammar" + "smithy.api#enumValue": "Text" } }, - "Composite": { + "Audio": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Composite" + "smithy.api#enumValue": "Audio" } } } }, - "com.amazonaws.lexmodelsv2#SlotTypeFilter": { + "com.amazonaws.lexmodelsv2#TestExecutionResultFilterBy": { "type": "structure", "members": { - "name": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeFilterName", - "traits": { - "smithy.api#documentation": "

      The name of the field to use for filtering.

      ", - "smithy.api#required": {} - } - }, - "values": { - "target": "com.amazonaws.lexmodelsv2#FilterValues", + "resultTypeFilter": { + "target": "com.amazonaws.lexmodelsv2#TestResultTypeFilter", "traits": { - "smithy.api#documentation": "

      The value to use to filter the response.

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

      Specifies which results to filter. See Test result details\">Test results details \n for details about different types of results.

      ", "smithy.api#required": {} } }, - "operator": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeFilterOperator", + "conversationLevelTestResultsFilterBy": { + "target": "com.amazonaws.lexmodelsv2#ConversationLevelTestResultsFilterBy", "traits": { - "smithy.api#documentation": "

      The operator to use for the filter. Specify EQ when the\n ListSlotTypes operation should return only aliases that\n equal the specified value. Specify CO when the\n ListSlotTypes operation should return aliases that\n contain the specified value.

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

      Contains information about the method for filtering Conversation level test results.

      " } } }, "traits": { - "smithy.api#documentation": "

      Filters the response from the ListSlotTypes\n operation.

      " + "smithy.api#documentation": "

      Contains information about the method by which to filter the results of the test execution.

      " } }, - "com.amazonaws.lexmodelsv2#SlotTypeFilterName": { - "type": "enum", + "com.amazonaws.lexmodelsv2#TestExecutionResultItems": { + "type": "structure", "members": { - "SlotTypeName": { - "target": "smithy.api#Unit", + "overallTestResults": { + "target": "com.amazonaws.lexmodelsv2#OverallTestResults", "traits": { - "smithy.api#enumValue": "SlotTypeName" + "smithy.api#documentation": "

      Overall results for the test execution, including the breakdown of conversations and \n single-input utterances.

      " } }, - "ExternalSourceType": { - "target": "smithy.api#Unit", + "conversationLevelTestResults": { + "target": "com.amazonaws.lexmodelsv2#ConversationLevelTestResults", "traits": { - "smithy.api#enumValue": "ExternalSourceType" + "smithy.api#documentation": "

      Results related to conversations in the test set, including metrics about success and failure of\n conversations and intent and slot failures.

      " } - } - } - }, - "com.amazonaws.lexmodelsv2#SlotTypeFilterOperator": { - "type": "enum", - "members": { - "Contains": { - "target": "smithy.api#Unit", + }, + "intentClassificationTestResults": { + "target": "com.amazonaws.lexmodelsv2#IntentClassificationTestResults", "traits": { - "smithy.api#enumValue": "CO" + "smithy.api#documentation": "

      Intent recognition results aggregated by intent name. The aggregated results contain success and failure rates of intent recognition,\n speech transcriptions, and end-to-end conversations.

      " } }, - "Equals": { - "target": "smithy.api#Unit", + "intentLevelSlotResolutionTestResults": { + "target": "com.amazonaws.lexmodelsv2#IntentLevelSlotResolutionTestResults", "traits": { - "smithy.api#enumValue": "EQ" + "smithy.api#documentation": "

      Slot resolution results aggregated by intent and slot name. The aggregated results contain success and failure rates of slot resolution,\n speech transcriptions, and end-to-end conversations

      " + } + }, + "utteranceLevelTestResults": { + "target": "com.amazonaws.lexmodelsv2#UtteranceLevelTestResults", + "traits": { + "smithy.api#documentation": "

      Results related to utterances in the test set.

      " } } - } - }, - "com.amazonaws.lexmodelsv2#SlotTypeFilters": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeFilter" }, "traits": { - "smithy.api#length": { - "min": 1, - "max": 1 - } + "smithy.api#documentation": "

      Contains the results of the test execution, grouped by type of results.\n See Test result details\">Test results details \n for details about different types of results.

      " } }, - "com.amazonaws.lexmodelsv2#SlotTypeSignature": { - "type": "string" - }, - "com.amazonaws.lexmodelsv2#SlotTypeSortAttribute": { + "com.amazonaws.lexmodelsv2#TestExecutionSortAttribute": { "type": "enum", "members": { - "SlotTypeName": { + "TestSetName": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "SlotTypeName" + "smithy.api#enumValue": "TestSetName" } }, - "LastUpdatedDateTime": { + "CreationDateTime": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "LastUpdatedDateTime" + "smithy.api#enumValue": "CreationDateTime" } } } }, - "com.amazonaws.lexmodelsv2#SlotTypeSortBy": { + "com.amazonaws.lexmodelsv2#TestExecutionSortBy": { "type": "structure", "members": { "attribute": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeSortAttribute", + "target": "com.amazonaws.lexmodelsv2#TestExecutionSortAttribute", "traits": { - "smithy.api#documentation": "

      The attribute to use to sort the list of slot types.

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

      Specifies whether to sort the test set executions by the date and time at which the test sets were created.

      ", "smithy.api#required": {} } }, "order": { "target": "com.amazonaws.lexmodelsv2#SortOrder", "traits": { - "smithy.api#documentation": "

      The order to sort the list. You can say ascending or\n descending.

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

      Specifies whether to sort in ascending or descending order.

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

      Specifies attributes for sorting a list of slot types.

      " - } - }, - "com.amazonaws.lexmodelsv2#SlotTypeStatistics": { - "type": "structure", - "members": { - "discoveredSlotTypeCount": { - "target": "com.amazonaws.lexmodelsv2#Count", - "traits": { - "smithy.api#documentation": "

      The number of recommended slot types associated with the bot\n recommendation.

      " - } - } - }, - "traits": { - "smithy.api#documentation": "

      The object that contains the statistical summary of the recommended\n slot type associated with the bot recommendation.

      " + "smithy.api#documentation": "

      Contains information about the method by which to sort the instances of \n test executions you have carried out.

      " } }, - "com.amazonaws.lexmodelsv2#SlotTypeSummary": { - "type": "structure", + "com.amazonaws.lexmodelsv2#TestExecutionStatus": { + "type": "enum", "members": { - "slotTypeId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "Pending": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The unique identifier assigned to the slot type.

      " + "smithy.api#enumValue": "Pending" } }, - "slotTypeName": { - "target": "com.amazonaws.lexmodelsv2#Name", + "Waiting": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The name of the slot type.

      " + "smithy.api#enumValue": "Waiting" } }, - "description": { - "target": "com.amazonaws.lexmodelsv2#Description", + "InProgress": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The description of the slot type.

      " + "smithy.api#enumValue": "InProgress" } }, - "parentSlotTypeSignature": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeSignature", + "Completed": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      If the slot type is derived from a built-on slot type, the name of\n the parent slot type.

      " + "smithy.api#enumValue": "Completed" } }, - "lastUpdatedDateTime": { - "target": "com.amazonaws.lexmodelsv2#Timestamp", + "Failed": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      A timestamp of the date and time that the slot type was last\n updated.

      " + "smithy.api#enumValue": "Failed" } }, - "slotTypeCategory": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeCategory", - "traits": { - "smithy.api#documentation": "

      Indicates the type of the slot type.

      \n
        \n
      • \n

        \n Custom - A slot type that you created using\n custom values. For more information, see Creating custom slot\n types.

        \n
      • \n
      • \n

        \n Extended - A slot type created by extending the\n AMAZON.AlphaNumeric built-in slot type. For more information, see\n AMAZON.AlphaNumeric.

        \n
      • \n
      • \n

        \n ExternalGrammar - A slot type using a custom\n GRXML grammar to define values. For more information, see Using a custom grammar slot type.

        \n
      • \n
      " - } - } - }, - "traits": { - "smithy.api#documentation": "

      Provides summary information about a slot type.

      " - } - }, - "com.amazonaws.lexmodelsv2#SlotTypeSummaryList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeSummary" - } - }, - "com.amazonaws.lexmodelsv2#SlotTypeValue": { - "type": "structure", - "members": { - "sampleValue": { - "target": "com.amazonaws.lexmodelsv2#SampleValue", + "Stopping": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The value of the slot type entry.

      " + "smithy.api#enumValue": "Stopping" } }, - "synonyms": { - "target": "com.amazonaws.lexmodelsv2#SynonymList", - "traits": { - "smithy.api#documentation": "

      Additional values related to the slot type entry.

      " - } - } - }, - "traits": { - "smithy.api#documentation": "

      Each slot type can have a set of values. Each\n SlotTypeValue represents a value that the slot type can\n take.

      " - } - }, - "com.amazonaws.lexmodelsv2#SlotTypeValues": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeValue" - }, - "traits": { - "smithy.api#length": { - "min": 1, - "max": 10000 - } - } - }, - "com.amazonaws.lexmodelsv2#SlotValue": { - "type": "structure", - "members": { - "interpretedValue": { - "target": "com.amazonaws.lexmodelsv2#NonEmptyString", + "Stopped": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The value that Amazon Lex determines for the slot. The\n actual value depends on the setting of the value selection strategy for\n the bot. You can choose to use the value entered by the user, or you\n can have Amazon Lex choose the first value in the\n resolvedValues list.

      " + "smithy.api#enumValue": "Stopped" } } - }, - "traits": { - "smithy.api#documentation": "

      The value to set in a slot.

      " } }, - "com.amazonaws.lexmodelsv2#SlotValueElicitationSetting": { + "com.amazonaws.lexmodelsv2#TestExecutionSummary": { "type": "structure", "members": { - "defaultValueSpecification": { - "target": "com.amazonaws.lexmodelsv2#SlotDefaultValueSpecification", + "testExecutionId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      A list of default values for a slot. Default values are used when\n Amazon Lex hasn't determined a value for a slot. You can specify default\n values from context variables, session attributes, and defined\n values.

      " + "smithy.api#documentation": "

      The unique identifier of the test execution.

      " } }, - "slotConstraint": { - "target": "com.amazonaws.lexmodelsv2#SlotConstraint", + "creationDateTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      Specifies whether the slot is required or optional.

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

      The date and time at which the test execution was created.

      " } }, - "promptSpecification": { - "target": "com.amazonaws.lexmodelsv2#PromptSpecification", + "lastUpdatedDateTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      The prompt that Amazon Lex uses to elicit the slot value from the\n user.

      " + "smithy.api#documentation": "

      The date and time at which the test execution was last updated.

      " } }, - "sampleUtterances": { - "target": "com.amazonaws.lexmodelsv2#SampleUtterancesList", + "testExecutionStatus": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionStatus", "traits": { - "smithy.api#documentation": "

      If you know a specific pattern that users might respond to an Amazon Lex\n request for a slot value, you can provide those utterances to improve\n accuracy. This is optional. In most cases, Amazon Lex is capable of\n understanding user utterances.

      " + "smithy.api#documentation": "

      The current status of the test execution.

      " } }, - "waitAndContinueSpecification": { - "target": "com.amazonaws.lexmodelsv2#WaitAndContinueSpecification" + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the test set used in the test execution.

      " + } }, - "slotCaptureSetting": { - "target": "com.amazonaws.lexmodelsv2#SlotCaptureSetting", + "testSetName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      Specifies the settings that Amazon Lex uses when a slot\n value is successfully entered by a user.

      " + "smithy.api#documentation": "

      The name of the test set used in the test execution.

      " } - } - }, - "traits": { - "smithy.api#documentation": "

      Specifies the elicitation setting details for constituent sub slots of a composite slot.

      " - } - }, - "com.amazonaws.lexmodelsv2#SlotValueOverride": { - "type": "structure", - "members": { - "shape": { - "target": "com.amazonaws.lexmodelsv2#SlotShape", + }, + "target": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionTarget", "traits": { - "smithy.api#documentation": "

      When the shape value is List, it indicates that the\n values field contains a list of slot values. When the\n value is Scalar, it indicates that the value\n field contains a single value.

      " + "smithy.api#documentation": "

      Contains information about the bot used for the test execution..

      " } }, - "value": { - "target": "com.amazonaws.lexmodelsv2#SlotValue", + "apiMode": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionApiMode", "traits": { - "smithy.api#documentation": "

      The current value of the slot.

      " + "smithy.api#documentation": "

      Specifies whether the API mode for the test execution is streaming \n or non-streaming.

      " } }, - "values": { - "target": "com.amazonaws.lexmodelsv2#SlotValues", + "testExecutionModality": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionModality", "traits": { - "smithy.api#documentation": "

      A list of one or more values that the user provided for the slot.\n For example, for a slot that elicits pizza toppings, the values\n might be \"pepperoni\" and \"pineapple.\"

      " + "smithy.api#documentation": "

      Specifies whether the data used for the test execution is written\n or spoken.

      " } } }, "traits": { - "smithy.api#documentation": "

      The slot values that Amazon Lex uses when it sets slot\n values in a dialog step.

      " + "smithy.api#documentation": "

      Summarizes metadata about the test execution.

      " } }, - "com.amazonaws.lexmodelsv2#SlotValueOverrideMap": { - "type": "map", - "key": { - "target": "com.amazonaws.lexmodelsv2#Name" - }, - "value": { - "target": "com.amazonaws.lexmodelsv2#SlotValueOverride" + "com.amazonaws.lexmodelsv2#TestExecutionSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#TestExecutionSummary" } }, - "com.amazonaws.lexmodelsv2#SlotValueRegexFilter": { + "com.amazonaws.lexmodelsv2#TestExecutionTarget": { "type": "structure", "members": { - "pattern": { - "target": "com.amazonaws.lexmodelsv2#RegexPattern", + "botAliasTarget": { + "target": "com.amazonaws.lexmodelsv2#BotAliasTestExecutionTarget", "traits": { - "smithy.api#documentation": "

      A regular expression used to validate the value of a slot.

      \n

      Use a standard regular expression. Amazon Lex supports the following\n characters in the regular expression:

      \n
        \n
      • \n

        A-Z, a-z

        \n
      • \n
      • \n

        0-9

        \n
      • \n
      • \n

        Unicode characters (\"\\ u\")

        \n
      • \n
      \n

      Represent Unicode characters with four digits, for example \"\\u0041\"\n or \"\\u005A\".

      \n

      The following regular expression operators are not supported:

      \n
        \n
      • \n

        Infinite repeaters: *, +, or {x,} with no upper bound.

        \n
      • \n
      • \n

        Wild card (.)

        \n
      • \n
      ", - "smithy.api#required": {} + "smithy.api#documentation": "

      Contains information about the bot alias used for the test execution.

      " } } }, "traits": { - "smithy.api#documentation": "

      Provides a regular expression used to validate the value of a\n slot.

      " + "smithy.api#documentation": "

      Contains information about the bot used for the test execution.

      " } }, - "com.amazonaws.lexmodelsv2#SlotValueResolutionStrategy": { + "com.amazonaws.lexmodelsv2#TestResultMatchStatus": { "type": "enum", "members": { - "OriginalValue": { + "Matched": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "OriginalValue" + "smithy.api#enumValue": "Matched" } }, - "TopResolution": { + "Mismatched": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "TopResolution" + "smithy.api#enumValue": "Mismatched" } }, - "Concatenation": { + "ExecutionError": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Concatenation" + "smithy.api#enumValue": "ExecutionError" } } } }, - "com.amazonaws.lexmodelsv2#SlotValueSelectionSetting": { - "type": "structure", + "com.amazonaws.lexmodelsv2#TestResultMatchStatusCountMap": { + "type": "map", + "key": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus" + }, + "value": { + "target": "com.amazonaws.lexmodelsv2#Count" + } + }, + "com.amazonaws.lexmodelsv2#TestResultSlotName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + }, + "smithy.api#pattern": "^([0-9a-zA-Z][_.-]?)+$" + } + }, + "com.amazonaws.lexmodelsv2#TestResultTypeFilter": { + "type": "enum", "members": { - "resolutionStrategy": { - "target": "com.amazonaws.lexmodelsv2#SlotValueResolutionStrategy", + "OverallTestResults": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Determines the slot resolution strategy that Amazon Lex uses to\n return slot type values. The field can be set to one of the following\n values:

      \n
        \n
      • \n

        OriginalValue - Returns the value entered by the user, if the\n user value is similar to the slot value.

        \n
      • \n
      • \n

        TopResolution - If there is a resolution list for the slot,\n return the first value in the resolution list as the slot type\n value. If there is no resolution list, null is returned.

        \n
      • \n
      \n

      If you don't specify the valueSelectionStrategy, the default is\n OriginalValue.

      ", - "smithy.api#required": {} + "smithy.api#enumValue": "OverallTestResults" } }, - "regexFilter": { - "target": "com.amazonaws.lexmodelsv2#SlotValueRegexFilter", + "ConversationLevelTestResults": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      A regular expression used to validate the value of a slot.

      " + "smithy.api#enumValue": "ConversationLevelTestResults" } }, - "advancedRecognitionSetting": { - "target": "com.amazonaws.lexmodelsv2#AdvancedRecognitionSetting", + "IntentClassificationTestResults": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IntentClassificationTestResults" + } + }, + "SlotResolutionTestResults": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SlotResolutionTestResults" + } + }, + "UtteranceLevelResults": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      Provides settings that enable advanced recognition settings for slot\n values.

      " + "smithy.api#enumValue": "UtteranceLevelResults" } } - }, + } + }, + "com.amazonaws.lexmodelsv2#TestSetAgentPrompt": { + "type": "string", "traits": { - "smithy.api#documentation": "

      Contains settings used by Amazon Lex to select a slot value.

      " + "smithy.api#length": { + "min": 1, + "max": 1024 + } } }, - "com.amazonaws.lexmodelsv2#SlotValues": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#SlotValueOverride" + "com.amazonaws.lexmodelsv2#TestSetConversationId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + }, + "smithy.api#pattern": "^([0-9a-zA-Z][_-]?)+$" } }, - "com.amazonaws.lexmodelsv2#SortOrder": { - "type": "enum", + "com.amazonaws.lexmodelsv2#TestSetDiscrepancyErrors": { + "type": "structure", "members": { - "Ascending": { - "target": "smithy.api#Unit", + "intentDiscrepancies": { + "target": "com.amazonaws.lexmodelsv2#TestSetIntentDiscrepancyList", "traits": { - "smithy.api#enumValue": "Ascending" + "smithy.api#documentation": "

      Contains information about discrepancies found for intents between the test set and the bot.

      ", + "smithy.api#required": {} } }, - "Descending": { - "target": "smithy.api#Unit", + "slotDiscrepancies": { + "target": "com.amazonaws.lexmodelsv2#TestSetSlotDiscrepancyList", "traits": { - "smithy.api#enumValue": "Descending" + "smithy.api#documentation": "

      Contains information about discrepancies found for slots between the test set and the bot.

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

      Contains details about the errors in the test set discrepancy report

      " } }, - "com.amazonaws.lexmodelsv2#Specifications": { + "com.amazonaws.lexmodelsv2#TestSetDiscrepancyReportBotAliasTarget": { "type": "structure", "members": { - "slotTypeId": { - "target": "com.amazonaws.lexmodelsv2#BuiltInOrCustomSlotTypeId", + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The unique identifier assigned to the slot type.

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

      The unique identifier for the bot alias.

      ", "smithy.api#required": {} } }, - "valueElicitationSetting": { - "target": "com.amazonaws.lexmodelsv2#SubSlotValueElicitationSetting", + "botAliasId": { + "target": "com.amazonaws.lexmodelsv2#BotAliasId", "traits": { - "smithy.api#documentation": "

      Specifies the elicitation setting details for constituent sub slots of a composite slot.

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

      The unique identifier for the bot associated with the bot alias.

      ", + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the locale associated with the bot alias.

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

      Subslot specifications.

      " + "smithy.api#documentation": "

      Contains information about the bot alias used for the \n test set discrepancy report.

      " } }, - "com.amazonaws.lexmodelsv2#StartBotRecommendation": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#StartBotRecommendationRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#StartBotRecommendationResponse" + "com.amazonaws.lexmodelsv2#TestSetDiscrepancyReportResourceTarget": { + "type": "structure", + "members": { + "botAliasTarget": { + "target": "com.amazonaws.lexmodelsv2#TestSetDiscrepancyReportBotAliasTarget", + "traits": { + "smithy.api#documentation": "

      Contains information about the bot alias used as the resource for the\n test set discrepancy report.

      " + } + } }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#ConflictException" - }, - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + "traits": { + "smithy.api#documentation": "

      Contains information about the resource used for the \n test set discrepancy report.

      " + } + }, + "com.amazonaws.lexmodelsv2#TestSetDiscrepancyReportStatus": { + "type": "enum", + "members": { + "InProgress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "InProgress" + } }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + "Completed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Completed" + } }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

      Use this to provide your transcript data, and to start the bot\n recommendation process.

      ", - "smithy.api#http": { - "method": "PUT", - "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations", - "code": 202 + "Failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Failed" + } } } }, - "com.amazonaws.lexmodelsv2#StartBotRecommendationRequest": { + "com.amazonaws.lexmodelsv2#TestSetExportSpecification": { "type": "structure", "members": { - "botId": { + "testSetId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot containing the bot\n recommendation.

      ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

      The unique identifier of the test set.

      ", "smithy.api#required": {} } - }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + } + }, + "traits": { + "smithy.api#documentation": "

      Contains information about the test set that is exported.

      " + } + }, + "com.amazonaws.lexmodelsv2#TestSetGenerationDataSource": { + "type": "structure", + "members": { + "conversationLogsDataSource": { + "target": "com.amazonaws.lexmodelsv2#ConversationLogsDataSource", "traits": { - "smithy.api#documentation": "

      The version of the bot containing the bot recommendation.

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

      Contains information about the bot from which the conversation logs are sourced.

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

      Contains information about the data source from which the test set is generated.

      " + } + }, + "com.amazonaws.lexmodelsv2#TestSetGenerationStatus": { + "type": "enum", + "members": { + "Generating": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Generating" } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "Ready": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the bot recommendation\n to start. The string must match one of the supported locales. For more\n information, see Supported languages\n

      ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "Ready" } }, - "transcriptSourceSetting": { - "target": "com.amazonaws.lexmodelsv2#TranscriptSourceSetting", + "Failed": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The object representing the Amazon S3 bucket containing the transcript,\n as well as the associated metadata.

      ", - "smithy.api#required": {} + "smithy.api#enumValue": "Failed" } }, - "encryptionSetting": { - "target": "com.amazonaws.lexmodelsv2#EncryptionSetting", + "Pending": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The object representing the passwords that will be used to encrypt\n the data related to the bot recommendation results, as well as the KMS\n key ARN used to encrypt the associated metadata.

      " + "smithy.api#enumValue": "Pending" } } } }, - "com.amazonaws.lexmodelsv2#StartBotRecommendationResponse": { + "com.amazonaws.lexmodelsv2#TestSetImportInputLocation": { "type": "structure", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "s3BucketName": { + "target": "com.amazonaws.lexmodelsv2#S3BucketName", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot containing the bot\n recommendation.

      " + "smithy.api#documentation": "

      The name of the Amazon S3 bucket.

      ", + "smithy.api#required": {} } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "s3Path": { + "target": "com.amazonaws.lexmodelsv2#S3ObjectPath", "traits": { - "smithy.api#documentation": "

      The version of the bot containing the bot recommendation.

      " + "smithy.api#documentation": "

      The path inside the Amazon S3 bucket pointing to the test-set CSV file.

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

      Contains information about the Amazon S3 location from which the test set is imported.

      " + } + }, + "com.amazonaws.lexmodelsv2#TestSetImportResourceSpecification": { + "type": "structure", + "members": { + "testSetName": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      The name of the test set.

      ", + "smithy.api#required": {} } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "description": { + "target": "com.amazonaws.lexmodelsv2#Description", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the bot recommendation\n to start. The string must match one of the supported locales. For more\n information, see Supported languages\n

      " + "smithy.api#documentation": "

      The description of the test set.

      " } }, - "botRecommendationStatus": { - "target": "com.amazonaws.lexmodelsv2#BotRecommendationStatus", + "roleArn": { + "target": "com.amazonaws.lexmodelsv2#RoleArn", "traits": { - "smithy.api#documentation": "

      The status of the bot recommendation.

      \n

      If the status is Failed, then the reasons for the failure are listed\n in the failureReasons field.

      " + "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of an IAM role that has\n permission to access the test set.

      ", + "smithy.api#required": {} } }, - "botRecommendationId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "storageLocation": { + "target": "com.amazonaws.lexmodelsv2#TestSetStorageLocation", "traits": { - "smithy.api#documentation": "

      The identifier of the bot recommendation that you have\n created.

      " + "smithy.api#documentation": "

      Contains information about the location that Amazon Lex uses to store the test-set.

      ", + "smithy.api#required": {} } }, - "creationDateTime": { - "target": "com.amazonaws.lexmodelsv2#Timestamp", + "importInputLocation": { + "target": "com.amazonaws.lexmodelsv2#TestSetImportInputLocation", "traits": { - "smithy.api#documentation": "

      A timestamp of the date and time that the bot recommendation was\n created.

      " + "smithy.api#documentation": "

      Contains information about the input location from where test-set should be imported.

      ", + "smithy.api#required": {} } }, - "transcriptSourceSetting": { - "target": "com.amazonaws.lexmodelsv2#TranscriptSourceSetting", + "modality": { + "target": "com.amazonaws.lexmodelsv2#TestSetModality", "traits": { - "smithy.api#documentation": "

      The object representing the Amazon S3 bucket containing the transcript,\n as well as the associated metadata.

      " + "smithy.api#documentation": "

      Specifies whether the test-set being imported contains written or spoken data.

      ", + "smithy.api#required": {} } }, - "encryptionSetting": { - "target": "com.amazonaws.lexmodelsv2#EncryptionSetting", + "testSetTags": { + "target": "com.amazonaws.lexmodelsv2#TagMap", "traits": { - "smithy.api#documentation": "

      The object representing the passwords that were used to encrypt the\n data related to the bot recommendation results, as well as the KMS key\n ARN used to encrypt the associated metadata.

      " + "smithy.api#documentation": "

      A list of tags to add to the test set. You can only add tags when you import/generate a new test set. You can't use the UpdateTestSet operation to update tags. To update tags, use the TagResource operation.

      " } } - } - }, - "com.amazonaws.lexmodelsv2#StartImport": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#StartImportRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#StartImportResponse" }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#ConflictException" - }, - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], "traits": { - "smithy.api#documentation": "

      Starts importing a bot, bot locale, or custom vocabulary from a zip\n archive that you uploaded to an S3 bucket.

      ", - "smithy.api#http": { - "method": "PUT", - "uri": "/imports", - "code": 202 - } + "smithy.api#documentation": "

      Contains information about the test set that is imported.

      " } }, - "com.amazonaws.lexmodelsv2#StartImportRequest": { + "com.amazonaws.lexmodelsv2#TestSetIntentDiscrepancyItem": { "type": "structure", "members": { - "importId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      The unique identifier for the import. It is included in the response\n from the CreateUploadUrl operation.

      ", - "smithy.api#required": {} - } - }, - "resourceSpecification": { - "target": "com.amazonaws.lexmodelsv2#ImportResourceSpecification", + "intentName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      Parameters for creating the bot, bot locale or custom\n vocabulary.

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

      The name of the intent in the discrepancy report.

      ", "smithy.api#required": {} } }, - "mergeStrategy": { - "target": "com.amazonaws.lexmodelsv2#MergeStrategy", + "errorMessage": { + "target": "com.amazonaws.lexmodelsv2#String", "traits": { - "smithy.api#documentation": "

      The strategy to use when there is a name conflict between the\n imported resource and an existing resource. When the merge strategy is\n FailOnConflict existing resources are not overwritten\n and the import fails.

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

      The error message for a discrepancy for an intent between the test set and the bot.

      ", "smithy.api#required": {} } - }, - "filePassword": { - "target": "com.amazonaws.lexmodelsv2#ImportExportFilePassword", - "traits": { - "smithy.api#documentation": "

      The password used to encrypt the zip archive that contains the\n resource definition. You should always encrypt the zip archive to\n protect it during transit between your site and Amazon Lex.

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

      Contains information about discrepancy in an intent information between the test set and the \n bot.

      " } }, - "com.amazonaws.lexmodelsv2#StartImportResponse": { - "type": "structure", + "com.amazonaws.lexmodelsv2#TestSetIntentDiscrepancyList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#TestSetIntentDiscrepancyItem" + } + }, + "com.amazonaws.lexmodelsv2#TestSetModality": { + "type": "enum", "members": { - "importId": { - "target": "com.amazonaws.lexmodelsv2#Id", - "traits": { - "smithy.api#documentation": "

      A unique identifier for the import.

      " - } - }, - "resourceSpecification": { - "target": "com.amazonaws.lexmodelsv2#ImportResourceSpecification", - "traits": { - "smithy.api#documentation": "

      The parameters used when importing the resource.

      " - } - }, - "mergeStrategy": { - "target": "com.amazonaws.lexmodelsv2#MergeStrategy", - "traits": { - "smithy.api#documentation": "

      The strategy used when there was a name conflict between the\n imported resource and an existing resource. When the merge strategy is\n FailOnConflict existing resources are not overwritten\n and the import fails.

      " - } - }, - "importStatus": { - "target": "com.amazonaws.lexmodelsv2#ImportStatus", + "Text": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The current status of the import. When the status is\n Complete the bot, bot alias, or custom vocabulary is\n ready to use.

      " + "smithy.api#enumValue": "Text" } }, - "creationDateTime": { - "target": "com.amazonaws.lexmodelsv2#Timestamp", + "Audio": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The date and time that the import request was created.

      " + "smithy.api#enumValue": "Audio" } } } }, - "com.amazonaws.lexmodelsv2#StillWaitingResponseFrequency": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 300 - } - } - }, - "com.amazonaws.lexmodelsv2#StillWaitingResponseSpecification": { + "com.amazonaws.lexmodelsv2#TestSetSlotDiscrepancyItem": { "type": "structure", "members": { - "messageGroups": { - "target": "com.amazonaws.lexmodelsv2#MessageGroupsList", + "intentName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      One or more message groups, each containing one or more messages,\n that define the prompts that Amazon Lex sends to the user.

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

      The name of the intent associated with the slot in the discrepancy report.

      ", "smithy.api#required": {} } }, - "frequencyInSeconds": { - "target": "com.amazonaws.lexmodelsv2#StillWaitingResponseFrequency", + "slotName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      How often a message should be sent to the user. Minimum of 1 second,\n maximum of 5 minutes.

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

      The name of the slot in the discrepancy report.

      ", "smithy.api#required": {} } }, - "timeoutInSeconds": { - "target": "com.amazonaws.lexmodelsv2#StillWaitingResponseTimeout", + "errorMessage": { + "target": "com.amazonaws.lexmodelsv2#String", "traits": { - "smithy.api#documentation": "

      If Amazon Lex waits longer than this length of time for a response, it\n will stop sending messages.

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

      The error message for a discrepancy for an intent between the test set and the bot.

      ", "smithy.api#required": {} } - }, - "allowInterrupt": { - "target": "com.amazonaws.lexmodelsv2#BoxedBoolean", - "traits": { - "smithy.api#documentation": "

      Indicates that the user can interrupt the response by speaking while\n the message is being played.

      " - } } }, "traits": { - "smithy.api#documentation": "

      Defines the messages that Amazon Lex sends to a user to remind them that\n the bot is waiting for a response.

      " - } - }, - "com.amazonaws.lexmodelsv2#StillWaitingResponseTimeout": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 900 - } + "smithy.api#documentation": "

      Contains information about discrepancy in a slot information between the test set and the bot.

      " } }, - "com.amazonaws.lexmodelsv2#StopBotRecommendation": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#StopBotRecommendationRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#StopBotRecommendationResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#ConflictException" - }, - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

      Stop an already running Bot Recommendation request.

      ", - "smithy.api#http": { - "method": "PUT", - "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/stopbotrecommendation", - "code": 202 - } + "com.amazonaws.lexmodelsv2#TestSetSlotDiscrepancyList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#TestSetSlotDiscrepancyItem" } }, - "com.amazonaws.lexmodelsv2#StopBotRecommendationRequest": { - "type": "structure", + "com.amazonaws.lexmodelsv2#TestSetSortAttribute": { + "type": "enum", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "TestSetName": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot containing the bot\n recommendation to be stopped.

      ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "TestSetName" } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "LastUpdatedDateTime": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The version of the bot containing the bot recommendation.

      ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "LastUpdatedDateTime" } - }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + } + } + }, + "com.amazonaws.lexmodelsv2#TestSetSortBy": { + "type": "structure", + "members": { + "attribute": { + "target": "com.amazonaws.lexmodelsv2#TestSetSortAttribute", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the bot recommendation\n to stop. The string must match one of the supported locales. For more\n information, see Supported languages\n

      ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

      Specifies whether to sort the test sets by name or by the time they were last updated.

      ", "smithy.api#required": {} } }, - "botRecommendationId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "order": { + "target": "com.amazonaws.lexmodelsv2#SortOrder", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot recommendation to be\n stopped.

      ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

      Specifies whether to sort in ascending or descending order.

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

      Contains information about the methods by which to sort the test set.

      " } }, - "com.amazonaws.lexmodelsv2#StopBotRecommendationResponse": { - "type": "structure", + "com.amazonaws.lexmodelsv2#TestSetStatus": { + "type": "enum", "members": { - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "Importing": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot containing the bot recommendation that \n is being stopped.

      " + "smithy.api#enumValue": "Importing" } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "PendingAnnotation": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The version of the bot containing the recommendation that is being \n stopped.

      " + "smithy.api#enumValue": "PendingAnnotation" } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "Deleting": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale of the bot response\n to stop. The string must match one of the supported locales. For more\n information, see Supported languages\n

      " + "smithy.api#enumValue": "Deleting" } }, - "botRecommendationStatus": { - "target": "com.amazonaws.lexmodelsv2#BotRecommendationStatus", + "ValidationError": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The status of the bot recommendation. If the status is Failed, \n then the reasons for the failure are listed in the failureReasons field.

      " + "smithy.api#enumValue": "ValidationError" } }, - "botRecommendationId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "Ready": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

      The unique identifier of the bot recommendation that is being\n stopped.

      " + "smithy.api#enumValue": "Ready" } } } }, - "com.amazonaws.lexmodelsv2#String": { - "type": "string" - }, - "com.amazonaws.lexmodelsv2#StringMap": { - "type": "map", - "key": { - "target": "com.amazonaws.lexmodelsv2#NonEmptyString" - }, - "value": { - "target": "com.amazonaws.lexmodelsv2#String" - } - }, - "com.amazonaws.lexmodelsv2#SubSlotExpression": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 640 - }, - "smithy.api#pattern": "^[0-9A-Za-z_\\-\\s\\(\\)]+$" - } - }, - "com.amazonaws.lexmodelsv2#SubSlotSetting": { + "com.amazonaws.lexmodelsv2#TestSetStorageLocation": { "type": "structure", "members": { - "expression": { - "target": "com.amazonaws.lexmodelsv2#SubSlotExpression", + "s3BucketName": { + "target": "com.amazonaws.lexmodelsv2#S3BucketName", "traits": { - "smithy.api#documentation": "

      The expression text for defining the constituent sub slots in the composite slot using logical AND and OR operators.

      " + "smithy.api#documentation": "

      The name of the Amazon S3 bucket in which the test set is stored.

      ", + "smithy.api#required": {} } }, - "slotSpecifications": { - "target": "com.amazonaws.lexmodelsv2#SubSlotSpecificationMap", + "s3Path": { + "target": "com.amazonaws.lexmodelsv2#S3ObjectPath", "traits": { - "smithy.api#documentation": "

      Specifications for the constituent sub slots of a composite slot.

      " + "smithy.api#documentation": "

      The path inside the Amazon S3 bucket where the test set is stored.

      ", + "smithy.api#required": {} + } + }, + "kmsKeyArn": { + "target": "com.amazonaws.lexmodelsv2#KmsKeyArn", + "traits": { + "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of an Amazon Web Services Key Management Service\n (KMS) key for encrypting the test set.

      " } } }, "traits": { - "smithy.api#documentation": "

      Specifications for the constituent sub slots and the \n expression for the composite slot.

      " - } - }, - "com.amazonaws.lexmodelsv2#SubSlotSpecificationMap": { - "type": "map", - "key": { - "target": "com.amazonaws.lexmodelsv2#Name" - }, - "value": { - "target": "com.amazonaws.lexmodelsv2#Specifications" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 6 - } + "smithy.api#documentation": "

      Contains information about the location in which the test set is stored.

      " } }, - "com.amazonaws.lexmodelsv2#SubSlotTypeComposition": { + "com.amazonaws.lexmodelsv2#TestSetSummary": { "type": "structure", "members": { - "name": { + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the test set.

      " + } + }, + "testSetName": { "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      Name of a constituent sub slot inside a composite slot.

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

      The name of the test set.

      " } }, - "slotTypeId": { - "target": "com.amazonaws.lexmodelsv2#BuiltInOrCustomSlotTypeId", + "description": { + "target": "com.amazonaws.lexmodelsv2#Description", "traits": { - "smithy.api#documentation": "

      The unique identifier assigned to a slot type. \n This refers to either a built-in slot type or the unique slotTypeId of a custom slot type.

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

      The description of the test set.

      " + } + }, + "modality": { + "target": "com.amazonaws.lexmodelsv2#TestSetModality", + "traits": { + "smithy.api#documentation": "

      Specifies whether the test set contains written or spoken data.

      " + } + }, + "status": { + "target": "com.amazonaws.lexmodelsv2#TestSetStatus", + "traits": { + "smithy.api#documentation": "

      The status of the test set.

      " + } + }, + "roleArn": { + "target": "com.amazonaws.lexmodelsv2#RoleArn", + "traits": { + "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of an IAM role\n that has permission to access the test set.

      " + } + }, + "numTurns": { + "target": "com.amazonaws.lexmodelsv2#Count", + "traits": { + "smithy.api#documentation": "

      The number of turns in the test set.

      " + } + }, + "storageLocation": { + "target": "com.amazonaws.lexmodelsv2#TestSetStorageLocation", + "traits": { + "smithy.api#documentation": "

      Contains information about the location at which the test set is stored.

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

      The date and time at which the test set was created.

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

      The date and time at which the test set was last updated.

      " } } }, "traits": { - "smithy.api#documentation": "

      Subslot type composition.

      " + "smithy.api#documentation": "

      Contains summary information about the test set.

      " } }, - "com.amazonaws.lexmodelsv2#SubSlotTypeList": { + "com.amazonaws.lexmodelsv2#TestSetSummaryList": { "type": "list", "member": { - "target": "com.amazonaws.lexmodelsv2#SubSlotTypeComposition" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 6 - } + "target": "com.amazonaws.lexmodelsv2#TestSetSummary" } }, - "com.amazonaws.lexmodelsv2#SubSlotValueElicitationSetting": { + "com.amazonaws.lexmodelsv2#TestSetTurnRecord": { "type": "structure", "members": { - "defaultValueSpecification": { - "target": "com.amazonaws.lexmodelsv2#SlotDefaultValueSpecification" - }, - "promptSpecification": { - "target": "com.amazonaws.lexmodelsv2#PromptSpecification", + "recordNumber": { + "target": "com.amazonaws.lexmodelsv2#RecordNumber", "traits": { + "smithy.api#documentation": "

      The record number associated with the turn.

      ", "smithy.api#required": {} } }, - "sampleUtterances": { - "target": "com.amazonaws.lexmodelsv2#SampleUtterancesList", + "conversationId": { + "target": "com.amazonaws.lexmodelsv2#TestSetConversationId", "traits": { - "smithy.api#documentation": "

      If you know a specific pattern that users might respond to an Amazon Lex request for a sub slot value, \n you can provide those utterances to improve accuracy. This is optional. In most cases Amazon Lex is capable \n of understanding user utterances. This is similar to SampleUtterances for slots.

      " + "smithy.api#documentation": "

      The unique identifier for the conversation associated with the turn.

      " } }, - "waitAndContinueSpecification": { - "target": "com.amazonaws.lexmodelsv2#WaitAndContinueSpecification" + "turnNumber": { + "target": "com.amazonaws.lexmodelsv2#TurnNumber", + "traits": { + "smithy.api#documentation": "

      The number of turns that has elapsed up to that turn.

      " + } + }, + "turnSpecification": { + "target": "com.amazonaws.lexmodelsv2#TurnSpecification", + "traits": { + "smithy.api#documentation": "

      Contains information about the agent or user turn depending upon type of turn.

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

      Subslot elicitation settings.

      \n

      \n DefaultValueSpecification is a list of default values for a constituent sub slot in a composite slot. Default values are used when \n Amazon Lex hasn't determined a value for a slot. You can specify default values from context variables, \n session attributes, and defined values. This is similar to DefaultValueSpecification for slots.

      \n

      \n PromptSpecification is the prompt that Amazon Lex uses to elicit the sub slot value from the user. \n This is similar to PromptSpecification for slots.

      " - } - }, - "com.amazonaws.lexmodelsv2#SynonymList": { - "type": "list", - "member": { - "target": "com.amazonaws.lexmodelsv2#SampleValue" - }, - "traits": { - "smithy.api#length": { - "min": 1, - "max": 10000 - } - } - }, - "com.amazonaws.lexmodelsv2#TagKey": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 128 - } + "smithy.api#documentation": "

      Contains information about a turn in a test set.

      " } }, - "com.amazonaws.lexmodelsv2#TagKeyList": { + "com.amazonaws.lexmodelsv2#TestSetTurnRecordList": { "type": "list", "member": { - "target": "com.amazonaws.lexmodelsv2#TagKey" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 200 - } - } - }, - "com.amazonaws.lexmodelsv2#TagMap": { - "type": "map", - "key": { - "target": "com.amazonaws.lexmodelsv2#TagKey" - }, - "value": { - "target": "com.amazonaws.lexmodelsv2#TagValue" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 200 - } - } - }, - "com.amazonaws.lexmodelsv2#TagResource": { - "type": "operation", - "input": { - "target": "com.amazonaws.lexmodelsv2#TagResourceRequest" - }, - "output": { - "target": "com.amazonaws.lexmodelsv2#TagResourceResponse" - }, - "errors": [ - { - "target": "com.amazonaws.lexmodelsv2#InternalServerException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ThrottlingException" - }, - { - "target": "com.amazonaws.lexmodelsv2#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

      Adds the specified tags to the specified resource. If a tag key\n already exists, the existing value is replaced with the new\n value.

      ", - "smithy.api#http": { - "method": "POST", - "uri": "/tags/{resourceARN}", - "code": 200 - } + "target": "com.amazonaws.lexmodelsv2#TestSetTurnRecord" } }, - "com.amazonaws.lexmodelsv2#TagResourceRequest": { + "com.amazonaws.lexmodelsv2#TestSetTurnResult": { "type": "structure", "members": { - "resourceARN": { - "target": "com.amazonaws.lexmodelsv2#AmazonResourceName", + "agent": { + "target": "com.amazonaws.lexmodelsv2#AgentTurnResult", "traits": { - "smithy.api#documentation": "

      The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel\n to tag.

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

      Contains information about the agent messages in the turn.

      " } }, - "tags": { - "target": "com.amazonaws.lexmodelsv2#TagMap", + "user": { + "target": "com.amazonaws.lexmodelsv2#UserTurnResult", "traits": { - "smithy.api#documentation": "

      A list of tag keys to add to the resource. If a tag key already\n exists, the existing value is replaced with the new value.

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

      Contains information about the user messages in the turn.

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

      Contains information about the results of the analysis of a turn in the test set.

      " } }, - "com.amazonaws.lexmodelsv2#TagResourceResponse": { - "type": "structure", - "members": {} - }, - "com.amazonaws.lexmodelsv2#TagValue": { + "com.amazonaws.lexmodelsv2#TestSetUtteranceText": { "type": "string", "traits": { "smithy.api#length": { - "min": 0, - "max": 256 + "min": 1, + "max": 1024 } } }, @@ -14513,12 +17770,12 @@ "lexTranscriptFilter": { "target": "com.amazonaws.lexmodelsv2#LexTranscriptFilter", "traits": { - "smithy.api#documentation": "

      The object representing the filter that Amazon Lex will use to select the\n appropriate transcript when the transcript format is the Amazon Lex\n format.

      " + "smithy.api#documentation": "

      The object representing the filter that Amazon Lex will use to select the\n appropriate transcript when the transcript format is the Amazon Lex\n format.

      " } } }, "traits": { - "smithy.api#documentation": "

      The object representing the filter that Amazon Lex will use to select the\n appropriate transcript.

      " + "smithy.api#documentation": "

      The object representing the filter that Amazon Lex will use to select the\n appropriate transcript.

      " } }, "com.amazonaws.lexmodelsv2#TranscriptFormat": { @@ -14538,12 +17795,41 @@ "s3BucketTranscriptSource": { "target": "com.amazonaws.lexmodelsv2#S3BucketTranscriptSource", "traits": { - "smithy.api#documentation": "

      Indicates the setting of the Amazon S3 bucket where the transcript is\n stored.

      " + "smithy.api#documentation": "

      Indicates the setting of the Amazon S3 bucket where the transcript is\n stored.

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

      Indicates the setting of the location where the transcript is\n stored.

      " + } + }, + "com.amazonaws.lexmodelsv2#TurnNumber": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 30 + } + } + }, + "com.amazonaws.lexmodelsv2#TurnSpecification": { + "type": "structure", + "members": { + "agentTurn": { + "target": "com.amazonaws.lexmodelsv2#AgentTurnSpecification", + "traits": { + "smithy.api#documentation": "

      Contains information about the agent messages in the turn.

      " + } + }, + "userTurn": { + "target": "com.amazonaws.lexmodelsv2#UserTurnSpecification", + "traits": { + "smithy.api#documentation": "

      Contains information about the user messages in the turn.

      " } } }, "traits": { - "smithy.api#documentation": "

      Indicates the setting of the location where the transcript is\n stored.

      " + "smithy.api#documentation": "

      Contains information about the messages in the turn.

      " } }, "com.amazonaws.lexmodelsv2#UntagResource": { @@ -14596,11 +17882,17 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#UntagResourceResponse": { "type": "structure", - "members": {} + "members": {}, + "traits": { + "smithy.api#output": {} + } }, "com.amazonaws.lexmodelsv2#UpdateBot": { "type": "operation", @@ -14729,6 +18021,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#UpdateBotAliasResponse": { @@ -14797,6 +18092,9 @@ "smithy.api#documentation": "

      A timestamp of the date and time that the bot was last\n updated.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#UpdateBotLocale": { @@ -14882,6 +18180,9 @@ "smithy.api#documentation": "

      The new Amazon Polly voice Amazon Lex should use for voice interaction with the\n user.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#UpdateBotLocaleResponse": { @@ -14959,6 +18260,9 @@ "smithy.api#documentation": "

      Recommended actions to take to resolve an error in the\n failureReasons field.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#UpdateBotRecommendation": { @@ -15043,6 +18347,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#UpdateBotRecommendationResponse": { @@ -15102,6 +18409,9 @@ "smithy.api#documentation": "

      The object representing the passwords that were used to encrypt the\n data related to the bot recommendation results, as well as the KMS key\n ARN used to encrypt the associated metadata.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#UpdateBotRequest": { @@ -15161,6 +18471,9 @@ "smithy.api#documentation": "

      The list of bot members in the network associated \n with the update action.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#UpdateBotResponse": { @@ -15232,6 +18545,9 @@ "smithy.api#documentation": "

      The list of bot members in the network that was updated.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#UpdateCustomVocabularyItemsList": { @@ -15300,6 +18616,9 @@ "smithy.api#documentation": "

      The new password to use to encrypt the export zip archive.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#UpdateExportResponse": { @@ -15341,6 +18660,9 @@ "smithy.api#documentation": "

      The date and time that the export was last updated.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#UpdateIntent": { @@ -15491,9 +18813,12 @@ "initialResponseSetting": { "target": "com.amazonaws.lexmodelsv2#InitialResponseSetting", "traits": { - "smithy.api#documentation": "

      " + "smithy.api#documentation": "

      Configuration settings for a response sent to the user before Amazon Lex starts eliciting slots.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#UpdateIntentResponse": { @@ -15610,9 +18935,12 @@ "initialResponseSetting": { "target": "com.amazonaws.lexmodelsv2#InitialResponseSetting", "traits": { - "smithy.api#documentation": "

      " + "smithy.api#documentation": "

      Configuration settings for a response sent to the user before Amazon Lex starts eliciting slots.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#UpdateResourcePolicy": { @@ -15677,6 +19005,9 @@ "smithy.api#httpQuery": "expectedRevisionId" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#UpdateResourcePolicyResponse": { @@ -15694,6 +19025,9 @@ "smithy.api#documentation": "

      The current revision of the resource policy. Use the revision ID to\n make sure that you are updating the most current version of a resource\n policy when you add a policy statement to a resource, delete a\n resource, or update a resource.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.lexmodelsv2#UpdateSlot": { @@ -15820,6 +19154,9 @@ "smithy.api#documentation": "

      Specifications for the constituent sub slots and the \n expression for the composite slot.

      " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.lexmodelsv2#UpdateSlotResponse": { @@ -15870,7 +19207,7 @@ "botVersion": { "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", "traits": { - "smithy.api#documentation": "

      The identifier of the slot version that contains the slot. Will\n always be DRAFT.

      " + "smithy.api#documentation": "

      The version of the bot that contains the slot. Will\n always be DRAFT.

      " } }, "localeId": { @@ -15903,21 +19240,224 @@ "smithy.api#documentation": "

      Indicates whether the slot accepts multiple values in one\n response.

      " } }, - "subSlotSetting": { - "target": "com.amazonaws.lexmodelsv2#SubSlotSetting", + "subSlotSetting": { + "target": "com.amazonaws.lexmodelsv2#SubSlotSetting", + "traits": { + "smithy.api#documentation": "

      Specifications for the constituent sub slots and the \n expression for the composite slot.

      " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.lexmodelsv2#UpdateSlotType": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#UpdateSlotTypeRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#UpdateSlotTypeResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#ConflictException" + }, + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

      Updates the configuration of an existing slot type.

      ", + "smithy.api#http": { + "method": "PUT", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes/{slotTypeId}", + "code": 202 + } + } + }, + "com.amazonaws.lexmodelsv2#UpdateSlotTypeRequest": { + "type": "structure", + "members": { + "slotTypeId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the slot type to update.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "slotTypeName": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      The new name of the slot type.

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

      The new description of the slot type.

      " + } + }, + "slotTypeValues": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeValues", + "traits": { + "smithy.api#documentation": "

      A new list of values and their optional synonyms that define the\n values that the slot type can take.

      " + } + }, + "valueSelectionSetting": { + "target": "com.amazonaws.lexmodelsv2#SlotValueSelectionSetting", + "traits": { + "smithy.api#documentation": "

      The strategy that Amazon Lex should use when deciding on a value from the\n list of slot type values.

      " + } + }, + "parentSlotTypeSignature": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeSignature", + "traits": { + "smithy.api#documentation": "

      The new built-in slot type that should be used as the parent of this\n slot type.

      " + } + }, + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot that contains the slot type.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the slot type. Must be\n DRAFT.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The identifier of the language and locale that contains the slot\n type. The string must match one of the supported locales. For more\n information, see Supported languages.

      ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "externalSourceSetting": { + "target": "com.amazonaws.lexmodelsv2#ExternalSourceSetting" + }, + "compositeSlotTypeSetting": { + "target": "com.amazonaws.lexmodelsv2#CompositeSlotTypeSetting", + "traits": { + "smithy.api#documentation": "

      Specifications for a composite slot type.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#UpdateSlotTypeResponse": { + "type": "structure", + "members": { + "slotTypeId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The unique identifier of the updated slot type.

      " + } + }, + "slotTypeName": { + "target": "com.amazonaws.lexmodelsv2#Name", + "traits": { + "smithy.api#documentation": "

      The updated name of the slot type.

      " + } + }, + "description": { + "target": "com.amazonaws.lexmodelsv2#Description", + "traits": { + "smithy.api#documentation": "

      The updated description of the slot type.

      " + } + }, + "slotTypeValues": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeValues", + "traits": { + "smithy.api#documentation": "

      The updated values that the slot type provides.

      " + } + }, + "valueSelectionSetting": { + "target": "com.amazonaws.lexmodelsv2#SlotValueSelectionSetting", + "traits": { + "smithy.api#documentation": "

      The updated strategy that Amazon Lex uses to determine which value to\n select from the slot type.

      " + } + }, + "parentSlotTypeSignature": { + "target": "com.amazonaws.lexmodelsv2#SlotTypeSignature", + "traits": { + "smithy.api#documentation": "

      The updated signature of the built-in slot type that is the parent\n of this slot type.

      " + } + }, + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The identifier of the bot that contains the slot type.

      " + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

      The version of the bot that contains the slot type. This is always\n DRAFT.

      " + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

      The language and locale of the updated slot type.

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

      The timestamp of the date and time that the slot type was\n created.

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

      A timestamp of the date and time that the slot type was last\n updated.

      " + } + }, + "externalSourceSetting": { + "target": "com.amazonaws.lexmodelsv2#ExternalSourceSetting" + }, + "compositeSlotTypeSetting": { + "target": "com.amazonaws.lexmodelsv2#CompositeSlotTypeSetting", "traits": { - "smithy.api#documentation": "

      Specifications for the constituent sub slots and the \n expression for the composite slot.

      " + "smithy.api#documentation": "

      Specifications for a composite slot type.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#UpdateSlotType": { + "com.amazonaws.lexmodelsv2#UpdateTestSet": { "type": "operation", "input": { - "target": "com.amazonaws.lexmodelsv2#UpdateSlotTypeRequest" + "target": "com.amazonaws.lexmodelsv2#UpdateTestSetRequest" }, "output": { - "target": "com.amazonaws.lexmodelsv2#UpdateSlotTypeResponse" + "target": "com.amazonaws.lexmodelsv2#UpdateTestSetResponse" }, "errors": [ { @@ -15940,169 +19480,309 @@ } ], "traits": { - "smithy.api#documentation": "

      Updates the configuration of an existing slot type.

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

      The action to update the test set.

      ", "smithy.api#http": { "method": "PUT", - "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes/{slotTypeId}", - "code": 202 - } + "uri": "/testsets/{testSetId}", + "code": 200 + }, + "smithy.api#idempotent": {} } }, - "com.amazonaws.lexmodelsv2#UpdateSlotTypeRequest": { + "com.amazonaws.lexmodelsv2#UpdateTestSetRequest": { "type": "structure", "members": { - "slotTypeId": { + "testSetId": { "target": "com.amazonaws.lexmodelsv2#Id", "traits": { - "smithy.api#documentation": "

      The unique identifier of the slot type to update.

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

      The test set Id for which update test operation to be performed.

      ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "slotTypeName": { + "testSetName": { "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The new name of the slot type.

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

      The new test set name.

      ", "smithy.api#required": {} } }, "description": { "target": "com.amazonaws.lexmodelsv2#Description", "traits": { - "smithy.api#documentation": "

      The new description of the slot type.

      " + "smithy.api#documentation": "

      The new test set description.

      " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lexmodelsv2#UpdateTestSetResponse": { + "type": "structure", + "members": { + "testSetId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

      The test set Id for which update test operation to be performed.

      " } }, - "slotTypeValues": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeValues", + "testSetName": { + "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      A new list of values and their optional synonyms that define the\n values that the slot type can take.

      " + "smithy.api#documentation": "

      The test set name for the updated test set.

      " } }, - "valueSelectionSetting": { - "target": "com.amazonaws.lexmodelsv2#SlotValueSelectionSetting", + "description": { + "target": "com.amazonaws.lexmodelsv2#Description", "traits": { - "smithy.api#documentation": "

      The strategy that Amazon Lex should use when deciding on a value from the\n list of slot type values.

      " + "smithy.api#documentation": "

      The test set description for the updated test set.

      " } }, - "parentSlotTypeSignature": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeSignature", + "modality": { + "target": "com.amazonaws.lexmodelsv2#TestSetModality", "traits": { - "smithy.api#documentation": "

      The new built-in slot type that should be used as the parent of this\n slot type.

      " + "smithy.api#documentation": "

      Indicates whether audio or text is used for the updated test set.

      " } }, - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "status": { + "target": "com.amazonaws.lexmodelsv2#TestSetStatus", "traits": { - "smithy.api#documentation": "

      The identifier of the bot that contains the slot type.

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

      The status for the updated test set.

      " } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "roleArn": { + "target": "com.amazonaws.lexmodelsv2#RoleArn", "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the slot type. Must be\n DRAFT.

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

      The roleARN used for any operation in the test set to access \n resources in the Amazon Web Services account.

      " } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "numTurns": { + "target": "com.amazonaws.lexmodelsv2#Count", "traits": { - "smithy.api#documentation": "

      The identifier of the language and locale that contains the slot\n type. The string must match one of the supported locales. For more\n information, see Supported languages.

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

      The number of conversation turns from the updated test set.

      " } }, - "externalSourceSetting": { - "target": "com.amazonaws.lexmodelsv2#ExternalSourceSetting" + "storageLocation": { + "target": "com.amazonaws.lexmodelsv2#TestSetStorageLocation", + "traits": { + "smithy.api#documentation": "

      The Amazon S3 storage location for the updated test set.

      " + } }, - "compositeSlotTypeSetting": { - "target": "com.amazonaws.lexmodelsv2#CompositeSlotTypeSetting", + "creationDateTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", "traits": { - "smithy.api#documentation": "

      Specifications for a composite slot type.

      " + "smithy.api#documentation": "

      The creation date and time for the updated test set.

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

      The date and time of the last update for the updated test set.

      " } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.lexmodelsv2#UpdateSlotTypeResponse": { + "com.amazonaws.lexmodelsv2#UserTurnInputSpecification": { "type": "structure", "members": { - "slotTypeId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "utteranceInput": { + "target": "com.amazonaws.lexmodelsv2#UtteranceInputSpecification", "traits": { - "smithy.api#documentation": "

      The unique identifier of the updated slot type.

      " + "smithy.api#documentation": "

      The utterance input in the user turn.

      ", + "smithy.api#required": {} } }, - "slotTypeName": { + "requestAttributes": { + "target": "com.amazonaws.lexmodelsv2#StringMap", + "traits": { + "smithy.api#documentation": "

      Request attributes of the user turn.

      " + } + }, + "sessionState": { + "target": "com.amazonaws.lexmodelsv2#InputSessionStateSpecification", + "traits": { + "smithy.api#documentation": "

      Contains information about the session state in the input.

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

      Contains information about the user messages in the turn in the input.

      " + } + }, + "com.amazonaws.lexmodelsv2#UserTurnIntentOutput": { + "type": "structure", + "members": { + "name": { "target": "com.amazonaws.lexmodelsv2#Name", "traits": { - "smithy.api#documentation": "

      The updated name of the slot type.

      " + "smithy.api#documentation": "

      The name of the intent.

      ", + "smithy.api#required": {} } }, - "description": { - "target": "com.amazonaws.lexmodelsv2#Description", + "slots": { + "target": "com.amazonaws.lexmodelsv2#UserTurnSlotOutputMap", "traits": { - "smithy.api#documentation": "

      The updated description of the slot type.

      " + "smithy.api#documentation": "

      The slots associated with the intent.

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

      Contains information about the intent that is output for the turn by the test execution.

      " + } + }, + "com.amazonaws.lexmodelsv2#UserTurnOutputSpecification": { + "type": "structure", + "members": { + "intent": { + "target": "com.amazonaws.lexmodelsv2#UserTurnIntentOutput", + "traits": { + "smithy.api#documentation": "

      Contains information about the intent.

      ", + "smithy.api#required": {} } }, - "slotTypeValues": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeValues", + "activeContexts": { + "target": "com.amazonaws.lexmodelsv2#ActiveContextList", "traits": { - "smithy.api#documentation": "

      The updated values that the slot type provides.

      " + "smithy.api#documentation": "

      The contexts that are active in the turn.

      " } }, - "valueSelectionSetting": { - "target": "com.amazonaws.lexmodelsv2#SlotValueSelectionSetting", + "transcript": { + "target": "com.amazonaws.lexmodelsv2#TestSetUtteranceText", "traits": { - "smithy.api#documentation": "

      The updated strategy that Amazon Lex uses to determine which value to\n select from the slot type.

      " + "smithy.api#documentation": "

      The transcript that is output for the user turn by the test execution.

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

      Contains results that are output for the user turn by the test execution.

      " + } + }, + "com.amazonaws.lexmodelsv2#UserTurnResult": { + "type": "structure", + "members": { + "input": { + "target": "com.amazonaws.lexmodelsv2#UserTurnInputSpecification", + "traits": { + "smithy.api#documentation": "

      Contains information about the user messages in the turn in the input.

      ", + "smithy.api#required": {} } }, - "parentSlotTypeSignature": { - "target": "com.amazonaws.lexmodelsv2#SlotTypeSignature", + "expectedOutput": { + "target": "com.amazonaws.lexmodelsv2#UserTurnOutputSpecification", "traits": { - "smithy.api#documentation": "

      The updated signature of the built-in slot type that is the parent\n of this slot type.

      " + "smithy.api#documentation": "

      Contains information about the expected output for the user turn.

      ", + "smithy.api#required": {} } }, - "botId": { - "target": "com.amazonaws.lexmodelsv2#Id", + "actualOutput": { + "target": "com.amazonaws.lexmodelsv2#UserTurnOutputSpecification", "traits": { - "smithy.api#documentation": "

      The identifier of the bot that contains the slot type.

      " + "smithy.api#documentation": "

      Contains information about the actual output for the user turn.

      " } }, - "botVersion": { - "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "errorDetails": { + "target": "com.amazonaws.lexmodelsv2#ExecutionErrorDetails" + }, + "endToEndResult": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus", "traits": { - "smithy.api#documentation": "

      The version of the bot that contains the slot type. This is always\n DRAFT.

      " + "smithy.api#documentation": "

      Specifies whether the expected and actual outputs match or not, or if there is an error in execution.

      " } }, - "localeId": { - "target": "com.amazonaws.lexmodelsv2#LocaleId", + "intentMatchResult": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus", "traits": { - "smithy.api#documentation": "

      The language and locale of the updated slot type.

      " + "smithy.api#documentation": "

      Specifies whether the expected and actual intents match or not.

      " } }, - "creationDateTime": { - "target": "com.amazonaws.lexmodelsv2#Timestamp", + "slotMatchResult": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus", "traits": { - "smithy.api#documentation": "

      The timestamp of the date and time that the slot type was\n created.

      " + "smithy.api#documentation": "

      Specifies whether the expected and actual slots match or not.

      " } }, - "lastUpdatedDateTime": { - "target": "com.amazonaws.lexmodelsv2#Timestamp", + "speechTranscriptionResult": { + "target": "com.amazonaws.lexmodelsv2#TestResultMatchStatus", "traits": { - "smithy.api#documentation": "

      A timestamp of the date and time that the slot type was last\n updated.

      " + "smithy.api#documentation": "

      Specifies whether the expected and actual speech transcriptions match or not, or if there is an error in execution.

      " } }, - "externalSourceSetting": { - "target": "com.amazonaws.lexmodelsv2#ExternalSourceSetting" + "conversationLevelResult": { + "target": "com.amazonaws.lexmodelsv2#ConversationLevelResultDetail", + "traits": { + "smithy.api#documentation": "

      Contains information about the results related to the conversation associated with the user turn.

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

      Contains the results for the user turn by the test execution.

      " + } + }, + "com.amazonaws.lexmodelsv2#UserTurnSlotOutput": { + "type": "structure", + "members": { + "value": { + "target": "com.amazonaws.lexmodelsv2#NonEmptyString", + "traits": { + "smithy.api#documentation": "

      The value output by the slot recognition.

      " + } }, - "compositeSlotTypeSetting": { - "target": "com.amazonaws.lexmodelsv2#CompositeSlotTypeSetting", + "values": { + "target": "com.amazonaws.lexmodelsv2#UserTurnSlotOutputList", "traits": { - "smithy.api#documentation": "

      Specifications for a composite slot type.

      " + "smithy.api#documentation": "

      Values that are output by the slot recognition.

      " + } + }, + "subSlots": { + "target": "com.amazonaws.lexmodelsv2#UserTurnSlotOutputMap", + "traits": { + "smithy.api#documentation": "

      A list of items mapping the name of the subslots to information about those subslots.

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

      Contains information about a slot output by the test set execution.

      " + } + }, + "com.amazonaws.lexmodelsv2#UserTurnSlotOutputList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#UserTurnSlotOutput" + } + }, + "com.amazonaws.lexmodelsv2#UserTurnSlotOutputMap": { + "type": "map", + "key": { + "target": "com.amazonaws.lexmodelsv2#Name" + }, + "value": { + "target": "com.amazonaws.lexmodelsv2#UserTurnSlotOutput" + } + }, + "com.amazonaws.lexmodelsv2#UserTurnSpecification": { + "type": "structure", + "members": { + "input": { + "target": "com.amazonaws.lexmodelsv2#UserTurnInputSpecification", + "traits": { + "smithy.api#documentation": "

      Contains information about the user messages in the turn in the input.

      ", + "smithy.api#required": {} + } + }, + "expected": { + "target": "com.amazonaws.lexmodelsv2#UserTurnOutputSpecification", + "traits": { + "smithy.api#documentation": "

      Contains results about the expected output for the user turn.

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

      Contains information about the expected and input values for the user turn.

      " } }, "com.amazonaws.lexmodelsv2#Utterance": { @@ -16120,7 +19800,91 @@ } }, "traits": { - "smithy.api#documentation": "

      Provides parameters for setting the time window and duration for\n aggregating utterance data.

      " + "smithy.api#documentation": "

      Provides parameters for setting the time window and duration for\n aggregating utterance data.

      " + } + }, + "com.amazonaws.lexmodelsv2#UtteranceAudioInputSpecification": { + "type": "structure", + "members": { + "audioFileS3Location": { + "target": "com.amazonaws.lexmodelsv2#AudioFileS3Location", + "traits": { + "smithy.api#documentation": "

      Amazon S3 file pointing to the audio.

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

      Contains information about the audio for an utterance.

      " + } + }, + "com.amazonaws.lexmodelsv2#UtteranceInputSpecification": { + "type": "structure", + "members": { + "textInput": { + "target": "com.amazonaws.lexmodelsv2#TestSetUtteranceText", + "traits": { + "smithy.api#documentation": "

      A text input transcription of the utterance. It is only applicable for test-sets containing text data.

      " + } + }, + "audioInput": { + "target": "com.amazonaws.lexmodelsv2#UtteranceAudioInputSpecification", + "traits": { + "smithy.api#documentation": "

      Contains information about the audio input for an utterance.

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

      Contains information about input of an utterance.

      " + } + }, + "com.amazonaws.lexmodelsv2#UtteranceLevelTestResultItem": { + "type": "structure", + "members": { + "recordNumber": { + "target": "com.amazonaws.lexmodelsv2#RecordNumber", + "traits": { + "smithy.api#documentation": "

      The record number of the result.

      ", + "smithy.api#required": {} + } + }, + "conversationId": { + "target": "com.amazonaws.lexmodelsv2#TestSetConversationId", + "traits": { + "smithy.api#documentation": "

      The unique identifier for the conversation associated with the result.

      " + } + }, + "turnResult": { + "target": "com.amazonaws.lexmodelsv2#TestSetTurnResult", + "traits": { + "smithy.api#documentation": "

      Contains information about the turn associated with the result.

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

      Contains information about multiple utterances in the results of a test set execution.

      " + } + }, + "com.amazonaws.lexmodelsv2#UtteranceLevelTestResultItemList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexmodelsv2#UtteranceLevelTestResultItem" + } + }, + "com.amazonaws.lexmodelsv2#UtteranceLevelTestResults": { + "type": "structure", + "members": { + "items": { + "target": "com.amazonaws.lexmodelsv2#UtteranceLevelTestResultItemList", + "traits": { + "smithy.api#documentation": "

      Contains information about an utterance in the results of the test set execution.

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

      Contains information about the utterances in the results of the test set execution.

      " } }, "com.amazonaws.lexmodelsv2#ValidationException": { @@ -16178,7 +19942,7 @@ "engine": { "target": "com.amazonaws.lexmodelsv2#VoiceEngine", "traits": { - "smithy.api#documentation": "

      Indicates the type of Amazon Polly voice that Amazon Lex should use for voice interaction with the user. For more\n information, see the \n engine parameter of the\n SynthesizeSpeech operation in the\n Amazon Polly developer guide.

      \n

      If you do not specify a value, the default is\n standard.

      " + "smithy.api#documentation": "

      Indicates the type of Amazon Polly voice that Amazon Lex should use for voice interaction with the user. For more information, see the \n engine parameter of the SynthesizeSpeech operation in the Amazon Polly developer guide.

      \n

      If you do not specify a value, the default is standard.

      " } } },