From 6d701b12dde1c6177f755722a5feeedf2fc67fa6 Mon Sep 17 00:00:00 2001 From: awstools Date: Wed, 10 Jul 2024 18:50:48 +0000 Subject: [PATCH] feat(client-bedrock-agent): Introduces new data sources and chunking strategies for Knowledge bases, advanced parsing logic using FMs, session summary generation, and code interpretation (preview) for Claude V3 Sonnet and Haiku models. Also introduces Prompt Flows (preview) to link prompts, foundational models, and resources. --- clients/client-bedrock-agent/README.md | 168 + .../client-bedrock-agent/src/BedrockAgent.ts | 366 + .../src/BedrockAgentClient.ts | 70 +- .../commands/CreateAgentActionGroupCommand.ts | 10 +- .../src/commands/CreateAgentCommand.ts | 19 +- .../src/commands/CreateDataSourceCommand.ts | 295 +- .../src/commands/CreateFlowAliasCommand.ts | 125 + .../src/commands/CreateFlowCommand.ts | 345 + .../src/commands/CreateFlowVersionCommand.ts | 229 + .../src/commands/CreatePromptCommand.ts | 176 + .../commands/CreatePromptVersionCommand.ts | 148 + .../src/commands/DeleteFlowAliasCommand.ts | 102 + .../src/commands/DeleteFlowCommand.ts | 101 + .../src/commands/DeleteFlowVersionCommand.ts | 103 + .../src/commands/DeletePromptCommand.ts | 102 + .../commands/GetAgentActionGroupCommand.ts | 2 +- .../src/commands/GetAgentCommand.ts | 6 + .../src/commands/GetAgentVersionCommand.ts | 6 + .../src/commands/GetDataSourceCommand.ts | 149 +- .../src/commands/GetFlowAliasCommand.ts | 109 + .../src/commands/GetFlowCommand.ts | 224 + .../src/commands/GetFlowVersionCommand.ts | 222 + .../src/commands/GetPromptCommand.ts | 134 + .../src/commands/ListFlowAliasesCommand.ts | 115 + .../src/commands/ListFlowVersionsCommand.ts | 108 + .../src/commands/ListFlowsCommand.ts | 107 + .../src/commands/ListPromptsCommand.ts | 110 + .../src/commands/PrepareFlowCommand.ts | 104 + .../commands/UpdateAgentActionGroupCommand.ts | 4 +- .../src/commands/UpdateAgentCommand.ts | 12 + .../src/commands/UpdateDataSourceCommand.ts | 295 +- .../src/commands/UpdateFlowAliasCommand.ts | 122 + .../src/commands/UpdateFlowCommand.ts | 345 + .../src/commands/UpdatePromptCommand.ts | 176 + .../src/commands/index.ts | 21 + .../src/models/models_0.ts | 6197 +++++++-- .../pagination/ListFlowAliasesPaginator.ts | 24 + .../pagination/ListFlowVersionsPaginator.ts | 24 + .../src/pagination/ListFlowsPaginator.ts | 20 + .../src/pagination/ListPromptsPaginator.ts | 20 + .../src/pagination/index.ts | 4 + .../src/protocols/Aws_restJson1.ts | 1882 ++- .../sdk-codegen/aws-models/bedrock-agent.json | 11018 ++++++++++++---- 43 files changed, 20052 insertions(+), 3867 deletions(-) create mode 100644 clients/client-bedrock-agent/src/commands/CreateFlowAliasCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/CreateFlowCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/CreateFlowVersionCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/CreatePromptCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/CreatePromptVersionCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/DeleteFlowAliasCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/DeleteFlowCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/DeleteFlowVersionCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/DeletePromptCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/GetFlowAliasCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/GetFlowCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/GetFlowVersionCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/GetPromptCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/ListFlowAliasesCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/ListFlowVersionsCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/ListFlowsCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/ListPromptsCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/PrepareFlowCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/UpdateFlowAliasCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/UpdateFlowCommand.ts create mode 100644 clients/client-bedrock-agent/src/commands/UpdatePromptCommand.ts create mode 100644 clients/client-bedrock-agent/src/pagination/ListFlowAliasesPaginator.ts create mode 100644 clients/client-bedrock-agent/src/pagination/ListFlowVersionsPaginator.ts create mode 100644 clients/client-bedrock-agent/src/pagination/ListFlowsPaginator.ts create mode 100644 clients/client-bedrock-agent/src/pagination/ListPromptsPaginator.ts diff --git a/clients/client-bedrock-agent/README.md b/clients/client-bedrock-agent/README.md index f7f4bafc2597..19c0f60f6567 100644 --- a/clients/client-bedrock-agent/README.md +++ b/clients/client-bedrock-agent/README.md @@ -242,6 +242,30 @@ CreateDataSource [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/CreateDataSourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreateDataSourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreateDataSourceCommandOutput/) + +
+ +CreateFlow + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/CreateFlowCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreateFlowCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreateFlowCommandOutput/) + +
+
+ +CreateFlowAlias + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/CreateFlowAliasCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreateFlowAliasCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreateFlowAliasCommandOutput/) + +
+
+ +CreateFlowVersion + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/CreateFlowVersionCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreateFlowVersionCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreateFlowVersionCommandOutput/) +
@@ -250,6 +274,22 @@ CreateKnowledgeBase [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/CreateKnowledgeBaseCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreateKnowledgeBaseCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreateKnowledgeBaseCommandOutput/) +
+
+ +CreatePrompt + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/CreatePromptCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreatePromptCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreatePromptCommandOutput/) + +
+
+ +CreatePromptVersion + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/CreatePromptVersionCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreatePromptVersionCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/CreatePromptVersionCommandOutput/) +
@@ -290,6 +330,30 @@ DeleteDataSource [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/DeleteDataSourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeleteDataSourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeleteDataSourceCommandOutput/) +
+
+ +DeleteFlow + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/DeleteFlowCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeleteFlowCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeleteFlowCommandOutput/) + +
+
+ +DeleteFlowAlias + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/DeleteFlowAliasCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeleteFlowAliasCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeleteFlowAliasCommandOutput/) + +
+
+ +DeleteFlowVersion + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/DeleteFlowVersionCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeleteFlowVersionCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeleteFlowVersionCommandOutput/) +
@@ -298,6 +362,14 @@ DeleteKnowledgeBase [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/DeleteKnowledgeBaseCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeleteKnowledgeBaseCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeleteKnowledgeBaseCommandOutput/) +
+
+ +DeletePrompt + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/DeletePromptCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeletePromptCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/DeletePromptCommandOutput/) +
@@ -354,6 +426,30 @@ GetDataSource [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/GetDataSourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetDataSourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetDataSourceCommandOutput/) +
+
+ +GetFlow + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/GetFlowCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetFlowCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetFlowCommandOutput/) + +
+
+ +GetFlowAlias + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/GetFlowAliasCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetFlowAliasCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetFlowAliasCommandOutput/) + +
+
+ +GetFlowVersion + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/GetFlowVersionCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetFlowVersionCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetFlowVersionCommandOutput/) +
@@ -370,6 +466,14 @@ GetKnowledgeBase [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/GetKnowledgeBaseCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetKnowledgeBaseCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetKnowledgeBaseCommandOutput/) +
+
+ +GetPrompt + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/GetPromptCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetPromptCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/GetPromptCommandOutput/) +
@@ -418,6 +522,30 @@ ListDataSources [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/ListDataSourcesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListDataSourcesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListDataSourcesCommandOutput/) +
+
+ +ListFlowAliases + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/ListFlowAliasesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListFlowAliasesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListFlowAliasesCommandOutput/) + +
+
+ +ListFlows + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/ListFlowsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListFlowsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListFlowsCommandOutput/) + +
+
+ +ListFlowVersions + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/ListFlowVersionsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListFlowVersionsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListFlowVersionsCommandOutput/) +
@@ -434,6 +562,14 @@ ListKnowledgeBases [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/ListKnowledgeBasesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListKnowledgeBasesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListKnowledgeBasesCommandOutput/) +
+
+ +ListPrompts + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/ListPromptsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListPromptsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/ListPromptsCommandOutput/) +
@@ -450,6 +586,14 @@ PrepareAgent [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/PrepareAgentCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/PrepareAgentCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/PrepareAgentCommandOutput/) +
+
+ +PrepareFlow + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/PrepareFlowCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/PrepareFlowCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/PrepareFlowCommandOutput/) +
@@ -514,6 +658,22 @@ UpdateDataSource [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/UpdateDataSourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/UpdateDataSourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/UpdateDataSourceCommandOutput/) +
+
+ +UpdateFlow + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/UpdateFlowCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/UpdateFlowCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/UpdateFlowCommandOutput/) + +
+
+ +UpdateFlowAlias + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/UpdateFlowAliasCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/UpdateFlowAliasCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/UpdateFlowAliasCommandOutput/) +
@@ -523,3 +683,11 @@ UpdateKnowledgeBase [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/UpdateKnowledgeBaseCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/UpdateKnowledgeBaseCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/UpdateKnowledgeBaseCommandOutput/)
+
+ +UpdatePrompt + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-agent/command/UpdatePromptCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/UpdatePromptCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-bedrock-agent/Interface/UpdatePromptCommandOutput/) + +
diff --git a/clients/client-bedrock-agent/src/BedrockAgent.ts b/clients/client-bedrock-agent/src/BedrockAgent.ts index 894928b3ac19..1392b2ef6f22 100644 --- a/clients/client-bedrock-agent/src/BedrockAgent.ts +++ b/clients/client-bedrock-agent/src/BedrockAgent.ts @@ -24,11 +24,32 @@ import { CreateDataSourceCommandInput, CreateDataSourceCommandOutput, } from "./commands/CreateDataSourceCommand"; +import { + CreateFlowAliasCommand, + CreateFlowAliasCommandInput, + CreateFlowAliasCommandOutput, +} from "./commands/CreateFlowAliasCommand"; +import { CreateFlowCommand, CreateFlowCommandInput, CreateFlowCommandOutput } from "./commands/CreateFlowCommand"; +import { + CreateFlowVersionCommand, + CreateFlowVersionCommandInput, + CreateFlowVersionCommandOutput, +} from "./commands/CreateFlowVersionCommand"; import { CreateKnowledgeBaseCommand, CreateKnowledgeBaseCommandInput, CreateKnowledgeBaseCommandOutput, } from "./commands/CreateKnowledgeBaseCommand"; +import { + CreatePromptCommand, + CreatePromptCommandInput, + CreatePromptCommandOutput, +} from "./commands/CreatePromptCommand"; +import { + CreatePromptVersionCommand, + CreatePromptVersionCommandInput, + CreatePromptVersionCommandOutput, +} from "./commands/CreatePromptVersionCommand"; import { DeleteAgentActionGroupCommand, DeleteAgentActionGroupCommandInput, @@ -50,11 +71,27 @@ import { DeleteDataSourceCommandInput, DeleteDataSourceCommandOutput, } from "./commands/DeleteDataSourceCommand"; +import { + DeleteFlowAliasCommand, + DeleteFlowAliasCommandInput, + DeleteFlowAliasCommandOutput, +} from "./commands/DeleteFlowAliasCommand"; +import { DeleteFlowCommand, DeleteFlowCommandInput, DeleteFlowCommandOutput } from "./commands/DeleteFlowCommand"; +import { + DeleteFlowVersionCommand, + DeleteFlowVersionCommandInput, + DeleteFlowVersionCommandOutput, +} from "./commands/DeleteFlowVersionCommand"; import { DeleteKnowledgeBaseCommand, DeleteKnowledgeBaseCommandInput, DeleteKnowledgeBaseCommandOutput, } from "./commands/DeleteKnowledgeBaseCommand"; +import { + DeletePromptCommand, + DeletePromptCommandInput, + DeletePromptCommandOutput, +} from "./commands/DeletePromptCommand"; import { DisassociateAgentKnowledgeBaseCommand, DisassociateAgentKnowledgeBaseCommandInput, @@ -86,6 +123,17 @@ import { GetDataSourceCommandInput, GetDataSourceCommandOutput, } from "./commands/GetDataSourceCommand"; +import { + GetFlowAliasCommand, + GetFlowAliasCommandInput, + GetFlowAliasCommandOutput, +} from "./commands/GetFlowAliasCommand"; +import { GetFlowCommand, GetFlowCommandInput, GetFlowCommandOutput } from "./commands/GetFlowCommand"; +import { + GetFlowVersionCommand, + GetFlowVersionCommandInput, + GetFlowVersionCommandOutput, +} from "./commands/GetFlowVersionCommand"; import { GetIngestionJobCommand, GetIngestionJobCommandInput, @@ -96,6 +144,7 @@ import { GetKnowledgeBaseCommandInput, GetKnowledgeBaseCommandOutput, } from "./commands/GetKnowledgeBaseCommand"; +import { GetPromptCommand, GetPromptCommandInput, GetPromptCommandOutput } from "./commands/GetPromptCommand"; import { ListAgentActionGroupsCommand, ListAgentActionGroupsCommandInput, @@ -122,6 +171,17 @@ import { ListDataSourcesCommandInput, ListDataSourcesCommandOutput, } from "./commands/ListDataSourcesCommand"; +import { + ListFlowAliasesCommand, + ListFlowAliasesCommandInput, + ListFlowAliasesCommandOutput, +} from "./commands/ListFlowAliasesCommand"; +import { ListFlowsCommand, ListFlowsCommandInput, ListFlowsCommandOutput } from "./commands/ListFlowsCommand"; +import { + ListFlowVersionsCommand, + ListFlowVersionsCommandInput, + ListFlowVersionsCommandOutput, +} from "./commands/ListFlowVersionsCommand"; import { ListIngestionJobsCommand, ListIngestionJobsCommandInput, @@ -132,6 +192,7 @@ import { ListKnowledgeBasesCommandInput, ListKnowledgeBasesCommandOutput, } from "./commands/ListKnowledgeBasesCommand"; +import { ListPromptsCommand, ListPromptsCommandInput, ListPromptsCommandOutput } from "./commands/ListPromptsCommand"; import { ListTagsForResourceCommand, ListTagsForResourceCommandInput, @@ -142,6 +203,7 @@ import { PrepareAgentCommandInput, PrepareAgentCommandOutput, } from "./commands/PrepareAgentCommand"; +import { PrepareFlowCommand, PrepareFlowCommandInput, PrepareFlowCommandOutput } from "./commands/PrepareFlowCommand"; import { StartIngestionJobCommand, StartIngestionJobCommandInput, @@ -174,11 +236,22 @@ import { UpdateDataSourceCommandInput, UpdateDataSourceCommandOutput, } from "./commands/UpdateDataSourceCommand"; +import { + UpdateFlowAliasCommand, + UpdateFlowAliasCommandInput, + UpdateFlowAliasCommandOutput, +} from "./commands/UpdateFlowAliasCommand"; +import { UpdateFlowCommand, UpdateFlowCommandInput, UpdateFlowCommandOutput } from "./commands/UpdateFlowCommand"; import { UpdateKnowledgeBaseCommand, UpdateKnowledgeBaseCommandInput, UpdateKnowledgeBaseCommandOutput, } from "./commands/UpdateKnowledgeBaseCommand"; +import { + UpdatePromptCommand, + UpdatePromptCommandInput, + UpdatePromptCommandOutput, +} from "./commands/UpdatePromptCommand"; const commands = { AssociateAgentKnowledgeBaseCommand, @@ -186,13 +259,22 @@ const commands = { CreateAgentActionGroupCommand, CreateAgentAliasCommand, CreateDataSourceCommand, + CreateFlowCommand, + CreateFlowAliasCommand, + CreateFlowVersionCommand, CreateKnowledgeBaseCommand, + CreatePromptCommand, + CreatePromptVersionCommand, DeleteAgentCommand, DeleteAgentActionGroupCommand, DeleteAgentAliasCommand, DeleteAgentVersionCommand, DeleteDataSourceCommand, + DeleteFlowCommand, + DeleteFlowAliasCommand, + DeleteFlowVersionCommand, DeleteKnowledgeBaseCommand, + DeletePromptCommand, DisassociateAgentKnowledgeBaseCommand, GetAgentCommand, GetAgentActionGroupCommand, @@ -200,18 +282,27 @@ const commands = { GetAgentKnowledgeBaseCommand, GetAgentVersionCommand, GetDataSourceCommand, + GetFlowCommand, + GetFlowAliasCommand, + GetFlowVersionCommand, GetIngestionJobCommand, GetKnowledgeBaseCommand, + GetPromptCommand, ListAgentActionGroupsCommand, ListAgentAliasesCommand, ListAgentKnowledgeBasesCommand, ListAgentsCommand, ListAgentVersionsCommand, ListDataSourcesCommand, + ListFlowAliasesCommand, + ListFlowsCommand, + ListFlowVersionsCommand, ListIngestionJobsCommand, ListKnowledgeBasesCommand, + ListPromptsCommand, ListTagsForResourceCommand, PrepareAgentCommand, + PrepareFlowCommand, StartIngestionJobCommand, TagResourceCommand, UntagResourceCommand, @@ -220,7 +311,10 @@ const commands = { UpdateAgentAliasCommand, UpdateAgentKnowledgeBaseCommand, UpdateDataSourceCommand, + UpdateFlowCommand, + UpdateFlowAliasCommand, UpdateKnowledgeBaseCommand, + UpdatePromptCommand, }; export interface BedrockAgent { @@ -303,6 +397,48 @@ export interface BedrockAgent { cb: (err: any, data?: CreateDataSourceCommandOutput) => void ): void; + /** + * @see {@link CreateFlowCommand} + */ + createFlow(args: CreateFlowCommandInput, options?: __HttpHandlerOptions): Promise; + createFlow(args: CreateFlowCommandInput, cb: (err: any, data?: CreateFlowCommandOutput) => void): void; + createFlow( + args: CreateFlowCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreateFlowCommandOutput) => void + ): void; + + /** + * @see {@link CreateFlowAliasCommand} + */ + createFlowAlias( + args: CreateFlowAliasCommandInput, + options?: __HttpHandlerOptions + ): Promise; + createFlowAlias(args: CreateFlowAliasCommandInput, cb: (err: any, data?: CreateFlowAliasCommandOutput) => void): void; + createFlowAlias( + args: CreateFlowAliasCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreateFlowAliasCommandOutput) => void + ): void; + + /** + * @see {@link CreateFlowVersionCommand} + */ + createFlowVersion( + args: CreateFlowVersionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + createFlowVersion( + args: CreateFlowVersionCommandInput, + cb: (err: any, data?: CreateFlowVersionCommandOutput) => void + ): void; + createFlowVersion( + args: CreateFlowVersionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreateFlowVersionCommandOutput) => void + ): void; + /** * @see {@link CreateKnowledgeBaseCommand} */ @@ -320,6 +456,34 @@ export interface BedrockAgent { cb: (err: any, data?: CreateKnowledgeBaseCommandOutput) => void ): void; + /** + * @see {@link CreatePromptCommand} + */ + createPrompt(args: CreatePromptCommandInput, options?: __HttpHandlerOptions): Promise; + createPrompt(args: CreatePromptCommandInput, cb: (err: any, data?: CreatePromptCommandOutput) => void): void; + createPrompt( + args: CreatePromptCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreatePromptCommandOutput) => void + ): void; + + /** + * @see {@link CreatePromptVersionCommand} + */ + createPromptVersion( + args: CreatePromptVersionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + createPromptVersion( + args: CreatePromptVersionCommandInput, + cb: (err: any, data?: CreatePromptVersionCommandOutput) => void + ): void; + createPromptVersion( + args: CreatePromptVersionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreatePromptVersionCommandOutput) => void + ): void; + /** * @see {@link DeleteAgentCommand} */ @@ -399,6 +563,48 @@ export interface BedrockAgent { cb: (err: any, data?: DeleteDataSourceCommandOutput) => void ): void; + /** + * @see {@link DeleteFlowCommand} + */ + deleteFlow(args: DeleteFlowCommandInput, options?: __HttpHandlerOptions): Promise; + deleteFlow(args: DeleteFlowCommandInput, cb: (err: any, data?: DeleteFlowCommandOutput) => void): void; + deleteFlow( + args: DeleteFlowCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteFlowCommandOutput) => void + ): void; + + /** + * @see {@link DeleteFlowAliasCommand} + */ + deleteFlowAlias( + args: DeleteFlowAliasCommandInput, + options?: __HttpHandlerOptions + ): Promise; + deleteFlowAlias(args: DeleteFlowAliasCommandInput, cb: (err: any, data?: DeleteFlowAliasCommandOutput) => void): void; + deleteFlowAlias( + args: DeleteFlowAliasCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteFlowAliasCommandOutput) => void + ): void; + + /** + * @see {@link DeleteFlowVersionCommand} + */ + deleteFlowVersion( + args: DeleteFlowVersionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + deleteFlowVersion( + args: DeleteFlowVersionCommandInput, + cb: (err: any, data?: DeleteFlowVersionCommandOutput) => void + ): void; + deleteFlowVersion( + args: DeleteFlowVersionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteFlowVersionCommandOutput) => void + ): void; + /** * @see {@link DeleteKnowledgeBaseCommand} */ @@ -416,6 +622,17 @@ export interface BedrockAgent { cb: (err: any, data?: DeleteKnowledgeBaseCommandOutput) => void ): void; + /** + * @see {@link DeletePromptCommand} + */ + deletePrompt(args: DeletePromptCommandInput, options?: __HttpHandlerOptions): Promise; + deletePrompt(args: DeletePromptCommandInput, cb: (err: any, data?: DeletePromptCommandOutput) => void): void; + deletePrompt( + args: DeletePromptCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeletePromptCommandOutput) => void + ): void; + /** * @see {@link DisassociateAgentKnowledgeBaseCommand} */ @@ -514,6 +731,42 @@ export interface BedrockAgent { cb: (err: any, data?: GetDataSourceCommandOutput) => void ): void; + /** + * @see {@link GetFlowCommand} + */ + getFlow(args: GetFlowCommandInput, options?: __HttpHandlerOptions): Promise; + getFlow(args: GetFlowCommandInput, cb: (err: any, data?: GetFlowCommandOutput) => void): void; + getFlow( + args: GetFlowCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetFlowCommandOutput) => void + ): void; + + /** + * @see {@link GetFlowAliasCommand} + */ + getFlowAlias(args: GetFlowAliasCommandInput, options?: __HttpHandlerOptions): Promise; + getFlowAlias(args: GetFlowAliasCommandInput, cb: (err: any, data?: GetFlowAliasCommandOutput) => void): void; + getFlowAlias( + args: GetFlowAliasCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetFlowAliasCommandOutput) => void + ): void; + + /** + * @see {@link GetFlowVersionCommand} + */ + getFlowVersion( + args: GetFlowVersionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + getFlowVersion(args: GetFlowVersionCommandInput, cb: (err: any, data?: GetFlowVersionCommandOutput) => void): void; + getFlowVersion( + args: GetFlowVersionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetFlowVersionCommandOutput) => void + ): void; + /** * @see {@link GetIngestionJobCommand} */ @@ -545,6 +798,17 @@ export interface BedrockAgent { cb: (err: any, data?: GetKnowledgeBaseCommandOutput) => void ): void; + /** + * @see {@link GetPromptCommand} + */ + getPrompt(args: GetPromptCommandInput, options?: __HttpHandlerOptions): Promise; + getPrompt(args: GetPromptCommandInput, cb: (err: any, data?: GetPromptCommandOutput) => void): void; + getPrompt( + args: GetPromptCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetPromptCommandOutput) => void + ): void; + /** * @see {@link ListAgentActionGroupsCommand} */ @@ -639,6 +903,49 @@ export interface BedrockAgent { cb: (err: any, data?: ListDataSourcesCommandOutput) => void ): void; + /** + * @see {@link ListFlowAliasesCommand} + */ + listFlowAliases( + args: ListFlowAliasesCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listFlowAliases(args: ListFlowAliasesCommandInput, cb: (err: any, data?: ListFlowAliasesCommandOutput) => void): void; + listFlowAliases( + args: ListFlowAliasesCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListFlowAliasesCommandOutput) => void + ): void; + + /** + * @see {@link ListFlowsCommand} + */ + listFlows(): Promise; + listFlows(args: ListFlowsCommandInput, options?: __HttpHandlerOptions): Promise; + listFlows(args: ListFlowsCommandInput, cb: (err: any, data?: ListFlowsCommandOutput) => void): void; + listFlows( + args: ListFlowsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListFlowsCommandOutput) => void + ): void; + + /** + * @see {@link ListFlowVersionsCommand} + */ + listFlowVersions( + args: ListFlowVersionsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listFlowVersions( + args: ListFlowVersionsCommandInput, + cb: (err: any, data?: ListFlowVersionsCommandOutput) => void + ): void; + listFlowVersions( + args: ListFlowVersionsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListFlowVersionsCommandOutput) => void + ): void; + /** * @see {@link ListIngestionJobsCommand} */ @@ -674,6 +981,18 @@ export interface BedrockAgent { cb: (err: any, data?: ListKnowledgeBasesCommandOutput) => void ): void; + /** + * @see {@link ListPromptsCommand} + */ + listPrompts(): Promise; + listPrompts(args: ListPromptsCommandInput, options?: __HttpHandlerOptions): Promise; + listPrompts(args: ListPromptsCommandInput, cb: (err: any, data?: ListPromptsCommandOutput) => void): void; + listPrompts( + args: ListPromptsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListPromptsCommandOutput) => void + ): void; + /** * @see {@link ListTagsForResourceCommand} */ @@ -702,6 +1021,17 @@ export interface BedrockAgent { cb: (err: any, data?: PrepareAgentCommandOutput) => void ): void; + /** + * @see {@link PrepareFlowCommand} + */ + prepareFlow(args: PrepareFlowCommandInput, options?: __HttpHandlerOptions): Promise; + prepareFlow(args: PrepareFlowCommandInput, cb: (err: any, data?: PrepareFlowCommandOutput) => void): void; + prepareFlow( + args: PrepareFlowCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: PrepareFlowCommandOutput) => void + ): void; + /** * @see {@link StartIngestionJobCommand} */ @@ -820,6 +1150,31 @@ export interface BedrockAgent { cb: (err: any, data?: UpdateDataSourceCommandOutput) => void ): void; + /** + * @see {@link UpdateFlowCommand} + */ + updateFlow(args: UpdateFlowCommandInput, options?: __HttpHandlerOptions): Promise; + updateFlow(args: UpdateFlowCommandInput, cb: (err: any, data?: UpdateFlowCommandOutput) => void): void; + updateFlow( + args: UpdateFlowCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateFlowCommandOutput) => void + ): void; + + /** + * @see {@link UpdateFlowAliasCommand} + */ + updateFlowAlias( + args: UpdateFlowAliasCommandInput, + options?: __HttpHandlerOptions + ): Promise; + updateFlowAlias(args: UpdateFlowAliasCommandInput, cb: (err: any, data?: UpdateFlowAliasCommandOutput) => void): void; + updateFlowAlias( + args: UpdateFlowAliasCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateFlowAliasCommandOutput) => void + ): void; + /** * @see {@link UpdateKnowledgeBaseCommand} */ @@ -836,6 +1191,17 @@ export interface BedrockAgent { options: __HttpHandlerOptions, cb: (err: any, data?: UpdateKnowledgeBaseCommandOutput) => void ): void; + + /** + * @see {@link UpdatePromptCommand} + */ + updatePrompt(args: UpdatePromptCommandInput, options?: __HttpHandlerOptions): Promise; + updatePrompt(args: UpdatePromptCommandInput, cb: (err: any, data?: UpdatePromptCommandOutput) => void): void; + updatePrompt( + args: UpdatePromptCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdatePromptCommandOutput) => void + ): void; } /** diff --git a/clients/client-bedrock-agent/src/BedrockAgentClient.ts b/clients/client-bedrock-agent/src/BedrockAgentClient.ts index e8f184334666..18d2b02fc7c4 100644 --- a/clients/client-bedrock-agent/src/BedrockAgentClient.ts +++ b/clients/client-bedrock-agent/src/BedrockAgentClient.ts @@ -64,10 +64,18 @@ import { import { CreateAgentAliasCommandInput, CreateAgentAliasCommandOutput } from "./commands/CreateAgentAliasCommand"; import { CreateAgentCommandInput, CreateAgentCommandOutput } from "./commands/CreateAgentCommand"; import { CreateDataSourceCommandInput, CreateDataSourceCommandOutput } from "./commands/CreateDataSourceCommand"; +import { CreateFlowAliasCommandInput, CreateFlowAliasCommandOutput } from "./commands/CreateFlowAliasCommand"; +import { CreateFlowCommandInput, CreateFlowCommandOutput } from "./commands/CreateFlowCommand"; +import { CreateFlowVersionCommandInput, CreateFlowVersionCommandOutput } from "./commands/CreateFlowVersionCommand"; import { CreateKnowledgeBaseCommandInput, CreateKnowledgeBaseCommandOutput, } from "./commands/CreateKnowledgeBaseCommand"; +import { CreatePromptCommandInput, CreatePromptCommandOutput } from "./commands/CreatePromptCommand"; +import { + CreatePromptVersionCommandInput, + CreatePromptVersionCommandOutput, +} from "./commands/CreatePromptVersionCommand"; import { DeleteAgentActionGroupCommandInput, DeleteAgentActionGroupCommandOutput, @@ -76,10 +84,14 @@ import { DeleteAgentAliasCommandInput, DeleteAgentAliasCommandOutput } from "./c import { DeleteAgentCommandInput, DeleteAgentCommandOutput } from "./commands/DeleteAgentCommand"; import { DeleteAgentVersionCommandInput, DeleteAgentVersionCommandOutput } from "./commands/DeleteAgentVersionCommand"; import { DeleteDataSourceCommandInput, DeleteDataSourceCommandOutput } from "./commands/DeleteDataSourceCommand"; +import { DeleteFlowAliasCommandInput, DeleteFlowAliasCommandOutput } from "./commands/DeleteFlowAliasCommand"; +import { DeleteFlowCommandInput, DeleteFlowCommandOutput } from "./commands/DeleteFlowCommand"; +import { DeleteFlowVersionCommandInput, DeleteFlowVersionCommandOutput } from "./commands/DeleteFlowVersionCommand"; import { DeleteKnowledgeBaseCommandInput, DeleteKnowledgeBaseCommandOutput, } from "./commands/DeleteKnowledgeBaseCommand"; +import { DeletePromptCommandInput, DeletePromptCommandOutput } from "./commands/DeletePromptCommand"; import { DisassociateAgentKnowledgeBaseCommandInput, DisassociateAgentKnowledgeBaseCommandOutput, @@ -96,8 +108,12 @@ import { } from "./commands/GetAgentKnowledgeBaseCommand"; import { GetAgentVersionCommandInput, GetAgentVersionCommandOutput } from "./commands/GetAgentVersionCommand"; import { GetDataSourceCommandInput, GetDataSourceCommandOutput } from "./commands/GetDataSourceCommand"; +import { GetFlowAliasCommandInput, GetFlowAliasCommandOutput } from "./commands/GetFlowAliasCommand"; +import { GetFlowCommandInput, GetFlowCommandOutput } from "./commands/GetFlowCommand"; +import { GetFlowVersionCommandInput, GetFlowVersionCommandOutput } from "./commands/GetFlowVersionCommand"; import { GetIngestionJobCommandInput, GetIngestionJobCommandOutput } from "./commands/GetIngestionJobCommand"; import { GetKnowledgeBaseCommandInput, GetKnowledgeBaseCommandOutput } from "./commands/GetKnowledgeBaseCommand"; +import { GetPromptCommandInput, GetPromptCommandOutput } from "./commands/GetPromptCommand"; import { ListAgentActionGroupsCommandInput, ListAgentActionGroupsCommandOutput, @@ -110,13 +126,18 @@ import { import { ListAgentsCommandInput, ListAgentsCommandOutput } from "./commands/ListAgentsCommand"; import { ListAgentVersionsCommandInput, ListAgentVersionsCommandOutput } from "./commands/ListAgentVersionsCommand"; import { ListDataSourcesCommandInput, ListDataSourcesCommandOutput } from "./commands/ListDataSourcesCommand"; +import { ListFlowAliasesCommandInput, ListFlowAliasesCommandOutput } from "./commands/ListFlowAliasesCommand"; +import { ListFlowsCommandInput, ListFlowsCommandOutput } from "./commands/ListFlowsCommand"; +import { ListFlowVersionsCommandInput, ListFlowVersionsCommandOutput } from "./commands/ListFlowVersionsCommand"; import { ListIngestionJobsCommandInput, ListIngestionJobsCommandOutput } from "./commands/ListIngestionJobsCommand"; import { ListKnowledgeBasesCommandInput, ListKnowledgeBasesCommandOutput } from "./commands/ListKnowledgeBasesCommand"; +import { ListPromptsCommandInput, ListPromptsCommandOutput } from "./commands/ListPromptsCommand"; import { ListTagsForResourceCommandInput, ListTagsForResourceCommandOutput, } from "./commands/ListTagsForResourceCommand"; import { PrepareAgentCommandInput, PrepareAgentCommandOutput } from "./commands/PrepareAgentCommand"; +import { PrepareFlowCommandInput, PrepareFlowCommandOutput } from "./commands/PrepareFlowCommand"; import { StartIngestionJobCommandInput, StartIngestionJobCommandOutput } from "./commands/StartIngestionJobCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "./commands/UntagResourceCommand"; @@ -131,10 +152,13 @@ import { UpdateAgentKnowledgeBaseCommandOutput, } from "./commands/UpdateAgentKnowledgeBaseCommand"; import { UpdateDataSourceCommandInput, UpdateDataSourceCommandOutput } from "./commands/UpdateDataSourceCommand"; +import { UpdateFlowAliasCommandInput, UpdateFlowAliasCommandOutput } from "./commands/UpdateFlowAliasCommand"; +import { UpdateFlowCommandInput, UpdateFlowCommandOutput } from "./commands/UpdateFlowCommand"; import { UpdateKnowledgeBaseCommandInput, UpdateKnowledgeBaseCommandOutput, } from "./commands/UpdateKnowledgeBaseCommand"; +import { UpdatePromptCommandInput, UpdatePromptCommandOutput } from "./commands/UpdatePromptCommand"; import { ClientInputEndpointParameters, ClientResolvedEndpointParameters, @@ -155,13 +179,22 @@ export type ServiceInputTypes = | CreateAgentAliasCommandInput | CreateAgentCommandInput | CreateDataSourceCommandInput + | CreateFlowAliasCommandInput + | CreateFlowCommandInput + | CreateFlowVersionCommandInput | CreateKnowledgeBaseCommandInput + | CreatePromptCommandInput + | CreatePromptVersionCommandInput | DeleteAgentActionGroupCommandInput | DeleteAgentAliasCommandInput | DeleteAgentCommandInput | DeleteAgentVersionCommandInput | DeleteDataSourceCommandInput + | DeleteFlowAliasCommandInput + | DeleteFlowCommandInput + | DeleteFlowVersionCommandInput | DeleteKnowledgeBaseCommandInput + | DeletePromptCommandInput | DisassociateAgentKnowledgeBaseCommandInput | GetAgentActionGroupCommandInput | GetAgentAliasCommandInput @@ -169,18 +202,27 @@ export type ServiceInputTypes = | GetAgentKnowledgeBaseCommandInput | GetAgentVersionCommandInput | GetDataSourceCommandInput + | GetFlowAliasCommandInput + | GetFlowCommandInput + | GetFlowVersionCommandInput | GetIngestionJobCommandInput | GetKnowledgeBaseCommandInput + | GetPromptCommandInput | ListAgentActionGroupsCommandInput | ListAgentAliasesCommandInput | ListAgentKnowledgeBasesCommandInput | ListAgentVersionsCommandInput | ListAgentsCommandInput | ListDataSourcesCommandInput + | ListFlowAliasesCommandInput + | ListFlowVersionsCommandInput + | ListFlowsCommandInput | ListIngestionJobsCommandInput | ListKnowledgeBasesCommandInput + | ListPromptsCommandInput | ListTagsForResourceCommandInput | PrepareAgentCommandInput + | PrepareFlowCommandInput | StartIngestionJobCommandInput | TagResourceCommandInput | UntagResourceCommandInput @@ -189,7 +231,10 @@ export type ServiceInputTypes = | UpdateAgentCommandInput | UpdateAgentKnowledgeBaseCommandInput | UpdateDataSourceCommandInput - | UpdateKnowledgeBaseCommandInput; + | UpdateFlowAliasCommandInput + | UpdateFlowCommandInput + | UpdateKnowledgeBaseCommandInput + | UpdatePromptCommandInput; /** * @public @@ -200,13 +245,22 @@ export type ServiceOutputTypes = | CreateAgentAliasCommandOutput | CreateAgentCommandOutput | CreateDataSourceCommandOutput + | CreateFlowAliasCommandOutput + | CreateFlowCommandOutput + | CreateFlowVersionCommandOutput | CreateKnowledgeBaseCommandOutput + | CreatePromptCommandOutput + | CreatePromptVersionCommandOutput | DeleteAgentActionGroupCommandOutput | DeleteAgentAliasCommandOutput | DeleteAgentCommandOutput | DeleteAgentVersionCommandOutput | DeleteDataSourceCommandOutput + | DeleteFlowAliasCommandOutput + | DeleteFlowCommandOutput + | DeleteFlowVersionCommandOutput | DeleteKnowledgeBaseCommandOutput + | DeletePromptCommandOutput | DisassociateAgentKnowledgeBaseCommandOutput | GetAgentActionGroupCommandOutput | GetAgentAliasCommandOutput @@ -214,18 +268,27 @@ export type ServiceOutputTypes = | GetAgentKnowledgeBaseCommandOutput | GetAgentVersionCommandOutput | GetDataSourceCommandOutput + | GetFlowAliasCommandOutput + | GetFlowCommandOutput + | GetFlowVersionCommandOutput | GetIngestionJobCommandOutput | GetKnowledgeBaseCommandOutput + | GetPromptCommandOutput | ListAgentActionGroupsCommandOutput | ListAgentAliasesCommandOutput | ListAgentKnowledgeBasesCommandOutput | ListAgentVersionsCommandOutput | ListAgentsCommandOutput | ListDataSourcesCommandOutput + | ListFlowAliasesCommandOutput + | ListFlowVersionsCommandOutput + | ListFlowsCommandOutput | ListIngestionJobsCommandOutput | ListKnowledgeBasesCommandOutput + | ListPromptsCommandOutput | ListTagsForResourceCommandOutput | PrepareAgentCommandOutput + | PrepareFlowCommandOutput | StartIngestionJobCommandOutput | TagResourceCommandOutput | UntagResourceCommandOutput @@ -234,7 +297,10 @@ export type ServiceOutputTypes = | UpdateAgentCommandOutput | UpdateAgentKnowledgeBaseCommandOutput | UpdateDataSourceCommandOutput - | UpdateKnowledgeBaseCommandOutput; + | UpdateFlowAliasCommandOutput + | UpdateFlowCommandOutput + | UpdateKnowledgeBaseCommandOutput + | UpdatePromptCommandOutput; /** * @public diff --git a/clients/client-bedrock-agent/src/commands/CreateAgentActionGroupCommand.ts b/clients/client-bedrock-agent/src/commands/CreateAgentActionGroupCommand.ts index 11044457af94..6edafa9f451b 100644 --- a/clients/client-bedrock-agent/src/commands/CreateAgentActionGroupCommand.ts +++ b/clients/client-bedrock-agent/src/commands/CreateAgentActionGroupCommand.ts @@ -34,7 +34,11 @@ export interface CreateAgentActionGroupCommandOutput extends CreateAgentActionGr /** *

Creates an action group for an agent. An action group represents the actions that an agent can carry out for the customer by defining the APIs that an agent can call and the logic for calling them.

- *

To allow your agent to request the user for additional information when trying to complete a task, add an action group with the parentActionGroupSignature field set to AMAZON.UserInput. You must leave the description, apiSchema, and actionGroupExecutor fields blank for this action group. During orchestration, if your agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an Observation reprompting the user for more information.

+ *

To allow your agent to request the user for additional information when trying to complete a task, + * add an action group with the parentActionGroupSignature field set to AMAZON.UserInput.

+ *

To allow your agent to generate, run, and troubleshoot code when trying to complete a task, + * add an action group with the parentActionGroupSignature field set to AMAZON.CodeInterpreter.

+ *

You must leave the description, apiSchema, and actionGroupExecutor fields blank for this action group. During orchestration, if your agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an Observation reprompting the user for more information.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript @@ -47,7 +51,7 @@ export interface CreateAgentActionGroupCommandOutput extends CreateAgentActionGr * actionGroupName: "STRING_VALUE", // required * clientToken: "STRING_VALUE", * description: "STRING_VALUE", - * parentActionGroupSignature: "AMAZON.UserInput", + * parentActionGroupSignature: "AMAZON.UserInput" || "AMAZON.CodeInterpreter", * actionGroupExecutor: { // ActionGroupExecutor Union: only one key present * lambda: "STRING_VALUE", * customControl: "RETURN_CONTROL", @@ -88,7 +92,7 @@ export interface CreateAgentActionGroupCommandOutput extends CreateAgentActionGr * // description: "STRING_VALUE", * // createdAt: new Date("TIMESTAMP"), // required * // updatedAt: new Date("TIMESTAMP"), // required - * // parentActionSignature: "AMAZON.UserInput", + * // parentActionSignature: "AMAZON.UserInput" || "AMAZON.CodeInterpreter", * // actionGroupExecutor: { // ActionGroupExecutor Union: only one key present * // lambda: "STRING_VALUE", * // customControl: "RETURN_CONTROL", diff --git a/clients/client-bedrock-agent/src/commands/CreateAgentCommand.ts b/clients/client-bedrock-agent/src/commands/CreateAgentCommand.ts index 44a469c32655..e9c7a27e79b4 100644 --- a/clients/client-bedrock-agent/src/commands/CreateAgentCommand.ts +++ b/clients/client-bedrock-agent/src/commands/CreateAgentCommand.ts @@ -51,7 +51,12 @@ export interface CreateAgentCommandOutput extends CreateAgentResponse, __Metadat * * *
  • - *

    To override the default prompt behavior for agent orchestration and to use advanced prompts, include a promptOverrideConfiguration object. For more information, see Advanced prompts.

    + *

    To enable your agent to retain conversational context across multiple sessions, include a memoryConfiguration object. + * For more information, see Configure memory.

    + *
  • + *
  • + *

    To override the default prompt behavior for agent orchestration and to use advanced prompts, include a promptOverrideConfiguration object. + * For more information, see Advanced prompts.

    *
  • *
  • *

    If you agent fails to be created, the response returns a list of failureReasons alongside a list of recommendedActions for you to troubleshoot.

    @@ -100,6 +105,12 @@ export interface CreateAgentCommandOutput extends CreateAgentResponse, __Metadat * guardrailIdentifier: "STRING_VALUE", * guardrailVersion: "STRING_VALUE", * }, + * memoryConfiguration: { // MemoryConfiguration + * enabledMemoryTypes: [ // EnabledMemoryTypes // required + * "SESSION_SUMMARY", + * ], + * storageDays: Number("int"), + * }, * }; * const command = new CreateAgentCommand(input); * const response = await client.send(command); @@ -151,6 +162,12 @@ export interface CreateAgentCommandOutput extends CreateAgentResponse, __Metadat * // guardrailIdentifier: "STRING_VALUE", * // guardrailVersion: "STRING_VALUE", * // }, + * // memoryConfiguration: { // MemoryConfiguration + * // enabledMemoryTypes: [ // EnabledMemoryTypes // required + * // "SESSION_SUMMARY", + * // ], + * // storageDays: Number("int"), + * // }, * // }, * // }; * diff --git a/clients/client-bedrock-agent/src/commands/CreateDataSourceCommand.ts b/clients/client-bedrock-agent/src/commands/CreateDataSourceCommand.ts index 81c15ff5463b..85d4cd1c8bf7 100644 --- a/clients/client-bedrock-agent/src/commands/CreateDataSourceCommand.ts +++ b/clients/client-bedrock-agent/src/commands/CreateDataSourceCommand.ts @@ -6,7 +6,12 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { CreateDataSourceRequest, CreateDataSourceResponse } from "../models/models_0"; +import { + CreateDataSourceRequest, + CreateDataSourceRequestFilterSensitiveLog, + CreateDataSourceResponse, + CreateDataSourceResponseFilterSensitiveLog, +} from "../models/models_0"; import { de_CreateDataSourceCommand, se_CreateDataSourceCommand } from "../protocols/Aws_restJson1"; /** @@ -28,9 +33,9 @@ export interface CreateDataSourceCommandInput extends CreateDataSourceRequest {} export interface CreateDataSourceCommandOutput extends CreateDataSourceResponse, __MetadataBearer {} /** - *

    Sets up a data source to be added to a knowledge base.

    + *

    Creates a data source connector for a knowledge base.

    * - *

    You can't change the chunkingConfiguration after you create the data source.

    + *

    You can't change the chunkingConfiguration after you create the data source connector.

    *
    * @example * Use a bare-bones client and the command you need to make an API call. @@ -44,7 +49,7 @@ export interface CreateDataSourceCommandOutput extends CreateDataSourceResponse, * name: "STRING_VALUE", // required * description: "STRING_VALUE", * dataSourceConfiguration: { // DataSourceConfiguration - * type: "S3", // required + * type: "S3" || "WEB" || "CONFLUENCE" || "SALESFORCE" || "SHAREPOINT", // required * s3Configuration: { // S3DataSourceConfiguration * bucketArn: "STRING_VALUE", // required * inclusionPrefixes: [ // S3Prefixes @@ -52,6 +57,104 @@ export interface CreateDataSourceCommandOutput extends CreateDataSourceResponse, * ], * bucketOwnerAccountId: "STRING_VALUE", * }, + * webConfiguration: { // WebDataSourceConfiguration + * sourceConfiguration: { // WebSourceConfiguration + * urlConfiguration: { // UrlConfiguration + * seedUrls: [ // SeedUrls + * { // SeedUrl + * url: "STRING_VALUE", + * }, + * ], + * }, + * }, + * crawlerConfiguration: { // WebCrawlerConfiguration + * crawlerLimits: { // WebCrawlerLimits + * rateLimit: Number("int"), + * }, + * inclusionFilters: [ // FilterList + * "STRING_VALUE", + * ], + * exclusionFilters: [ + * "STRING_VALUE", + * ], + * scope: "HOST_ONLY" || "SUBDOMAINS", + * }, + * }, + * confluenceConfiguration: { // ConfluenceDataSourceConfiguration + * sourceConfiguration: { // ConfluenceSourceConfiguration + * hostUrl: "STRING_VALUE", // required + * hostType: "SAAS", // required + * authType: "BASIC" || "OAUTH2_CLIENT_CREDENTIALS", // required + * credentialsSecretArn: "STRING_VALUE", // required + * }, + * crawlerConfiguration: { // ConfluenceCrawlerConfiguration + * filterConfiguration: { // CrawlFilterConfiguration + * type: "PATTERN", // required + * patternObjectFilter: { // PatternObjectFilterConfiguration + * filters: [ // PatternObjectFilterList // required + * { // PatternObjectFilter + * objectType: "STRING_VALUE", // required + * inclusionFilters: [ + * "STRING_VALUE", + * ], + * exclusionFilters: [ + * "STRING_VALUE", + * ], + * }, + * ], + * }, + * }, + * }, + * }, + * salesforceConfiguration: { // SalesforceDataSourceConfiguration + * sourceConfiguration: { // SalesforceSourceConfiguration + * hostUrl: "STRING_VALUE", // required + * authType: "OAUTH2_CLIENT_CREDENTIALS", // required + * credentialsSecretArn: "STRING_VALUE", // required + * }, + * crawlerConfiguration: { // SalesforceCrawlerConfiguration + * filterConfiguration: { + * type: "PATTERN", // required + * patternObjectFilter: { + * filters: [ // required + * { + * objectType: "STRING_VALUE", // required + * inclusionFilters: [ + * "STRING_VALUE", + * ], + * exclusionFilters: "", + * }, + * ], + * }, + * }, + * }, + * }, + * sharePointConfiguration: { // SharePointDataSourceConfiguration + * sourceConfiguration: { // SharePointSourceConfiguration + * tenantId: "STRING_VALUE", + * domain: "STRING_VALUE", // required + * siteUrls: [ // SharePointSiteUrls // required + * "STRING_VALUE", + * ], + * hostType: "ONLINE", // required + * authType: "OAUTH2_CLIENT_CREDENTIALS", // required + * credentialsSecretArn: "STRING_VALUE", // required + * }, + * crawlerConfiguration: { // SharePointCrawlerConfiguration + * filterConfiguration: { + * type: "PATTERN", // required + * patternObjectFilter: { + * filters: [ // required + * { + * objectType: "STRING_VALUE", // required + * inclusionFilters: "", + * exclusionFilters: "", + * }, + * ], + * }, + * }, + * }, + * }, * }, * dataDeletionPolicy: "RETAIN" || "DELETE", * serverSideEncryptionConfiguration: { // ServerSideEncryptionConfiguration @@ -59,11 +162,50 @@ export interface CreateDataSourceCommandOutput extends CreateDataSourceResponse, * }, * vectorIngestionConfiguration: { // VectorIngestionConfiguration * chunkingConfiguration: { // ChunkingConfiguration - * chunkingStrategy: "FIXED_SIZE" || "NONE", // required + * chunkingStrategy: "FIXED_SIZE" || "NONE" || "HIERARCHICAL" || "SEMANTIC", // required * fixedSizeChunkingConfiguration: { // FixedSizeChunkingConfiguration * maxTokens: Number("int"), // required * overlapPercentage: Number("int"), // required * }, + * hierarchicalChunkingConfiguration: { // HierarchicalChunkingConfiguration + * levelConfigurations: [ // HierarchicalChunkingLevelConfigurations // required + * { // HierarchicalChunkingLevelConfiguration + * maxTokens: Number("int"), // required + * }, + * ], + * overlapTokens: Number("int"), // required + * }, + * semanticChunkingConfiguration: { // SemanticChunkingConfiguration + * maxTokens: Number("int"), // required + * bufferSize: Number("int"), // required + * breakpointPercentileThreshold: Number("int"), // required + * }, + * }, + * customTransformationConfiguration: { // CustomTransformationConfiguration + * intermediateStorage: { // IntermediateStorage + * s3Location: { // S3Location + * uri: "STRING_VALUE", // required + * }, + * }, + * transformations: [ // Transformations // required + * { // Transformation + * transformationFunction: { // TransformationFunction + * transformationLambdaConfiguration: { // TransformationLambdaConfiguration + * lambdaArn: "STRING_VALUE", // required + * }, + * }, + * stepToApply: "POST_CHUNKING", // required + * }, + * ], + * }, + * parsingConfiguration: { // ParsingConfiguration + * parsingStrategy: "BEDROCK_FOUNDATION_MODEL", // required + * bedrockFoundationModelConfiguration: { // BedrockFoundationModelConfiguration + * modelArn: "STRING_VALUE", // required + * parsingPrompt: { // ParsingPrompt + * parsingPromptText: "STRING_VALUE", // required + * }, + * }, * }, * }, * }; @@ -77,7 +219,7 @@ export interface CreateDataSourceCommandOutput extends CreateDataSourceResponse, * // status: "AVAILABLE" || "DELETING" || "DELETE_UNSUCCESSFUL", // required * // description: "STRING_VALUE", * // dataSourceConfiguration: { // DataSourceConfiguration - * // type: "S3", // required + * // type: "S3" || "WEB" || "CONFLUENCE" || "SALESFORCE" || "SHAREPOINT", // required * // s3Configuration: { // S3DataSourceConfiguration * // bucketArn: "STRING_VALUE", // required * // inclusionPrefixes: [ // S3Prefixes @@ -85,17 +227,154 @@ export interface CreateDataSourceCommandOutput extends CreateDataSourceResponse, * // ], * // bucketOwnerAccountId: "STRING_VALUE", * // }, + * // webConfiguration: { // WebDataSourceConfiguration + * // sourceConfiguration: { // WebSourceConfiguration + * // urlConfiguration: { // UrlConfiguration + * // seedUrls: [ // SeedUrls + * // { // SeedUrl + * // url: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // crawlerConfiguration: { // WebCrawlerConfiguration + * // crawlerLimits: { // WebCrawlerLimits + * // rateLimit: Number("int"), + * // }, + * // inclusionFilters: [ // FilterList + * // "STRING_VALUE", + * // ], + * // exclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // scope: "HOST_ONLY" || "SUBDOMAINS", + * // }, + * // }, + * // confluenceConfiguration: { // ConfluenceDataSourceConfiguration + * // sourceConfiguration: { // ConfluenceSourceConfiguration + * // hostUrl: "STRING_VALUE", // required + * // hostType: "SAAS", // required + * // authType: "BASIC" || "OAUTH2_CLIENT_CREDENTIALS", // required + * // credentialsSecretArn: "STRING_VALUE", // required + * // }, + * // crawlerConfiguration: { // ConfluenceCrawlerConfiguration + * // filterConfiguration: { // CrawlFilterConfiguration + * // type: "PATTERN", // required + * // patternObjectFilter: { // PatternObjectFilterConfiguration + * // filters: [ // PatternObjectFilterList // required + * // { // PatternObjectFilter + * // objectType: "STRING_VALUE", // required + * // inclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // exclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // }, + * // ], + * // }, + * // }, + * // }, + * // }, + * // salesforceConfiguration: { // SalesforceDataSourceConfiguration + * // sourceConfiguration: { // SalesforceSourceConfiguration + * // hostUrl: "STRING_VALUE", // required + * // authType: "OAUTH2_CLIENT_CREDENTIALS", // required + * // credentialsSecretArn: "STRING_VALUE", // required + * // }, + * // crawlerConfiguration: { // SalesforceCrawlerConfiguration + * // filterConfiguration: { + * // type: "PATTERN", // required + * // patternObjectFilter: { + * // filters: [ // required + * // { + * // objectType: "STRING_VALUE", // required + * // inclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // exclusionFilters: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // }, + * // sharePointConfiguration: { // SharePointDataSourceConfiguration + * // sourceConfiguration: { // SharePointSourceConfiguration + * // tenantId: "STRING_VALUE", + * // domain: "STRING_VALUE", // required + * // siteUrls: [ // SharePointSiteUrls // required + * // "STRING_VALUE", + * // ], + * // hostType: "ONLINE", // required + * // authType: "OAUTH2_CLIENT_CREDENTIALS", // required + * // credentialsSecretArn: "STRING_VALUE", // required + * // }, + * // crawlerConfiguration: { // SharePointCrawlerConfiguration + * // filterConfiguration: { + * // type: "PATTERN", // required + * // patternObjectFilter: { + * // filters: [ // required + * // { + * // objectType: "STRING_VALUE", // required + * // inclusionFilters: "", + * // exclusionFilters: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // }, * // }, * // serverSideEncryptionConfiguration: { // ServerSideEncryptionConfiguration * // kmsKeyArn: "STRING_VALUE", * // }, * // vectorIngestionConfiguration: { // VectorIngestionConfiguration * // chunkingConfiguration: { // ChunkingConfiguration - * // chunkingStrategy: "FIXED_SIZE" || "NONE", // required + * // chunkingStrategy: "FIXED_SIZE" || "NONE" || "HIERARCHICAL" || "SEMANTIC", // required * // fixedSizeChunkingConfiguration: { // FixedSizeChunkingConfiguration * // maxTokens: Number("int"), // required * // overlapPercentage: Number("int"), // required * // }, + * // hierarchicalChunkingConfiguration: { // HierarchicalChunkingConfiguration + * // levelConfigurations: [ // HierarchicalChunkingLevelConfigurations // required + * // { // HierarchicalChunkingLevelConfiguration + * // maxTokens: Number("int"), // required + * // }, + * // ], + * // overlapTokens: Number("int"), // required + * // }, + * // semanticChunkingConfiguration: { // SemanticChunkingConfiguration + * // maxTokens: Number("int"), // required + * // bufferSize: Number("int"), // required + * // breakpointPercentileThreshold: Number("int"), // required + * // }, + * // }, + * // customTransformationConfiguration: { // CustomTransformationConfiguration + * // intermediateStorage: { // IntermediateStorage + * // s3Location: { // S3Location + * // uri: "STRING_VALUE", // required + * // }, + * // }, + * // transformations: [ // Transformations // required + * // { // Transformation + * // transformationFunction: { // TransformationFunction + * // transformationLambdaConfiguration: { // TransformationLambdaConfiguration + * // lambdaArn: "STRING_VALUE", // required + * // }, + * // }, + * // stepToApply: "POST_CHUNKING", // required + * // }, + * // ], + * // }, + * // parsingConfiguration: { // ParsingConfiguration + * // parsingStrategy: "BEDROCK_FOUNDATION_MODEL", // required + * // bedrockFoundationModelConfiguration: { // BedrockFoundationModelConfiguration + * // modelArn: "STRING_VALUE", // required + * // parsingPrompt: { // ParsingPrompt + * // parsingPromptText: "STRING_VALUE", // required + * // }, + * // }, * // }, * // }, * // dataDeletionPolicy: "RETAIN" || "DELETE", @@ -160,7 +439,7 @@ export class CreateDataSourceCommand extends $Command }) .s("AmazonBedrockAgentBuildTimeLambda", "CreateDataSource", {}) .n("BedrockAgentClient", "CreateDataSourceCommand") - .f(void 0, void 0) + .f(CreateDataSourceRequestFilterSensitiveLog, CreateDataSourceResponseFilterSensitiveLog) .ser(se_CreateDataSourceCommand) .de(de_CreateDataSourceCommand) .build() {} diff --git a/clients/client-bedrock-agent/src/commands/CreateFlowAliasCommand.ts b/clients/client-bedrock-agent/src/commands/CreateFlowAliasCommand.ts new file mode 100644 index 000000000000..1782a5f981c5 --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/CreateFlowAliasCommand.ts @@ -0,0 +1,125 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { CreateFlowAliasRequest, CreateFlowAliasResponse } from "../models/models_0"; +import { de_CreateFlowAliasCommand, se_CreateFlowAliasCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link CreateFlowAliasCommand}. + */ +export interface CreateFlowAliasCommandInput extends CreateFlowAliasRequest {} +/** + * @public + * + * The output of {@link CreateFlowAliasCommand}. + */ +export interface CreateFlowAliasCommandOutput extends CreateFlowAliasResponse, __MetadataBearer {} + +/** + *

    Creates an alias of a flow for deployment. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, CreateFlowAliasCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, CreateFlowAliasCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // CreateFlowAliasRequest + * name: "STRING_VALUE", // required + * description: "STRING_VALUE", + * routingConfiguration: [ // FlowAliasRoutingConfiguration // required + * { // FlowAliasRoutingConfigurationListItem + * flowVersion: "STRING_VALUE", + * }, + * ], + * flowIdentifier: "STRING_VALUE", // required + * clientToken: "STRING_VALUE", + * tags: { // TagsMap + * "": "STRING_VALUE", + * }, + * }; + * const command = new CreateFlowAliasCommand(input); + * const response = await client.send(command); + * // { // CreateFlowAliasResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // routingConfiguration: [ // FlowAliasRoutingConfiguration // required + * // { // FlowAliasRoutingConfigurationListItem + * // flowVersion: "STRING_VALUE", + * // }, + * // ], + * // flowId: "STRING_VALUE", // required + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // }; + * + * ``` + * + * @param CreateFlowAliasCommandInput - {@link CreateFlowAliasCommandInput} + * @returns {@link CreateFlowAliasCommandOutput} + * @see {@link CreateFlowAliasCommandInput} for command's `input` shape. + * @see {@link CreateFlowAliasCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the service quota. Resubmit your request later.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class CreateFlowAliasCommand extends $Command + .classBuilder< + CreateFlowAliasCommandInput, + CreateFlowAliasCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "CreateFlowAlias", {}) + .n("BedrockAgentClient", "CreateFlowAliasCommand") + .f(void 0, void 0) + .ser(se_CreateFlowAliasCommand) + .de(de_CreateFlowAliasCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/CreateFlowCommand.ts b/clients/client-bedrock-agent/src/commands/CreateFlowCommand.ts new file mode 100644 index 000000000000..0d8012dbc9be --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/CreateFlowCommand.ts @@ -0,0 +1,345 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + CreateFlowRequest, + CreateFlowRequestFilterSensitiveLog, + CreateFlowResponse, + CreateFlowResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_CreateFlowCommand, se_CreateFlowCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link CreateFlowCommand}. + */ +export interface CreateFlowCommandInput extends CreateFlowRequest {} +/** + * @public + * + * The output of {@link CreateFlowCommand}. + */ +export interface CreateFlowCommandOutput extends CreateFlowResponse, __MetadataBearer {} + +/** + *

    Creates a prompt flow that you can use to send an input through various steps to yield an output. Configure nodes, each of which corresponds to a step of the flow, and create connections between the nodes to create paths to different outputs. For more information, see How it works and Create a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, CreateFlowCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, CreateFlowCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // CreateFlowRequest + * name: "STRING_VALUE", // required + * description: "STRING_VALUE", + * executionRoleArn: "STRING_VALUE", // required + * customerEncryptionKeyArn: "STRING_VALUE", + * definition: { // FlowDefinition + * nodes: [ // FlowNodes + * { // FlowNode + * name: "STRING_VALUE", // required + * type: "Input" || "Output" || "KnowledgeBase" || "Condition" || "Lex" || "Prompt" || "LambdaFunction" || "Storage" || "Agent" || "Retrieval" || "Iterator" || "Collector", // required + * configuration: { // FlowNodeConfiguration Union: only one key present + * input: {}, + * output: {}, + * knowledgeBase: { // KnowledgeBaseFlowNodeConfiguration + * knowledgeBaseId: "STRING_VALUE", // required + * modelId: "STRING_VALUE", + * }, + * condition: { // ConditionFlowNodeConfiguration + * conditions: [ // FlowConditions // required + * { // FlowCondition + * name: "STRING_VALUE", // required + * expression: "STRING_VALUE", + * }, + * ], + * }, + * lex: { // LexFlowNodeConfiguration + * botAliasArn: "STRING_VALUE", // required + * localeId: "STRING_VALUE", // required + * }, + * prompt: { // PromptFlowNodeConfiguration + * sourceConfiguration: { // PromptFlowNodeSourceConfiguration Union: only one key present + * resource: { // PromptFlowNodeResourceConfiguration + * promptArn: "STRING_VALUE", // required + * }, + * inline: { // PromptFlowNodeInlineConfiguration + * templateType: "TEXT", // required + * templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * text: { // TextPromptTemplateConfiguration + * text: "STRING_VALUE", // required + * inputVariables: [ // PromptInputVariablesList + * { // PromptInputVariable + * name: "STRING_VALUE", + * }, + * ], + * }, + * }, + * modelId: "STRING_VALUE", // required + * inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * text: { // PromptModelInferenceConfiguration + * temperature: Number("float"), + * topP: Number("float"), + * topK: Number("int"), + * maxTokens: Number("int"), + * stopSequences: [ // StopSequences + * "STRING_VALUE", + * ], + * }, + * }, + * }, + * }, + * }, + * lambdaFunction: { // LambdaFunctionFlowNodeConfiguration + * lambdaArn: "STRING_VALUE", // required + * }, + * storage: { // StorageFlowNodeConfiguration + * serviceConfiguration: { // StorageFlowNodeServiceConfiguration Union: only one key present + * s3: { // StorageFlowNodeS3Configuration + * bucketName: "STRING_VALUE", // required + * }, + * }, + * }, + * agent: { // AgentFlowNodeConfiguration + * agentAliasArn: "STRING_VALUE", // required + * }, + * retrieval: { // RetrievalFlowNodeConfiguration + * serviceConfiguration: { // RetrievalFlowNodeServiceConfiguration Union: only one key present + * s3: { // RetrievalFlowNodeS3Configuration + * bucketName: "STRING_VALUE", // required + * }, + * }, + * }, + * iterator: {}, + * collector: {}, + * }, + * inputs: [ // FlowNodeInputs + * { // FlowNodeInput + * name: "STRING_VALUE", // required + * type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * expression: "STRING_VALUE", // required + * }, + * ], + * outputs: [ // FlowNodeOutputs + * { // FlowNodeOutput + * name: "STRING_VALUE", // required + * type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * }, + * ], + * }, + * ], + * connections: [ // FlowConnections + * { // FlowConnection + * type: "Data" || "Conditional", // required + * name: "STRING_VALUE", // required + * source: "STRING_VALUE", // required + * target: "STRING_VALUE", // required + * configuration: { // FlowConnectionConfiguration Union: only one key present + * data: { // FlowDataConnectionConfiguration + * sourceOutput: "STRING_VALUE", // required + * targetInput: "STRING_VALUE", // required + * }, + * conditional: { // FlowConditionalConnectionConfiguration + * condition: "STRING_VALUE", // required + * }, + * }, + * }, + * ], + * }, + * clientToken: "STRING_VALUE", + * tags: { // TagsMap + * "": "STRING_VALUE", + * }, + * }; + * const command = new CreateFlowCommand(input); + * const response = await client.send(command); + * // { // CreateFlowResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // executionRoleArn: "STRING_VALUE", // required + * // customerEncryptionKeyArn: "STRING_VALUE", + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // status: "Failed" || "Prepared" || "Preparing" || "NotPrepared", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // version: "STRING_VALUE", // required + * // definition: { // FlowDefinition + * // nodes: [ // FlowNodes + * // { // FlowNode + * // name: "STRING_VALUE", // required + * // type: "Input" || "Output" || "KnowledgeBase" || "Condition" || "Lex" || "Prompt" || "LambdaFunction" || "Storage" || "Agent" || "Retrieval" || "Iterator" || "Collector", // required + * // configuration: { // FlowNodeConfiguration Union: only one key present + * // input: {}, + * // output: {}, + * // knowledgeBase: { // KnowledgeBaseFlowNodeConfiguration + * // knowledgeBaseId: "STRING_VALUE", // required + * // modelId: "STRING_VALUE", + * // }, + * // condition: { // ConditionFlowNodeConfiguration + * // conditions: [ // FlowConditions // required + * // { // FlowCondition + * // name: "STRING_VALUE", // required + * // expression: "STRING_VALUE", + * // }, + * // ], + * // }, + * // lex: { // LexFlowNodeConfiguration + * // botAliasArn: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // }, + * // prompt: { // PromptFlowNodeConfiguration + * // sourceConfiguration: { // PromptFlowNodeSourceConfiguration Union: only one key present + * // resource: { // PromptFlowNodeResourceConfiguration + * // promptArn: "STRING_VALUE", // required + * // }, + * // inline: { // PromptFlowNodeInlineConfiguration + * // templateType: "TEXT", // required + * // templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * // text: { // TextPromptTemplateConfiguration + * // text: "STRING_VALUE", // required + * // inputVariables: [ // PromptInputVariablesList + * // { // PromptInputVariable + * // name: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // modelId: "STRING_VALUE", // required + * // inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * // text: { // PromptModelInferenceConfiguration + * // temperature: Number("float"), + * // topP: Number("float"), + * // topK: Number("int"), + * // maxTokens: Number("int"), + * // stopSequences: [ // StopSequences + * // "STRING_VALUE", + * // ], + * // }, + * // }, + * // }, + * // }, + * // }, + * // lambdaFunction: { // LambdaFunctionFlowNodeConfiguration + * // lambdaArn: "STRING_VALUE", // required + * // }, + * // storage: { // StorageFlowNodeConfiguration + * // serviceConfiguration: { // StorageFlowNodeServiceConfiguration Union: only one key present + * // s3: { // StorageFlowNodeS3Configuration + * // bucketName: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // agent: { // AgentFlowNodeConfiguration + * // agentAliasArn: "STRING_VALUE", // required + * // }, + * // retrieval: { // RetrievalFlowNodeConfiguration + * // serviceConfiguration: { // RetrievalFlowNodeServiceConfiguration Union: only one key present + * // s3: { // RetrievalFlowNodeS3Configuration + * // bucketName: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // iterator: {}, + * // collector: {}, + * // }, + * // inputs: [ // FlowNodeInputs + * // { // FlowNodeInput + * // name: "STRING_VALUE", // required + * // type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * // expression: "STRING_VALUE", // required + * // }, + * // ], + * // outputs: [ // FlowNodeOutputs + * // { // FlowNodeOutput + * // name: "STRING_VALUE", // required + * // type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * // }, + * // ], + * // }, + * // ], + * // connections: [ // FlowConnections + * // { // FlowConnection + * // type: "Data" || "Conditional", // required + * // name: "STRING_VALUE", // required + * // source: "STRING_VALUE", // required + * // target: "STRING_VALUE", // required + * // configuration: { // FlowConnectionConfiguration Union: only one key present + * // data: { // FlowDataConnectionConfiguration + * // sourceOutput: "STRING_VALUE", // required + * // targetInput: "STRING_VALUE", // required + * // }, + * // conditional: { // FlowConditionalConnectionConfiguration + * // condition: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // ], + * // }, + * // }; + * + * ``` + * + * @param CreateFlowCommandInput - {@link CreateFlowCommandInput} + * @returns {@link CreateFlowCommandOutput} + * @see {@link CreateFlowCommandInput} for command's `input` shape. + * @see {@link CreateFlowCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The number of requests exceeds the service quota. Resubmit your request later.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class CreateFlowCommand extends $Command + .classBuilder< + CreateFlowCommandInput, + CreateFlowCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "CreateFlow", {}) + .n("BedrockAgentClient", "CreateFlowCommand") + .f(CreateFlowRequestFilterSensitiveLog, CreateFlowResponseFilterSensitiveLog) + .ser(se_CreateFlowCommand) + .de(de_CreateFlowCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/CreateFlowVersionCommand.ts b/clients/client-bedrock-agent/src/commands/CreateFlowVersionCommand.ts new file mode 100644 index 000000000000..c5e3cac4103e --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/CreateFlowVersionCommand.ts @@ -0,0 +1,229 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + CreateFlowVersionRequest, + CreateFlowVersionResponse, + CreateFlowVersionResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_CreateFlowVersionCommand, se_CreateFlowVersionCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link CreateFlowVersionCommand}. + */ +export interface CreateFlowVersionCommandInput extends CreateFlowVersionRequest {} +/** + * @public + * + * The output of {@link CreateFlowVersionCommand}. + */ +export interface CreateFlowVersionCommandOutput extends CreateFlowVersionResponse, __MetadataBearer {} + +/** + *

    Creates a version of the flow that you can deploy. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, CreateFlowVersionCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, CreateFlowVersionCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // CreateFlowVersionRequest + * flowIdentifier: "STRING_VALUE", // required + * description: "STRING_VALUE", + * clientToken: "STRING_VALUE", + * }; + * const command = new CreateFlowVersionCommand(input); + * const response = await client.send(command); + * // { // CreateFlowVersionResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // executionRoleArn: "STRING_VALUE", // required + * // customerEncryptionKeyArn: "STRING_VALUE", + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // status: "Failed" || "Prepared" || "Preparing" || "NotPrepared", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // version: "STRING_VALUE", // required + * // definition: { // FlowDefinition + * // nodes: [ // FlowNodes + * // { // FlowNode + * // name: "STRING_VALUE", // required + * // type: "Input" || "Output" || "KnowledgeBase" || "Condition" || "Lex" || "Prompt" || "LambdaFunction" || "Storage" || "Agent" || "Retrieval" || "Iterator" || "Collector", // required + * // configuration: { // FlowNodeConfiguration Union: only one key present + * // input: {}, + * // output: {}, + * // knowledgeBase: { // KnowledgeBaseFlowNodeConfiguration + * // knowledgeBaseId: "STRING_VALUE", // required + * // modelId: "STRING_VALUE", + * // }, + * // condition: { // ConditionFlowNodeConfiguration + * // conditions: [ // FlowConditions // required + * // { // FlowCondition + * // name: "STRING_VALUE", // required + * // expression: "STRING_VALUE", + * // }, + * // ], + * // }, + * // lex: { // LexFlowNodeConfiguration + * // botAliasArn: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // }, + * // prompt: { // PromptFlowNodeConfiguration + * // sourceConfiguration: { // PromptFlowNodeSourceConfiguration Union: only one key present + * // resource: { // PromptFlowNodeResourceConfiguration + * // promptArn: "STRING_VALUE", // required + * // }, + * // inline: { // PromptFlowNodeInlineConfiguration + * // templateType: "TEXT", // required + * // templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * // text: { // TextPromptTemplateConfiguration + * // text: "STRING_VALUE", // required + * // inputVariables: [ // PromptInputVariablesList + * // { // PromptInputVariable + * // name: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // modelId: "STRING_VALUE", // required + * // inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * // text: { // PromptModelInferenceConfiguration + * // temperature: Number("float"), + * // topP: Number("float"), + * // topK: Number("int"), + * // maxTokens: Number("int"), + * // stopSequences: [ // StopSequences + * // "STRING_VALUE", + * // ], + * // }, + * // }, + * // }, + * // }, + * // }, + * // lambdaFunction: { // LambdaFunctionFlowNodeConfiguration + * // lambdaArn: "STRING_VALUE", // required + * // }, + * // storage: { // StorageFlowNodeConfiguration + * // serviceConfiguration: { // StorageFlowNodeServiceConfiguration Union: only one key present + * // s3: { // StorageFlowNodeS3Configuration + * // bucketName: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // agent: { // AgentFlowNodeConfiguration + * // agentAliasArn: "STRING_VALUE", // required + * // }, + * // retrieval: { // RetrievalFlowNodeConfiguration + * // serviceConfiguration: { // RetrievalFlowNodeServiceConfiguration Union: only one key present + * // s3: { // RetrievalFlowNodeS3Configuration + * // bucketName: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // iterator: {}, + * // collector: {}, + * // }, + * // inputs: [ // FlowNodeInputs + * // { // FlowNodeInput + * // name: "STRING_VALUE", // required + * // type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * // expression: "STRING_VALUE", // required + * // }, + * // ], + * // outputs: [ // FlowNodeOutputs + * // { // FlowNodeOutput + * // name: "STRING_VALUE", // required + * // type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * // }, + * // ], + * // }, + * // ], + * // connections: [ // FlowConnections + * // { // FlowConnection + * // type: "Data" || "Conditional", // required + * // name: "STRING_VALUE", // required + * // source: "STRING_VALUE", // required + * // target: "STRING_VALUE", // required + * // configuration: { // FlowConnectionConfiguration Union: only one key present + * // data: { // FlowDataConnectionConfiguration + * // sourceOutput: "STRING_VALUE", // required + * // targetInput: "STRING_VALUE", // required + * // }, + * // conditional: { // FlowConditionalConnectionConfiguration + * // condition: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // ], + * // }, + * // }; + * + * ``` + * + * @param CreateFlowVersionCommandInput - {@link CreateFlowVersionCommandInput} + * @returns {@link CreateFlowVersionCommandOutput} + * @see {@link CreateFlowVersionCommandInput} for command's `input` shape. + * @see {@link CreateFlowVersionCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the service quota. Resubmit your request later.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class CreateFlowVersionCommand extends $Command + .classBuilder< + CreateFlowVersionCommandInput, + CreateFlowVersionCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "CreateFlowVersion", {}) + .n("BedrockAgentClient", "CreateFlowVersionCommand") + .f(void 0, CreateFlowVersionResponseFilterSensitiveLog) + .ser(se_CreateFlowVersionCommand) + .de(de_CreateFlowVersionCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/CreatePromptCommand.ts b/clients/client-bedrock-agent/src/commands/CreatePromptCommand.ts new file mode 100644 index 000000000000..22c0c1963d2a --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/CreatePromptCommand.ts @@ -0,0 +1,176 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + CreatePromptRequest, + CreatePromptRequestFilterSensitiveLog, + CreatePromptResponse, + CreatePromptResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_CreatePromptCommand, se_CreatePromptCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link CreatePromptCommand}. + */ +export interface CreatePromptCommandInput extends CreatePromptRequest {} +/** + * @public + * + * The output of {@link CreatePromptCommand}. + */ +export interface CreatePromptCommandOutput extends CreatePromptResponse, __MetadataBearer {} + +/** + *

    Creates a prompt in your prompt library that you can add to a flow. For more information, see Prompt management in Amazon Bedrock, Create a prompt using Prompt management and Prompt flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, CreatePromptCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, CreatePromptCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // CreatePromptRequest + * name: "STRING_VALUE", // required + * description: "STRING_VALUE", + * customerEncryptionKeyArn: "STRING_VALUE", + * defaultVariant: "STRING_VALUE", + * variants: [ // PromptVariantList + * { // PromptVariant + * name: "STRING_VALUE", // required + * templateType: "TEXT", // required + * templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * text: { // TextPromptTemplateConfiguration + * text: "STRING_VALUE", // required + * inputVariables: [ // PromptInputVariablesList + * { // PromptInputVariable + * name: "STRING_VALUE", + * }, + * ], + * }, + * }, + * modelId: "STRING_VALUE", + * inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * text: { // PromptModelInferenceConfiguration + * temperature: Number("float"), + * topP: Number("float"), + * topK: Number("int"), + * maxTokens: Number("int"), + * stopSequences: [ // StopSequences + * "STRING_VALUE", + * ], + * }, + * }, + * }, + * ], + * clientToken: "STRING_VALUE", + * tags: { // TagsMap + * "": "STRING_VALUE", + * }, + * }; + * const command = new CreatePromptCommand(input); + * const response = await client.send(command); + * // { // CreatePromptResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // customerEncryptionKeyArn: "STRING_VALUE", + * // defaultVariant: "STRING_VALUE", + * // variants: [ // PromptVariantList + * // { // PromptVariant + * // name: "STRING_VALUE", // required + * // templateType: "TEXT", // required + * // templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * // text: { // TextPromptTemplateConfiguration + * // text: "STRING_VALUE", // required + * // inputVariables: [ // PromptInputVariablesList + * // { // PromptInputVariable + * // name: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // modelId: "STRING_VALUE", + * // inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * // text: { // PromptModelInferenceConfiguration + * // temperature: Number("float"), + * // topP: Number("float"), + * // topK: Number("int"), + * // maxTokens: Number("int"), + * // stopSequences: [ // StopSequences + * // "STRING_VALUE", + * // ], + * // }, + * // }, + * // }, + * // ], + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // version: "STRING_VALUE", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // }; + * + * ``` + * + * @param CreatePromptCommandInput - {@link CreatePromptCommandInput} + * @returns {@link CreatePromptCommandOutput} + * @see {@link CreatePromptCommandInput} for command's `input` shape. + * @see {@link CreatePromptCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The number of requests exceeds the service quota. Resubmit your request later.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class CreatePromptCommand extends $Command + .classBuilder< + CreatePromptCommandInput, + CreatePromptCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "CreatePrompt", {}) + .n("BedrockAgentClient", "CreatePromptCommand") + .f(CreatePromptRequestFilterSensitiveLog, CreatePromptResponseFilterSensitiveLog) + .ser(se_CreatePromptCommand) + .de(de_CreatePromptCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/CreatePromptVersionCommand.ts b/clients/client-bedrock-agent/src/commands/CreatePromptVersionCommand.ts new file mode 100644 index 000000000000..e681eb067a72 --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/CreatePromptVersionCommand.ts @@ -0,0 +1,148 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + CreatePromptVersionRequest, + CreatePromptVersionResponse, + CreatePromptVersionResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_CreatePromptVersionCommand, se_CreatePromptVersionCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link CreatePromptVersionCommand}. + */ +export interface CreatePromptVersionCommandInput extends CreatePromptVersionRequest {} +/** + * @public + * + * The output of {@link CreatePromptVersionCommand}. + */ +export interface CreatePromptVersionCommandOutput extends CreatePromptVersionResponse, __MetadataBearer {} + +/** + *

    Creates a static snapshot of your prompt that can be deployed to production. For more information, see Deploy prompts using Prompt management by creating versions in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, CreatePromptVersionCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, CreatePromptVersionCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // CreatePromptVersionRequest + * promptIdentifier: "STRING_VALUE", // required + * description: "STRING_VALUE", + * clientToken: "STRING_VALUE", + * tags: { // TagsMap + * "": "STRING_VALUE", + * }, + * }; + * const command = new CreatePromptVersionCommand(input); + * const response = await client.send(command); + * // { // CreatePromptVersionResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // customerEncryptionKeyArn: "STRING_VALUE", + * // defaultVariant: "STRING_VALUE", + * // variants: [ // PromptVariantList + * // { // PromptVariant + * // name: "STRING_VALUE", // required + * // templateType: "TEXT", // required + * // templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * // text: { // TextPromptTemplateConfiguration + * // text: "STRING_VALUE", // required + * // inputVariables: [ // PromptInputVariablesList + * // { // PromptInputVariable + * // name: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // modelId: "STRING_VALUE", + * // inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * // text: { // PromptModelInferenceConfiguration + * // temperature: Number("float"), + * // topP: Number("float"), + * // topK: Number("int"), + * // maxTokens: Number("int"), + * // stopSequences: [ // StopSequences + * // "STRING_VALUE", + * // ], + * // }, + * // }, + * // }, + * // ], + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // version: "STRING_VALUE", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // }; + * + * ``` + * + * @param CreatePromptVersionCommandInput - {@link CreatePromptVersionCommandInput} + * @returns {@link CreatePromptVersionCommandOutput} + * @see {@link CreatePromptVersionCommandInput} for command's `input` shape. + * @see {@link CreatePromptVersionCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the service quota. Resubmit your request later.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class CreatePromptVersionCommand extends $Command + .classBuilder< + CreatePromptVersionCommandInput, + CreatePromptVersionCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "CreatePromptVersion", {}) + .n("BedrockAgentClient", "CreatePromptVersionCommand") + .f(void 0, CreatePromptVersionResponseFilterSensitiveLog) + .ser(se_CreatePromptVersionCommand) + .de(de_CreatePromptVersionCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/DeleteFlowAliasCommand.ts b/clients/client-bedrock-agent/src/commands/DeleteFlowAliasCommand.ts new file mode 100644 index 000000000000..b1f1dcda3985 --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/DeleteFlowAliasCommand.ts @@ -0,0 +1,102 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { DeleteFlowAliasRequest, DeleteFlowAliasResponse } from "../models/models_0"; +import { de_DeleteFlowAliasCommand, se_DeleteFlowAliasCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DeleteFlowAliasCommand}. + */ +export interface DeleteFlowAliasCommandInput extends DeleteFlowAliasRequest {} +/** + * @public + * + * The output of {@link DeleteFlowAliasCommand}. + */ +export interface DeleteFlowAliasCommandOutput extends DeleteFlowAliasResponse, __MetadataBearer {} + +/** + *

    Deletes an alias of a flow.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, DeleteFlowAliasCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, DeleteFlowAliasCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // DeleteFlowAliasRequest + * flowIdentifier: "STRING_VALUE", // required + * aliasIdentifier: "STRING_VALUE", // required + * }; + * const command = new DeleteFlowAliasCommand(input); + * const response = await client.send(command); + * // { // DeleteFlowAliasResponse + * // flowId: "STRING_VALUE", // required + * // id: "STRING_VALUE", // required + * // }; + * + * ``` + * + * @param DeleteFlowAliasCommandInput - {@link DeleteFlowAliasCommandInput} + * @returns {@link DeleteFlowAliasCommandOutput} + * @see {@link DeleteFlowAliasCommandInput} for command's `input` shape. + * @see {@link DeleteFlowAliasCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class DeleteFlowAliasCommand extends $Command + .classBuilder< + DeleteFlowAliasCommandInput, + DeleteFlowAliasCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "DeleteFlowAlias", {}) + .n("BedrockAgentClient", "DeleteFlowAliasCommand") + .f(void 0, void 0) + .ser(se_DeleteFlowAliasCommand) + .de(de_DeleteFlowAliasCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/DeleteFlowCommand.ts b/clients/client-bedrock-agent/src/commands/DeleteFlowCommand.ts new file mode 100644 index 000000000000..e77571a10891 --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/DeleteFlowCommand.ts @@ -0,0 +1,101 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { DeleteFlowRequest, DeleteFlowResponse } from "../models/models_0"; +import { de_DeleteFlowCommand, se_DeleteFlowCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DeleteFlowCommand}. + */ +export interface DeleteFlowCommandInput extends DeleteFlowRequest {} +/** + * @public + * + * The output of {@link DeleteFlowCommand}. + */ +export interface DeleteFlowCommandOutput extends DeleteFlowResponse, __MetadataBearer {} + +/** + *

    Deletes a flow.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, DeleteFlowCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, DeleteFlowCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // DeleteFlowRequest + * flowIdentifier: "STRING_VALUE", // required + * skipResourceInUseCheck: true || false, + * }; + * const command = new DeleteFlowCommand(input); + * const response = await client.send(command); + * // { // DeleteFlowResponse + * // id: "STRING_VALUE", // required + * // }; + * + * ``` + * + * @param DeleteFlowCommandInput - {@link DeleteFlowCommandInput} + * @returns {@link DeleteFlowCommandOutput} + * @see {@link DeleteFlowCommandInput} for command's `input` shape. + * @see {@link DeleteFlowCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class DeleteFlowCommand extends $Command + .classBuilder< + DeleteFlowCommandInput, + DeleteFlowCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "DeleteFlow", {}) + .n("BedrockAgentClient", "DeleteFlowCommand") + .f(void 0, void 0) + .ser(se_DeleteFlowCommand) + .de(de_DeleteFlowCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/DeleteFlowVersionCommand.ts b/clients/client-bedrock-agent/src/commands/DeleteFlowVersionCommand.ts new file mode 100644 index 000000000000..12d695cfded0 --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/DeleteFlowVersionCommand.ts @@ -0,0 +1,103 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { DeleteFlowVersionRequest, DeleteFlowVersionResponse } from "../models/models_0"; +import { de_DeleteFlowVersionCommand, se_DeleteFlowVersionCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DeleteFlowVersionCommand}. + */ +export interface DeleteFlowVersionCommandInput extends DeleteFlowVersionRequest {} +/** + * @public + * + * The output of {@link DeleteFlowVersionCommand}. + */ +export interface DeleteFlowVersionCommandOutput extends DeleteFlowVersionResponse, __MetadataBearer {} + +/** + *

    Deletes a version of a flow.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, DeleteFlowVersionCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, DeleteFlowVersionCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // DeleteFlowVersionRequest + * flowIdentifier: "STRING_VALUE", // required + * flowVersion: "STRING_VALUE", // required + * skipResourceInUseCheck: true || false, + * }; + * const command = new DeleteFlowVersionCommand(input); + * const response = await client.send(command); + * // { // DeleteFlowVersionResponse + * // id: "STRING_VALUE", // required + * // version: "STRING_VALUE", // required + * // }; + * + * ``` + * + * @param DeleteFlowVersionCommandInput - {@link DeleteFlowVersionCommandInput} + * @returns {@link DeleteFlowVersionCommandOutput} + * @see {@link DeleteFlowVersionCommandInput} for command's `input` shape. + * @see {@link DeleteFlowVersionCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class DeleteFlowVersionCommand extends $Command + .classBuilder< + DeleteFlowVersionCommandInput, + DeleteFlowVersionCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "DeleteFlowVersion", {}) + .n("BedrockAgentClient", "DeleteFlowVersionCommand") + .f(void 0, void 0) + .ser(se_DeleteFlowVersionCommand) + .de(de_DeleteFlowVersionCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/DeletePromptCommand.ts b/clients/client-bedrock-agent/src/commands/DeletePromptCommand.ts new file mode 100644 index 000000000000..6cd43df85c50 --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/DeletePromptCommand.ts @@ -0,0 +1,102 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { DeletePromptRequest, DeletePromptResponse } from "../models/models_0"; +import { de_DeletePromptCommand, se_DeletePromptCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DeletePromptCommand}. + */ +export interface DeletePromptCommandInput extends DeletePromptRequest {} +/** + * @public + * + * The output of {@link DeletePromptCommand}. + */ +export interface DeletePromptCommandOutput extends DeletePromptResponse, __MetadataBearer {} + +/** + *

    Deletes a prompt or a prompt version from the Prompt management tool. For more information, see Delete prompts from the Prompt management tool and Delete a version of a prompt from the Prompt management tool in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, DeletePromptCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, DeletePromptCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // DeletePromptRequest + * promptIdentifier: "STRING_VALUE", // required + * promptVersion: "STRING_VALUE", + * }; + * const command = new DeletePromptCommand(input); + * const response = await client.send(command); + * // { // DeletePromptResponse + * // id: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }; + * + * ``` + * + * @param DeletePromptCommandInput - {@link DeletePromptCommandInput} + * @returns {@link DeletePromptCommandOutput} + * @see {@link DeletePromptCommandInput} for command's `input` shape. + * @see {@link DeletePromptCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class DeletePromptCommand extends $Command + .classBuilder< + DeletePromptCommandInput, + DeletePromptCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "DeletePrompt", {}) + .n("BedrockAgentClient", "DeletePromptCommand") + .f(void 0, void 0) + .ser(se_DeletePromptCommand) + .de(de_DeletePromptCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/GetAgentActionGroupCommand.ts b/clients/client-bedrock-agent/src/commands/GetAgentActionGroupCommand.ts index 4efd69aef3cc..ca82369ca01c 100644 --- a/clients/client-bedrock-agent/src/commands/GetAgentActionGroupCommand.ts +++ b/clients/client-bedrock-agent/src/commands/GetAgentActionGroupCommand.ts @@ -56,7 +56,7 @@ export interface GetAgentActionGroupCommandOutput extends GetAgentActionGroupRes * // description: "STRING_VALUE", * // createdAt: new Date("TIMESTAMP"), // required * // updatedAt: new Date("TIMESTAMP"), // required - * // parentActionSignature: "AMAZON.UserInput", + * // parentActionSignature: "AMAZON.UserInput" || "AMAZON.CodeInterpreter", * // actionGroupExecutor: { // ActionGroupExecutor Union: only one key present * // lambda: "STRING_VALUE", * // customControl: "RETURN_CONTROL", diff --git a/clients/client-bedrock-agent/src/commands/GetAgentCommand.ts b/clients/client-bedrock-agent/src/commands/GetAgentCommand.ts index f6ca02c8a306..c64a01d55dd1 100644 --- a/clients/client-bedrock-agent/src/commands/GetAgentCommand.ts +++ b/clients/client-bedrock-agent/src/commands/GetAgentCommand.ts @@ -88,6 +88,12 @@ export interface GetAgentCommandOutput extends GetAgentResponse, __MetadataBeare * // guardrailIdentifier: "STRING_VALUE", * // guardrailVersion: "STRING_VALUE", * // }, + * // memoryConfiguration: { // MemoryConfiguration + * // enabledMemoryTypes: [ // EnabledMemoryTypes // required + * // "SESSION_SUMMARY", + * // ], + * // storageDays: Number("int"), + * // }, * // }, * // }; * diff --git a/clients/client-bedrock-agent/src/commands/GetAgentVersionCommand.ts b/clients/client-bedrock-agent/src/commands/GetAgentVersionCommand.ts index c97d91550a6a..40b50ed10c83 100644 --- a/clients/client-bedrock-agent/src/commands/GetAgentVersionCommand.ts +++ b/clients/client-bedrock-agent/src/commands/GetAgentVersionCommand.ts @@ -91,6 +91,12 @@ export interface GetAgentVersionCommandOutput extends GetAgentVersionResponse, _ * // guardrailIdentifier: "STRING_VALUE", * // guardrailVersion: "STRING_VALUE", * // }, + * // memoryConfiguration: { // MemoryConfiguration + * // enabledMemoryTypes: [ // EnabledMemoryTypes // required + * // "SESSION_SUMMARY", + * // ], + * // storageDays: Number("int"), + * // }, * // }, * // }; * diff --git a/clients/client-bedrock-agent/src/commands/GetDataSourceCommand.ts b/clients/client-bedrock-agent/src/commands/GetDataSourceCommand.ts index c3785a898d15..816c80f6c5df 100644 --- a/clients/client-bedrock-agent/src/commands/GetDataSourceCommand.ts +++ b/clients/client-bedrock-agent/src/commands/GetDataSourceCommand.ts @@ -6,7 +6,11 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { GetDataSourceRequest, GetDataSourceResponse } from "../models/models_0"; +import { + GetDataSourceRequest, + GetDataSourceResponse, + GetDataSourceResponseFilterSensitiveLog, +} from "../models/models_0"; import { de_GetDataSourceCommand, se_GetDataSourceCommand } from "../protocols/Aws_restJson1"; /** @@ -49,7 +53,7 @@ export interface GetDataSourceCommandOutput extends GetDataSourceResponse, __Met * // status: "AVAILABLE" || "DELETING" || "DELETE_UNSUCCESSFUL", // required * // description: "STRING_VALUE", * // dataSourceConfiguration: { // DataSourceConfiguration - * // type: "S3", // required + * // type: "S3" || "WEB" || "CONFLUENCE" || "SALESFORCE" || "SHAREPOINT", // required * // s3Configuration: { // S3DataSourceConfiguration * // bucketArn: "STRING_VALUE", // required * // inclusionPrefixes: [ // S3Prefixes @@ -57,17 +61,154 @@ export interface GetDataSourceCommandOutput extends GetDataSourceResponse, __Met * // ], * // bucketOwnerAccountId: "STRING_VALUE", * // }, + * // webConfiguration: { // WebDataSourceConfiguration + * // sourceConfiguration: { // WebSourceConfiguration + * // urlConfiguration: { // UrlConfiguration + * // seedUrls: [ // SeedUrls + * // { // SeedUrl + * // url: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // crawlerConfiguration: { // WebCrawlerConfiguration + * // crawlerLimits: { // WebCrawlerLimits + * // rateLimit: Number("int"), + * // }, + * // inclusionFilters: [ // FilterList + * // "STRING_VALUE", + * // ], + * // exclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // scope: "HOST_ONLY" || "SUBDOMAINS", + * // }, + * // }, + * // confluenceConfiguration: { // ConfluenceDataSourceConfiguration + * // sourceConfiguration: { // ConfluenceSourceConfiguration + * // hostUrl: "STRING_VALUE", // required + * // hostType: "SAAS", // required + * // authType: "BASIC" || "OAUTH2_CLIENT_CREDENTIALS", // required + * // credentialsSecretArn: "STRING_VALUE", // required + * // }, + * // crawlerConfiguration: { // ConfluenceCrawlerConfiguration + * // filterConfiguration: { // CrawlFilterConfiguration + * // type: "PATTERN", // required + * // patternObjectFilter: { // PatternObjectFilterConfiguration + * // filters: [ // PatternObjectFilterList // required + * // { // PatternObjectFilter + * // objectType: "STRING_VALUE", // required + * // inclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // exclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // }, + * // ], + * // }, + * // }, + * // }, + * // }, + * // salesforceConfiguration: { // SalesforceDataSourceConfiguration + * // sourceConfiguration: { // SalesforceSourceConfiguration + * // hostUrl: "STRING_VALUE", // required + * // authType: "OAUTH2_CLIENT_CREDENTIALS", // required + * // credentialsSecretArn: "STRING_VALUE", // required + * // }, + * // crawlerConfiguration: { // SalesforceCrawlerConfiguration + * // filterConfiguration: { + * // type: "PATTERN", // required + * // patternObjectFilter: { + * // filters: [ // required + * // { + * // objectType: "STRING_VALUE", // required + * // inclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // exclusionFilters: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // }, + * // sharePointConfiguration: { // SharePointDataSourceConfiguration + * // sourceConfiguration: { // SharePointSourceConfiguration + * // tenantId: "STRING_VALUE", + * // domain: "STRING_VALUE", // required + * // siteUrls: [ // SharePointSiteUrls // required + * // "STRING_VALUE", + * // ], + * // hostType: "ONLINE", // required + * // authType: "OAUTH2_CLIENT_CREDENTIALS", // required + * // credentialsSecretArn: "STRING_VALUE", // required + * // }, + * // crawlerConfiguration: { // SharePointCrawlerConfiguration + * // filterConfiguration: { + * // type: "PATTERN", // required + * // patternObjectFilter: { + * // filters: [ // required + * // { + * // objectType: "STRING_VALUE", // required + * // inclusionFilters: "", + * // exclusionFilters: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // }, * // }, * // serverSideEncryptionConfiguration: { // ServerSideEncryptionConfiguration * // kmsKeyArn: "STRING_VALUE", * // }, * // vectorIngestionConfiguration: { // VectorIngestionConfiguration * // chunkingConfiguration: { // ChunkingConfiguration - * // chunkingStrategy: "FIXED_SIZE" || "NONE", // required + * // chunkingStrategy: "FIXED_SIZE" || "NONE" || "HIERARCHICAL" || "SEMANTIC", // required * // fixedSizeChunkingConfiguration: { // FixedSizeChunkingConfiguration * // maxTokens: Number("int"), // required * // overlapPercentage: Number("int"), // required * // }, + * // hierarchicalChunkingConfiguration: { // HierarchicalChunkingConfiguration + * // levelConfigurations: [ // HierarchicalChunkingLevelConfigurations // required + * // { // HierarchicalChunkingLevelConfiguration + * // maxTokens: Number("int"), // required + * // }, + * // ], + * // overlapTokens: Number("int"), // required + * // }, + * // semanticChunkingConfiguration: { // SemanticChunkingConfiguration + * // maxTokens: Number("int"), // required + * // bufferSize: Number("int"), // required + * // breakpointPercentileThreshold: Number("int"), // required + * // }, + * // }, + * // customTransformationConfiguration: { // CustomTransformationConfiguration + * // intermediateStorage: { // IntermediateStorage + * // s3Location: { // S3Location + * // uri: "STRING_VALUE", // required + * // }, + * // }, + * // transformations: [ // Transformations // required + * // { // Transformation + * // transformationFunction: { // TransformationFunction + * // transformationLambdaConfiguration: { // TransformationLambdaConfiguration + * // lambdaArn: "STRING_VALUE", // required + * // }, + * // }, + * // stepToApply: "POST_CHUNKING", // required + * // }, + * // ], + * // }, + * // parsingConfiguration: { // ParsingConfiguration + * // parsingStrategy: "BEDROCK_FOUNDATION_MODEL", // required + * // bedrockFoundationModelConfiguration: { // BedrockFoundationModelConfiguration + * // modelArn: "STRING_VALUE", // required + * // parsingPrompt: { // ParsingPrompt + * // parsingPromptText: "STRING_VALUE", // required + * // }, + * // }, * // }, * // }, * // dataDeletionPolicy: "RETAIN" || "DELETE", @@ -126,7 +267,7 @@ export class GetDataSourceCommand extends $Command }) .s("AmazonBedrockAgentBuildTimeLambda", "GetDataSource", {}) .n("BedrockAgentClient", "GetDataSourceCommand") - .f(void 0, void 0) + .f(void 0, GetDataSourceResponseFilterSensitiveLog) .ser(se_GetDataSourceCommand) .de(de_GetDataSourceCommand) .build() {} diff --git a/clients/client-bedrock-agent/src/commands/GetFlowAliasCommand.ts b/clients/client-bedrock-agent/src/commands/GetFlowAliasCommand.ts new file mode 100644 index 000000000000..c4a2ff857804 --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/GetFlowAliasCommand.ts @@ -0,0 +1,109 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { GetFlowAliasRequest, GetFlowAliasResponse } from "../models/models_0"; +import { de_GetFlowAliasCommand, se_GetFlowAliasCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetFlowAliasCommand}. + */ +export interface GetFlowAliasCommandInput extends GetFlowAliasRequest {} +/** + * @public + * + * The output of {@link GetFlowAliasCommand}. + */ +export interface GetFlowAliasCommandOutput extends GetFlowAliasResponse, __MetadataBearer {} + +/** + *

    Retrieves information about a flow. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, GetFlowAliasCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, GetFlowAliasCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // GetFlowAliasRequest + * flowIdentifier: "STRING_VALUE", // required + * aliasIdentifier: "STRING_VALUE", // required + * }; + * const command = new GetFlowAliasCommand(input); + * const response = await client.send(command); + * // { // GetFlowAliasResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // routingConfiguration: [ // FlowAliasRoutingConfiguration // required + * // { // FlowAliasRoutingConfigurationListItem + * // flowVersion: "STRING_VALUE", + * // }, + * // ], + * // flowId: "STRING_VALUE", // required + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // }; + * + * ``` + * + * @param GetFlowAliasCommandInput - {@link GetFlowAliasCommandInput} + * @returns {@link GetFlowAliasCommandOutput} + * @see {@link GetFlowAliasCommandInput} for command's `input` shape. + * @see {@link GetFlowAliasCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class GetFlowAliasCommand extends $Command + .classBuilder< + GetFlowAliasCommandInput, + GetFlowAliasCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "GetFlowAlias", {}) + .n("BedrockAgentClient", "GetFlowAliasCommand") + .f(void 0, void 0) + .ser(se_GetFlowAliasCommand) + .de(de_GetFlowAliasCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/GetFlowCommand.ts b/clients/client-bedrock-agent/src/commands/GetFlowCommand.ts new file mode 100644 index 000000000000..a65e7206c1ad --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/GetFlowCommand.ts @@ -0,0 +1,224 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { GetFlowRequest, GetFlowResponse, GetFlowResponseFilterSensitiveLog } from "../models/models_0"; +import { de_GetFlowCommand, se_GetFlowCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetFlowCommand}. + */ +export interface GetFlowCommandInput extends GetFlowRequest {} +/** + * @public + * + * The output of {@link GetFlowCommand}. + */ +export interface GetFlowCommandOutput extends GetFlowResponse, __MetadataBearer {} + +/** + *

    Retrieves information about a flow. For more information, see Manage a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, GetFlowCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, GetFlowCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // GetFlowRequest + * flowIdentifier: "STRING_VALUE", // required + * }; + * const command = new GetFlowCommand(input); + * const response = await client.send(command); + * // { // GetFlowResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // executionRoleArn: "STRING_VALUE", // required + * // customerEncryptionKeyArn: "STRING_VALUE", + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // status: "Failed" || "Prepared" || "Preparing" || "NotPrepared", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // version: "STRING_VALUE", // required + * // definition: { // FlowDefinition + * // nodes: [ // FlowNodes + * // { // FlowNode + * // name: "STRING_VALUE", // required + * // type: "Input" || "Output" || "KnowledgeBase" || "Condition" || "Lex" || "Prompt" || "LambdaFunction" || "Storage" || "Agent" || "Retrieval" || "Iterator" || "Collector", // required + * // configuration: { // FlowNodeConfiguration Union: only one key present + * // input: {}, + * // output: {}, + * // knowledgeBase: { // KnowledgeBaseFlowNodeConfiguration + * // knowledgeBaseId: "STRING_VALUE", // required + * // modelId: "STRING_VALUE", + * // }, + * // condition: { // ConditionFlowNodeConfiguration + * // conditions: [ // FlowConditions // required + * // { // FlowCondition + * // name: "STRING_VALUE", // required + * // expression: "STRING_VALUE", + * // }, + * // ], + * // }, + * // lex: { // LexFlowNodeConfiguration + * // botAliasArn: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // }, + * // prompt: { // PromptFlowNodeConfiguration + * // sourceConfiguration: { // PromptFlowNodeSourceConfiguration Union: only one key present + * // resource: { // PromptFlowNodeResourceConfiguration + * // promptArn: "STRING_VALUE", // required + * // }, + * // inline: { // PromptFlowNodeInlineConfiguration + * // templateType: "TEXT", // required + * // templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * // text: { // TextPromptTemplateConfiguration + * // text: "STRING_VALUE", // required + * // inputVariables: [ // PromptInputVariablesList + * // { // PromptInputVariable + * // name: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // modelId: "STRING_VALUE", // required + * // inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * // text: { // PromptModelInferenceConfiguration + * // temperature: Number("float"), + * // topP: Number("float"), + * // topK: Number("int"), + * // maxTokens: Number("int"), + * // stopSequences: [ // StopSequences + * // "STRING_VALUE", + * // ], + * // }, + * // }, + * // }, + * // }, + * // }, + * // lambdaFunction: { // LambdaFunctionFlowNodeConfiguration + * // lambdaArn: "STRING_VALUE", // required + * // }, + * // storage: { // StorageFlowNodeConfiguration + * // serviceConfiguration: { // StorageFlowNodeServiceConfiguration Union: only one key present + * // s3: { // StorageFlowNodeS3Configuration + * // bucketName: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // agent: { // AgentFlowNodeConfiguration + * // agentAliasArn: "STRING_VALUE", // required + * // }, + * // retrieval: { // RetrievalFlowNodeConfiguration + * // serviceConfiguration: { // RetrievalFlowNodeServiceConfiguration Union: only one key present + * // s3: { // RetrievalFlowNodeS3Configuration + * // bucketName: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // iterator: {}, + * // collector: {}, + * // }, + * // inputs: [ // FlowNodeInputs + * // { // FlowNodeInput + * // name: "STRING_VALUE", // required + * // type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * // expression: "STRING_VALUE", // required + * // }, + * // ], + * // outputs: [ // FlowNodeOutputs + * // { // FlowNodeOutput + * // name: "STRING_VALUE", // required + * // type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * // }, + * // ], + * // }, + * // ], + * // connections: [ // FlowConnections + * // { // FlowConnection + * // type: "Data" || "Conditional", // required + * // name: "STRING_VALUE", // required + * // source: "STRING_VALUE", // required + * // target: "STRING_VALUE", // required + * // configuration: { // FlowConnectionConfiguration Union: only one key present + * // data: { // FlowDataConnectionConfiguration + * // sourceOutput: "STRING_VALUE", // required + * // targetInput: "STRING_VALUE", // required + * // }, + * // conditional: { // FlowConditionalConnectionConfiguration + * // condition: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // ], + * // }, + * // validations: [ // FlowValidations + * // { // FlowValidation + * // message: "STRING_VALUE", // required + * // severity: "Warning" || "Error", // required + * // }, + * // ], + * // }; + * + * ``` + * + * @param GetFlowCommandInput - {@link GetFlowCommandInput} + * @returns {@link GetFlowCommandOutput} + * @see {@link GetFlowCommandInput} for command's `input` shape. + * @see {@link GetFlowCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class GetFlowCommand extends $Command + .classBuilder< + GetFlowCommandInput, + GetFlowCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "GetFlow", {}) + .n("BedrockAgentClient", "GetFlowCommand") + .f(void 0, GetFlowResponseFilterSensitiveLog) + .ser(se_GetFlowCommand) + .de(de_GetFlowCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/GetFlowVersionCommand.ts b/clients/client-bedrock-agent/src/commands/GetFlowVersionCommand.ts new file mode 100644 index 000000000000..c9f0fbdf73e4 --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/GetFlowVersionCommand.ts @@ -0,0 +1,222 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + GetFlowVersionRequest, + GetFlowVersionResponse, + GetFlowVersionResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_GetFlowVersionCommand, se_GetFlowVersionCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetFlowVersionCommand}. + */ +export interface GetFlowVersionCommandInput extends GetFlowVersionRequest {} +/** + * @public + * + * The output of {@link GetFlowVersionCommand}. + */ +export interface GetFlowVersionCommandOutput extends GetFlowVersionResponse, __MetadataBearer {} + +/** + *

    Retrieves information about a version of a flow. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, GetFlowVersionCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, GetFlowVersionCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // GetFlowVersionRequest + * flowIdentifier: "STRING_VALUE", // required + * flowVersion: "STRING_VALUE", // required + * }; + * const command = new GetFlowVersionCommand(input); + * const response = await client.send(command); + * // { // GetFlowVersionResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // executionRoleArn: "STRING_VALUE", // required + * // customerEncryptionKeyArn: "STRING_VALUE", + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // status: "Failed" || "Prepared" || "Preparing" || "NotPrepared", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // version: "STRING_VALUE", // required + * // definition: { // FlowDefinition + * // nodes: [ // FlowNodes + * // { // FlowNode + * // name: "STRING_VALUE", // required + * // type: "Input" || "Output" || "KnowledgeBase" || "Condition" || "Lex" || "Prompt" || "LambdaFunction" || "Storage" || "Agent" || "Retrieval" || "Iterator" || "Collector", // required + * // configuration: { // FlowNodeConfiguration Union: only one key present + * // input: {}, + * // output: {}, + * // knowledgeBase: { // KnowledgeBaseFlowNodeConfiguration + * // knowledgeBaseId: "STRING_VALUE", // required + * // modelId: "STRING_VALUE", + * // }, + * // condition: { // ConditionFlowNodeConfiguration + * // conditions: [ // FlowConditions // required + * // { // FlowCondition + * // name: "STRING_VALUE", // required + * // expression: "STRING_VALUE", + * // }, + * // ], + * // }, + * // lex: { // LexFlowNodeConfiguration + * // botAliasArn: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // }, + * // prompt: { // PromptFlowNodeConfiguration + * // sourceConfiguration: { // PromptFlowNodeSourceConfiguration Union: only one key present + * // resource: { // PromptFlowNodeResourceConfiguration + * // promptArn: "STRING_VALUE", // required + * // }, + * // inline: { // PromptFlowNodeInlineConfiguration + * // templateType: "TEXT", // required + * // templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * // text: { // TextPromptTemplateConfiguration + * // text: "STRING_VALUE", // required + * // inputVariables: [ // PromptInputVariablesList + * // { // PromptInputVariable + * // name: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // modelId: "STRING_VALUE", // required + * // inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * // text: { // PromptModelInferenceConfiguration + * // temperature: Number("float"), + * // topP: Number("float"), + * // topK: Number("int"), + * // maxTokens: Number("int"), + * // stopSequences: [ // StopSequences + * // "STRING_VALUE", + * // ], + * // }, + * // }, + * // }, + * // }, + * // }, + * // lambdaFunction: { // LambdaFunctionFlowNodeConfiguration + * // lambdaArn: "STRING_VALUE", // required + * // }, + * // storage: { // StorageFlowNodeConfiguration + * // serviceConfiguration: { // StorageFlowNodeServiceConfiguration Union: only one key present + * // s3: { // StorageFlowNodeS3Configuration + * // bucketName: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // agent: { // AgentFlowNodeConfiguration + * // agentAliasArn: "STRING_VALUE", // required + * // }, + * // retrieval: { // RetrievalFlowNodeConfiguration + * // serviceConfiguration: { // RetrievalFlowNodeServiceConfiguration Union: only one key present + * // s3: { // RetrievalFlowNodeS3Configuration + * // bucketName: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // iterator: {}, + * // collector: {}, + * // }, + * // inputs: [ // FlowNodeInputs + * // { // FlowNodeInput + * // name: "STRING_VALUE", // required + * // type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * // expression: "STRING_VALUE", // required + * // }, + * // ], + * // outputs: [ // FlowNodeOutputs + * // { // FlowNodeOutput + * // name: "STRING_VALUE", // required + * // type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * // }, + * // ], + * // }, + * // ], + * // connections: [ // FlowConnections + * // { // FlowConnection + * // type: "Data" || "Conditional", // required + * // name: "STRING_VALUE", // required + * // source: "STRING_VALUE", // required + * // target: "STRING_VALUE", // required + * // configuration: { // FlowConnectionConfiguration Union: only one key present + * // data: { // FlowDataConnectionConfiguration + * // sourceOutput: "STRING_VALUE", // required + * // targetInput: "STRING_VALUE", // required + * // }, + * // conditional: { // FlowConditionalConnectionConfiguration + * // condition: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // ], + * // }, + * // }; + * + * ``` + * + * @param GetFlowVersionCommandInput - {@link GetFlowVersionCommandInput} + * @returns {@link GetFlowVersionCommandOutput} + * @see {@link GetFlowVersionCommandInput} for command's `input` shape. + * @see {@link GetFlowVersionCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class GetFlowVersionCommand extends $Command + .classBuilder< + GetFlowVersionCommandInput, + GetFlowVersionCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "GetFlowVersion", {}) + .n("BedrockAgentClient", "GetFlowVersionCommand") + .f(void 0, GetFlowVersionResponseFilterSensitiveLog) + .ser(se_GetFlowVersionCommand) + .de(de_GetFlowVersionCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/GetPromptCommand.ts b/clients/client-bedrock-agent/src/commands/GetPromptCommand.ts new file mode 100644 index 000000000000..1ffe37fc39ae --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/GetPromptCommand.ts @@ -0,0 +1,134 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { GetPromptRequest, GetPromptResponse, GetPromptResponseFilterSensitiveLog } from "../models/models_0"; +import { de_GetPromptCommand, se_GetPromptCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetPromptCommand}. + */ +export interface GetPromptCommandInput extends GetPromptRequest {} +/** + * @public + * + * The output of {@link GetPromptCommand}. + */ +export interface GetPromptCommandOutput extends GetPromptResponse, __MetadataBearer {} + +/** + *

    Retrieves information about a prompt or a version of it. For more information, see View information about prompts using Prompt management and View information about a version of your prompt in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, GetPromptCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, GetPromptCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // GetPromptRequest + * promptIdentifier: "STRING_VALUE", // required + * promptVersion: "STRING_VALUE", + * }; + * const command = new GetPromptCommand(input); + * const response = await client.send(command); + * // { // GetPromptResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // customerEncryptionKeyArn: "STRING_VALUE", + * // defaultVariant: "STRING_VALUE", + * // variants: [ // PromptVariantList + * // { // PromptVariant + * // name: "STRING_VALUE", // required + * // templateType: "TEXT", // required + * // templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * // text: { // TextPromptTemplateConfiguration + * // text: "STRING_VALUE", // required + * // inputVariables: [ // PromptInputVariablesList + * // { // PromptInputVariable + * // name: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // modelId: "STRING_VALUE", + * // inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * // text: { // PromptModelInferenceConfiguration + * // temperature: Number("float"), + * // topP: Number("float"), + * // topK: Number("int"), + * // maxTokens: Number("int"), + * // stopSequences: [ // StopSequences + * // "STRING_VALUE", + * // ], + * // }, + * // }, + * // }, + * // ], + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // version: "STRING_VALUE", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // }; + * + * ``` + * + * @param GetPromptCommandInput - {@link GetPromptCommandInput} + * @returns {@link GetPromptCommandOutput} + * @see {@link GetPromptCommandInput} for command's `input` shape. + * @see {@link GetPromptCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class GetPromptCommand extends $Command + .classBuilder< + GetPromptCommandInput, + GetPromptCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "GetPrompt", {}) + .n("BedrockAgentClient", "GetPromptCommand") + .f(void 0, GetPromptResponseFilterSensitiveLog) + .ser(se_GetPromptCommand) + .de(de_GetPromptCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/ListFlowAliasesCommand.ts b/clients/client-bedrock-agent/src/commands/ListFlowAliasesCommand.ts new file mode 100644 index 000000000000..03108758d1d9 --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/ListFlowAliasesCommand.ts @@ -0,0 +1,115 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListFlowAliasesRequest, ListFlowAliasesResponse } from "../models/models_0"; +import { de_ListFlowAliasesCommand, se_ListFlowAliasesCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListFlowAliasesCommand}. + */ +export interface ListFlowAliasesCommandInput extends ListFlowAliasesRequest {} +/** + * @public + * + * The output of {@link ListFlowAliasesCommand}. + */ +export interface ListFlowAliasesCommandOutput extends ListFlowAliasesResponse, __MetadataBearer {} + +/** + *

    Returns a list of aliases for a flow.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, ListFlowAliasesCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, ListFlowAliasesCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // ListFlowAliasesRequest + * flowIdentifier: "STRING_VALUE", // required + * maxResults: Number("int"), + * nextToken: "STRING_VALUE", + * }; + * const command = new ListFlowAliasesCommand(input); + * const response = await client.send(command); + * // { // ListFlowAliasesResponse + * // flowAliasSummaries: [ // FlowAliasSummaries // required + * // { // FlowAliasSummary + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // routingConfiguration: [ // FlowAliasRoutingConfiguration // required + * // { // FlowAliasRoutingConfigurationListItem + * // flowVersion: "STRING_VALUE", + * // }, + * // ], + * // flowId: "STRING_VALUE", // required + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // }, + * // ], + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListFlowAliasesCommandInput - {@link ListFlowAliasesCommandInput} + * @returns {@link ListFlowAliasesCommandOutput} + * @see {@link ListFlowAliasesCommandInput} for command's `input` shape. + * @see {@link ListFlowAliasesCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class ListFlowAliasesCommand extends $Command + .classBuilder< + ListFlowAliasesCommandInput, + ListFlowAliasesCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "ListFlowAliases", {}) + .n("BedrockAgentClient", "ListFlowAliasesCommand") + .f(void 0, void 0) + .ser(se_ListFlowAliasesCommand) + .de(de_ListFlowAliasesCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/ListFlowVersionsCommand.ts b/clients/client-bedrock-agent/src/commands/ListFlowVersionsCommand.ts new file mode 100644 index 000000000000..4761ebef6c1c --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/ListFlowVersionsCommand.ts @@ -0,0 +1,108 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListFlowVersionsRequest, ListFlowVersionsResponse } from "../models/models_0"; +import { de_ListFlowVersionsCommand, se_ListFlowVersionsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListFlowVersionsCommand}. + */ +export interface ListFlowVersionsCommandInput extends ListFlowVersionsRequest {} +/** + * @public + * + * The output of {@link ListFlowVersionsCommand}. + */ +export interface ListFlowVersionsCommandOutput extends ListFlowVersionsResponse, __MetadataBearer {} + +/** + *

    Returns a list of information about each flow. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, ListFlowVersionsCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, ListFlowVersionsCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // ListFlowVersionsRequest + * flowIdentifier: "STRING_VALUE", // required + * maxResults: Number("int"), + * nextToken: "STRING_VALUE", + * }; + * const command = new ListFlowVersionsCommand(input); + * const response = await client.send(command); + * // { // ListFlowVersionsResponse + * // flowVersionSummaries: [ // FlowVersionSummaries // required + * // { // FlowVersionSummary + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // status: "Failed" || "Prepared" || "Preparing" || "NotPrepared", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // version: "STRING_VALUE", // required + * // }, + * // ], + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListFlowVersionsCommandInput - {@link ListFlowVersionsCommandInput} + * @returns {@link ListFlowVersionsCommandOutput} + * @see {@link ListFlowVersionsCommandInput} for command's `input` shape. + * @see {@link ListFlowVersionsCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class ListFlowVersionsCommand extends $Command + .classBuilder< + ListFlowVersionsCommandInput, + ListFlowVersionsCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "ListFlowVersions", {}) + .n("BedrockAgentClient", "ListFlowVersionsCommand") + .f(void 0, void 0) + .ser(se_ListFlowVersionsCommand) + .de(de_ListFlowVersionsCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/ListFlowsCommand.ts b/clients/client-bedrock-agent/src/commands/ListFlowsCommand.ts new file mode 100644 index 000000000000..7854a21caf50 --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/ListFlowsCommand.ts @@ -0,0 +1,107 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListFlowsRequest, ListFlowsResponse } from "../models/models_0"; +import { de_ListFlowsCommand, se_ListFlowsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListFlowsCommand}. + */ +export interface ListFlowsCommandInput extends ListFlowsRequest {} +/** + * @public + * + * The output of {@link ListFlowsCommand}. + */ +export interface ListFlowsCommandOutput extends ListFlowsResponse, __MetadataBearer {} + +/** + *

    Returns a list of flows and information about each flow. For more information, see Manage a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, ListFlowsCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, ListFlowsCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // ListFlowsRequest + * maxResults: Number("int"), + * nextToken: "STRING_VALUE", + * }; + * const command = new ListFlowsCommand(input); + * const response = await client.send(command); + * // { // ListFlowsResponse + * // flowSummaries: [ // FlowSummaries // required + * // { // FlowSummary + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // status: "Failed" || "Prepared" || "Preparing" || "NotPrepared", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // version: "STRING_VALUE", // required + * // }, + * // ], + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListFlowsCommandInput - {@link ListFlowsCommandInput} + * @returns {@link ListFlowsCommandOutput} + * @see {@link ListFlowsCommandInput} for command's `input` shape. + * @see {@link ListFlowsCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    An internal server error occurred. Retry your request.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class ListFlowsCommand extends $Command + .classBuilder< + ListFlowsCommandInput, + ListFlowsCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "ListFlows", {}) + .n("BedrockAgentClient", "ListFlowsCommand") + .f(void 0, void 0) + .ser(se_ListFlowsCommand) + .de(de_ListFlowsCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/ListPromptsCommand.ts b/clients/client-bedrock-agent/src/commands/ListPromptsCommand.ts new file mode 100644 index 000000000000..148fdb5a2f5a --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/ListPromptsCommand.ts @@ -0,0 +1,110 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListPromptsRequest, ListPromptsResponse } from "../models/models_0"; +import { de_ListPromptsCommand, se_ListPromptsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListPromptsCommand}. + */ +export interface ListPromptsCommandInput extends ListPromptsRequest {} +/** + * @public + * + * The output of {@link ListPromptsCommand}. + */ +export interface ListPromptsCommandOutput extends ListPromptsResponse, __MetadataBearer {} + +/** + *

    Returns a list of prompts from the Prompt management tool and information about each prompt. For more information, see View information about prompts using Prompt management in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, ListPromptsCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, ListPromptsCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // ListPromptsRequest + * promptIdentifier: "STRING_VALUE", + * maxResults: Number("int"), + * nextToken: "STRING_VALUE", + * }; + * const command = new ListPromptsCommand(input); + * const response = await client.send(command); + * // { // ListPromptsResponse + * // promptSummaries: [ // PromptSummaries // required + * // { // PromptSummary + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // version: "STRING_VALUE", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // }, + * // ], + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListPromptsCommandInput - {@link ListPromptsCommandInput} + * @returns {@link ListPromptsCommandOutput} + * @see {@link ListPromptsCommandInput} for command's `input` shape. + * @see {@link ListPromptsCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class ListPromptsCommand extends $Command + .classBuilder< + ListPromptsCommandInput, + ListPromptsCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "ListPrompts", {}) + .n("BedrockAgentClient", "ListPromptsCommand") + .f(void 0, void 0) + .ser(se_ListPromptsCommand) + .de(de_ListPromptsCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/PrepareFlowCommand.ts b/clients/client-bedrock-agent/src/commands/PrepareFlowCommand.ts new file mode 100644 index 000000000000..d84b54bc51ce --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/PrepareFlowCommand.ts @@ -0,0 +1,104 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { PrepareFlowRequest, PrepareFlowResponse } from "../models/models_0"; +import { de_PrepareFlowCommand, se_PrepareFlowCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link PrepareFlowCommand}. + */ +export interface PrepareFlowCommandInput extends PrepareFlowRequest {} +/** + * @public + * + * The output of {@link PrepareFlowCommand}. + */ +export interface PrepareFlowCommandOutput extends PrepareFlowResponse, __MetadataBearer {} + +/** + *

    Prepares the DRAFT version of a flow so that it can be invoked. For more information, see Test a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, PrepareFlowCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, PrepareFlowCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // PrepareFlowRequest + * flowIdentifier: "STRING_VALUE", // required + * }; + * const command = new PrepareFlowCommand(input); + * const response = await client.send(command); + * // { // PrepareFlowResponse + * // id: "STRING_VALUE", // required + * // status: "Failed" || "Prepared" || "Preparing" || "NotPrepared", // required + * // }; + * + * ``` + * + * @param PrepareFlowCommandInput - {@link PrepareFlowCommandInput} + * @returns {@link PrepareFlowCommandOutput} + * @see {@link PrepareFlowCommandInput} for command's `input` shape. + * @see {@link PrepareFlowCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the service quota. Resubmit your request later.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class PrepareFlowCommand extends $Command + .classBuilder< + PrepareFlowCommandInput, + PrepareFlowCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "PrepareFlow", {}) + .n("BedrockAgentClient", "PrepareFlowCommand") + .f(void 0, void 0) + .ser(se_PrepareFlowCommand) + .de(de_PrepareFlowCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/UpdateAgentActionGroupCommand.ts b/clients/client-bedrock-agent/src/commands/UpdateAgentActionGroupCommand.ts index 7a6a4d95d598..66527495845b 100644 --- a/clients/client-bedrock-agent/src/commands/UpdateAgentActionGroupCommand.ts +++ b/clients/client-bedrock-agent/src/commands/UpdateAgentActionGroupCommand.ts @@ -46,7 +46,7 @@ export interface UpdateAgentActionGroupCommandOutput extends UpdateAgentActionGr * actionGroupId: "STRING_VALUE", // required * actionGroupName: "STRING_VALUE", // required * description: "STRING_VALUE", - * parentActionGroupSignature: "AMAZON.UserInput", + * parentActionGroupSignature: "AMAZON.UserInput" || "AMAZON.CodeInterpreter", * actionGroupExecutor: { // ActionGroupExecutor Union: only one key present * lambda: "STRING_VALUE", * customControl: "RETURN_CONTROL", @@ -87,7 +87,7 @@ export interface UpdateAgentActionGroupCommandOutput extends UpdateAgentActionGr * // description: "STRING_VALUE", * // createdAt: new Date("TIMESTAMP"), // required * // updatedAt: new Date("TIMESTAMP"), // required - * // parentActionSignature: "AMAZON.UserInput", + * // parentActionSignature: "AMAZON.UserInput" || "AMAZON.CodeInterpreter", * // actionGroupExecutor: { // ActionGroupExecutor Union: only one key present * // lambda: "STRING_VALUE", * // customControl: "RETURN_CONTROL", diff --git a/clients/client-bedrock-agent/src/commands/UpdateAgentCommand.ts b/clients/client-bedrock-agent/src/commands/UpdateAgentCommand.ts index b28b2866bbcb..a9a6575e0781 100644 --- a/clients/client-bedrock-agent/src/commands/UpdateAgentCommand.ts +++ b/clients/client-bedrock-agent/src/commands/UpdateAgentCommand.ts @@ -74,6 +74,12 @@ export interface UpdateAgentCommandOutput extends UpdateAgentResponse, __Metadat * guardrailIdentifier: "STRING_VALUE", * guardrailVersion: "STRING_VALUE", * }, + * memoryConfiguration: { // MemoryConfiguration + * enabledMemoryTypes: [ // EnabledMemoryTypes // required + * "SESSION_SUMMARY", + * ], + * storageDays: Number("int"), + * }, * }; * const command = new UpdateAgentCommand(input); * const response = await client.send(command); @@ -125,6 +131,12 @@ export interface UpdateAgentCommandOutput extends UpdateAgentResponse, __Metadat * // guardrailIdentifier: "STRING_VALUE", * // guardrailVersion: "STRING_VALUE", * // }, + * // memoryConfiguration: { // MemoryConfiguration + * // enabledMemoryTypes: [ // EnabledMemoryTypes // required + * // "SESSION_SUMMARY", + * // ], + * // storageDays: Number("int"), + * // }, * // }, * // }; * diff --git a/clients/client-bedrock-agent/src/commands/UpdateDataSourceCommand.ts b/clients/client-bedrock-agent/src/commands/UpdateDataSourceCommand.ts index 0a1aefde0680..71f6b83e60a7 100644 --- a/clients/client-bedrock-agent/src/commands/UpdateDataSourceCommand.ts +++ b/clients/client-bedrock-agent/src/commands/UpdateDataSourceCommand.ts @@ -6,7 +6,12 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { UpdateDataSourceRequest, UpdateDataSourceResponse } from "../models/models_0"; +import { + UpdateDataSourceRequest, + UpdateDataSourceRequestFilterSensitiveLog, + UpdateDataSourceResponse, + UpdateDataSourceResponseFilterSensitiveLog, +} from "../models/models_0"; import { de_UpdateDataSourceCommand, se_UpdateDataSourceCommand } from "../protocols/Aws_restJson1"; /** @@ -28,9 +33,9 @@ export interface UpdateDataSourceCommandInput extends UpdateDataSourceRequest {} export interface UpdateDataSourceCommandOutput extends UpdateDataSourceResponse, __MetadataBearer {} /** - *

    Updates configurations for a data source.

    + *

    Updates the configurations for a data source connector.

    * - *

    You can't change the chunkingConfiguration after you create the data source. Specify the existing chunkingConfiguration.

    + *

    You can't change the chunkingConfiguration after you create the data source connector. Specify the existing chunkingConfiguration.

    *
    * @example * Use a bare-bones client and the command you need to make an API call. @@ -44,7 +49,7 @@ export interface UpdateDataSourceCommandOutput extends UpdateDataSourceResponse, * name: "STRING_VALUE", // required * description: "STRING_VALUE", * dataSourceConfiguration: { // DataSourceConfiguration - * type: "S3", // required + * type: "S3" || "WEB" || "CONFLUENCE" || "SALESFORCE" || "SHAREPOINT", // required * s3Configuration: { // S3DataSourceConfiguration * bucketArn: "STRING_VALUE", // required * inclusionPrefixes: [ // S3Prefixes @@ -52,6 +57,104 @@ export interface UpdateDataSourceCommandOutput extends UpdateDataSourceResponse, * ], * bucketOwnerAccountId: "STRING_VALUE", * }, + * webConfiguration: { // WebDataSourceConfiguration + * sourceConfiguration: { // WebSourceConfiguration + * urlConfiguration: { // UrlConfiguration + * seedUrls: [ // SeedUrls + * { // SeedUrl + * url: "STRING_VALUE", + * }, + * ], + * }, + * }, + * crawlerConfiguration: { // WebCrawlerConfiguration + * crawlerLimits: { // WebCrawlerLimits + * rateLimit: Number("int"), + * }, + * inclusionFilters: [ // FilterList + * "STRING_VALUE", + * ], + * exclusionFilters: [ + * "STRING_VALUE", + * ], + * scope: "HOST_ONLY" || "SUBDOMAINS", + * }, + * }, + * confluenceConfiguration: { // ConfluenceDataSourceConfiguration + * sourceConfiguration: { // ConfluenceSourceConfiguration + * hostUrl: "STRING_VALUE", // required + * hostType: "SAAS", // required + * authType: "BASIC" || "OAUTH2_CLIENT_CREDENTIALS", // required + * credentialsSecretArn: "STRING_VALUE", // required + * }, + * crawlerConfiguration: { // ConfluenceCrawlerConfiguration + * filterConfiguration: { // CrawlFilterConfiguration + * type: "PATTERN", // required + * patternObjectFilter: { // PatternObjectFilterConfiguration + * filters: [ // PatternObjectFilterList // required + * { // PatternObjectFilter + * objectType: "STRING_VALUE", // required + * inclusionFilters: [ + * "STRING_VALUE", + * ], + * exclusionFilters: [ + * "STRING_VALUE", + * ], + * }, + * ], + * }, + * }, + * }, + * }, + * salesforceConfiguration: { // SalesforceDataSourceConfiguration + * sourceConfiguration: { // SalesforceSourceConfiguration + * hostUrl: "STRING_VALUE", // required + * authType: "OAUTH2_CLIENT_CREDENTIALS", // required + * credentialsSecretArn: "STRING_VALUE", // required + * }, + * crawlerConfiguration: { // SalesforceCrawlerConfiguration + * filterConfiguration: { + * type: "PATTERN", // required + * patternObjectFilter: { + * filters: [ // required + * { + * objectType: "STRING_VALUE", // required + * inclusionFilters: [ + * "STRING_VALUE", + * ], + * exclusionFilters: "", + * }, + * ], + * }, + * }, + * }, + * }, + * sharePointConfiguration: { // SharePointDataSourceConfiguration + * sourceConfiguration: { // SharePointSourceConfiguration + * tenantId: "STRING_VALUE", + * domain: "STRING_VALUE", // required + * siteUrls: [ // SharePointSiteUrls // required + * "STRING_VALUE", + * ], + * hostType: "ONLINE", // required + * authType: "OAUTH2_CLIENT_CREDENTIALS", // required + * credentialsSecretArn: "STRING_VALUE", // required + * }, + * crawlerConfiguration: { // SharePointCrawlerConfiguration + * filterConfiguration: { + * type: "PATTERN", // required + * patternObjectFilter: { + * filters: [ // required + * { + * objectType: "STRING_VALUE", // required + * inclusionFilters: "", + * exclusionFilters: "", + * }, + * ], + * }, + * }, + * }, + * }, * }, * dataDeletionPolicy: "RETAIN" || "DELETE", * serverSideEncryptionConfiguration: { // ServerSideEncryptionConfiguration @@ -59,11 +162,50 @@ export interface UpdateDataSourceCommandOutput extends UpdateDataSourceResponse, * }, * vectorIngestionConfiguration: { // VectorIngestionConfiguration * chunkingConfiguration: { // ChunkingConfiguration - * chunkingStrategy: "FIXED_SIZE" || "NONE", // required + * chunkingStrategy: "FIXED_SIZE" || "NONE" || "HIERARCHICAL" || "SEMANTIC", // required * fixedSizeChunkingConfiguration: { // FixedSizeChunkingConfiguration * maxTokens: Number("int"), // required * overlapPercentage: Number("int"), // required * }, + * hierarchicalChunkingConfiguration: { // HierarchicalChunkingConfiguration + * levelConfigurations: [ // HierarchicalChunkingLevelConfigurations // required + * { // HierarchicalChunkingLevelConfiguration + * maxTokens: Number("int"), // required + * }, + * ], + * overlapTokens: Number("int"), // required + * }, + * semanticChunkingConfiguration: { // SemanticChunkingConfiguration + * maxTokens: Number("int"), // required + * bufferSize: Number("int"), // required + * breakpointPercentileThreshold: Number("int"), // required + * }, + * }, + * customTransformationConfiguration: { // CustomTransformationConfiguration + * intermediateStorage: { // IntermediateStorage + * s3Location: { // S3Location + * uri: "STRING_VALUE", // required + * }, + * }, + * transformations: [ // Transformations // required + * { // Transformation + * transformationFunction: { // TransformationFunction + * transformationLambdaConfiguration: { // TransformationLambdaConfiguration + * lambdaArn: "STRING_VALUE", // required + * }, + * }, + * stepToApply: "POST_CHUNKING", // required + * }, + * ], + * }, + * parsingConfiguration: { // ParsingConfiguration + * parsingStrategy: "BEDROCK_FOUNDATION_MODEL", // required + * bedrockFoundationModelConfiguration: { // BedrockFoundationModelConfiguration + * modelArn: "STRING_VALUE", // required + * parsingPrompt: { // ParsingPrompt + * parsingPromptText: "STRING_VALUE", // required + * }, + * }, * }, * }, * }; @@ -77,7 +219,7 @@ export interface UpdateDataSourceCommandOutput extends UpdateDataSourceResponse, * // status: "AVAILABLE" || "DELETING" || "DELETE_UNSUCCESSFUL", // required * // description: "STRING_VALUE", * // dataSourceConfiguration: { // DataSourceConfiguration - * // type: "S3", // required + * // type: "S3" || "WEB" || "CONFLUENCE" || "SALESFORCE" || "SHAREPOINT", // required * // s3Configuration: { // S3DataSourceConfiguration * // bucketArn: "STRING_VALUE", // required * // inclusionPrefixes: [ // S3Prefixes @@ -85,17 +227,154 @@ export interface UpdateDataSourceCommandOutput extends UpdateDataSourceResponse, * // ], * // bucketOwnerAccountId: "STRING_VALUE", * // }, + * // webConfiguration: { // WebDataSourceConfiguration + * // sourceConfiguration: { // WebSourceConfiguration + * // urlConfiguration: { // UrlConfiguration + * // seedUrls: [ // SeedUrls + * // { // SeedUrl + * // url: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // crawlerConfiguration: { // WebCrawlerConfiguration + * // crawlerLimits: { // WebCrawlerLimits + * // rateLimit: Number("int"), + * // }, + * // inclusionFilters: [ // FilterList + * // "STRING_VALUE", + * // ], + * // exclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // scope: "HOST_ONLY" || "SUBDOMAINS", + * // }, + * // }, + * // confluenceConfiguration: { // ConfluenceDataSourceConfiguration + * // sourceConfiguration: { // ConfluenceSourceConfiguration + * // hostUrl: "STRING_VALUE", // required + * // hostType: "SAAS", // required + * // authType: "BASIC" || "OAUTH2_CLIENT_CREDENTIALS", // required + * // credentialsSecretArn: "STRING_VALUE", // required + * // }, + * // crawlerConfiguration: { // ConfluenceCrawlerConfiguration + * // filterConfiguration: { // CrawlFilterConfiguration + * // type: "PATTERN", // required + * // patternObjectFilter: { // PatternObjectFilterConfiguration + * // filters: [ // PatternObjectFilterList // required + * // { // PatternObjectFilter + * // objectType: "STRING_VALUE", // required + * // inclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // exclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // }, + * // ], + * // }, + * // }, + * // }, + * // }, + * // salesforceConfiguration: { // SalesforceDataSourceConfiguration + * // sourceConfiguration: { // SalesforceSourceConfiguration + * // hostUrl: "STRING_VALUE", // required + * // authType: "OAUTH2_CLIENT_CREDENTIALS", // required + * // credentialsSecretArn: "STRING_VALUE", // required + * // }, + * // crawlerConfiguration: { // SalesforceCrawlerConfiguration + * // filterConfiguration: { + * // type: "PATTERN", // required + * // patternObjectFilter: { + * // filters: [ // required + * // { + * // objectType: "STRING_VALUE", // required + * // inclusionFilters: [ + * // "STRING_VALUE", + * // ], + * // exclusionFilters: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // }, + * // sharePointConfiguration: { // SharePointDataSourceConfiguration + * // sourceConfiguration: { // SharePointSourceConfiguration + * // tenantId: "STRING_VALUE", + * // domain: "STRING_VALUE", // required + * // siteUrls: [ // SharePointSiteUrls // required + * // "STRING_VALUE", + * // ], + * // hostType: "ONLINE", // required + * // authType: "OAUTH2_CLIENT_CREDENTIALS", // required + * // credentialsSecretArn: "STRING_VALUE", // required + * // }, + * // crawlerConfiguration: { // SharePointCrawlerConfiguration + * // filterConfiguration: { + * // type: "PATTERN", // required + * // patternObjectFilter: { + * // filters: [ // required + * // { + * // objectType: "STRING_VALUE", // required + * // inclusionFilters: "", + * // exclusionFilters: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // }, * // }, * // serverSideEncryptionConfiguration: { // ServerSideEncryptionConfiguration * // kmsKeyArn: "STRING_VALUE", * // }, * // vectorIngestionConfiguration: { // VectorIngestionConfiguration * // chunkingConfiguration: { // ChunkingConfiguration - * // chunkingStrategy: "FIXED_SIZE" || "NONE", // required + * // chunkingStrategy: "FIXED_SIZE" || "NONE" || "HIERARCHICAL" || "SEMANTIC", // required * // fixedSizeChunkingConfiguration: { // FixedSizeChunkingConfiguration * // maxTokens: Number("int"), // required * // overlapPercentage: Number("int"), // required * // }, + * // hierarchicalChunkingConfiguration: { // HierarchicalChunkingConfiguration + * // levelConfigurations: [ // HierarchicalChunkingLevelConfigurations // required + * // { // HierarchicalChunkingLevelConfiguration + * // maxTokens: Number("int"), // required + * // }, + * // ], + * // overlapTokens: Number("int"), // required + * // }, + * // semanticChunkingConfiguration: { // SemanticChunkingConfiguration + * // maxTokens: Number("int"), // required + * // bufferSize: Number("int"), // required + * // breakpointPercentileThreshold: Number("int"), // required + * // }, + * // }, + * // customTransformationConfiguration: { // CustomTransformationConfiguration + * // intermediateStorage: { // IntermediateStorage + * // s3Location: { // S3Location + * // uri: "STRING_VALUE", // required + * // }, + * // }, + * // transformations: [ // Transformations // required + * // { // Transformation + * // transformationFunction: { // TransformationFunction + * // transformationLambdaConfiguration: { // TransformationLambdaConfiguration + * // lambdaArn: "STRING_VALUE", // required + * // }, + * // }, + * // stepToApply: "POST_CHUNKING", // required + * // }, + * // ], + * // }, + * // parsingConfiguration: { // ParsingConfiguration + * // parsingStrategy: "BEDROCK_FOUNDATION_MODEL", // required + * // bedrockFoundationModelConfiguration: { // BedrockFoundationModelConfiguration + * // modelArn: "STRING_VALUE", // required + * // parsingPrompt: { // ParsingPrompt + * // parsingPromptText: "STRING_VALUE", // required + * // }, + * // }, * // }, * // }, * // dataDeletionPolicy: "RETAIN" || "DELETE", @@ -157,7 +436,7 @@ export class UpdateDataSourceCommand extends $Command }) .s("AmazonBedrockAgentBuildTimeLambda", "UpdateDataSource", {}) .n("BedrockAgentClient", "UpdateDataSourceCommand") - .f(void 0, void 0) + .f(UpdateDataSourceRequestFilterSensitiveLog, UpdateDataSourceResponseFilterSensitiveLog) .ser(se_UpdateDataSourceCommand) .de(de_UpdateDataSourceCommand) .build() {} diff --git a/clients/client-bedrock-agent/src/commands/UpdateFlowAliasCommand.ts b/clients/client-bedrock-agent/src/commands/UpdateFlowAliasCommand.ts new file mode 100644 index 000000000000..70d4d326bb4f --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/UpdateFlowAliasCommand.ts @@ -0,0 +1,122 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { UpdateFlowAliasRequest, UpdateFlowAliasResponse } from "../models/models_0"; +import { de_UpdateFlowAliasCommand, se_UpdateFlowAliasCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UpdateFlowAliasCommand}. + */ +export interface UpdateFlowAliasCommandInput extends UpdateFlowAliasRequest {} +/** + * @public + * + * The output of {@link UpdateFlowAliasCommand}. + */ +export interface UpdateFlowAliasCommandOutput extends UpdateFlowAliasResponse, __MetadataBearer {} + +/** + *

    Modifies the alias of a flow. Include both fields that you want to keep and ones that you want to change. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, UpdateFlowAliasCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, UpdateFlowAliasCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // UpdateFlowAliasRequest + * name: "STRING_VALUE", // required + * description: "STRING_VALUE", + * routingConfiguration: [ // FlowAliasRoutingConfiguration // required + * { // FlowAliasRoutingConfigurationListItem + * flowVersion: "STRING_VALUE", + * }, + * ], + * flowIdentifier: "STRING_VALUE", // required + * aliasIdentifier: "STRING_VALUE", // required + * }; + * const command = new UpdateFlowAliasCommand(input); + * const response = await client.send(command); + * // { // UpdateFlowAliasResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // routingConfiguration: [ // FlowAliasRoutingConfiguration // required + * // { // FlowAliasRoutingConfigurationListItem + * // flowVersion: "STRING_VALUE", + * // }, + * // ], + * // flowId: "STRING_VALUE", // required + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // }; + * + * ``` + * + * @param UpdateFlowAliasCommandInput - {@link UpdateFlowAliasCommandInput} + * @returns {@link UpdateFlowAliasCommandOutput} + * @see {@link UpdateFlowAliasCommandInput} for command's `input` shape. + * @see {@link UpdateFlowAliasCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the service quota. Resubmit your request later.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class UpdateFlowAliasCommand extends $Command + .classBuilder< + UpdateFlowAliasCommandInput, + UpdateFlowAliasCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "UpdateFlowAlias", {}) + .n("BedrockAgentClient", "UpdateFlowAliasCommand") + .f(void 0, void 0) + .ser(se_UpdateFlowAliasCommand) + .de(de_UpdateFlowAliasCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/UpdateFlowCommand.ts b/clients/client-bedrock-agent/src/commands/UpdateFlowCommand.ts new file mode 100644 index 000000000000..0e7066fc53c7 --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/UpdateFlowCommand.ts @@ -0,0 +1,345 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + UpdateFlowRequest, + UpdateFlowRequestFilterSensitiveLog, + UpdateFlowResponse, + UpdateFlowResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_UpdateFlowCommand, se_UpdateFlowCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UpdateFlowCommand}. + */ +export interface UpdateFlowCommandInput extends UpdateFlowRequest {} +/** + * @public + * + * The output of {@link UpdateFlowCommand}. + */ +export interface UpdateFlowCommandOutput extends UpdateFlowResponse, __MetadataBearer {} + +/** + *

    Modifies a flow. Include both fields that you want to keep and fields that you want to change. For more information, see How it works and Create a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, UpdateFlowCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, UpdateFlowCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // UpdateFlowRequest + * name: "STRING_VALUE", // required + * description: "STRING_VALUE", + * executionRoleArn: "STRING_VALUE", // required + * customerEncryptionKeyArn: "STRING_VALUE", + * definition: { // FlowDefinition + * nodes: [ // FlowNodes + * { // FlowNode + * name: "STRING_VALUE", // required + * type: "Input" || "Output" || "KnowledgeBase" || "Condition" || "Lex" || "Prompt" || "LambdaFunction" || "Storage" || "Agent" || "Retrieval" || "Iterator" || "Collector", // required + * configuration: { // FlowNodeConfiguration Union: only one key present + * input: {}, + * output: {}, + * knowledgeBase: { // KnowledgeBaseFlowNodeConfiguration + * knowledgeBaseId: "STRING_VALUE", // required + * modelId: "STRING_VALUE", + * }, + * condition: { // ConditionFlowNodeConfiguration + * conditions: [ // FlowConditions // required + * { // FlowCondition + * name: "STRING_VALUE", // required + * expression: "STRING_VALUE", + * }, + * ], + * }, + * lex: { // LexFlowNodeConfiguration + * botAliasArn: "STRING_VALUE", // required + * localeId: "STRING_VALUE", // required + * }, + * prompt: { // PromptFlowNodeConfiguration + * sourceConfiguration: { // PromptFlowNodeSourceConfiguration Union: only one key present + * resource: { // PromptFlowNodeResourceConfiguration + * promptArn: "STRING_VALUE", // required + * }, + * inline: { // PromptFlowNodeInlineConfiguration + * templateType: "TEXT", // required + * templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * text: { // TextPromptTemplateConfiguration + * text: "STRING_VALUE", // required + * inputVariables: [ // PromptInputVariablesList + * { // PromptInputVariable + * name: "STRING_VALUE", + * }, + * ], + * }, + * }, + * modelId: "STRING_VALUE", // required + * inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * text: { // PromptModelInferenceConfiguration + * temperature: Number("float"), + * topP: Number("float"), + * topK: Number("int"), + * maxTokens: Number("int"), + * stopSequences: [ // StopSequences + * "STRING_VALUE", + * ], + * }, + * }, + * }, + * }, + * }, + * lambdaFunction: { // LambdaFunctionFlowNodeConfiguration + * lambdaArn: "STRING_VALUE", // required + * }, + * storage: { // StorageFlowNodeConfiguration + * serviceConfiguration: { // StorageFlowNodeServiceConfiguration Union: only one key present + * s3: { // StorageFlowNodeS3Configuration + * bucketName: "STRING_VALUE", // required + * }, + * }, + * }, + * agent: { // AgentFlowNodeConfiguration + * agentAliasArn: "STRING_VALUE", // required + * }, + * retrieval: { // RetrievalFlowNodeConfiguration + * serviceConfiguration: { // RetrievalFlowNodeServiceConfiguration Union: only one key present + * s3: { // RetrievalFlowNodeS3Configuration + * bucketName: "STRING_VALUE", // required + * }, + * }, + * }, + * iterator: {}, + * collector: {}, + * }, + * inputs: [ // FlowNodeInputs + * { // FlowNodeInput + * name: "STRING_VALUE", // required + * type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * expression: "STRING_VALUE", // required + * }, + * ], + * outputs: [ // FlowNodeOutputs + * { // FlowNodeOutput + * name: "STRING_VALUE", // required + * type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * }, + * ], + * }, + * ], + * connections: [ // FlowConnections + * { // FlowConnection + * type: "Data" || "Conditional", // required + * name: "STRING_VALUE", // required + * source: "STRING_VALUE", // required + * target: "STRING_VALUE", // required + * configuration: { // FlowConnectionConfiguration Union: only one key present + * data: { // FlowDataConnectionConfiguration + * sourceOutput: "STRING_VALUE", // required + * targetInput: "STRING_VALUE", // required + * }, + * conditional: { // FlowConditionalConnectionConfiguration + * condition: "STRING_VALUE", // required + * }, + * }, + * }, + * ], + * }, + * flowIdentifier: "STRING_VALUE", // required + * }; + * const command = new UpdateFlowCommand(input); + * const response = await client.send(command); + * // { // UpdateFlowResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // executionRoleArn: "STRING_VALUE", // required + * // customerEncryptionKeyArn: "STRING_VALUE", + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // status: "Failed" || "Prepared" || "Preparing" || "NotPrepared", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // version: "STRING_VALUE", // required + * // definition: { // FlowDefinition + * // nodes: [ // FlowNodes + * // { // FlowNode + * // name: "STRING_VALUE", // required + * // type: "Input" || "Output" || "KnowledgeBase" || "Condition" || "Lex" || "Prompt" || "LambdaFunction" || "Storage" || "Agent" || "Retrieval" || "Iterator" || "Collector", // required + * // configuration: { // FlowNodeConfiguration Union: only one key present + * // input: {}, + * // output: {}, + * // knowledgeBase: { // KnowledgeBaseFlowNodeConfiguration + * // knowledgeBaseId: "STRING_VALUE", // required + * // modelId: "STRING_VALUE", + * // }, + * // condition: { // ConditionFlowNodeConfiguration + * // conditions: [ // FlowConditions // required + * // { // FlowCondition + * // name: "STRING_VALUE", // required + * // expression: "STRING_VALUE", + * // }, + * // ], + * // }, + * // lex: { // LexFlowNodeConfiguration + * // botAliasArn: "STRING_VALUE", // required + * // localeId: "STRING_VALUE", // required + * // }, + * // prompt: { // PromptFlowNodeConfiguration + * // sourceConfiguration: { // PromptFlowNodeSourceConfiguration Union: only one key present + * // resource: { // PromptFlowNodeResourceConfiguration + * // promptArn: "STRING_VALUE", // required + * // }, + * // inline: { // PromptFlowNodeInlineConfiguration + * // templateType: "TEXT", // required + * // templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * // text: { // TextPromptTemplateConfiguration + * // text: "STRING_VALUE", // required + * // inputVariables: [ // PromptInputVariablesList + * // { // PromptInputVariable + * // name: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // modelId: "STRING_VALUE", // required + * // inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * // text: { // PromptModelInferenceConfiguration + * // temperature: Number("float"), + * // topP: Number("float"), + * // topK: Number("int"), + * // maxTokens: Number("int"), + * // stopSequences: [ // StopSequences + * // "STRING_VALUE", + * // ], + * // }, + * // }, + * // }, + * // }, + * // }, + * // lambdaFunction: { // LambdaFunctionFlowNodeConfiguration + * // lambdaArn: "STRING_VALUE", // required + * // }, + * // storage: { // StorageFlowNodeConfiguration + * // serviceConfiguration: { // StorageFlowNodeServiceConfiguration Union: only one key present + * // s3: { // StorageFlowNodeS3Configuration + * // bucketName: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // agent: { // AgentFlowNodeConfiguration + * // agentAliasArn: "STRING_VALUE", // required + * // }, + * // retrieval: { // RetrievalFlowNodeConfiguration + * // serviceConfiguration: { // RetrievalFlowNodeServiceConfiguration Union: only one key present + * // s3: { // RetrievalFlowNodeS3Configuration + * // bucketName: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // iterator: {}, + * // collector: {}, + * // }, + * // inputs: [ // FlowNodeInputs + * // { // FlowNodeInput + * // name: "STRING_VALUE", // required + * // type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * // expression: "STRING_VALUE", // required + * // }, + * // ], + * // outputs: [ // FlowNodeOutputs + * // { // FlowNodeOutput + * // name: "STRING_VALUE", // required + * // type: "String" || "Number" || "Boolean" || "Object" || "Array", // required + * // }, + * // ], + * // }, + * // ], + * // connections: [ // FlowConnections + * // { // FlowConnection + * // type: "Data" || "Conditional", // required + * // name: "STRING_VALUE", // required + * // source: "STRING_VALUE", // required + * // target: "STRING_VALUE", // required + * // configuration: { // FlowConnectionConfiguration Union: only one key present + * // data: { // FlowDataConnectionConfiguration + * // sourceOutput: "STRING_VALUE", // required + * // targetInput: "STRING_VALUE", // required + * // }, + * // conditional: { // FlowConditionalConnectionConfiguration + * // condition: "STRING_VALUE", // required + * // }, + * // }, + * // }, + * // ], + * // }, + * // }; + * + * ``` + * + * @param UpdateFlowCommandInput - {@link UpdateFlowCommandInput} + * @returns {@link UpdateFlowCommandOutput} + * @see {@link UpdateFlowCommandInput} for command's `input` shape. + * @see {@link UpdateFlowCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the service quota. Resubmit your request later.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class UpdateFlowCommand extends $Command + .classBuilder< + UpdateFlowCommandInput, + UpdateFlowCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "UpdateFlow", {}) + .n("BedrockAgentClient", "UpdateFlowCommand") + .f(UpdateFlowRequestFilterSensitiveLog, UpdateFlowResponseFilterSensitiveLog) + .ser(se_UpdateFlowCommand) + .de(de_UpdateFlowCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/UpdatePromptCommand.ts b/clients/client-bedrock-agent/src/commands/UpdatePromptCommand.ts new file mode 100644 index 000000000000..7727949fab1b --- /dev/null +++ b/clients/client-bedrock-agent/src/commands/UpdatePromptCommand.ts @@ -0,0 +1,176 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BedrockAgentClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BedrockAgentClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + UpdatePromptRequest, + UpdatePromptRequestFilterSensitiveLog, + UpdatePromptResponse, + UpdatePromptResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_UpdatePromptCommand, se_UpdatePromptCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UpdatePromptCommand}. + */ +export interface UpdatePromptCommandInput extends UpdatePromptRequest {} +/** + * @public + * + * The output of {@link UpdatePromptCommand}. + */ +export interface UpdatePromptCommandOutput extends UpdatePromptResponse, __MetadataBearer {} + +/** + *

    Modifies a prompt in your prompt library. Include both fields that you want to keep and fields that you want to replace. For more information, see Prompt management in Amazon Bedrock and Edit prompts in your prompt library in the Amazon Bedrock User Guide.

    + * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BedrockAgentClient, UpdatePromptCommand } from "@aws-sdk/client-bedrock-agent"; // ES Modules import + * // const { BedrockAgentClient, UpdatePromptCommand } = require("@aws-sdk/client-bedrock-agent"); // CommonJS import + * const client = new BedrockAgentClient(config); + * const input = { // UpdatePromptRequest + * name: "STRING_VALUE", // required + * description: "STRING_VALUE", + * customerEncryptionKeyArn: "STRING_VALUE", + * defaultVariant: "STRING_VALUE", + * variants: [ // PromptVariantList + * { // PromptVariant + * name: "STRING_VALUE", // required + * templateType: "TEXT", // required + * templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * text: { // TextPromptTemplateConfiguration + * text: "STRING_VALUE", // required + * inputVariables: [ // PromptInputVariablesList + * { // PromptInputVariable + * name: "STRING_VALUE", + * }, + * ], + * }, + * }, + * modelId: "STRING_VALUE", + * inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * text: { // PromptModelInferenceConfiguration + * temperature: Number("float"), + * topP: Number("float"), + * topK: Number("int"), + * maxTokens: Number("int"), + * stopSequences: [ // StopSequences + * "STRING_VALUE", + * ], + * }, + * }, + * }, + * ], + * promptIdentifier: "STRING_VALUE", // required + * }; + * const command = new UpdatePromptCommand(input); + * const response = await client.send(command); + * // { // UpdatePromptResponse + * // name: "STRING_VALUE", // required + * // description: "STRING_VALUE", + * // customerEncryptionKeyArn: "STRING_VALUE", + * // defaultVariant: "STRING_VALUE", + * // variants: [ // PromptVariantList + * // { // PromptVariant + * // name: "STRING_VALUE", // required + * // templateType: "TEXT", // required + * // templateConfiguration: { // PromptTemplateConfiguration Union: only one key present + * // text: { // TextPromptTemplateConfiguration + * // text: "STRING_VALUE", // required + * // inputVariables: [ // PromptInputVariablesList + * // { // PromptInputVariable + * // name: "STRING_VALUE", + * // }, + * // ], + * // }, + * // }, + * // modelId: "STRING_VALUE", + * // inferenceConfiguration: { // PromptInferenceConfiguration Union: only one key present + * // text: { // PromptModelInferenceConfiguration + * // temperature: Number("float"), + * // topP: Number("float"), + * // topK: Number("int"), + * // maxTokens: Number("int"), + * // stopSequences: [ // StopSequences + * // "STRING_VALUE", + * // ], + * // }, + * // }, + * // }, + * // ], + * // id: "STRING_VALUE", // required + * // arn: "STRING_VALUE", // required + * // version: "STRING_VALUE", // required + * // createdAt: new Date("TIMESTAMP"), // required + * // updatedAt: new Date("TIMESTAMP"), // required + * // }; + * + * ``` + * + * @param UpdatePromptCommandInput - {@link UpdatePromptCommandInput} + * @returns {@link UpdatePromptCommandOutput} + * @see {@link UpdatePromptCommandInput} for command's `input` shape. + * @see {@link UpdatePromptCommandOutput} for command's `response` shape. + * @see {@link BedrockAgentClientResolvedConfig | config} for BedrockAgentClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

    The request is denied because of missing access permissions.

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

    There was a conflict performing an operation.

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

    An internal server error occurred. Retry your request.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

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

    The number of requests exceeds the service quota. Resubmit your request later.

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

    The number of requests exceeds the limit. Resubmit your request later.

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

    Input validation failed. Check your request parameters and retry the request.

    + * + * @throws {@link BedrockAgentServiceException} + *

    Base exception class for all service exceptions from BedrockAgent service.

    + * + * @public + */ +export class UpdatePromptCommand extends $Command + .classBuilder< + UpdatePromptCommandInput, + UpdatePromptCommandOutput, + BedrockAgentClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: BedrockAgentClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonBedrockAgentBuildTimeLambda", "UpdatePrompt", {}) + .n("BedrockAgentClient", "UpdatePromptCommand") + .f(UpdatePromptRequestFilterSensitiveLog, UpdatePromptResponseFilterSensitiveLog) + .ser(se_UpdatePromptCommand) + .de(de_UpdatePromptCommand) + .build() {} diff --git a/clients/client-bedrock-agent/src/commands/index.ts b/clients/client-bedrock-agent/src/commands/index.ts index be253941de52..c6973d0203ab 100644 --- a/clients/client-bedrock-agent/src/commands/index.ts +++ b/clients/client-bedrock-agent/src/commands/index.ts @@ -4,13 +4,22 @@ export * from "./CreateAgentActionGroupCommand"; export * from "./CreateAgentAliasCommand"; export * from "./CreateAgentCommand"; export * from "./CreateDataSourceCommand"; +export * from "./CreateFlowAliasCommand"; +export * from "./CreateFlowCommand"; +export * from "./CreateFlowVersionCommand"; export * from "./CreateKnowledgeBaseCommand"; +export * from "./CreatePromptCommand"; +export * from "./CreatePromptVersionCommand"; export * from "./DeleteAgentActionGroupCommand"; export * from "./DeleteAgentAliasCommand"; export * from "./DeleteAgentCommand"; export * from "./DeleteAgentVersionCommand"; export * from "./DeleteDataSourceCommand"; +export * from "./DeleteFlowAliasCommand"; +export * from "./DeleteFlowCommand"; +export * from "./DeleteFlowVersionCommand"; export * from "./DeleteKnowledgeBaseCommand"; +export * from "./DeletePromptCommand"; export * from "./DisassociateAgentKnowledgeBaseCommand"; export * from "./GetAgentActionGroupCommand"; export * from "./GetAgentAliasCommand"; @@ -18,18 +27,27 @@ export * from "./GetAgentCommand"; export * from "./GetAgentKnowledgeBaseCommand"; export * from "./GetAgentVersionCommand"; export * from "./GetDataSourceCommand"; +export * from "./GetFlowAliasCommand"; +export * from "./GetFlowCommand"; +export * from "./GetFlowVersionCommand"; export * from "./GetIngestionJobCommand"; export * from "./GetKnowledgeBaseCommand"; +export * from "./GetPromptCommand"; export * from "./ListAgentActionGroupsCommand"; export * from "./ListAgentAliasesCommand"; export * from "./ListAgentKnowledgeBasesCommand"; export * from "./ListAgentVersionsCommand"; export * from "./ListAgentsCommand"; export * from "./ListDataSourcesCommand"; +export * from "./ListFlowAliasesCommand"; +export * from "./ListFlowVersionsCommand"; +export * from "./ListFlowsCommand"; export * from "./ListIngestionJobsCommand"; export * from "./ListKnowledgeBasesCommand"; +export * from "./ListPromptsCommand"; export * from "./ListTagsForResourceCommand"; export * from "./PrepareAgentCommand"; +export * from "./PrepareFlowCommand"; export * from "./StartIngestionJobCommand"; export * from "./TagResourceCommand"; export * from "./UntagResourceCommand"; @@ -38,4 +56,7 @@ export * from "./UpdateAgentAliasCommand"; export * from "./UpdateAgentCommand"; export * from "./UpdateAgentKnowledgeBaseCommand"; export * from "./UpdateDataSourceCommand"; +export * from "./UpdateFlowAliasCommand"; +export * from "./UpdateFlowCommand"; export * from "./UpdateKnowledgeBaseCommand"; +export * from "./UpdatePromptCommand"; diff --git a/clients/client-bedrock-agent/src/models/models_0.ts b/clients/client-bedrock-agent/src/models/models_0.ts index 9a55897998df..70478f367a41 100644 --- a/clients/client-bedrock-agent/src/models/models_0.ts +++ b/clients/client-bedrock-agent/src/models/models_0.ts @@ -126,7 +126,7 @@ export const ActionGroupState = { export type ActionGroupState = (typeof ActionGroupState)[keyof typeof ActionGroupState]; /** - *

    Contains information about the S3 object containing the resource.

    + *

    The identifier information for an Amazon S3 bucket.

    * @public */ export interface S3Identifier { @@ -137,7 +137,7 @@ export interface S3Identifier { s3BucketName?: string; /** - *

    The S3 object key containing the resource.

    + *

    The S3 object key for the S3 resource.

    * @public */ s3ObjectKey?: string; @@ -387,6 +387,7 @@ export namespace FunctionSchema { * @enum */ export const ActionGroupSignature = { + AMAZON_CODEINTERPRETER: "AMAZON.CodeInterpreter", AMAZON_USERINPUT: "AMAZON.UserInput", } as const; @@ -432,6 +433,7 @@ export interface CreateAgentActionGroupRequest { /** *

    To allow your agent to request the user for additional information when trying to complete a task, set this field to AMAZON.UserInput. You must leave the description, apiSchema, and actionGroupExecutor fields blank for this action group.

    + *

    To allow your agent to generate, run, and troubleshoot code when trying to complete a task, set this field to AMAZON.CodeInterpreter. You must leave the description, apiSchema, and actionGroupExecutor fields blank for this action group.

    *

    During orchestration, if your agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an Observation reprompting the user for more information.

    * @public */ @@ -934,23 +936,54 @@ export const AgentStatus = { export type AgentStatus = (typeof AgentStatus)[keyof typeof AgentStatus]; /** - *

    The details of the guardrails configuration.

    + *

    Details about the guardrail associated with an agent.

    * @public */ export interface GuardrailConfiguration { /** - *

    The guardrails identifier assigned to the guardrails configuration.

    + *

    The unique identifier of the guardrail.

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

    The guardrails version assigned to the guardrails configuration.

    + *

    The version of the guardrail.

    * @public */ guardrailVersion?: string; } +/** + * @public + * @enum + */ +export const MemoryType = { + SESSION_SUMMARY: "SESSION_SUMMARY", +} as const; + +/** + * @public + */ +export type MemoryType = (typeof MemoryType)[keyof typeof MemoryType]; + +/** + *

    Details of the memory configuration.

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

    The type of memory that is stored.

    + * @public + */ + enabledMemoryTypes: MemoryType[] | undefined; + + /** + *

    The number of days the agent is configured to retain the conversational context.

    + * @public + */ + storageDays?: number; +} + /** *

    Contains inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the promptType. For more information, see Inference parameters for foundation models.

    * @public @@ -1252,10 +1285,16 @@ export interface Agent { promptOverrideConfiguration?: PromptOverrideConfiguration; /** - *

    The guardrails configuration assigned to the agent.

    + *

    Details about the guardrail associated with the agent.

    * @public */ guardrailConfiguration?: GuardrailConfiguration; + + /** + *

    Contains memory configuration for the agent.

    + * @public + */ + memoryConfiguration?: MemoryConfiguration; } /** @@ -1461,6 +1500,18 @@ export interface AgentAliasSummary { updatedAt: Date | undefined; } +/** + *

    Defines an agent node in your flow. You specify the agent to invoke at this point in the flow. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

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

    The Amazon Resource Name (ARN) of the alias of the agent to invoke.

    + * @public + */ + agentAliasArn: string | undefined; +} + /** * @public * @enum @@ -1624,6 +1675,12 @@ export interface CreateAgentRequest { * @public */ guardrailConfiguration?: GuardrailConfiguration; + + /** + *

    Contains the details of the memory configured for the agent.

    + * @public + */ + memoryConfiguration?: MemoryConfiguration; } /** @@ -1752,7 +1809,7 @@ export interface AgentSummary { latestAgentVersion?: string; /** - *

    The details of the guardrails configuration in the agent summary.

    + *

    Details about the guardrail associated with the agent.

    * @public */ guardrailConfiguration?: GuardrailConfiguration; @@ -1879,6 +1936,12 @@ export interface UpdateAgentRequest { * @public */ guardrailConfiguration?: GuardrailConfiguration; + + /** + *

    Specifies the new memory configuration for the agent.

    + * @public + */ + memoryConfiguration?: MemoryConfiguration; } /** @@ -1995,10 +2058,18 @@ export interface AgentVersion { promptOverrideConfiguration?: PromptOverrideConfiguration; /** - *

    The guardrails configuration assigned to the agent version.

    + *

    Details about the guardrail associated with the agent.

    * @public */ guardrailConfiguration?: GuardrailConfiguration; + + /** + *

    + * Contains details of the memory configuration on the version of the agent. + *

    + * @public + */ + memoryConfiguration?: MemoryConfiguration; } /** @@ -2043,7 +2114,7 @@ export interface AgentVersionSummary { description?: string; /** - *

    The details of the guardrails configuration in the agent version summary.

    + *

    Details about the guardrail associated with the agent.

    * @public */ guardrailConfiguration?: GuardrailConfiguration; @@ -2271,2217 +2342,6371 @@ export const DataDeletionPolicy = { export type DataDeletionPolicy = (typeof DataDeletionPolicy)[keyof typeof DataDeletionPolicy]; /** - *

    Contains information about the S3 configuration of the data source.

    + *

    The specific filters applied to your data source content. You can filter out or + * include certain content.

    * @public */ -export interface S3DataSourceConfiguration { +export interface PatternObjectFilter { /** - *

    The Amazon Resource Name (ARN) of the bucket that contains the data source.

    + *

    The supported object type or content type of the data source.

    * @public */ - bucketArn: string | undefined; + objectType: string | undefined; /** - *

    A list of S3 prefixes that define the object containing the data sources. For more information, see Organizing objects using prefixes.

    + *

    A list of one or more inclusion regular expression patterns to include certain + * object types that adhere to the pattern. If you specify an inclusion and exclusion + * filter/pattern and both match a document, the exclusion filter takes precedence + * and the document isn’t crawled.

    * @public */ - inclusionPrefixes?: string[]; + inclusionFilters?: string[]; /** - *

    The bucket account owner ID for the S3 bucket.

    + *

    A list of one or more exclusion regular expression patterns to exclude certain + * object types that adhere to the pattern. If you specify an inclusion and exclusion + * filter/pattern and both match a document, the exclusion filter takes precedence + * and the document isn’t crawled.

    * @public */ - bucketOwnerAccountId?: string; + exclusionFilters?: string[]; +} + +/** + *

    The configuration of filtering certain objects or content types of the data source.

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

    The configuration of specific filters applied to your data source content. You can + * filter out or include certain content.

    + * @public + */ + filters: PatternObjectFilter[] | undefined; } /** * @public * @enum */ -export const DataSourceType = { - S3: "S3", +export const CrawlFilterConfigurationType = { + PATTERN: "PATTERN", } as const; /** * @public */ -export type DataSourceType = (typeof DataSourceType)[keyof typeof DataSourceType]; +export type CrawlFilterConfigurationType = + (typeof CrawlFilterConfigurationType)[keyof typeof CrawlFilterConfigurationType]; /** - *

    Contains details about how a data source is stored.

    + *

    The configuration of filtering the data source content. For example, + * configuring regular expression patterns to include or exclude certain content.

    * @public */ -export interface DataSourceConfiguration { +export interface CrawlFilterConfiguration { /** - *

    The type of storage for the data source.

    + *

    The type of filtering that you want to apply to certain objects or content of the + * data source. For example, the PATTERN type is regular expression patterns + * you can apply to filter your content.

    * @public */ - type: DataSourceType | undefined; + type: CrawlFilterConfigurationType | undefined; /** - *

    Contains details about the configuration of the S3 object containing the data source.

    + *

    The configuration of filtering certain objects or content types of the data source.

    * @public */ - s3Configuration?: S3DataSourceConfiguration; + patternObjectFilter?: PatternObjectFilterConfiguration; } /** - *

    Contains the configuration for server-side encryption.

    + *

    The configuration of the Confluence content. For example, configuring specific + * types of Confluence content.

    * @public */ -export interface ServerSideEncryptionConfiguration { +export interface ConfluenceCrawlerConfiguration { /** - *

    The Amazon Resource Name (ARN) of the KMS key used to encrypt the resource.

    + *

    The configuration of filtering the Confluence content. For example, configuring + * regular expression patterns to include or exclude certain content.

    * @public */ - kmsKeyArn?: string; + filterConfiguration?: CrawlFilterConfiguration; } /** * @public * @enum */ -export const ChunkingStrategy = { - FIXED_SIZE: "FIXED_SIZE", - NONE: "NONE", +export const ConfluenceAuthType = { + BASIC: "BASIC", + OAUTH2_CLIENT_CREDENTIALS: "OAUTH2_CLIENT_CREDENTIALS", } as const; /** * @public */ -export type ChunkingStrategy = (typeof ChunkingStrategy)[keyof typeof ChunkingStrategy]; +export type ConfluenceAuthType = (typeof ConfluenceAuthType)[keyof typeof ConfluenceAuthType]; /** - *

    Configurations for when you choose fixed-size chunking. If you set the chunkingStrategy as NONE, exclude this field.

    * @public + * @enum */ -export interface FixedSizeChunkingConfiguration { - /** - *

    The maximum number of tokens to include in a chunk.

    - * @public - */ - maxTokens: number | undefined; - - /** - *

    The percentage of overlap between adjacent chunks of a data source.

    - * @public - */ - overlapPercentage: number | undefined; -} +export const ConfluenceHostType = { + SAAS: "SAAS", +} as const; /** - *

    Details about how to chunk the documents in the data source. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried.

    * @public */ -export interface ChunkingConfiguration { - /** - *

    Knowledge base can split your source data into chunks. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried. You have the following options for chunking your data. If you opt for NONE, then you may want to pre-process your files by splitting them up such that each file corresponds to a chunk.

    - *
      - *
    • - *

      - * FIXED_SIZE – Amazon Bedrock splits your source data into chunks of the approximate size that you set in the fixedSizeChunkingConfiguration.

      - *
    • - *
    • - *

      - * NONE – Amazon Bedrock treats each file as one chunk. If you choose this option, you may want to pre-process your documents by splitting them into separate files.

      - *
    • - *
    - * @public - */ - chunkingStrategy: ChunkingStrategy | undefined; +export type ConfluenceHostType = (typeof ConfluenceHostType)[keyof typeof ConfluenceHostType]; +/** + *

    The endpoint information to connect to your Confluence data source.

    + * @public + */ +export interface ConfluenceSourceConfiguration { /** - *

    Configurations for when you choose fixed-size chunking. If you set the chunkingStrategy as NONE, exclude this field.

    + *

    The Confluence host URL or instance URL.

    * @public */ - fixedSizeChunkingConfiguration?: FixedSizeChunkingConfiguration; -} + hostUrl: string | undefined; -/** - *

    Contains details about how to ingest the documents in a data source.

    - * @public - */ -export interface VectorIngestionConfiguration { /** - *

    Details about how to chunk the documents in the data source. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried.

    + *

    The supported host type, whether online/cloud or server/on-premises.

    * @public */ - chunkingConfiguration?: ChunkingConfiguration; -} + hostType: ConfluenceHostType | undefined; -/** - * @public - */ -export interface CreateDataSourceRequest { /** - *

    The unique identifier of the knowledge base to which to add the data source.

    + *

    The supported authentication type to authenticate and connect to your + * Confluence instance.

    * @public */ - knowledgeBaseId: string | undefined; + authType: ConfluenceAuthType | undefined; /** - *

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, - * Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    + *

    The Amazon Resource Name of an Secrets Manager secret that + * stores your authentication credentials for your SharePoint site/sites. + * For more information on the key-value pairs that must be included in + * your secret, depending on your authentication type, see + * Confluence connection configuration.

    * @public */ - clientToken?: string; + credentialsSecretArn: string | undefined; +} +/** + *

    The configuration information to connect to Confluence as your data source.

    + * @public + */ +export interface ConfluenceDataSourceConfiguration { /** - *

    The name of the data source.

    + *

    The endpoint information to connect to your Confluence data source.

    * @public */ - name: string | undefined; + sourceConfiguration: ConfluenceSourceConfiguration | undefined; /** - *

    A description of the data source.

    + *

    The configuration of the Confluence content. For example, configuring + * specific types of Confluence content.

    * @public */ - description?: string; + crawlerConfiguration?: ConfluenceCrawlerConfiguration; +} +/** + *

    The configuration information to connect to Amazon S3 as your data source.

    + * @public + */ +export interface S3DataSourceConfiguration { /** - *

    Contains metadata about where the data source is stored.

    + *

    The Amazon Resource Name (ARN) of the S3 bucket that contains your data.

    * @public */ - dataSourceConfiguration: DataSourceConfiguration | undefined; + bucketArn: string | undefined; /** - *

    The data deletion policy assigned to the data source.

    + *

    A list of S3 prefixes to include certain files or content. For more information, + * see Organizing objects using prefixes.

    * @public */ - dataDeletionPolicy?: DataDeletionPolicy; + inclusionPrefixes?: string[]; /** - *

    Contains details about the server-side encryption for the data source.

    + *

    The account ID for the owner of the S3 bucket.

    * @public */ - serverSideEncryptionConfiguration?: ServerSideEncryptionConfiguration; + bucketOwnerAccountId?: string; +} +/** + *

    The configuration of the Salesforce content. For example, configuring + * specific types of Salesforce content.

    + * @public + */ +export interface SalesforceCrawlerConfiguration { /** - *

    Contains details about how to ingest the documents in the data source.

    + *

    The configuration of filtering the Salesforce content. For example, + * configuring regular expression patterns to include or exclude certain + * content.

    * @public */ - vectorIngestionConfiguration?: VectorIngestionConfiguration; + filterConfiguration?: CrawlFilterConfiguration; } /** * @public * @enum */ -export const DataSourceStatus = { - AVAILABLE: "AVAILABLE", - DELETE_UNSUCCESSFUL: "DELETE_UNSUCCESSFUL", - DELETING: "DELETING", +export const SalesforceAuthType = { + OAUTH2_CLIENT_CREDENTIALS: "OAUTH2_CLIENT_CREDENTIALS", } as const; /** * @public */ -export type DataSourceStatus = (typeof DataSourceStatus)[keyof typeof DataSourceStatus]; +export type SalesforceAuthType = (typeof SalesforceAuthType)[keyof typeof SalesforceAuthType]; /** - *

    Contains details about a data source.

    + *

    The endpoint information to connect to your Salesforce data source.

    * @public */ -export interface DataSource { +export interface SalesforceSourceConfiguration { /** - *

    The unique identifier of the knowledge base to which the data source belongs.

    + *

    The Salesforce host URL or instance URL.

    * @public */ - knowledgeBaseId: string | undefined; + hostUrl: string | undefined; /** - *

    The unique identifier of the data source.

    + *

    The supported authentication type to authenticate and connect to your + * Salesforce instance.

    * @public */ - dataSourceId: string | undefined; + authType: SalesforceAuthType | undefined; /** - *

    The name of the data source.

    + *

    The Amazon Resource Name of an Secrets Manager secret that + * stores your authentication credentials for your SharePoint site/sites. + * For more information on the key-value pairs that must be included in + * your secret, depending on your authentication type, see + * Salesforce connection configuration.

    * @public */ - name: string | undefined; + credentialsSecretArn: string | undefined; +} +/** + *

    The configuration information to connect to Salesforce as your data source.

    + * @public + */ +export interface SalesforceDataSourceConfiguration { /** - *

    The status of the data source. The following statuses are possible:

    - *
      - *
    • - *

      Available – The data source has been created and is ready for ingestion into the knowledge base.

      - *
    • - *
    • - *

      Deleting – The data source is being deleted.

      - *
    • - *
    + *

    The endpoint information to connect to your Salesforce data source.

    * @public */ - status: DataSourceStatus | undefined; + sourceConfiguration: SalesforceSourceConfiguration | undefined; /** - *

    The description of the data source.

    + *

    The configuration of the Salesforce content. For example, configuring + * specific types of Salesforce content.

    * @public */ - description?: string; + crawlerConfiguration?: SalesforceCrawlerConfiguration; +} +/** + *

    The configuration of the SharePoint content. For example, configuring + * specific types of SharePoint content.

    + * @public + */ +export interface SharePointCrawlerConfiguration { /** - *

    Contains details about how the data source is stored.

    + *

    The configuration of filtering the SharePoint content. For example, + * configuring regular expression patterns to include or exclude certain content.

    * @public */ - dataSourceConfiguration: DataSourceConfiguration | undefined; + filterConfiguration?: CrawlFilterConfiguration; +} +/** + * @public + * @enum + */ +export const SharePointAuthType = { + OAUTH2_CLIENT_CREDENTIALS: "OAUTH2_CLIENT_CREDENTIALS", +} as const; + +/** + * @public + */ +export type SharePointAuthType = (typeof SharePointAuthType)[keyof typeof SharePointAuthType]; + +/** + * @public + * @enum + */ +export const SharePointHostType = { + ONLINE: "ONLINE", +} as const; + +/** + * @public + */ +export type SharePointHostType = (typeof SharePointHostType)[keyof typeof SharePointHostType]; + +/** + *

    The endpoint information to connect to your SharePoint data source.

    + * @public + */ +export interface SharePointSourceConfiguration { /** - *

    Contains details about the configuration of the server-side encryption.

    + *

    The identifier of your Microsoft 365 tenant.

    * @public */ - serverSideEncryptionConfiguration?: ServerSideEncryptionConfiguration; + tenantId?: string; /** - *

    Contains details about how to ingest the documents in the data source.

    + *

    The domain of your SharePoint instance or site URL/URLs.

    * @public */ - vectorIngestionConfiguration?: VectorIngestionConfiguration; + domain: string | undefined; /** - *

    The data deletion policy for a data source.

    + *

    A list of one or more SharePoint site URLs.

    * @public */ - dataDeletionPolicy?: DataDeletionPolicy; + siteUrls: string[] | undefined; /** - *

    The time at which the data source was created.

    + *

    The supported host type, whether online/cloud or server/on-premises.

    * @public */ - createdAt: Date | undefined; + hostType: SharePointHostType | undefined; /** - *

    The time at which the data source was last updated.

    + *

    The supported authentication type to authenticate and connect + * to your SharePoint site/sites.

    * @public */ - updatedAt: Date | undefined; + authType: SharePointAuthType | undefined; /** - *

    The detailed reasons on the failure to delete a data source.

    + *

    The Amazon Resource Name of an Secrets Manager secret that + * stores your authentication credentials for your SharePoint site/sites. + * For more information on the key-value pairs that must be included in + * your secret, depending on your authentication type, see + * SharePoint connection configuration.

    * @public */ - failureReasons?: string[]; + credentialsSecretArn: string | undefined; } /** + *

    The configuration information to connect to SharePoint as your data source.

    * @public */ -export interface CreateDataSourceResponse { +export interface SharePointDataSourceConfiguration { /** - *

    Contains details about the data source.

    + *

    The endpoint information to connect to your SharePoint data source.

    * @public */ - dataSource: DataSource | undefined; + sourceConfiguration: SharePointSourceConfiguration | undefined; + + /** + *

    The configuration of the SharePoint content. For example, configuring + * specific types of SharePoint content.

    + * @public + */ + crawlerConfiguration?: SharePointCrawlerConfiguration; } /** * @public + * @enum */ -export interface DeleteDataSourceRequest { - /** - *

    The unique identifier of the knowledge base from which to delete the data source.

    - * @public - */ - knowledgeBaseId: string | undefined; +export const DataSourceType = { + CONFLUENCE: "CONFLUENCE", + S3: "S3", + SALESFORCE: "SALESFORCE", + SHAREPOINT: "SHAREPOINT", + WEB: "WEB", +} as const; + +/** + * @public + */ +export type DataSourceType = (typeof DataSourceType)[keyof typeof DataSourceType]; +/** + *

    The rate limits for the URLs that you want to crawl. + * You should be authorized to crawl the URLs.

    + * @public + */ +export interface WebCrawlerLimits { /** - *

    The unique identifier of the data source to delete.

    + *

    The max rate at which pages are crawled, up to 300 per minute per host.

    * @public */ - dataSourceId: string | undefined; + rateLimit?: number; } /** * @public + * @enum */ -export interface DeleteDataSourceResponse { +export const WebScopeType = { + HOST_ONLY: "HOST_ONLY", + SUBDOMAINS: "SUBDOMAINS", +} as const; + +/** + * @public + */ +export type WebScopeType = (typeof WebScopeType)[keyof typeof WebScopeType]; + +/** + *

    The configuration of web URLs that you want to crawl. + * You should be authorized to crawl the URLs.

    + * @public + */ +export interface WebCrawlerConfiguration { /** - *

    The unique identifier of the knowledge base to which the data source that was deleted belonged.

    + *

    The configuration of crawl limits for the web URLs.

    * @public */ - knowledgeBaseId: string | undefined; + crawlerLimits?: WebCrawlerLimits; /** - *

    The unique identifier of the data source that was deleted.

    + *

    A list of one or more inclusion regular expression patterns to include + * certain URLs. If you specify an inclusion and exclusion filter/pattern + * and both match a URL, the exclusion filter takes precedence and the web + * content of the URL isn’t crawled.

    * @public */ - dataSourceId: string | undefined; + inclusionFilters?: string[]; /** - *

    The status of the data source.

    + *

    A list of one or more exclusion regular expression patterns to exclude + * certain URLs. If you specify an inclusion and exclusion filter/pattern + * and both match a URL, the exclusion filter takes precedence and the web + * content of the URL isn’t crawled.

    * @public */ - status: DataSourceStatus | undefined; -} + exclusionFilters?: string[]; -/** - * @public - */ -export interface GetDataSourceRequest { /** - *

    The unique identifier of the knowledge base that the data source was added to.

    + *

    The scope of what is crawled for your URLs.

    + *

    You can choose to crawl only web pages that belong to the same host or primary + * domain. For example, only web pages that contain the seed URL + * "https://docs.aws.amazon.com/bedrock/latest/userguide/" and no other domains. + * You can choose to include sub domains in addition to the host or primary domain. + * For example, web pages that contain "aws.amazon.com" can also include sub domain + * "docs.aws.amazon.com".

    * @public */ - knowledgeBaseId: string | undefined; + scope?: WebScopeType; +} +/** + *

    The seed or starting point URL. + * You should be authorized to crawl the URL.

    + * @public + */ +export interface SeedUrl { /** - *

    The unique identifier of the data source.

    + *

    A seed or starting point URL.

    * @public */ - dataSourceId: string | undefined; + url?: string; } /** + *

    The configuration of web URLs that you want to crawl. + * You should be authorized to crawl the URLs.

    * @public */ -export interface GetDataSourceResponse { +export interface UrlConfiguration { /** - *

    Contains details about the data source.

    + *

    One or more seed or starting point URLs.

    * @public */ - dataSource: DataSource | undefined; + seedUrls?: SeedUrl[]; } /** + *

    The configuration of the URL/URLs for the web content that you want + * to crawl. You should be authorized to crawl the URLs.

    * @public */ -export interface ListDataSourcesRequest { +export interface WebSourceConfiguration { /** - *

    The unique identifier of the knowledge base for which to return a list of information.

    + *

    The configuration of the URL/URLs.

    * @public */ - knowledgeBaseId: string | undefined; + urlConfiguration: UrlConfiguration | undefined; +} +/** + *

    The configuration details for the web data source.

    + * @public + */ +export interface WebDataSourceConfiguration { /** - *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    + *

    The source configuration details for the web data source.

    * @public */ - maxResults?: number; + sourceConfiguration: WebSourceConfiguration | undefined; /** - *

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    + *

    The Web Crawler configuration details for the web data source.

    * @public */ - nextToken?: string; + crawlerConfiguration?: WebCrawlerConfiguration; } /** - *

    Contains details about a data source.

    + *

    The connection configuration for the data source.

    * @public */ -export interface DataSourceSummary { +export interface DataSourceConfiguration { /** - *

    The unique identifier of the knowledge base to which the data source belongs.

    + *

    The type of data source.

    * @public */ - knowledgeBaseId: string | undefined; + type: DataSourceType | undefined; /** - *

    The unique identifier of the data source.

    + *

    The configuration information to connect to Amazon S3 as your data source.

    * @public */ - dataSourceId: string | undefined; + s3Configuration?: S3DataSourceConfiguration; /** - *

    The name of the data source.

    + *

    The configuration of web URLs to crawl for your data source. + * You should be authorized to crawl the URLs.

    + * + *

    Crawling web URLs as your data source is in preview release + * and is subject to change.

    + *
    * @public */ - name: string | undefined; + webConfiguration?: WebDataSourceConfiguration; /** - *

    The status of the data source.

    + *

    The configuration information to connect to Confluence as your data source.

    + * + *

    Confluence data source connector is in preview release and is subject to change.

    + *
    * @public */ - status: DataSourceStatus | undefined; + confluenceConfiguration?: ConfluenceDataSourceConfiguration; /** - *

    The description of the data source.

    + *

    The configuration information to connect to Salesforce as your data source.

    + * + *

    Salesforce data source connector is in preview release and is subject to change.

    + *
    * @public */ - description?: string; + salesforceConfiguration?: SalesforceDataSourceConfiguration; /** - *

    The time at which the data source was last updated.

    + *

    The configuration information to connect to SharePoint as your data source.

    + * + *

    SharePoint data source connector is in preview release and is subject to change.

    + *
    * @public */ - updatedAt: Date | undefined; + sharePointConfiguration?: SharePointDataSourceConfiguration; } /** + *

    Contains the configuration for server-side encryption.

    * @public */ -export interface ListDataSourcesResponse { +export interface ServerSideEncryptionConfiguration { /** - *

    A list of objects, each of which contains information about a data source.

    + *

    The Amazon Resource Name (ARN) of the KMS key used to encrypt the resource.

    * @public */ - dataSourceSummaries: DataSourceSummary[] | undefined; + kmsKeyArn?: string; +} + +/** + * @public + * @enum + */ +export const ChunkingStrategy = { + FIXED_SIZE: "FIXED_SIZE", + HIERARCHICAL: "HIERARCHICAL", + NONE: "NONE", + SEMANTIC: "SEMANTIC", +} as const; + +/** + * @public + */ +export type ChunkingStrategy = (typeof ChunkingStrategy)[keyof typeof ChunkingStrategy]; +/** + *

    Configurations for when you choose fixed-size chunking. If you set the chunkingStrategy as NONE, exclude this field.

    + * @public + */ +export interface FixedSizeChunkingConfiguration { /** - *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + *

    The maximum number of tokens to include in a chunk.

    * @public */ - nextToken?: string; + maxTokens: number | undefined; + + /** + *

    The percentage of overlap between adjacent chunks of a data source.

    + * @public + */ + overlapPercentage: number | undefined; } /** + *

    Token settings for a layer in a hierarchical chunking configuration.

    * @public */ -export interface UpdateDataSourceRequest { +export interface HierarchicalChunkingLevelConfiguration { /** - *

    The unique identifier of the knowledge base to which the data source belongs.

    + *

    The maximum number of tokens that a chunk can contain in this layer.

    * @public */ - knowledgeBaseId: string | undefined; + maxTokens: number | undefined; +} +/** + *

    Settings for hierarchical document chunking for a data source. Hierarchical chunking splits documents + * into layers of chunks where the first layer contains large chunks, and the second layer contains smaller + * chunks derived from the first layer.

    + *

    You configure the number of tokens to overlap, or repeat across adjacent chunks. For example, + * if you set overlap tokens to 60, the last 60 tokens in the first chunk are also included at the beginning of + * the second chunk. For each layer, you must also configure the maximum number of tokens in a chunk.

    + * @public + */ +export interface HierarchicalChunkingConfiguration { /** - *

    The unique identifier of the data source.

    + *

    Token settings for each layer.

    * @public */ - dataSourceId: string | undefined; + levelConfigurations: HierarchicalChunkingLevelConfiguration[] | undefined; /** - *

    Specifies a new name for the data source.

    + *

    The number of tokens to repeat across chunks in the same layer.

    * @public */ - name: string | undefined; + overlapTokens: number | undefined; +} +/** + *

    Settings for semantic document chunking for a data source. Semantic chunking splits + * a document into into smaller documents based on groups of similar content derived from the text + * with natural language processing.

    + *

    With semantic chunking, each sentence is compared to the next to determine how similar they are. + * You specify a threshold in the form of a percentile, where adjacent sentences that are less similar than + * that percentage of sentence pairs are divided into separate chunks. For example, if you set the threshold to + * 90, then the 10 percent of sentence pairs that are least similar are split. So if you have 101 sentences, + * 100 sentence pairs are compared, and the 10 with the least similarity are split, creating 11 chunks. These + * chunks are further split if they exceed the max token size.

    + *

    You must also specify a buffer size, which determines whether sentences are compared in isolation, or + * within a moving context window that includes the previous and following sentence. For example, if you set + * the buffer size to 1, the embedding for sentence 10 is derived from sentences 9, 10, and 11 + * combined.

    + * @public + */ +export interface SemanticChunkingConfiguration { /** - *

    Specifies a new description for the data source.

    + *

    The maximum number of tokens that a chunk can contain.

    * @public */ - description?: string; + maxTokens: number | undefined; /** - *

    Contains details about the storage configuration of the data source.

    + *

    The buffer size.

    * @public */ - dataSourceConfiguration: DataSourceConfiguration | undefined; + bufferSize: number | undefined; /** - *

    The data deletion policy of the updated data source.

    + *

    The dissimilarity threshold for splitting chunks.

    * @public */ - dataDeletionPolicy?: DataDeletionPolicy; + breakpointPercentileThreshold: number | undefined; +} +/** + *

    Details about how to chunk the documents in the data source. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried.

    + * @public + */ +export interface ChunkingConfiguration { /** - *

    Contains details about server-side encryption of the data source.

    + *

    Knowledge base can split your source data into chunks. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried. You have the following options for chunking your data. If you opt for NONE, then you may want to pre-process your files by splitting them up such that each file corresponds to a chunk.

    + *
      + *
    • + *

      + * FIXED_SIZE – Amazon Bedrock splits your source data into chunks of the approximate size that you set in the fixedSizeChunkingConfiguration.

      + *
    • + *
    • + *

      + * HIERARCHICAL – Split documents into layers of chunks where the first layer contains large chunks, and the second layer contains smaller chunks derived from the first layer.

      + *
    • + *
    • + *

      + * SEMANTIC – Split documents into chunks based on groups of similar content derived with natural language processing.

      + *
    • + *
    • + *

      + * NONE – Amazon Bedrock treats each file as one chunk. If you choose this option, you may want to pre-process your documents by splitting them into separate files.

      + *
    • + *
    * @public */ - serverSideEncryptionConfiguration?: ServerSideEncryptionConfiguration; + chunkingStrategy: ChunkingStrategy | undefined; /** - *

    Contains details about how to ingest the documents in the data source.

    + *

    Configurations for when you choose fixed-size chunking. If you set the chunkingStrategy as NONE, exclude this field.

    * @public */ - vectorIngestionConfiguration?: VectorIngestionConfiguration; + fixedSizeChunkingConfiguration?: FixedSizeChunkingConfiguration; + + /** + *

    Settings for hierarchical document chunking for a data source. Hierarchical chunking splits documents + * into layers of chunks where the first layer contains large chunks, and the second layer contains smaller + * chunks derived from the first layer.

    + * @public + */ + hierarchicalChunkingConfiguration?: HierarchicalChunkingConfiguration; + + /** + *

    Settings for semantic document chunking for a data source. Semantic chunking splits + * a document into into smaller documents based on groups of similar content derived from the text + * with natural language processing.

    + * @public + */ + semanticChunkingConfiguration?: SemanticChunkingConfiguration; } /** + *

    An Amazon S3 location.

    * @public */ -export interface UpdateDataSourceResponse { +export interface S3Location { /** - *

    Contains details about the data source.

    + *

    The location's URI. For example, s3://my-bucket/chunk-processor/.

    * @public */ - dataSource: DataSource | undefined; + uri: string | undefined; } /** + *

    A location for storing content from data sources temporarily as it is processed by + * custom components in the ingestion pipeline.

    * @public */ -export interface GetIngestionJobRequest { +export interface IntermediateStorage { /** - *

    The unique identifier of the knowledge base for which the ingestion job applies.

    + *

    An S3 bucket path.

    * @public */ - knowledgeBaseId: string | undefined; + s3Location: S3Location | undefined; +} + +/** + * @public + * @enum + */ +export const StepType = { + POST_CHUNKING: "POST_CHUNKING", +} as const; +/** + * @public + */ +export type StepType = (typeof StepType)[keyof typeof StepType]; + +/** + *

    A Lambda function that processes documents.

    + * @public + */ +export interface TransformationLambdaConfiguration { /** - *

    The unique identifier of the data source in the ingestion job.

    + *

    The function's ARN identifier.

    * @public */ - dataSourceId: string | undefined; + lambdaArn: string | undefined; +} +/** + *

    A Lambda function that processes documents.

    + * @public + */ +export interface TransformationFunction { /** - *

    The unique identifier of the ingestion job.

    + *

    The Lambda function.

    * @public */ - ingestionJobId: string | undefined; + transformationLambdaConfiguration: TransformationLambdaConfiguration | undefined; } /** - *

    Contains the statistics for the ingestion job.

    + *

    A custom processing step for documents moving through a data source ingestion pipeline. To + * process documents after they have been converted into chunks, set the step to apply to + * POST_CHUNKING.

    * @public */ -export interface IngestionJobStatistics { +export interface Transformation { /** - *

    The total number of source documents that were scanned. Includes new, updated, and unchanged documents.

    + *

    A Lambda function that processes documents.

    * @public */ - numberOfDocumentsScanned?: number; + transformationFunction: TransformationFunction | undefined; /** - *

    The total number of metadata files that were scanned. Includes new, updated, and unchanged files.

    + *

    When the service applies the transformation.

    * @public */ - numberOfMetadataDocumentsScanned?: number; + stepToApply: StepType | undefined; +} +/** + *

    Settings for customizing steps in the data source content ingestion pipeline.

    + *

    You can configure the data source to process documents with a Lambda function after + * they are parsed and converted into chunks. When you add a post-chunking transformation, + * the service stores chunked documents in an S3 bucket and invokes a Lambda function to process + * them.

    + *

    To process chunked documents with a Lambda function, define an S3 bucket path for input + * and output objects, and a transformation that specifies the Lambda function to invoke. You can + * use the Lambda function to customize how chunks are split, and the metadata for each chunk. + *

    + * @public + */ +export interface CustomTransformationConfiguration { /** - *

    The number of new source documents in the data source that were successfully indexed.

    + *

    An S3 bucket path for input and output objects.

    * @public */ - numberOfNewDocumentsIndexed?: number; + intermediateStorage: IntermediateStorage | undefined; /** - *

    The number of modified source documents in the data source that were successfully indexed.

    + *

    A Lambda function that processes documents.

    * @public */ - numberOfModifiedDocumentsIndexed?: number; + transformations: Transformation[] | undefined; +} +/** + *

    Instructions for interpreting the contents of a document.

    + * @public + */ +export interface ParsingPrompt { /** - *

    The number of metadata files that were updated or deleted.

    + *

    Instructions for interpreting the contents of a document.

    * @public */ - numberOfMetadataDocumentsModified?: number; + parsingPromptText: string | undefined; +} +/** + *

    Settings for a foundation model used to parse documents for a data source.

    + * @public + */ +export interface BedrockFoundationModelConfiguration { /** - *

    The number of source documents that was deleted.

    + *

    The model's ARN.

    * @public */ - numberOfDocumentsDeleted?: number; + modelArn: string | undefined; /** - *

    The number of source documents that failed to be ingested.

    + *

    Instructions for interpreting the contents of a document.

    * @public */ - numberOfDocumentsFailed?: number; + parsingPrompt?: ParsingPrompt; } /** * @public * @enum */ -export const IngestionJobStatus = { - COMPLETE: "COMPLETE", - FAILED: "FAILED", - IN_PROGRESS: "IN_PROGRESS", - STARTING: "STARTING", +export const ParsingStrategy = { + BEDROCK_FOUNDATION_MODEL: "BEDROCK_FOUNDATION_MODEL", } as const; /** * @public */ -export type IngestionJobStatus = (typeof IngestionJobStatus)[keyof typeof IngestionJobStatus]; +export type ParsingStrategy = (typeof ParsingStrategy)[keyof typeof ParsingStrategy]; /** - *

    Contains details about an ingestion job, which converts a data source to embeddings for a vector store in knowledge base.

    - *

    This data type is used in the following API operations:

    + *

    Settings for parsing document contents. By default, the service converts the contents of each + * document into text before splitting it into chunks. To improve processing of PDF files with tables and images, + * you can configure the data source to convert the pages of text into images and use a model to describe the + * contents of each page.

    + *

    To use a model to parse PDF documents, set the parsing strategy to BEDROCK_FOUNDATION_MODEL and + * specify the model to use by ARN. You can also override the default parsing prompt with instructions for how + * to interpret images and tables in your documents. The following models are supported.

    * + *

    You can get the ARN of a model with the action. Standard model usage + * charges apply for the foundation model parsing strategy.

    * @public */ -export interface IngestionJob { +export interface ParsingConfiguration { /** - *

    The unique identifier of the knowledge base to which the data source is being added.

    + *

    The parsing strategy for the data source.

    * @public */ - knowledgeBaseId: string | undefined; + parsingStrategy: ParsingStrategy | undefined; /** - *

    The unique identifier of the ingested data source.

    + *

    Settings for a foundation model used to parse documents for a data source.

    * @public */ - dataSourceId: string | undefined; + bedrockFoundationModelConfiguration?: BedrockFoundationModelConfiguration; +} +/** + *

    Contains details about how to ingest the documents in a data source.

    + * @public + */ +export interface VectorIngestionConfiguration { /** - *

    The unique identifier of the ingestion job.

    + *

    Details about how to chunk the documents in the data source. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried.

    * @public */ - ingestionJobId: string | undefined; + chunkingConfiguration?: ChunkingConfiguration; /** - *

    The description of the ingestion job.

    + *

    A custom document transformer for parsed data source documents.

    * @public */ - description?: string; + customTransformationConfiguration?: CustomTransformationConfiguration; /** - *

    The status of the ingestion job.

    + *

    A custom parser for data source documents.

    * @public */ - status: IngestionJobStatus | undefined; + parsingConfiguration?: ParsingConfiguration; +} +/** + * @public + */ +export interface CreateDataSourceRequest { /** - *

    Contains statistics about the ingestion job.

    + *

    The unique identifier of the knowledge base to which to add the data source.

    * @public */ - statistics?: IngestionJobStatistics; + knowledgeBaseId: string | undefined; /** - *

    A list of reasons that the ingestion job failed.

    + *

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, + * Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    * @public */ - failureReasons?: string[]; + clientToken?: string; /** - *

    The time at which the ingestion job started.

    + *

    The name of the data source.

    * @public */ - startedAt: Date | undefined; + name: string | undefined; /** - *

    The time at which the ingestion job was last updated.

    + *

    A description of the data source.

    * @public */ - updatedAt: Date | undefined; -} + description?: string; -/** - * @public - */ -export interface GetIngestionJobResponse { /** - *

    Contains details about the ingestion job.

    + *

    The connection configuration for the data source.

    * @public */ - ingestionJob: IngestionJob | undefined; -} - -/** - * @public - * @enum - */ -export const IngestionJobFilterAttribute = { - STATUS: "STATUS", -} as const; - -/** - * @public - */ -export type IngestionJobFilterAttribute = - (typeof IngestionJobFilterAttribute)[keyof typeof IngestionJobFilterAttribute]; - -/** - * @public - * @enum - */ -export const IngestionJobFilterOperator = { - EQ: "EQ", -} as const; - -/** - * @public - */ -export type IngestionJobFilterOperator = (typeof IngestionJobFilterOperator)[keyof typeof IngestionJobFilterOperator]; + dataSourceConfiguration: DataSourceConfiguration | undefined; -/** - *

    Defines a filter by which to filter the results.

    - * @public - */ -export interface IngestionJobFilter { /** - *

    The attribute by which to filter the results.

    + *

    The data deletion policy for the data source.

    + *

    You can set the data deletion policy to:

    + *
      + *
    • + *

      DELETE: Deletes all underlying data belonging to + * the data source from the vector store upon deletion of a knowledge base or data + * source resource. Note that the vector store itself is not deleted, only the + * underlying data. This flag is ignored if an Amazon Web Services account is deleted.

      + *
    • + *
    • + *

      RETAIN: Retains all underlying data in your + * vector store upon deletion of a knowledge base or data source resource.

      + *
    • + *
    * @public */ - attribute: IngestionJobFilterAttribute | undefined; + dataDeletionPolicy?: DataDeletionPolicy; /** - *

    The operation to carry out between the attribute and the values.

    + *

    Contains details about the server-side encryption for the data source.

    * @public */ - operator: IngestionJobFilterOperator | undefined; + serverSideEncryptionConfiguration?: ServerSideEncryptionConfiguration; /** - *

    A list of values for the attribute.

    + *

    Contains details about how to ingest the documents in the data source.

    * @public */ - values: string[] | undefined; + vectorIngestionConfiguration?: VectorIngestionConfiguration; } /** * @public * @enum */ -export const IngestionJobSortByAttribute = { - STARTED_AT: "STARTED_AT", - STATUS: "STATUS", -} as const; - -/** - * @public - */ -export type IngestionJobSortByAttribute = - (typeof IngestionJobSortByAttribute)[keyof typeof IngestionJobSortByAttribute]; - -/** - * @public - * @enum - */ -export const SortOrder = { - ASCENDING: "ASCENDING", - DESCENDING: "DESCENDING", +export const DataSourceStatus = { + AVAILABLE: "AVAILABLE", + DELETE_UNSUCCESSFUL: "DELETE_UNSUCCESSFUL", + DELETING: "DELETING", } as const; /** * @public */ -export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]; - -/** - *

    Parameters by which to sort the results.

    - * @public - */ -export interface IngestionJobSortBy { - /** - *

    The attribute by which to sort the results.

    - * @public - */ - attribute: IngestionJobSortByAttribute | undefined; - - /** - *

    The order by which to sort the results.

    - * @public - */ - order: SortOrder | undefined; -} +export type DataSourceStatus = (typeof DataSourceStatus)[keyof typeof DataSourceStatus]; /** + *

    Contains details about a data source.

    * @public */ -export interface ListIngestionJobsRequest { +export interface DataSource { /** - *

    The unique identifier of the knowledge base for which to return ingestion jobs.

    + *

    The unique identifier of the knowledge base to which the data source belongs.

    * @public */ knowledgeBaseId: string | undefined; /** - *

    The unique identifier of the data source for which to return ingestion jobs.

    + *

    The unique identifier of the data source.

    * @public */ dataSourceId: string | undefined; /** - *

    Contains a definition of a filter for which to filter the results.

    - * @public - */ - filters?: IngestionJobFilter[]; - - /** - *

    Contains details about how to sort the results.

    + *

    The name of the data source.

    * @public */ - sortBy?: IngestionJobSortBy; + name: string | undefined; /** - *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    + *

    The status of the data source. The following statuses are possible:

    + *
      + *
    • + *

      Available – The data source has been created and is ready for ingestion into the knowledge base.

      + *
    • + *
    • + *

      Deleting – The data source is being deleted.

      + *
    • + *
    * @public */ - maxResults?: number; + status: DataSourceStatus | undefined; /** - *

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    + *

    The description of the data source.

    * @public */ - nextToken?: string; -} + description?: string; -/** - *

    Contains details about an ingestion job.

    - * @public - */ -export interface IngestionJobSummary { /** - *

    The unique identifier of the knowledge base to which the data source is added.

    + *

    The connection configuration for the data source.

    * @public */ - knowledgeBaseId: string | undefined; + dataSourceConfiguration: DataSourceConfiguration | undefined; /** - *

    The unique identifier of the data source in the ingestion job.

    + *

    Contains details about the configuration of the server-side encryption.

    * @public */ - dataSourceId: string | undefined; + serverSideEncryptionConfiguration?: ServerSideEncryptionConfiguration; /** - *

    The unique identifier of the ingestion job.

    + *

    Contains details about how to ingest the documents in the data source.

    * @public */ - ingestionJobId: string | undefined; + vectorIngestionConfiguration?: VectorIngestionConfiguration; /** - *

    The description of the ingestion job.

    + *

    The data deletion policy for the data source.

    * @public */ - description?: string; + dataDeletionPolicy?: DataDeletionPolicy; /** - *

    The status of the ingestion job.

    + *

    The time at which the data source was created.

    * @public */ - status: IngestionJobStatus | undefined; + createdAt: Date | undefined; /** - *

    The time at which the ingestion job was started.

    + *

    The time at which the data source was last updated.

    * @public */ - startedAt: Date | undefined; + updatedAt: Date | undefined; /** - *

    The time at which the ingestion job was last updated.

    + *

    The detailed reasons on the failure to delete a data source.

    * @public */ - updatedAt: Date | undefined; + failureReasons?: string[]; +} +/** + * @public + */ +export interface CreateDataSourceResponse { /** - *

    Contains statistics for the ingestion job.

    + *

    Contains details about the data source.

    * @public */ - statistics?: IngestionJobStatistics; + dataSource: DataSource | undefined; } /** * @public */ -export interface ListIngestionJobsResponse { +export interface DeleteDataSourceRequest { /** - *

    A list of objects, each of which contains information about an ingestion job.

    + *

    The unique identifier of the knowledge base from which to delete the data source.

    * @public */ - ingestionJobSummaries: IngestionJobSummary[] | undefined; + knowledgeBaseId: string | undefined; /** - *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + *

    The unique identifier of the data source to delete.

    * @public */ - nextToken?: string; + dataSourceId: string | undefined; } /** * @public */ -export interface StartIngestionJobRequest { +export interface DeleteDataSourceResponse { /** - *

    The unique identifier of the knowledge base to which to add the data source.

    + *

    The unique identifier of the knowledge base to which the data source that was deleted belonged.

    * @public */ knowledgeBaseId: string | undefined; /** - *

    The unique identifier of the data source to ingest.

    + *

    The unique identifier of the data source that was deleted.

    * @public */ dataSourceId: string | undefined; /** - *

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, - * Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    + *

    The status of the data source.

    * @public */ - clientToken?: string; + status: DataSourceStatus | undefined; +} +/** + * @public + */ +export interface GetDataSourceRequest { /** - *

    A description of the ingestion job.

    + *

    The unique identifier of the knowledge base that the data source was added to.

    * @public */ - description?: string; + knowledgeBaseId: string | undefined; + + /** + *

    The unique identifier of the data source.

    + * @public + */ + dataSourceId: string | undefined; } /** * @public */ -export interface StartIngestionJobResponse { +export interface GetDataSourceResponse { /** - *

    An object containing information about the ingestion job.

    + *

    Contains details about the data source.

    * @public */ - ingestionJob: IngestionJob | undefined; + dataSource: DataSource | undefined; } /** * @public */ -export interface AssociateAgentKnowledgeBaseRequest { +export interface ListDataSourcesRequest { /** - *

    The unique identifier of the agent with which you want to associate the knowledge base.

    + *

    The unique identifier of the knowledge base for which to return a list of information.

    * @public */ - agentId: string | undefined; + knowledgeBaseId: string | undefined; /** - *

    The version of the agent with which you want to associate the knowledge base.

    + *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    * @public */ - agentVersion: string | undefined; + maxResults?: number; /** - *

    The unique identifier of the knowledge base to associate with the agent.

    + *

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    * @public */ - knowledgeBaseId: string | undefined; + nextToken?: string; +} +/** + *

    Contains details about a data source.

    + * @public + */ +export interface DataSourceSummary { /** - *

    A description of what the agent should use the knowledge base for.

    + *

    The unique identifier of the knowledge base to which the data source belongs.

    * @public */ - description: string | undefined; + knowledgeBaseId: string | undefined; /** - *

    Specifies whether to use the knowledge base or not when sending an InvokeAgent request.

    + *

    The unique identifier of the data source.

    * @public */ - knowledgeBaseState?: KnowledgeBaseState; -} + dataSourceId: string | undefined; -/** - * @public - */ -export interface AssociateAgentKnowledgeBaseResponse { /** - *

    Contains details about the knowledge base that has been associated with the agent.

    + *

    The name of the data source.

    * @public */ - agentKnowledgeBase: AgentKnowledgeBase | undefined; -} - -/** - * @public - * @enum - */ -export const KnowledgeBaseType = { - VECTOR: "VECTOR", -} as const; + name: string | undefined; -/** - * @public - */ -export type KnowledgeBaseType = (typeof KnowledgeBaseType)[keyof typeof KnowledgeBaseType]; + /** + *

    The status of the data source.

    + * @public + */ + status: DataSourceStatus | undefined; -/** - *

    The vector configuration details for the Bedrock embeddings model.

    - * @public - */ -export interface BedrockEmbeddingModelConfiguration { /** - *

    The dimensions details for the vector configuration used on the Bedrock embeddings model.

    + *

    The description of the data source.

    * @public */ - dimensions?: number; -} + description?: string; -/** - *

    The configuration details for the embeddings model.

    - * @public - */ -export interface EmbeddingModelConfiguration { /** - *

    The vector configuration details on the Bedrock embeddings model.

    + *

    The time at which the data source was last updated.

    * @public */ - bedrockEmbeddingModelConfiguration?: BedrockEmbeddingModelConfiguration; + updatedAt: Date | undefined; } /** - *

    Contains details about the model used to create vector embeddings for the knowledge base.

    * @public */ -export interface VectorKnowledgeBaseConfiguration { +export interface ListDataSourcesResponse { /** - *

    The Amazon Resource Name (ARN) of the model used to create vector embeddings for the knowledge base.

    + *

    A list of objects, each of which contains information about a data source.

    * @public */ - embeddingModelArn: string | undefined; + dataSourceSummaries: DataSourceSummary[] | undefined; /** - *

    The embeddings model configuration details for the vector model used in Knowledge Base.

    + *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    * @public */ - embeddingModelConfiguration?: EmbeddingModelConfiguration; + nextToken?: string; } /** - *

    Contains details about the embeddings configuration of the knowledge base.

    * @public */ -export interface KnowledgeBaseConfiguration { +export interface UpdateDataSourceRequest { /** - *

    The type of data that the data source is converted into for the knowledge base.

    + *

    The unique identifier of the knowledge base for the data source.

    * @public */ - type: KnowledgeBaseType | undefined; + knowledgeBaseId: string | undefined; /** - *

    Contains details about the embeddings model that'sused to convert the data source.

    + *

    The unique identifier of the data source.

    * @public */ - vectorKnowledgeBaseConfiguration?: VectorKnowledgeBaseConfiguration; -} + dataSourceId: string | undefined; -/** - *

    Contains the names of the fields to which to map information about the vector store.

    - * @public - */ -export interface MongoDbAtlasFieldMapping { /** - *

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    + *

    Specifies a new name for the data source.

    * @public */ - vectorField: string | undefined; + name: string | undefined; /** - *

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    + *

    Specifies a new description for the data source.

    * @public */ - textField: string | undefined; + description?: string; /** - *

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

    + *

    The connection configuration for the data source that you want to update.

    * @public */ - metadataField: string | undefined; -} + dataSourceConfiguration: DataSourceConfiguration | undefined; -/** - *

    Contains details about the storage configuration of the knowledge base in MongoDB Atlas.

    - * @public - */ -export interface MongoDbAtlasConfiguration { /** - *

    The endpoint URL of your MongoDB Atlas cluster for your knowledge base.

    + *

    The data deletion policy for the data source that you want to update.

    * @public */ - endpoint: string | undefined; + dataDeletionPolicy?: DataDeletionPolicy; /** - *

    The database name in your MongoDB Atlas cluster for your knowledge base.

    + *

    Contains details about server-side encryption of the data source.

    * @public */ - databaseName: string | undefined; + serverSideEncryptionConfiguration?: ServerSideEncryptionConfiguration; /** - *

    The collection name of the knowledge base in MongoDB Atlas.

    + *

    Contains details about how to ingest the documents in the data source.

    * @public */ - collectionName: string | undefined; + vectorIngestionConfiguration?: VectorIngestionConfiguration; +} +/** + * @public + */ +export interface UpdateDataSourceResponse { /** - *

    The name of the MongoDB Atlas vector search index.

    + *

    Contains details about the data source.

    * @public */ - vectorIndexName: string | undefined; + dataSource: DataSource | undefined; +} +/** + *

    The configuration of a connection between a condition node and another node.

    + * @public + */ +export interface FlowConditionalConnectionConfiguration { /** - *

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that contains user credentials for your MongoDB Atlas cluster.

    + *

    The condition that triggers this connection. For more information about how to write conditions, see the Condition node type in the Node types topic in the Amazon Bedrock User Guide.

    * @public */ - credentialsSecretArn: string | undefined; + condition: string | undefined; +} +/** + *

    The configuration of a connection originating from a node that isn't a Condition node.

    + * @public + */ +export interface FlowDataConnectionConfiguration { /** - *

    Contains the names of the fields to which to map information about the vector store.

    + *

    The name of the output in the source node that the connection begins from.

    * @public */ - fieldMapping: MongoDbAtlasFieldMapping | undefined; + sourceOutput: string | undefined; /** - *

    The name of the VPC endpoint service in your account that is connected to your MongoDB Atlas cluster.

    + *

    The name of the input in the target node that the connection ends at.

    * @public */ - endpointServiceName?: string; + targetInput: string | undefined; } /** - *

    Contains the names of the fields to which to map information about the vector store.

    + *

    The configuration of the connection.

    * @public */ -export interface OpenSearchServerlessFieldMapping { +export type FlowConnectionConfiguration = + | FlowConnectionConfiguration.ConditionalMember + | FlowConnectionConfiguration.DataMember + | FlowConnectionConfiguration.$UnknownMember; + +/** + * @public + */ +export namespace FlowConnectionConfiguration { /** - *

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    + *

    The configuration of a connection originating from a node that isn't a Condition node.

    * @public */ - vectorField: string | undefined; + export interface DataMember { + data: FlowDataConnectionConfiguration; + conditional?: never; + $unknown?: never; + } /** - *

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    + *

    The configuration of a connection originating from a Condition node.

    * @public */ - textField: string | undefined; + export interface ConditionalMember { + data?: never; + conditional: FlowConditionalConnectionConfiguration; + $unknown?: never; + } /** - *

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

    * @public */ - metadataField: string | undefined; + export interface $UnknownMember { + data?: never; + conditional?: never; + $unknown: [string, any]; + } + + export interface Visitor { + data: (value: FlowDataConnectionConfiguration) => T; + conditional: (value: FlowConditionalConnectionConfiguration) => T; + _: (name: string, value: any) => T; + } + + export const visit = (value: FlowConnectionConfiguration, visitor: Visitor): T => { + if (value.data !== undefined) return visitor.data(value.data); + if (value.conditional !== undefined) return visitor.conditional(value.conditional); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; } /** - *

    Contains details about the storage configuration of the knowledge base in Amazon OpenSearch Service. For more information, see Create a vector index in Amazon OpenSearch Service.

    * @public + * @enum */ -export interface OpenSearchServerlessConfiguration { +export const FlowConnectionType = { + CONDITIONAL: "Conditional", + DATA: "Data", +} as const; + +/** + * @public + */ +export type FlowConnectionType = (typeof FlowConnectionType)[keyof typeof FlowConnectionType]; + +/** + *

    Contains information about a connection between two nodes in the flow.

    + * @public + */ +export interface FlowConnection { /** - *

    The Amazon Resource Name (ARN) of the OpenSearch Service vector store.

    + *

    Whether the source node that the connection begins from is a condition node (Conditional) or not (Data).

    * @public */ - collectionArn: string | undefined; + type: FlowConnectionType | undefined; /** - *

    The name of the vector store.

    + *

    A name for the connection that you can reference.

    * @public */ - vectorIndexName: string | undefined; + name: string | undefined; /** - *

    Contains the names of the fields to which to map information about the vector store.

    + *

    The node that the connection starts at.

    * @public */ - fieldMapping: OpenSearchServerlessFieldMapping | undefined; -} + source: string | undefined; -/** - *

    Contains the names of the fields to which to map information about the vector store.

    - * @public - */ -export interface PineconeFieldMapping { /** - *

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    + *

    The node that the connection ends at.

    * @public */ - textField: string | undefined; + target: string | undefined; /** - *

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

    + *

    The configuration of the connection.

    * @public */ - metadataField: string | undefined; + configuration?: FlowConnectionConfiguration; } /** - *

    Contains details about the storage configuration of the knowledge base in Pinecone. For more information, see Create a vector index in Pinecone.

    + *

    Defines a collector node in your flow. This node takes an iteration of inputs and consolidates them into an array in the output. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    * @public */ -export interface PineconeConfiguration { - /** - *

    The endpoint URL for your index management page.

    - * @public - */ - connectionString: string | undefined; +export interface CollectorFlowNodeConfiguration {} +/** + *

    Defines a condition in the condition node.

    + * @public + */ +export interface FlowCondition { /** - *

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Pinecone API key.

    + *

    A name for the condition that you can reference.

    * @public */ - credentialsSecretArn: string | undefined; + name: string | undefined; /** - *

    The namespace to be used to write new data to your database.

    + *

    Defines the condition. You must refer to at least one of the inputs in the condition. For more information, expand the Condition node section in Node types in prompt flows.

    * @public */ - namespace?: string; + expression?: string; +} +/** + *

    Defines a condition node in your flow. You can specify conditions that determine which node comes next in the flow. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    + * @public + */ +export interface ConditionFlowNodeConfiguration { /** - *

    Contains the names of the fields to which to map information about the vector store.

    + *

    An array of conditions. Each member contains the name of a condition and an expression that defines the condition.

    * @public */ - fieldMapping: PineconeFieldMapping | undefined; + conditions: FlowCondition[] | undefined; } /** - *

    Contains the names of the fields to which to map information about the vector store.

    + *

    Contains configurations for the input flow node for a flow. This node takes the input from flow invocation and passes it to the next node in the data type that you specify.

    * @public */ -export interface RdsFieldMapping { +export interface InputFlowNodeConfiguration {} + +/** + *

    Contains configurations for an iterator node in a flow. Takes an input that is an array and iteratively sends each item of the array as an output to the following node. The size of the array is also returned in the output.

    + *

    The output flow node at the end of the flow iteration will return a response for each member of the array. To return only one response, you can include a collector node downstream from the iterator node.

    + * @public + */ +export interface IteratorFlowNodeConfiguration {} + +/** + *

    Contains configurations for a knowledge base node in a flow. This node takes a query as the input and returns, as the output, the retrieved responses directly (as an array) or a response generated based on the retrieved responses. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    + * @public + */ +export interface KnowledgeBaseFlowNodeConfiguration { /** - *

    The name of the field in which Amazon Bedrock stores the ID for each entry.

    + *

    The unique identifier of the knowledge base to query.

    * @public */ - primaryKeyField: string | undefined; + knowledgeBaseId: string | undefined; /** - *

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    + *

    The unique identifier of the model to use to generate a response from the query results. Omit this field if you want to return the retrieved results as an array.

    * @public */ - vectorField: string | undefined; + modelId?: string; +} +/** + *

    Contains configurations for a Lambda function node in the flow. You specify the Lambda function to invoke and the inputs into the function. The output is the response that is defined in the Lambda function. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    + * @public + */ +export interface LambdaFunctionFlowNodeConfiguration { /** - *

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    + *

    The Amazon Resource Name (ARN) of the Lambda function to invoke.

    * @public */ - textField: string | undefined; + lambdaArn: string | undefined; +} + +/** + *

    Contains configurations for a Lex node in the flow. You specify a Amazon Lex bot to invoke. This node takes an utterance as the input and returns as the output the intent identified by the Amazon Lex bot. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

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

    The Amazon Resource Name (ARN) of the Amazon Lex bot alias to invoke.

    + * @public + */ + botAliasArn: string | undefined; /** - *

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

    + *

    The Region to invoke the Amazon Lex bot in.

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

    Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see Create a vector index in Amazon RDS.

    + *

    Contains configurations for an output flow node in the flow. You specify the data type expected for the input into the node in the type field and how to return the final output in the expression field.

    * @public */ -export interface RdsConfiguration { +export interface OutputFlowNodeConfiguration {} + +/** + *

    Contains inference configurations related to model inference for a prompt. For more information, see Inference parameters.

    + * @public + */ +export interface PromptModelInferenceConfiguration { /** - *

    The Amazon Resource Name (ARN) of the vector store.

    + *

    Controls the randomness of the response. Choose a lower value for more predictable outputs and a higher value for more surprising outputs.

    * @public */ - resourceArn: string | undefined; + temperature?: number; /** - *

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Amazon RDS database.

    + *

    The percentage of most-likely candidates that the model considers for the next token.

    * @public */ - credentialsSecretArn: string | undefined; + topP?: number; /** - *

    The name of your Amazon RDS database.

    + *

    The number of most-likely candidates that the model considers for the next token during generation.

    * @public */ - databaseName: string | undefined; + topK?: number; /** - *

    The name of the table in the database.

    + *

    The maximum number of tokens to return in the response.

    * @public */ - tableName: string | undefined; + maxTokens?: number; /** - *

    Contains the names of the fields to which to map information about the vector store.

    + *

    A list of strings that define sequences after which the model will stop generating.

    * @public */ - fieldMapping: RdsFieldMapping | undefined; + stopSequences?: string[]; } /** - *

    Contains the names of the fields to which to map information about the vector store.

    + *

    Contains inference configurations for the prompt.

    * @public */ -export interface RedisEnterpriseCloudFieldMapping { - /** - *

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    +export type PromptInferenceConfiguration = + | PromptInferenceConfiguration.TextMember + | PromptInferenceConfiguration.$UnknownMember; + +/** + * @public + */ +export namespace PromptInferenceConfiguration { + /** + *

    Contains inference configurations for a text prompt.

    * @public */ - vectorField: string | undefined; + export interface TextMember { + text: PromptModelInferenceConfiguration; + $unknown?: never; + } /** - *

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    * @public */ - textField: string | undefined; + export interface $UnknownMember { + text?: never; + $unknown: [string, any]; + } + + export interface Visitor { + text: (value: PromptModelInferenceConfiguration) => T; + _: (name: string, value: any) => T; + } + + export const visit = (value: PromptInferenceConfiguration, visitor: Visitor): T => { + if (value.text !== undefined) return visitor.text(value.text); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; +} +/** + *

    Contains information about a variable in the prompt.

    + * @public + */ +export interface PromptInputVariable { /** - *

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

    + *

    The name of the variable.

    * @public */ - metadataField: string | undefined; + name?: string; } /** - *

    Contains details about the storage configuration of the knowledge base in Redis Enterprise Cloud. For more information, see Create a vector index in Redis Enterprise Cloud.

    + *

    Contains configurations for a text prompt template. To include a variable, enclose a word in double curly braces as in \{\{variable\}\}.

    * @public */ -export interface RedisEnterpriseCloudConfiguration { +export interface TextPromptTemplateConfiguration { /** - *

    The endpoint URL of the Redis Enterprise Cloud database.

    + *

    The message for the prompt.

    * @public */ - endpoint: string | undefined; + text: string | undefined; /** - *

    The name of the vector index.

    + *

    An array of the variables in the prompt template.

    * @public */ - vectorIndexName: string | undefined; + inputVariables?: PromptInputVariable[]; +} + +/** + *

    Contains the message for a prompt. For more information, see Prompt management in Amazon Bedrock.

    + * @public + */ +export type PromptTemplateConfiguration = + | PromptTemplateConfiguration.TextMember + | PromptTemplateConfiguration.$UnknownMember; +/** + * @public + */ +export namespace PromptTemplateConfiguration { /** - *

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Redis Enterprise Cloud database.

    + *

    Contains configurations for the text in a message for a prompt.

    * @public */ - credentialsSecretArn: string | undefined; + export interface TextMember { + text: TextPromptTemplateConfiguration; + $unknown?: never; + } /** - *

    Contains the names of the fields to which to map information about the vector store.

    * @public */ - fieldMapping: RedisEnterpriseCloudFieldMapping | undefined; + export interface $UnknownMember { + text?: never; + $unknown: [string, any]; + } + + export interface Visitor { + text: (value: TextPromptTemplateConfiguration) => T; + _: (name: string, value: any) => T; + } + + export const visit = (value: PromptTemplateConfiguration, visitor: Visitor): T => { + if (value.text !== undefined) return visitor.text(value.text); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; } /** * @public * @enum */ -export const KnowledgeBaseStorageType = { - MONGO_DB_ATLAS: "MONGO_DB_ATLAS", - OPENSEARCH_SERVERLESS: "OPENSEARCH_SERVERLESS", - PINECONE: "PINECONE", - RDS: "RDS", - REDIS_ENTERPRISE_CLOUD: "REDIS_ENTERPRISE_CLOUD", +export const PromptTemplateType = { + TEXT: "TEXT", } as const; /** * @public */ -export type KnowledgeBaseStorageType = (typeof KnowledgeBaseStorageType)[keyof typeof KnowledgeBaseStorageType]; +export type PromptTemplateType = (typeof PromptTemplateType)[keyof typeof PromptTemplateType]; /** - *

    Contains the storage configuration of the knowledge base.

    + *

    Contains configurations for a prompt defined inline in the node.

    * @public */ -export interface StorageConfiguration { - /** - *

    The vector store service in which the knowledge base is stored.

    - * @public - */ - type: KnowledgeBaseStorageType | undefined; - +export interface PromptFlowNodeInlineConfiguration { /** - *

    Contains the storage configuration of the knowledge base in Amazon OpenSearch Service.

    + *

    The type of prompt template.

    * @public */ - opensearchServerlessConfiguration?: OpenSearchServerlessConfiguration; + templateType: PromptTemplateType | undefined; /** - *

    Contains the storage configuration of the knowledge base in Pinecone.

    + *

    Contains a prompt and variables in the prompt that can be replaced with values at runtime.

    * @public */ - pineconeConfiguration?: PineconeConfiguration; + templateConfiguration: PromptTemplateConfiguration | undefined; /** - *

    Contains the storage configuration of the knowledge base in Redis Enterprise Cloud.

    + *

    The unique identifier of the model to run inference with.

    * @public */ - redisEnterpriseCloudConfiguration?: RedisEnterpriseCloudConfiguration; + modelId: string | undefined; /** - *

    Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see Create a vector index in Amazon RDS.

    + *

    Contains inference configurations for the prompt.

    * @public */ - rdsConfiguration?: RdsConfiguration; + inferenceConfiguration?: PromptInferenceConfiguration; +} +/** + *

    Contains configurations for a prompt from Prompt management to use in a node.

    + * @public + */ +export interface PromptFlowNodeResourceConfiguration { /** - *

    Contains the storage configuration of the knowledge base in MongoDB Atlas.

    + *

    The Amazon Resource Name (ARN) of the prompt from Prompt management.

    * @public */ - mongoDbAtlasConfiguration?: MongoDbAtlasConfiguration; + promptArn: string | undefined; } /** + *

    Contains configurations for a prompt and whether it is from Prompt management or defined inline.

    * @public */ -export interface CreateKnowledgeBaseRequest { - /** - *

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, - * Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    - * @public - */ - clientToken?: string; +export type PromptFlowNodeSourceConfiguration = + | PromptFlowNodeSourceConfiguration.InlineMember + | PromptFlowNodeSourceConfiguration.ResourceMember + | PromptFlowNodeSourceConfiguration.$UnknownMember; +/** + * @public + */ +export namespace PromptFlowNodeSourceConfiguration { /** - *

    A name for the knowledge base.

    + *

    Contains configurations for a prompt from Prompt management.

    * @public */ - name: string | undefined; + export interface ResourceMember { + resource: PromptFlowNodeResourceConfiguration; + inline?: never; + $unknown?: never; + } /** - *

    A description of the knowledge base.

    + *

    Contains configurations for a prompt that is defined inline

    * @public */ - description?: string; + export interface InlineMember { + resource?: never; + inline: PromptFlowNodeInlineConfiguration; + $unknown?: never; + } /** - *

    The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

    * @public */ - roleArn: string | undefined; + export interface $UnknownMember { + resource?: never; + inline?: never; + $unknown: [string, any]; + } - /** - *

    Contains details about the embeddings model used for the knowledge base.

    - * @public - */ - knowledgeBaseConfiguration: KnowledgeBaseConfiguration | undefined; + export interface Visitor { + resource: (value: PromptFlowNodeResourceConfiguration) => T; + inline: (value: PromptFlowNodeInlineConfiguration) => T; + _: (name: string, value: any) => T; + } - /** - *

    Contains details about the configuration of the vector database used for the knowledge base.

    - * @public - */ - storageConfiguration: StorageConfiguration | undefined; + export const visit = (value: PromptFlowNodeSourceConfiguration, visitor: Visitor): T => { + if (value.resource !== undefined) return visitor.resource(value.resource); + if (value.inline !== undefined) return visitor.inline(value.inline); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; +} +/** + *

    Contains configurations for a prompt node in the flow. You can use a prompt from Prompt management or you can define one in this node. If the prompt contains variables, the inputs into this node will fill in the variables. The output from this node is the response generated by the model. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    + * @public + */ +export interface PromptFlowNodeConfiguration { /** - *

    Specify the key-value pairs for the tags that you want to attach to your knowledge base in this object.

    + *

    Specifies whether the prompt is from Prompt management or defined inline.

    * @public */ - tags?: Record; + sourceConfiguration: PromptFlowNodeSourceConfiguration | undefined; } /** + *

    Contains configurations for the Amazon S3 location from which to retrieve data to return as the output from the node.

    * @public - * @enum */ -export const KnowledgeBaseStatus = { - ACTIVE: "ACTIVE", - CREATING: "CREATING", - DELETE_UNSUCCESSFUL: "DELETE_UNSUCCESSFUL", - DELETING: "DELETING", - FAILED: "FAILED", - UPDATING: "UPDATING", -} as const; +export interface RetrievalFlowNodeS3Configuration { + /** + *

    The name of the Amazon S3 bucket from which to retrieve data.

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

    Contains configurations for the service to use for retrieving data to return as the output from the node.

    * @public */ -export type KnowledgeBaseStatus = (typeof KnowledgeBaseStatus)[keyof typeof KnowledgeBaseStatus]; +export type RetrievalFlowNodeServiceConfiguration = + | RetrievalFlowNodeServiceConfiguration.S3Member + | RetrievalFlowNodeServiceConfiguration.$UnknownMember; /** - *

    Contains information about a knowledge base.

    * @public */ -export interface KnowledgeBase { +export namespace RetrievalFlowNodeServiceConfiguration { /** - *

    The unique identifier of the knowledge base.

    + *

    Contains configurations for the Amazon S3 location from which to retrieve data to return as the output from the node.

    * @public */ - knowledgeBaseId: string | undefined; + export interface S3Member { + s3: RetrievalFlowNodeS3Configuration; + $unknown?: never; + } /** - *

    The name of the knowledge base.

    * @public */ - name: string | undefined; + export interface $UnknownMember { + s3?: never; + $unknown: [string, any]; + } - /** - *

    The Amazon Resource Name (ARN) of the knowledge base.

    - * @public - */ - knowledgeBaseArn: string | undefined; + export interface Visitor { + s3: (value: RetrievalFlowNodeS3Configuration) => T; + _: (name: string, value: any) => T; + } - /** - *

    The description of the knowledge base.

    - * @public - */ - description?: string; + export const visit = (value: RetrievalFlowNodeServiceConfiguration, visitor: Visitor): T => { + if (value.s3 !== undefined) return visitor.s3(value.s3); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; +} +/** + *

    Contains configurations for a Retrieval node in a flow. This node retrieves data from the Amazon S3 location that you specify and returns it as the output.

    + * @public + */ +export interface RetrievalFlowNodeConfiguration { /** - *

    The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

    + *

    Contains configurations for the service to use for retrieving data to return as the output from the node.

    * @public */ - roleArn: string | undefined; + serviceConfiguration: RetrievalFlowNodeServiceConfiguration | undefined; +} +/** + *

    Contains configurations for the Amazon S3 location in which to store the input into the node.

    + * @public + */ +export interface StorageFlowNodeS3Configuration { /** - *

    Contains details about the embeddings configuration of the knowledge base.

    + *

    The name of the Amazon S3 bucket in which to store the input into the node.

    * @public */ - knowledgeBaseConfiguration: KnowledgeBaseConfiguration | undefined; + bucketName: string | undefined; +} - /** - *

    Contains details about the storage configuration of the knowledge base.

    - * @public - */ - storageConfiguration: StorageConfiguration | undefined; +/** + *

    Contains configurations for the service to use for storing the input into the node.

    + * @public + */ +export type StorageFlowNodeServiceConfiguration = + | StorageFlowNodeServiceConfiguration.S3Member + | StorageFlowNodeServiceConfiguration.$UnknownMember; +/** + * @public + */ +export namespace StorageFlowNodeServiceConfiguration { /** - *

    The status of the knowledge base. The following statuses are possible:

    - *
      - *
    • - *

      CREATING – The knowledge base is being created.

      - *
    • - *
    • - *

      ACTIVE – The knowledge base is ready to be queried.

      - *
    • - *
    • - *

      DELETING – The knowledge base is being deleted.

      - *
    • - *
    • - *

      UPDATING – The knowledge base is being updated.

      - *
    • - *
    • - *

      FAILED – The knowledge base API operation failed.

      - *
    • - *
    + *

    Contains configurations for the Amazon S3 location in which to store the input into the node.

    * @public */ - status: KnowledgeBaseStatus | undefined; + export interface S3Member { + s3: StorageFlowNodeS3Configuration; + $unknown?: never; + } /** - *

    The time at which the knowledge base was created.

    * @public */ - createdAt: Date | undefined; + export interface $UnknownMember { + s3?: never; + $unknown: [string, any]; + } - /** - *

    The time at which the knowledge base was last updated.

    - * @public - */ - updatedAt: Date | undefined; + export interface Visitor { + s3: (value: StorageFlowNodeS3Configuration) => T; + _: (name: string, value: any) => T; + } - /** - *

    A list of reasons that the API operation on the knowledge base failed.

    - * @public - */ - failureReasons?: string[]; + export const visit = (value: StorageFlowNodeServiceConfiguration, visitor: Visitor): T => { + if (value.s3 !== undefined) return visitor.s3(value.s3); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; } /** + *

    Contains configurations for a Storage node in a flow. This node stores the input in an Amazon S3 location that you specify.

    * @public */ -export interface CreateKnowledgeBaseResponse { +export interface StorageFlowNodeConfiguration { /** - *

    Contains details about the knowledge base.

    + *

    Contains configurations for the service to use for storing the input into the node.

    * @public */ - knowledgeBase: KnowledgeBase | undefined; + serviceConfiguration: StorageFlowNodeServiceConfiguration | undefined; } /** + *

    Contains configurations for a node in your flow. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    * @public */ -export interface DeleteKnowledgeBaseRequest { - /** - *

    The unique identifier of the knowledge base to delete.

    - * @public - */ - knowledgeBaseId: string | undefined; -} +export type FlowNodeConfiguration = + | FlowNodeConfiguration.AgentMember + | FlowNodeConfiguration.CollectorMember + | FlowNodeConfiguration.ConditionMember + | FlowNodeConfiguration.InputMember + | FlowNodeConfiguration.IteratorMember + | FlowNodeConfiguration.KnowledgeBaseMember + | FlowNodeConfiguration.LambdaFunctionMember + | FlowNodeConfiguration.LexMember + | FlowNodeConfiguration.OutputMember + | FlowNodeConfiguration.PromptMember + | FlowNodeConfiguration.RetrievalMember + | FlowNodeConfiguration.StorageMember + | FlowNodeConfiguration.$UnknownMember; /** * @public */ -export interface DeleteKnowledgeBaseResponse { +export namespace FlowNodeConfiguration { /** - *

    The unique identifier of the knowledge base that was deleted.

    + *

    Contains configurations for an input flow node in your flow. The first node in the flow. inputs can't be specified for this node.

    * @public */ - knowledgeBaseId: string | undefined; + export interface InputMember { + input: InputFlowNodeConfiguration; + output?: never; + knowledgeBase?: never; + condition?: never; + lex?: never; + prompt?: never; + lambdaFunction?: never; + storage?: never; + agent?: never; + retrieval?: never; + iterator?: never; + collector?: never; + $unknown?: never; + } /** - *

    The status of the knowledge base and whether it has been successfully deleted.

    + *

    Contains configurations for an output flow node in your flow. The last node in the flow. outputs can't be specified for this node.

    * @public */ - status: KnowledgeBaseStatus | undefined; -} + export interface OutputMember { + input?: never; + output: OutputFlowNodeConfiguration; + knowledgeBase?: never; + condition?: never; + lex?: never; + prompt?: never; + lambdaFunction?: never; + storage?: never; + agent?: never; + retrieval?: never; + iterator?: never; + collector?: never; + $unknown?: never; + } -/** - * @public - */ -export interface DisassociateAgentKnowledgeBaseRequest { /** - *

    The unique identifier of the agent from which to disassociate the knowledge base.

    + *

    Contains configurations for a knowledge base node in your flow. Queries a knowledge base and returns the retrieved results or generated response.

    * @public */ - agentId: string | undefined; + export interface KnowledgeBaseMember { + input?: never; + output?: never; + knowledgeBase: KnowledgeBaseFlowNodeConfiguration; + condition?: never; + lex?: never; + prompt?: never; + lambdaFunction?: never; + storage?: never; + agent?: never; + retrieval?: never; + iterator?: never; + collector?: never; + $unknown?: never; + } /** - *

    The version of the agent from which to disassociate the knowledge base.

    + *

    Contains configurations for a Condition node in your flow. Defines conditions that lead to different branches of the flow.

    * @public */ - agentVersion: string | undefined; + export interface ConditionMember { + input?: never; + output?: never; + knowledgeBase?: never; + condition: ConditionFlowNodeConfiguration; + lex?: never; + prompt?: never; + lambdaFunction?: never; + storage?: never; + agent?: never; + retrieval?: never; + iterator?: never; + collector?: never; + $unknown?: never; + } /** - *

    The unique identifier of the knowledge base to disassociate.

    + *

    Contains configurations for a Lex node in your flow. Invokes an Amazon Lex bot to identify the intent of the input and return the intent as the output.

    * @public */ - knowledgeBaseId: string | undefined; + export interface LexMember { + input?: never; + output?: never; + knowledgeBase?: never; + condition?: never; + lex: LexFlowNodeConfiguration; + prompt?: never; + lambdaFunction?: never; + storage?: never; + agent?: never; + retrieval?: never; + iterator?: never; + collector?: never; + $unknown?: never; + } + + /** + *

    Contains configurations for a prompt node in your flow. Runs a prompt and generates the model response as the output. You can use a prompt from Prompt management or you can configure one in this node.

    + * @public + */ + export interface PromptMember { + input?: never; + output?: never; + knowledgeBase?: never; + condition?: never; + lex?: never; + prompt: PromptFlowNodeConfiguration; + lambdaFunction?: never; + storage?: never; + agent?: never; + retrieval?: never; + iterator?: never; + collector?: never; + $unknown?: never; + } + + /** + *

    Contains configurations for a Lambda function node in your flow. Invokes an Lambda function.

    + * @public + */ + export interface LambdaFunctionMember { + input?: never; + output?: never; + knowledgeBase?: never; + condition?: never; + lex?: never; + prompt?: never; + lambdaFunction: LambdaFunctionFlowNodeConfiguration; + storage?: never; + agent?: never; + retrieval?: never; + iterator?: never; + collector?: never; + $unknown?: never; + } + + /** + *

    Contains configurations for a Storage node in your flow. Stores an input in an Amazon S3 location.

    + * @public + */ + export interface StorageMember { + input?: never; + output?: never; + knowledgeBase?: never; + condition?: never; + lex?: never; + prompt?: never; + lambdaFunction?: never; + storage: StorageFlowNodeConfiguration; + agent?: never; + retrieval?: never; + iterator?: never; + collector?: never; + $unknown?: never; + } + + /** + *

    Contains configurations for an agent node in your flow. Invokes an alias of an agent and returns the response.

    + * @public + */ + export interface AgentMember { + input?: never; + output?: never; + knowledgeBase?: never; + condition?: never; + lex?: never; + prompt?: never; + lambdaFunction?: never; + storage?: never; + agent: AgentFlowNodeConfiguration; + retrieval?: never; + iterator?: never; + collector?: never; + $unknown?: never; + } + + /** + *

    Contains configurations for a Retrieval node in your flow. Retrieves data from an Amazon S3 location and returns it as the output.

    + * @public + */ + export interface RetrievalMember { + input?: never; + output?: never; + knowledgeBase?: never; + condition?: never; + lex?: never; + prompt?: never; + lambdaFunction?: never; + storage?: never; + agent?: never; + retrieval: RetrievalFlowNodeConfiguration; + iterator?: never; + collector?: never; + $unknown?: never; + } + + /** + *

    Contains configurations for an iterator node in your flow. Takes an input that is an array and iteratively sends each item of the array as an output to the following node. The size of the array is also returned in the output.

    + *

    The output flow node at the end of the flow iteration will return a response for each member of the array. To return only one response, you can include a collector node downstream from the iterator node.

    + * @public + */ + export interface IteratorMember { + input?: never; + output?: never; + knowledgeBase?: never; + condition?: never; + lex?: never; + prompt?: never; + lambdaFunction?: never; + storage?: never; + agent?: never; + retrieval?: never; + iterator: IteratorFlowNodeConfiguration; + collector?: never; + $unknown?: never; + } + + /** + *

    Contains configurations for a collector node in your flow. Collects an iteration of inputs and consolidates them into an array of outputs.

    + * @public + */ + export interface CollectorMember { + input?: never; + output?: never; + knowledgeBase?: never; + condition?: never; + lex?: never; + prompt?: never; + lambdaFunction?: never; + storage?: never; + agent?: never; + retrieval?: never; + iterator?: never; + collector: CollectorFlowNodeConfiguration; + $unknown?: never; + } + + /** + * @public + */ + export interface $UnknownMember { + input?: never; + output?: never; + knowledgeBase?: never; + condition?: never; + lex?: never; + prompt?: never; + lambdaFunction?: never; + storage?: never; + agent?: never; + retrieval?: never; + iterator?: never; + collector?: never; + $unknown: [string, any]; + } + + export interface Visitor { + input: (value: InputFlowNodeConfiguration) => T; + output: (value: OutputFlowNodeConfiguration) => T; + knowledgeBase: (value: KnowledgeBaseFlowNodeConfiguration) => T; + condition: (value: ConditionFlowNodeConfiguration) => T; + lex: (value: LexFlowNodeConfiguration) => T; + prompt: (value: PromptFlowNodeConfiguration) => T; + lambdaFunction: (value: LambdaFunctionFlowNodeConfiguration) => T; + storage: (value: StorageFlowNodeConfiguration) => T; + agent: (value: AgentFlowNodeConfiguration) => T; + retrieval: (value: RetrievalFlowNodeConfiguration) => T; + iterator: (value: IteratorFlowNodeConfiguration) => T; + collector: (value: CollectorFlowNodeConfiguration) => T; + _: (name: string, value: any) => T; + } + + export const visit = (value: FlowNodeConfiguration, visitor: Visitor): T => { + if (value.input !== undefined) return visitor.input(value.input); + if (value.output !== undefined) return visitor.output(value.output); + if (value.knowledgeBase !== undefined) return visitor.knowledgeBase(value.knowledgeBase); + if (value.condition !== undefined) return visitor.condition(value.condition); + if (value.lex !== undefined) return visitor.lex(value.lex); + if (value.prompt !== undefined) return visitor.prompt(value.prompt); + if (value.lambdaFunction !== undefined) return visitor.lambdaFunction(value.lambdaFunction); + if (value.storage !== undefined) return visitor.storage(value.storage); + if (value.agent !== undefined) return visitor.agent(value.agent); + if (value.retrieval !== undefined) return visitor.retrieval(value.retrieval); + if (value.iterator !== undefined) return visitor.iterator(value.iterator); + if (value.collector !== undefined) return visitor.collector(value.collector); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; } /** * @public + * @enum */ -export interface DisassociateAgentKnowledgeBaseResponse {} +export const FlowNodeIODataType = { + ARRAY: "Array", + BOOLEAN: "Boolean", + NUMBER: "Number", + OBJECT: "Object", + STRING: "String", +} as const; /** * @public */ -export interface GetAgentKnowledgeBaseRequest { +export type FlowNodeIODataType = (typeof FlowNodeIODataType)[keyof typeof FlowNodeIODataType]; + +/** + *

    Contains configurations for an input to a node.

    + * @public + */ +export interface FlowNodeInput { /** - *

    The unique identifier of the agent with which the knowledge base is associated.

    + *

    A name for the input that you can reference.

    * @public */ - agentId: string | undefined; + name: string | undefined; /** - *

    The version of the agent with which the knowledge base is associated.

    + *

    The data type of the input. If the input doesn't match this type at runtime, a validation error will be thrown.

    * @public */ - agentVersion: string | undefined; + type: FlowNodeIODataType | undefined; /** - *

    The unique identifier of the knowledge base associated with the agent.

    + *

    An expression that formats the input for the node. For an explanation of how to create expressions, see Expressions in Prompt flows in Amazon Bedrock.

    * @public */ - knowledgeBaseId: string | undefined; + expression: string | undefined; } /** + *

    Contains configurations for an output from a node.

    * @public */ -export interface GetAgentKnowledgeBaseResponse { +export interface FlowNodeOutput { /** - *

    Contains details about a knowledge base attached to an agent.

    + *

    A name for the output that you can reference.

    * @public */ - agentKnowledgeBase: AgentKnowledgeBase | undefined; -} + name: string | undefined; -/** - * @public - */ -export interface GetKnowledgeBaseRequest { /** - *

    The unique identifier of the knowledge base for which to get information.

    + *

    The data type of the output. If the output doesn't match this type at runtime, a validation error will be thrown.

    * @public */ - knowledgeBaseId: string | undefined; + type: FlowNodeIODataType | undefined; } /** * @public + * @enum */ -export interface GetKnowledgeBaseResponse { - /** - *

    Contains details about the knowledge base.

    - * @public - */ - knowledgeBase: KnowledgeBase | undefined; -} +export const FlowNodeType = { + AGENT: "Agent", + COLLECTOR: "Collector", + CONDITION: "Condition", + INPUT: "Input", + ITERATOR: "Iterator", + KNOWLEDGE_BASE: "KnowledgeBase", + LAMBDA_FUNCTION: "LambdaFunction", + LEX: "Lex", + OUTPUT: "Output", + PROMPT: "Prompt", + RETRIEVAL: "Retrieval", + STORAGE: "Storage", +} as const; /** * @public */ -export interface ListAgentKnowledgeBasesRequest { - /** - *

    The unique identifier of the agent for which to return information about knowledge bases associated with it.

    - * @public - */ - agentId: string | undefined; +export type FlowNodeType = (typeof FlowNodeType)[keyof typeof FlowNodeType]; +/** + *

    Contains configurations about a node in the flow.

    + * @public + */ +export interface FlowNode { /** - *

    The version of the agent for which to return information about knowledge bases associated with it.

    + *

    A name for the node.

    * @public */ - agentVersion: string | undefined; + name: string | undefined; /** - *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    + *

    The type of node. This value must match the name of the key that you provide in the configuration you provide in the FlowNodeConfiguration field.

    * @public */ - maxResults?: number; + type: FlowNodeType | undefined; /** - *

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    + *

    Contains configurations for the node.

    * @public */ - nextToken?: string; -} + configuration?: FlowNodeConfiguration; -/** - * @public - */ -export interface ListAgentKnowledgeBasesResponse { /** - *

    A list of objects, each of which contains information about a knowledge base associated with the agent.

    + *

    An array of objects, each of which contains information about an input into the node.

    * @public */ - agentKnowledgeBaseSummaries: AgentKnowledgeBaseSummary[] | undefined; + inputs?: FlowNodeInput[]; /** - *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + *

    A list of objects, each of which contains information about an output from the node.

    * @public */ - nextToken?: string; + outputs?: FlowNodeOutput[]; } /** + *

    The definition of the nodes and connections between nodes in the flow.

    * @public */ -export interface ListKnowledgeBasesRequest { +export interface FlowDefinition { /** - *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    + *

    An array of node definitions in the flow.

    * @public */ - maxResults?: number; + nodes?: FlowNode[]; /** - *

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    + *

    An array of connection definitions in the flow.

    * @public */ - nextToken?: string; + connections?: FlowConnection[]; } /** - *

    Contains details about a knowledge base.

    * @public */ -export interface KnowledgeBaseSummary { +export interface CreateFlowRequest { /** - *

    The unique identifier of the knowledge base.

    + *

    A name for the flow.

    * @public */ - knowledgeBaseId: string | undefined; + name: string | undefined; /** - *

    The name of the knowledge base.

    + *

    A description for the flow.

    * @public */ - name: string | undefined; + description?: string; /** - *

    The description of the knowledge base.

    + *

    The Amazon Resource Name (ARN) of the service role with permissions to create and manage a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    * @public */ - description?: string; + executionRoleArn: string | undefined; /** - *

    The status of the knowledge base.

    + *

    The Amazon Resource Name (ARN) of the KMS key to encrypt the flow.

    * @public */ - status: KnowledgeBaseStatus | undefined; + customerEncryptionKeyArn?: string; /** - *

    The time at which the knowledge base was last updated.

    + *

    A definition of the nodes and connections between nodes in the flow.

    * @public */ - updatedAt: Date | undefined; -} + definition?: FlowDefinition; -/** - * @public - */ -export interface ListKnowledgeBasesResponse { /** - *

    A list of objects, each of which contains information about a knowledge base.

    + *

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, + * Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    * @public */ - knowledgeBaseSummaries: KnowledgeBaseSummary[] | undefined; + clientToken?: string; /** - *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + *

    Any tags that you want to attach to the flow. For more information, see Tagging resources in Amazon Bedrock.

    * @public */ - nextToken?: string; + tags?: Record; } /** * @public + * @enum */ -export interface UpdateAgentKnowledgeBaseRequest { - /** - *

    The unique identifier of the agent associated with the knowledge base that you want to update.

    - * @public - */ - agentId: string | undefined; +export const FlowStatus = { + FAILED: "Failed", + NOT_PREPARED: "NotPrepared", + PREPARED: "Prepared", + PREPARING: "Preparing", +} as const; + +/** + * @public + */ +export type FlowStatus = (typeof FlowStatus)[keyof typeof FlowStatus]; +/** + * @public + */ +export interface CreateFlowResponse { /** - *

    The version of the agent associated with the knowledge base that you want to update.

    + *

    The name of the flow.

    * @public */ - agentVersion: string | undefined; + name: string | undefined; /** - *

    The unique identifier of the knowledge base that has been associated with an agent.

    + *

    The description of the flow.

    * @public */ - knowledgeBaseId: string | undefined; + description?: string; /** - *

    Specifies a new description for the knowledge base associated with an agent.

    + *

    The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    * @public */ - description?: string; + executionRoleArn: string | undefined; /** - *

    Specifies whether the agent uses the knowledge base or not when sending an InvokeAgent request.

    + *

    The Amazon Resource Name (ARN) of the KMS key that you encrypted the flow with.

    * @public */ - knowledgeBaseState?: KnowledgeBaseState; -} + customerEncryptionKeyArn?: string; -/** - * @public - */ -export interface UpdateAgentKnowledgeBaseResponse { /** - *

    Contains details about the knowledge base that has been associated with an agent.

    + *

    The unique identifier of the flow.

    * @public */ - agentKnowledgeBase: AgentKnowledgeBase | undefined; -} + id: string | undefined; -/** - * @public - */ -export interface UpdateKnowledgeBaseRequest { /** - *

    The unique identifier of the knowledge base to update.

    + *

    The Amazon Resource Name (ARN) of the flow.

    * @public */ - knowledgeBaseId: string | undefined; + arn: string | undefined; /** - *

    Specifies a new name for the knowledge base.

    + *

    The status of the flow. When you submit this request, the status will be NotPrepared. If creation fails, the status becomes Failed.

    * @public */ - name: string | undefined; + status: FlowStatus | undefined; /** - *

    Specifies a new description for the knowledge base.

    + *

    The time at which the flow was created.

    * @public */ - description?: string; + createdAt: Date | undefined; /** - *

    Specifies a different Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

    + *

    The time at which the flow was last updated.

    * @public */ - roleArn: string | undefined; + updatedAt: Date | undefined; /** - *

    Specifies the configuration for the embeddings model used for the knowledge base. You must use the same configuration as when the knowledge base was created.

    + *

    The version of the flow. When you create a flow, the version created is the DRAFT version.

    * @public */ - knowledgeBaseConfiguration: KnowledgeBaseConfiguration | undefined; + version: string | undefined; /** - *

    Specifies the configuration for the vector store used for the knowledge base. You must use the same configuration as when the knowledge base was created.

    + *

    A definition of the nodes and connections between nodes in the flow.

    * @public */ - storageConfiguration: StorageConfiguration | undefined; + definition?: FlowDefinition; } /** * @public */ -export interface UpdateKnowledgeBaseResponse { +export interface DeleteFlowRequest { /** - *

    Contains details about the knowledge base.

    + *

    The unique identifier of the flow.

    * @public */ - knowledgeBase: KnowledgeBase | undefined; + flowIdentifier: string | undefined; + + /** + *

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    + * @public + */ + skipResourceInUseCheck?: boolean; } /** * @public */ -export interface ListTagsForResourceRequest { +export interface DeleteFlowResponse { /** - *

    The Amazon Resource Name (ARN) of the resource for which to list tags.

    + *

    The unique identifier of the flow.

    * @public */ - resourceArn: string | undefined; + id: string | undefined; } /** + *

    Contains information about a version that the alias maps to.

    * @public */ -export interface ListTagsForResourceResponse { +export interface FlowAliasRoutingConfigurationListItem { /** - *

    The key-value pairs for the tags associated with the resource.

    + *

    The version that the alias maps to.

    * @public */ - tags?: Record; + flowVersion?: string; } /** * @public */ -export interface TagResourceRequest { +export interface CreateFlowAliasRequest { /** - *

    The Amazon Resource Name (ARN) of the resource to tag.

    + *

    A name for the alias.

    * @public */ - resourceArn: string | undefined; + name: string | undefined; /** - *

    An object containing key-value pairs that define the tags to attach to the resource.

    + *

    A description for the alias.

    * @public */ - tags: Record | undefined; -} - -/** - * @public - */ -export interface TagResourceResponse {} + description?: string; -/** - * @public - */ -export interface UntagResourceRequest { /** - *

    The Amazon Resource Name (ARN) of the resource from which to remove tags.

    + *

    Contains information about the version to which to map the alias.

    * @public */ - resourceArn: string | undefined; + routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined; + + /** + *

    The unique identifier of the flow for which to create an alias.

    + * @public + */ + flowIdentifier: string | undefined; + + /** + *

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, + * Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

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

    Any tags that you want to attach to the alias of the flow. For more information, see Tagging resources in Amazon Bedrock.

    + * @public + */ + tags?: Record; +} + +/** + * @public + */ +export interface CreateFlowAliasResponse { + /** + *

    The name of the alias.

    + * @public + */ + name: string | undefined; + + /** + *

    The description of the alias.

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

    Contains information about the version that the alias is mapped to.

    + * @public + */ + routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined; + + /** + *

    The unique identifier of the flow that the alias belongs to.

    + * @public + */ + flowId: string | undefined; + + /** + *

    The unique identifier of the alias.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the alias.

    + * @public + */ + arn: string | undefined; + + /** + *

    The time at which the alias was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the alias of the flow was last updated.

    + * @public + */ + updatedAt: Date | undefined; +} + +/** + * @public + */ +export interface DeleteFlowAliasRequest { + /** + *

    The unique identifier of the flow that the alias belongs to.

    + * @public + */ + flowIdentifier: string | undefined; + + /** + *

    The unique identifier of the alias to be deleted.

    + * @public + */ + aliasIdentifier: string | undefined; +} + +/** + * @public + */ +export interface DeleteFlowAliasResponse { + /** + *

    The unique identifier of the flow that the alias belongs to.

    + * @public + */ + flowId: string | undefined; + + /** + *

    The unique identifier of the flow.

    + * @public + */ + id: string | undefined; +} + +/** + * @public + */ +export interface GetFlowAliasRequest { + /** + *

    The unique identifier of the flow that the alias belongs to.

    + * @public + */ + flowIdentifier: string | undefined; + + /** + *

    The unique identifier of the alias for which to retrieve information.

    + * @public + */ + aliasIdentifier: string | undefined; +} + +/** + * @public + */ +export interface GetFlowAliasResponse { + /** + *

    The name of the flow alias.

    + * @public + */ + name: string | undefined; + + /** + *

    The description of the flow.

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

    Contains information about the version that the alias is mapped to.

    + * @public + */ + routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined; + + /** + *

    The unique identifier of the flow that the alias belongs to.

    + * @public + */ + flowId: string | undefined; + + /** + *

    The unique identifier of the alias of the flow.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the flow.

    + * @public + */ + arn: string | undefined; + + /** + *

    The time at which the flow was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the flow alias was last updated.

    + * @public + */ + updatedAt: Date | undefined; +} + +/** + * @public + */ +export interface ListFlowAliasesRequest { + /** + *

    The unique identifier of the flow for which aliases are being returned.

    + * @public + */ + flowIdentifier: string | undefined; + + /** + *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

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

    Contains information about an alias of a flow.

    + *

    This data type is used in the following API operations:

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

    The name of the alias.

    + * @public + */ + name: string | undefined; + + /** + *

    A description of the alias.

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

    A list of configurations about the versions that the alias maps to. Currently, you can only specify one.

    + * @public + */ + routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined; + + /** + *

    The unique identifier of the flow.

    + * @public + */ + flowId: string | undefined; + + /** + *

    The unique identifier of the alias of the flow.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the flow alias.

    + * @public + */ + arn: string | undefined; + + /** + *

    The time at which the alias was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the alias was last updated.

    + * @public + */ + updatedAt: Date | undefined; +} + +/** + * @public + */ +export interface ListFlowAliasesResponse { + /** + *

    A list, each member of which contains information about a flow alias.

    + * @public + */ + flowAliasSummaries: FlowAliasSummary[] | undefined; + + /** + *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + * @public + */ + nextToken?: string; +} + +/** + * @public + */ +export interface UpdateFlowAliasRequest { + /** + *

    The name of the flow alias.

    + * @public + */ + name: string | undefined; + + /** + *

    A description for the flow alias.

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

    Contains information about the version to which to map the alias.

    + * @public + */ + routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined; + + /** + *

    The unique identifier of the flow.

    + * @public + */ + flowIdentifier: string | undefined; + + /** + *

    The unique identifier of the alias.

    + * @public + */ + aliasIdentifier: string | undefined; +} + +/** + * @public + */ +export interface UpdateFlowAliasResponse { + /** + *

    The name of the flow alias.

    + * @public + */ + name: string | undefined; + + /** + *

    The description of the flow.

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

    Contains information about the version that the alias is mapped to.

    + * @public + */ + routingConfiguration: FlowAliasRoutingConfigurationListItem[] | undefined; + + /** + *

    The unique identifier of the flow.

    + * @public + */ + flowId: string | undefined; + + /** + *

    The unique identifier of the alias.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the flow.

    + * @public + */ + arn: string | undefined; + + /** + *

    The time at which the flow was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the flow alias was last updated.

    + * @public + */ + updatedAt: Date | undefined; +} + +/** + * @public + */ +export interface CreateFlowVersionRequest { + /** + *

    The unique identifier of the flow that you want to create a version of.

    + * @public + */ + flowIdentifier: string | undefined; + + /** + *

    A description of the version of the flow.

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

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, + * Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    + * @public + */ + clientToken?: string; +} + +/** + * @public + */ +export interface CreateFlowVersionResponse { + /** + *

    The name of the flow version.

    + * @public + */ + name: string | undefined; + + /** + *

    The description of the flow version.

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

    The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @public + */ + executionRoleArn: string | undefined; + + /** + *

    The KMS key that the flow is encrypted with.

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

    The unique identifier of the flow.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the flow.

    + * @public + */ + arn: string | undefined; + + /** + *

    The status of the flow.

    + * @public + */ + status: FlowStatus | undefined; + + /** + *

    The time at which the flow was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The version of the flow that was created. Versions are numbered incrementally, starting from 1.

    + * @public + */ + version: string | undefined; + + /** + *

    A definition of the nodes and connections in the flow.

    + * @public + */ + definition?: FlowDefinition; +} + +/** + * @public + */ +export interface DeleteFlowVersionRequest { + /** + *

    The unique identifier of the flow whose version that you want to delete

    + * @public + */ + flowIdentifier: string | undefined; + + /** + *

    The version of the flow that you want to delete.

    + * @public + */ + flowVersion: string | undefined; + + /** + *

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    + * @public + */ + skipResourceInUseCheck?: boolean; +} + +/** + * @public + */ +export interface DeleteFlowVersionResponse { + /** + *

    The unique identifier of the flow.

    + * @public + */ + id: string | undefined; + + /** + *

    The version of the flow being deleted.

    + * @public + */ + version: string | undefined; +} + +/** + * @public + */ +export interface GetFlowVersionRequest { + /** + *

    The unique identifier of the flow for which to get information.

    + * @public + */ + flowIdentifier: string | undefined; + + /** + *

    The version of the flow for which to get information.

    + * @public + */ + flowVersion: string | undefined; +} + +/** + * @public + */ +export interface GetFlowVersionResponse { + /** + *

    The name of the flow version.

    + * @public + */ + name: string | undefined; + + /** + *

    The description of the flow.

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

    The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @public + */ + executionRoleArn: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the KMS key that the version of the flow is encrypted with.

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

    The unique identifier of the flow.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the flow.

    + * @public + */ + arn: string | undefined; + + /** + *

    The status of the flow.

    + * @public + */ + status: FlowStatus | undefined; + + /** + *

    The time at which the flow was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The version of the flow for which information was retrieved.

    + * @public + */ + version: string | undefined; + + /** + *

    The definition of the nodes and connections between nodes in the flow.

    + * @public + */ + definition?: FlowDefinition; +} + +/** + * @public + */ +export interface ListFlowVersionsRequest { + /** + *

    The unique identifier of the flow.

    + * @public + */ + flowIdentifier: string | undefined; + + /** + *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

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

    Contains information about the flow version.

    + *

    This data type is used in the following API operations:

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

    The unique identifier of the flow.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the flow that the version belongs to.

    + * @public + */ + arn: string | undefined; + + /** + *

    The status of the flow.

    + * @public + */ + status: FlowStatus | undefined; + + /** + *

    The time at the flow version was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The version of the flow.

    + * @public + */ + version: string | undefined; +} + +/** + * @public + */ +export interface ListFlowVersionsResponse { + /** + *

    A list, each member of which contains information about a flow.

    + * @public + */ + flowVersionSummaries: FlowVersionSummary[] | undefined; + + /** + *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + * @public + */ + nextToken?: string; +} + +/** + * @public + */ +export interface GetFlowRequest { + /** + *

    The unique identifier of the flow.

    + * @public + */ + flowIdentifier: string | undefined; +} + +/** + * @public + * @enum + */ +export const FlowValidationSeverity = { + ERROR: "Error", + WARNING: "Warning", +} as const; + +/** + * @public + */ +export type FlowValidationSeverity = (typeof FlowValidationSeverity)[keyof typeof FlowValidationSeverity]; + +/** + *

    Contains information about validation of the flow.

    + *

    This data type is used in the following API operations:

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

    A message describing the validation error.

    + * @public + */ + message: string | undefined; + + /** + *

    The severity of the issue described in the message.

    + * @public + */ + severity: FlowValidationSeverity | undefined; +} + +/** + * @public + */ +export interface GetFlowResponse { + /** + *

    The name of the flow.

    + * @public + */ + name: string | undefined; + + /** + *

    The description of the flow.

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

    The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see Create a service row for flows in the Amazon Bedrock User Guide.

    + * @public + */ + executionRoleArn: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the KMS key that the flow is encrypted with.

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

    The unique identifier of the flow.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the flow.

    + * @public + */ + arn: string | undefined; + + /** + *

    The status of the flow. The following statuses are possible:

    + *
      + *
    • + *

      NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the DRAFT version won't contain the latest changes for testing. Send a PrepareFlow request to package the latest changes into the DRAFT version.

      + *
    • + *
    • + *

      Preparing – The flow is being prepared so that the DRAFT version contains the latest changes for testing.

      + *
    • + *
    • + *

      Prepared – The flow is prepared and the DRAFT version contains the latest changes for testing.

      + *
    • + *
    • + *

      Failed – The last API operation that you invoked on the flow failed. Send a GetFlow request and check the error message in the validations field.

      + *
    • + *
    + * @public + */ + status: FlowStatus | undefined; + + /** + *

    The time at which the flow was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the flow was last updated.

    + * @public + */ + updatedAt: Date | undefined; + + /** + *

    The version of the flow for which information was retrieved.

    + * @public + */ + version: string | undefined; + + /** + *

    The definition of the nodes and connections between the nodes in the flow.

    + * @public + */ + definition?: FlowDefinition; + + /** + *

    A list of validation error messages related to the last failed operation on the flow.

    + * @public + */ + validations?: FlowValidation[]; +} + +/** + * @public + */ +export interface ListFlowsRequest { + /** + *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

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

    Contains the definition of a flow.

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

    The name of the flow.

    + * @public + */ + name: string | undefined; + + /** + *

    A description of the flow.

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

    The unique identifier of the flow.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the flow.

    + * @public + */ + arn: string | undefined; + + /** + *

    The status of the flow. The following statuses are possible:

    + *
      + *
    • + *

      NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the DRAFT version won't contain the latest changes for testing. Send a PrepareFlow request to package the latest changes into the DRAFT version.

      + *
    • + *
    • + *

      Preparing – The flow is being prepared so that the DRAFT version contains the latest changes for testing.

      + *
    • + *
    • + *

      Prepared – The flow is prepared and the DRAFT version contains the latest changes for testing.

      + *
    • + *
    • + *

      Failed – The last API operation that you invoked on the flow failed. Send a GetFlow request and check the error message in the validations field.

      + *
    • + *
    + * @public + */ + status: FlowStatus | undefined; + + /** + *

    The time at which the flow was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the flow was last updated.

    + * @public + */ + updatedAt: Date | undefined; + + /** + *

    The latest version of the flow.

    + * @public + */ + version: string | undefined; +} + +/** + * @public + */ +export interface ListFlowsResponse { + /** + *

    A list, each member of which contains information about a flow.

    + * @public + */ + flowSummaries: FlowSummary[] | undefined; + + /** + *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + * @public + */ + nextToken?: string; +} + +/** + * @public + */ +export interface PrepareFlowRequest { + /** + *

    The unique identifier of the flow.

    + * @public + */ + flowIdentifier: string | undefined; +} + +/** + * @public + */ +export interface PrepareFlowResponse { + /** + *

    The unique identifier of the flow.

    + * @public + */ + id: string | undefined; + + /** + *

    The status of the flow. When you submit this request, the status will be NotPrepared. If preparation succeeds, the status becomes Prepared. If it fails, the status becomes FAILED.

    + * @public + */ + status: FlowStatus | undefined; +} + +/** + * @public + */ +export interface UpdateFlowRequest { + /** + *

    A name for the flow.

    + * @public + */ + name: string | undefined; + + /** + *

    A description for the flow.

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

    The Amazon Resource Name (ARN) of the service role with permissions to create and manage a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @public + */ + executionRoleArn: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the KMS key to encrypt the flow.

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

    A definition of the nodes and the connections between the nodes in the flow.

    + * @public + */ + definition?: FlowDefinition; + + /** + *

    The unique identifier of the flow.

    + * @public + */ + flowIdentifier: string | undefined; +} + +/** + * @public + */ +export interface UpdateFlowResponse { + /** + *

    The name of the flow.

    + * @public + */ + name: string | undefined; + + /** + *

    The description of the flow.

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

    The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    + * @public + */ + executionRoleArn: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the KMS key that the flow was encrypted with.

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

    The unique identifier of the flow.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the flow.

    + * @public + */ + arn: string | undefined; + + /** + *

    The status of the flow. When you submit this request, the status will be NotPrepared. If updating fails, the status becomes Failed.

    + * @public + */ + status: FlowStatus | undefined; + + /** + *

    The time at which the flow was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the flow was last updated.

    + * @public + */ + updatedAt: Date | undefined; + + /** + *

    The version of the flow. When you update a flow, the version updated is the DRAFT version.

    + * @public + */ + version: string | undefined; + + /** + *

    A definition of the nodes and the connections between nodes in the flow.

    + * @public + */ + definition?: FlowDefinition; +} + +/** + * @public + */ +export interface GetIngestionJobRequest { + /** + *

    The unique identifier of the knowledge base for which the ingestion job applies.

    + * @public + */ + knowledgeBaseId: string | undefined; + + /** + *

    The unique identifier of the data source in the ingestion job.

    + * @public + */ + dataSourceId: string | undefined; + + /** + *

    The unique identifier of the ingestion job.

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

    Contains the statistics for the ingestion job.

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

    The total number of source documents that were scanned. Includes new, updated, and unchanged documents.

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

    The total number of metadata files that were scanned. Includes new, updated, and unchanged files.

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

    The number of new source documents in the data source that were successfully indexed.

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

    The number of modified source documents in the data source that were successfully indexed.

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

    The number of metadata files that were updated or deleted.

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

    The number of source documents that was deleted.

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

    The number of source documents that failed to be ingested.

    + * @public + */ + numberOfDocumentsFailed?: number; +} + +/** + * @public + * @enum + */ +export const IngestionJobStatus = { + COMPLETE: "COMPLETE", + FAILED: "FAILED", + IN_PROGRESS: "IN_PROGRESS", + STARTING: "STARTING", +} as const; + +/** + * @public + */ +export type IngestionJobStatus = (typeof IngestionJobStatus)[keyof typeof IngestionJobStatus]; + +/** + *

    Contains details about an ingestion job, which converts a data source to embeddings for a vector store in knowledge base.

    + *

    This data type is used in the following API operations:

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

    The unique identifier of the knowledge base to which the data source is being added.

    + * @public + */ + knowledgeBaseId: string | undefined; + + /** + *

    The unique identifier of the ingested data source.

    + * @public + */ + dataSourceId: string | undefined; + + /** + *

    The unique identifier of the ingestion job.

    + * @public + */ + ingestionJobId: string | undefined; + + /** + *

    The description of the ingestion job.

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

    The status of the ingestion job.

    + * @public + */ + status: IngestionJobStatus | undefined; + + /** + *

    Contains statistics about the ingestion job.

    + * @public + */ + statistics?: IngestionJobStatistics; + + /** + *

    A list of reasons that the ingestion job failed.

    + * @public + */ + failureReasons?: string[]; + + /** + *

    The time at which the ingestion job started.

    + * @public + */ + startedAt: Date | undefined; + + /** + *

    The time at which the ingestion job was last updated.

    + * @public + */ + updatedAt: Date | undefined; +} + +/** + * @public + */ +export interface GetIngestionJobResponse { + /** + *

    Contains details about the ingestion job.

    + * @public + */ + ingestionJob: IngestionJob | undefined; +} + +/** + * @public + * @enum + */ +export const IngestionJobFilterAttribute = { + STATUS: "STATUS", +} as const; + +/** + * @public + */ +export type IngestionJobFilterAttribute = + (typeof IngestionJobFilterAttribute)[keyof typeof IngestionJobFilterAttribute]; + +/** + * @public + * @enum + */ +export const IngestionJobFilterOperator = { + EQ: "EQ", +} as const; + +/** + * @public + */ +export type IngestionJobFilterOperator = (typeof IngestionJobFilterOperator)[keyof typeof IngestionJobFilterOperator]; + +/** + *

    Defines a filter by which to filter the results.

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

    The attribute by which to filter the results.

    + * @public + */ + attribute: IngestionJobFilterAttribute | undefined; + + /** + *

    The operation to carry out between the attribute and the values.

    + * @public + */ + operator: IngestionJobFilterOperator | undefined; + + /** + *

    A list of values for the attribute.

    + * @public + */ + values: string[] | undefined; +} + +/** + * @public + * @enum + */ +export const IngestionJobSortByAttribute = { + STARTED_AT: "STARTED_AT", + STATUS: "STATUS", +} as const; + +/** + * @public + */ +export type IngestionJobSortByAttribute = + (typeof IngestionJobSortByAttribute)[keyof typeof IngestionJobSortByAttribute]; + +/** + * @public + * @enum + */ +export const SortOrder = { + ASCENDING: "ASCENDING", + DESCENDING: "DESCENDING", +} as const; + +/** + * @public + */ +export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]; + +/** + *

    Parameters by which to sort the results.

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

    The attribute by which to sort the results.

    + * @public + */ + attribute: IngestionJobSortByAttribute | undefined; + + /** + *

    The order by which to sort the results.

    + * @public + */ + order: SortOrder | undefined; +} + +/** + * @public + */ +export interface ListIngestionJobsRequest { + /** + *

    The unique identifier of the knowledge base for which to return ingestion jobs.

    + * @public + */ + knowledgeBaseId: string | undefined; + + /** + *

    The unique identifier of the data source for which to return ingestion jobs.

    + * @public + */ + dataSourceId: string | undefined; + + /** + *

    Contains a definition of a filter for which to filter the results.

    + * @public + */ + filters?: IngestionJobFilter[]; + + /** + *

    Contains details about how to sort the results.

    + * @public + */ + sortBy?: IngestionJobSortBy; + + /** + *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

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

    Contains details about an ingestion job.

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

    The unique identifier of the knowledge base to which the data source is added.

    + * @public + */ + knowledgeBaseId: string | undefined; + + /** + *

    The unique identifier of the data source in the ingestion job.

    + * @public + */ + dataSourceId: string | undefined; + + /** + *

    The unique identifier of the ingestion job.

    + * @public + */ + ingestionJobId: string | undefined; + + /** + *

    The description of the ingestion job.

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

    The status of the ingestion job.

    + * @public + */ + status: IngestionJobStatus | undefined; + + /** + *

    The time at which the ingestion job was started.

    + * @public + */ + startedAt: Date | undefined; + + /** + *

    The time at which the ingestion job was last updated.

    + * @public + */ + updatedAt: Date | undefined; + + /** + *

    Contains statistics for the ingestion job.

    + * @public + */ + statistics?: IngestionJobStatistics; +} + +/** + * @public + */ +export interface ListIngestionJobsResponse { + /** + *

    A list of objects, each of which contains information about an ingestion job.

    + * @public + */ + ingestionJobSummaries: IngestionJobSummary[] | undefined; + + /** + *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + * @public + */ + nextToken?: string; +} + +/** + * @public + */ +export interface StartIngestionJobRequest { + /** + *

    The unique identifier of the knowledge base to which to add the data source.

    + * @public + */ + knowledgeBaseId: string | undefined; + + /** + *

    The unique identifier of the data source to ingest.

    + * @public + */ + dataSourceId: string | undefined; + + /** + *

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, + * Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

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

    A description of the ingestion job.

    + * @public + */ + description?: string; +} + +/** + * @public + */ +export interface StartIngestionJobResponse { + /** + *

    An object containing information about the ingestion job.

    + * @public + */ + ingestionJob: IngestionJob | undefined; +} + +/** + * @public + */ +export interface AssociateAgentKnowledgeBaseRequest { + /** + *

    The unique identifier of the agent with which you want to associate the knowledge base.

    + * @public + */ + agentId: string | undefined; + + /** + *

    The version of the agent with which you want to associate the knowledge base.

    + * @public + */ + agentVersion: string | undefined; + + /** + *

    The unique identifier of the knowledge base to associate with the agent.

    + * @public + */ + knowledgeBaseId: string | undefined; + + /** + *

    A description of what the agent should use the knowledge base for.

    + * @public + */ + description: string | undefined; + + /** + *

    Specifies whether to use the knowledge base or not when sending an InvokeAgent request.

    + * @public + */ + knowledgeBaseState?: KnowledgeBaseState; +} + +/** + * @public + */ +export interface AssociateAgentKnowledgeBaseResponse { + /** + *

    Contains details about the knowledge base that has been associated with the agent.

    + * @public + */ + agentKnowledgeBase: AgentKnowledgeBase | undefined; +} + +/** + * @public + * @enum + */ +export const KnowledgeBaseType = { + VECTOR: "VECTOR", +} as const; + +/** + * @public + */ +export type KnowledgeBaseType = (typeof KnowledgeBaseType)[keyof typeof KnowledgeBaseType]; + +/** + *

    The vector configuration details for the Bedrock embeddings model.

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

    The dimensions details for the vector configuration used on the Bedrock embeddings model.

    + * @public + */ + dimensions?: number; +} + +/** + *

    The configuration details for the embeddings model.

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

    The vector configuration details on the Bedrock embeddings model.

    + * @public + */ + bedrockEmbeddingModelConfiguration?: BedrockEmbeddingModelConfiguration; +} + +/** + *

    Contains details about the model used to create vector embeddings for the knowledge base.

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

    The Amazon Resource Name (ARN) of the model used to create vector embeddings for the knowledge base.

    + * @public + */ + embeddingModelArn: string | undefined; + + /** + *

    The embeddings model configuration details for the vector model used in Knowledge Base.

    + * @public + */ + embeddingModelConfiguration?: EmbeddingModelConfiguration; +} + +/** + *

    Contains details about the embeddings configuration of the knowledge base.

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

    The type of data that the data source is converted into for the knowledge base.

    + * @public + */ + type: KnowledgeBaseType | undefined; + + /** + *

    Contains details about the embeddings model that'sused to convert the data source.

    + * @public + */ + vectorKnowledgeBaseConfiguration?: VectorKnowledgeBaseConfiguration; +} + +/** + *

    Contains the names of the fields to which to map information about the vector store.

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

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    + * @public + */ + vectorField: string | undefined; + + /** + *

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    + * @public + */ + textField: string | undefined; + + /** + *

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

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

    Contains details about the storage configuration of the knowledge base in MongoDB Atlas.

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

    The endpoint URL of your MongoDB Atlas cluster for your knowledge base.

    + * @public + */ + endpoint: string | undefined; + + /** + *

    The database name in your MongoDB Atlas cluster for your knowledge base.

    + * @public + */ + databaseName: string | undefined; + + /** + *

    The collection name of the knowledge base in MongoDB Atlas.

    + * @public + */ + collectionName: string | undefined; + + /** + *

    The name of the MongoDB Atlas vector search index.

    + * @public + */ + vectorIndexName: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that contains user credentials for your MongoDB Atlas cluster.

    + * @public + */ + credentialsSecretArn: string | undefined; + + /** + *

    Contains the names of the fields to which to map information about the vector store.

    + * @public + */ + fieldMapping: MongoDbAtlasFieldMapping | undefined; + + /** + *

    The name of the VPC endpoint service in your account that is connected to your MongoDB Atlas cluster.

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

    Contains the names of the fields to which to map information about the vector store.

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

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    + * @public + */ + vectorField: string | undefined; + + /** + *

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    + * @public + */ + textField: string | undefined; + + /** + *

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

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

    Contains details about the storage configuration of the knowledge base in Amazon OpenSearch Service. For more information, see Create a vector index in Amazon OpenSearch Service.

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

    The Amazon Resource Name (ARN) of the OpenSearch Service vector store.

    + * @public + */ + collectionArn: string | undefined; + + /** + *

    The name of the vector store.

    + * @public + */ + vectorIndexName: string | undefined; + + /** + *

    Contains the names of the fields to which to map information about the vector store.

    + * @public + */ + fieldMapping: OpenSearchServerlessFieldMapping | undefined; +} + +/** + *

    Contains the names of the fields to which to map information about the vector store.

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

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    + * @public + */ + textField: string | undefined; + + /** + *

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

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

    Contains details about the storage configuration of the knowledge base in Pinecone. For more information, see Create a vector index in Pinecone.

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

    The endpoint URL for your index management page.

    + * @public + */ + connectionString: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Pinecone API key.

    + * @public + */ + credentialsSecretArn: string | undefined; + + /** + *

    The namespace to be used to write new data to your database.

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

    Contains the names of the fields to which to map information about the vector store.

    + * @public + */ + fieldMapping: PineconeFieldMapping | undefined; +} + +/** + *

    Contains the names of the fields to which to map information about the vector store.

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

    The name of the field in which Amazon Bedrock stores the ID for each entry.

    + * @public + */ + primaryKeyField: string | undefined; + + /** + *

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    + * @public + */ + vectorField: string | undefined; + + /** + *

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    + * @public + */ + textField: string | undefined; + + /** + *

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

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

    Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see Create a vector index in Amazon RDS.

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

    The Amazon Resource Name (ARN) of the vector store.

    + * @public + */ + resourceArn: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Amazon RDS database.

    + * @public + */ + credentialsSecretArn: string | undefined; + + /** + *

    The name of your Amazon RDS database.

    + * @public + */ + databaseName: string | undefined; + + /** + *

    The name of the table in the database.

    + * @public + */ + tableName: string | undefined; + + /** + *

    Contains the names of the fields to which to map information about the vector store.

    + * @public + */ + fieldMapping: RdsFieldMapping | undefined; +} + +/** + *

    Contains the names of the fields to which to map information about the vector store.

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

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    + * @public + */ + vectorField: string | undefined; + + /** + *

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    + * @public + */ + textField: string | undefined; + + /** + *

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

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

    Contains details about the storage configuration of the knowledge base in Redis Enterprise Cloud. For more information, see Create a vector index in Redis Enterprise Cloud.

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

    The endpoint URL of the Redis Enterprise Cloud database.

    + * @public + */ + endpoint: string | undefined; + + /** + *

    The name of the vector index.

    + * @public + */ + vectorIndexName: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Redis Enterprise Cloud database.

    + * @public + */ + credentialsSecretArn: string | undefined; + + /** + *

    Contains the names of the fields to which to map information about the vector store.

    + * @public + */ + fieldMapping: RedisEnterpriseCloudFieldMapping | undefined; +} + +/** + * @public + * @enum + */ +export const KnowledgeBaseStorageType = { + MONGO_DB_ATLAS: "MONGO_DB_ATLAS", + OPENSEARCH_SERVERLESS: "OPENSEARCH_SERVERLESS", + PINECONE: "PINECONE", + RDS: "RDS", + REDIS_ENTERPRISE_CLOUD: "REDIS_ENTERPRISE_CLOUD", +} as const; + +/** + * @public + */ +export type KnowledgeBaseStorageType = (typeof KnowledgeBaseStorageType)[keyof typeof KnowledgeBaseStorageType]; + +/** + *

    Contains the storage configuration of the knowledge base.

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

    The vector store service in which the knowledge base is stored.

    + * @public + */ + type: KnowledgeBaseStorageType | undefined; + + /** + *

    Contains the storage configuration of the knowledge base in Amazon OpenSearch Service.

    + * @public + */ + opensearchServerlessConfiguration?: OpenSearchServerlessConfiguration; + + /** + *

    Contains the storage configuration of the knowledge base in Pinecone.

    + * @public + */ + pineconeConfiguration?: PineconeConfiguration; + + /** + *

    Contains the storage configuration of the knowledge base in Redis Enterprise Cloud.

    + * @public + */ + redisEnterpriseCloudConfiguration?: RedisEnterpriseCloudConfiguration; + + /** + *

    Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see Create a vector index in Amazon RDS.

    + * @public + */ + rdsConfiguration?: RdsConfiguration; + + /** + *

    Contains the storage configuration of the knowledge base in MongoDB Atlas.

    + * @public + */ + mongoDbAtlasConfiguration?: MongoDbAtlasConfiguration; +} + +/** + * @public + */ +export interface CreateKnowledgeBaseRequest { + /** + *

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, + * Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

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

    A name for the knowledge base.

    + * @public + */ + name: string | undefined; + + /** + *

    A description of the knowledge base.

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

    The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

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

    Contains details about the embeddings model used for the knowledge base.

    + * @public + */ + knowledgeBaseConfiguration: KnowledgeBaseConfiguration | undefined; + + /** + *

    Contains details about the configuration of the vector database used for the knowledge base.

    + * @public + */ + storageConfiguration: StorageConfiguration | undefined; + + /** + *

    Specify the key-value pairs for the tags that you want to attach to your knowledge base in this object.

    + * @public + */ + tags?: Record; +} + +/** + * @public + * @enum + */ +export const KnowledgeBaseStatus = { + ACTIVE: "ACTIVE", + CREATING: "CREATING", + DELETE_UNSUCCESSFUL: "DELETE_UNSUCCESSFUL", + DELETING: "DELETING", + FAILED: "FAILED", + UPDATING: "UPDATING", +} as const; + +/** + * @public + */ +export type KnowledgeBaseStatus = (typeof KnowledgeBaseStatus)[keyof typeof KnowledgeBaseStatus]; + +/** + *

    Contains information about a knowledge base.

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

    The unique identifier of the knowledge base.

    + * @public + */ + knowledgeBaseId: string | undefined; + + /** + *

    The name of the knowledge base.

    + * @public + */ + name: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the knowledge base.

    + * @public + */ + knowledgeBaseArn: string | undefined; + + /** + *

    The description of the knowledge base.

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

    The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

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

    Contains details about the embeddings configuration of the knowledge base.

    + * @public + */ + knowledgeBaseConfiguration: KnowledgeBaseConfiguration | undefined; + + /** + *

    Contains details about the storage configuration of the knowledge base.

    + * @public + */ + storageConfiguration: StorageConfiguration | undefined; + + /** + *

    The status of the knowledge base. The following statuses are possible:

    + *
      + *
    • + *

      CREATING – The knowledge base is being created.

      + *
    • + *
    • + *

      ACTIVE – The knowledge base is ready to be queried.

      + *
    • + *
    • + *

      DELETING – The knowledge base is being deleted.

      + *
    • + *
    • + *

      UPDATING – The knowledge base is being updated.

      + *
    • + *
    • + *

      FAILED – The knowledge base API operation failed.

      + *
    • + *
    + * @public + */ + status: KnowledgeBaseStatus | undefined; + + /** + *

    The time at which the knowledge base was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the knowledge base was last updated.

    + * @public + */ + updatedAt: Date | undefined; + + /** + *

    A list of reasons that the API operation on the knowledge base failed.

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

    Contains details about the knowledge base.

    + * @public + */ + knowledgeBase: KnowledgeBase | undefined; +} + +/** + * @public + */ +export interface DeleteKnowledgeBaseRequest { + /** + *

    The unique identifier of the knowledge base to delete.

    + * @public + */ + knowledgeBaseId: string | undefined; +} + +/** + * @public + */ +export interface DeleteKnowledgeBaseResponse { + /** + *

    The unique identifier of the knowledge base that was deleted.

    + * @public + */ + knowledgeBaseId: string | undefined; + + /** + *

    The status of the knowledge base and whether it has been successfully deleted.

    + * @public + */ + status: KnowledgeBaseStatus | undefined; +} + +/** + * @public + */ +export interface DisassociateAgentKnowledgeBaseRequest { + /** + *

    The unique identifier of the agent from which to disassociate the knowledge base.

    + * @public + */ + agentId: string | undefined; + + /** + *

    The version of the agent from which to disassociate the knowledge base.

    + * @public + */ + agentVersion: string | undefined; + + /** + *

    The unique identifier of the knowledge base to disassociate.

    + * @public + */ + knowledgeBaseId: string | undefined; +} + +/** + * @public + */ +export interface DisassociateAgentKnowledgeBaseResponse {} + +/** + * @public + */ +export interface GetAgentKnowledgeBaseRequest { + /** + *

    The unique identifier of the agent with which the knowledge base is associated.

    + * @public + */ + agentId: string | undefined; + + /** + *

    The version of the agent with which the knowledge base is associated.

    + * @public + */ + agentVersion: string | undefined; + + /** + *

    The unique identifier of the knowledge base associated with the agent.

    + * @public + */ + knowledgeBaseId: string | undefined; +} + +/** + * @public + */ +export interface GetAgentKnowledgeBaseResponse { + /** + *

    Contains details about a knowledge base attached to an agent.

    + * @public + */ + agentKnowledgeBase: AgentKnowledgeBase | undefined; +} + +/** + * @public + */ +export interface GetKnowledgeBaseRequest { + /** + *

    The unique identifier of the knowledge base for which to get information.

    + * @public + */ + knowledgeBaseId: string | undefined; +} + +/** + * @public + */ +export interface GetKnowledgeBaseResponse { + /** + *

    Contains details about the knowledge base.

    + * @public + */ + knowledgeBase: KnowledgeBase | undefined; +} + +/** + * @public + */ +export interface ListAgentKnowledgeBasesRequest { + /** + *

    The unique identifier of the agent for which to return information about knowledge bases associated with it.

    + * @public + */ + agentId: string | undefined; + + /** + *

    The version of the agent for which to return information about knowledge bases associated with it.

    + * @public + */ + agentVersion: string | undefined; + + /** + *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    + * @public + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListAgentKnowledgeBasesResponse { + /** + *

    A list of objects, each of which contains information about a knowledge base associated with the agent.

    + * @public + */ + agentKnowledgeBaseSummaries: AgentKnowledgeBaseSummary[] | undefined; + + /** + *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + * @public + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListKnowledgeBasesRequest { + /** + *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

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

    Contains details about a knowledge base.

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

    The unique identifier of the knowledge base.

    + * @public + */ + knowledgeBaseId: string | undefined; + + /** + *

    The name of the knowledge base.

    + * @public + */ + name: string | undefined; + + /** + *

    The description of the knowledge base.

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

    The status of the knowledge base.

    + * @public + */ + status: KnowledgeBaseStatus | undefined; + + /** + *

    The time at which the knowledge base was last updated.

    + * @public + */ + updatedAt: Date | undefined; +} + +/** + * @public + */ +export interface ListKnowledgeBasesResponse { + /** + *

    A list of objects, each of which contains information about a knowledge base.

    + * @public + */ + knowledgeBaseSummaries: KnowledgeBaseSummary[] | undefined; + + /** + *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + * @public + */ + nextToken?: string; +} + +/** + * @public + */ +export interface UpdateAgentKnowledgeBaseRequest { + /** + *

    The unique identifier of the agent associated with the knowledge base that you want to update.

    + * @public + */ + agentId: string | undefined; + + /** + *

    The version of the agent associated with the knowledge base that you want to update.

    + * @public + */ + agentVersion: string | undefined; + + /** + *

    The unique identifier of the knowledge base that has been associated with an agent.

    + * @public + */ + knowledgeBaseId: string | undefined; + + /** + *

    Specifies a new description for the knowledge base associated with an agent.

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

    Specifies whether the agent uses the knowledge base or not when sending an InvokeAgent request.

    + * @public + */ + knowledgeBaseState?: KnowledgeBaseState; +} + +/** + * @public + */ +export interface UpdateAgentKnowledgeBaseResponse { + /** + *

    Contains details about the knowledge base that has been associated with an agent.

    + * @public + */ + agentKnowledgeBase: AgentKnowledgeBase | undefined; +} + +/** + * @public + */ +export interface UpdateKnowledgeBaseRequest { + /** + *

    The unique identifier of the knowledge base to update.

    + * @public + */ + knowledgeBaseId: string | undefined; + + /** + *

    Specifies a new name for the knowledge base.

    + * @public + */ + name: string | undefined; + + /** + *

    Specifies a new description for the knowledge base.

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

    Specifies a different Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

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

    Specifies the configuration for the embeddings model used for the knowledge base. You must use the same configuration as when the knowledge base was created.

    + * @public + */ + knowledgeBaseConfiguration: KnowledgeBaseConfiguration | undefined; + + /** + *

    Specifies the configuration for the vector store used for the knowledge base. You must use the same configuration as when the knowledge base was created.

    + * @public + */ + storageConfiguration: StorageConfiguration | undefined; +} + +/** + * @public + */ +export interface UpdateKnowledgeBaseResponse { + /** + *

    Contains details about the knowledge base.

    + * @public + */ + knowledgeBase: KnowledgeBase | undefined; +} + +/** + *

    Contains details about a variant of the prompt.

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

    The name of the prompt variant.

    + * @public + */ + name: string | undefined; + + /** + *

    The type of prompt template to use.

    + * @public + */ + templateType: PromptTemplateType | undefined; + + /** + *

    Contains configurations for the prompt template.

    + * @public + */ + templateConfiguration?: PromptTemplateConfiguration; + + /** + *

    The unique identifier of the model with which to run inference on the prompt.

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

    Contains inference configurations for the prompt variant.

    + * @public + */ + inferenceConfiguration?: PromptInferenceConfiguration; +} + +/** + * @public + */ +export interface CreatePromptRequest { + /** + *

    A name for the prompt.

    + * @public + */ + name: string | undefined; + + /** + *

    A description for the prompt.

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

    The Amazon Resource Name (ARN) of the KMS key to encrypt the prompt.

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

    The name of the default variant for the prompt. This value must match the name field in the relevant PromptVariant object.

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

    A list of objects, each containing details about a variant of the prompt.

    + * @public + */ + variants?: PromptVariant[]; + + /** + *

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, + * Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

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

    Any tags that you want to attach to the prompt. For more information, see Tagging resources in Amazon Bedrock.

    + * @public + */ + tags?: Record; +} + +/** + * @public + */ +export interface CreatePromptResponse { + /** + *

    The name of the prompt.

    + * @public + */ + name: string | undefined; + + /** + *

    The description of the prompt.

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

    The Amazon Resource Name (ARN) of the KMS key that you encrypted the prompt with.

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

    The name of the default variant for your prompt.

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

    A list of objects, each containing details about a variant of the prompt.

    + * @public + */ + variants?: PromptVariant[]; + + /** + *

    The unique identifier of the prompt.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the prompt.

    + * @public + */ + arn: string | undefined; + + /** + *

    The version of the prompt. When you create a prompt, the version created is the DRAFT version.

    + * @public + */ + version: string | undefined; + + /** + *

    The time at which the prompt was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the prompt was last updated.

    + * @public + */ + updatedAt: Date | undefined; +} + +/** + * @public + */ +export interface CreatePromptVersionRequest { + /** + *

    The unique identifier of the prompt that you want to create a version of.

    + * @public + */ + promptIdentifier: string | undefined; + + /** + *

    A description for the version of the prompt.

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

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, + * Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

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

    Any tags that you want to attach to the version of the prompt. For more information, see Tagging resources in Amazon Bedrock.

    + * @public + */ + tags?: Record; +} + +/** + * @public + */ +export interface CreatePromptVersionResponse { + /** + *

    The name of the prompt version.

    + * @public + */ + name: string | undefined; + + /** + *

    A description for the prompt version.

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

    The Amazon Resource Name (ARN) of the KMS key to encrypt the version of the prompt.

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

    The name of the default variant for the prompt. This value must match the name field in the relevant PromptVariant object.

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

    A list of objects, each containing details about a variant of the prompt.

    + * @public + */ + variants?: PromptVariant[]; + + /** + *

    The unique identifier of the prompt.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the version of the prompt.

    + * @public + */ + arn: string | undefined; + + /** + *

    The version of the prompt that was created. Versions are numbered incrementally, starting from 1.

    + * @public + */ + version: string | undefined; + + /** + *

    The time at which the prompt was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the prompt was last updated.

    + * @public + */ + updatedAt: Date | undefined; +} + +/** + * @public + */ +export interface DeletePromptRequest { + /** + *

    The unique identifier of the prompt.

    + * @public + */ + promptIdentifier: string | undefined; + + /** + *

    The version of the prompt to delete.

    + * @public + */ + promptVersion?: string; +} + +/** + * @public + */ +export interface DeletePromptResponse { + /** + *

    The unique identifier of the prompt that was deleted.

    + * @public + */ + id: string | undefined; + + /** + *

    The version of the prompt that was deleted.

    + * @public + */ + version?: string; +} + +/** + * @public + */ +export interface GetPromptRequest { + /** + *

    The unique identifier of the prompt.

    + * @public + */ + promptIdentifier: string | undefined; + + /** + *

    The version of the prompt about which you want to retrieve information.

    + * @public + */ + promptVersion?: string; +} + +/** + * @public + */ +export interface GetPromptResponse { + /** + *

    The name of the prompt.

    + * @public + */ + name: string | undefined; + + /** + *

    The descriptino of the prompt.

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

    The Amazon Resource Name (ARN) of the KMS key that the prompt is encrypted with.

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

    The name of the default variant for the prompt. This value must match the name field in the relevant PromptVariant object.

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

    A list of objects, each containing details about a variant of the prompt.

    + * @public + */ + variants?: PromptVariant[]; + + /** + *

    The unique identifier of the prompt.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the prompt.

    + * @public + */ + arn: string | undefined; + + /** + *

    The version of the prompt.

    + * @public + */ + version: string | undefined; + + /** + *

    The time at which the prompt was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the prompt was last updated.

    + * @public + */ + updatedAt: Date | undefined; +} + +/** + * @public + */ +export interface ListPromptsRequest { + /** + *

    The unique identifier of the prompt.

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

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

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

    Contains information about a prompt in your Prompt management tool.

    + *

    This data type is used in the following API operations:

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

    The name of the prompt.

    + * @public + */ + name: string | undefined; + + /** + *

    The description of the prompt.

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

    The unique identifier of the prompt.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the prompt.

    + * @public + */ + arn: string | undefined; + + /** + *

    The version of the prompt that this summary applies to.

    + * @public + */ + version: string | undefined; + + /** + *

    The time at which the prompt was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the prompt was last updated.

    + * @public + */ + updatedAt: Date | undefined; +} + +/** + * @public + */ +export interface ListPromptsResponse { + /** + *

    A list, each member of which contains information about a prompt using Prompt management.

    + * @public + */ + promptSummaries: PromptSummary[] | undefined; + + /** + *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + * @public + */ + nextToken?: string; +} + +/** + * @public + */ +export interface UpdatePromptRequest { + /** + *

    A name for the prompt.

    + * @public + */ + name: string | undefined; + + /** + *

    A description for the prompt.

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

    The Amazon Resource Name (ARN) of the KMS key to encrypt the prompt.

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

    The name of the default variant for the prompt. This value must match the name field in the relevant PromptVariant object.

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

    A list of objects, each containing details about a variant of the prompt.

    + * @public + */ + variants?: PromptVariant[]; + + /** + *

    The unique identifier of the prompt.

    + * @public + */ + promptIdentifier: string | undefined; +} + +/** + * @public + */ +export interface UpdatePromptResponse { + /** + *

    The name of the prompt.

    + * @public + */ + name: string | undefined; + + /** + *

    The description of the prompt.

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

    The Amazon Resource Name (ARN) of the KMS key to encrypt the prompt.

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

    The name of the default variant for the prompt. This value must match the name field in the relevant PromptVariant object.

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

    A list of objects, each containing details about a variant of the prompt.

    + * @public + */ + variants?: PromptVariant[]; + + /** + *

    The unique identifier of the prompt.

    + * @public + */ + id: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the prompt.

    + * @public + */ + arn: string | undefined; + + /** + *

    The version of the prompt. When you update a prompt, the version updated is the DRAFT version.

    + * @public + */ + version: string | undefined; + + /** + *

    The time at which the prompt was created.

    + * @public + */ + createdAt: Date | undefined; + + /** + *

    The time at which the prompt was last updated.

    + * @public + */ + updatedAt: Date | undefined; +} + +/** + * @public + */ +export interface ListTagsForResourceRequest { + /** + *

    The Amazon Resource Name (ARN) of the resource for which to list tags.

    + * @public + */ + resourceArn: string | undefined; +} + +/** + * @public + */ +export interface ListTagsForResourceResponse { + /** + *

    The key-value pairs for the tags associated with the resource.

    + * @public + */ + tags?: Record; +} + +/** + * @public + */ +export interface TagResourceRequest { + /** + *

    The Amazon Resource Name (ARN) of the resource to tag.

    + * @public + */ + resourceArn: string | undefined; + + /** + *

    An object containing key-value pairs that define the tags to attach to the resource.

    + * @public + */ + tags: Record | undefined; +} + +/** + * @public + */ +export interface TagResourceResponse {} + +/** + * @public + */ +export interface UntagResourceRequest { + /** + *

    The Amazon Resource Name (ARN) of the resource from which to remove tags.

    + * @public + */ + resourceArn: string | undefined; /** *

    A list of keys of the tags to remove from the resource.

    * @public */ - tagKeys: string[] | undefined; + tagKeys: string[] | undefined; +} + +/** + * @public + */ +export interface UntagResourceResponse {} + +/** + * @public + */ +export interface DeleteAgentVersionRequest { + /** + *

    The unique identifier of the agent that the version belongs to.

    + * @public + */ + agentId: string | undefined; + + /** + *

    The version of the agent to delete.

    + * @public + */ + agentVersion: string | undefined; + + /** + *

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    + * @public + */ + skipResourceInUseCheck?: boolean; +} + +/** + * @public + */ +export interface DeleteAgentVersionResponse { + /** + *

    The unique identifier of the agent that the version belongs to.

    + * @public + */ + agentId: string | undefined; + + /** + *

    The version that was deleted.

    + * @public + */ + agentVersion: string | undefined; + + /** + *

    The status of the agent version.

    + * @public + */ + agentStatus: AgentStatus | undefined; +} + +/** + * @public + */ +export interface GetAgentVersionRequest { + /** + *

    The unique identifier of the agent.

    + * @public + */ + agentId: string | undefined; + + /** + *

    The version of the agent.

    + * @public + */ + agentVersion: string | undefined; +} + +/** + * @public + */ +export interface GetAgentVersionResponse { + /** + *

    Contains details about the version of the agent.

    + * @public + */ + agentVersion: AgentVersion | undefined; +} + +/** + * @public + */ +export interface ListAgentVersionsRequest { + /** + *

    The unique identifier of the agent.

    + * @public + */ + agentId: string | undefined; + + /** + *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    + * @public + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListAgentVersionsResponse { + /** + *

    A list of objects, each of which contains information about a version of the agent.

    + * @public + */ + agentVersionSummaries: AgentVersionSummary[] | undefined; + + /** + *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    + * @public + */ + nextToken?: string; } /** - * @public + * @internal + */ +export const APISchemaFilterSensitiveLog = (obj: APISchema): any => { + if (obj.s3 !== undefined) return { s3: obj.s3 }; + if (obj.payload !== undefined) return { payload: SENSITIVE_STRING }; + if (obj.$unknown !== undefined) return { [obj.$unknown[0]]: "UNKNOWN" }; +}; + +/** + * @internal + */ +export const CreateAgentActionGroupRequestFilterSensitiveLog = (obj: CreateAgentActionGroupRequest): any => ({ + ...obj, + ...(obj.actionGroupExecutor && { actionGroupExecutor: obj.actionGroupExecutor }), + ...(obj.apiSchema && { apiSchema: APISchemaFilterSensitiveLog(obj.apiSchema) }), + ...(obj.functionSchema && { functionSchema: obj.functionSchema }), +}); + +/** + * @internal + */ +export const AgentActionGroupFilterSensitiveLog = (obj: AgentActionGroup): any => ({ + ...obj, + ...(obj.actionGroupExecutor && { actionGroupExecutor: obj.actionGroupExecutor }), + ...(obj.apiSchema && { apiSchema: APISchemaFilterSensitiveLog(obj.apiSchema) }), + ...(obj.functionSchema && { functionSchema: obj.functionSchema }), +}); + +/** + * @internal + */ +export const CreateAgentActionGroupResponseFilterSensitiveLog = (obj: CreateAgentActionGroupResponse): any => ({ + ...obj, + ...(obj.agentActionGroup && { agentActionGroup: AgentActionGroupFilterSensitiveLog(obj.agentActionGroup) }), +}); + +/** + * @internal + */ +export const GetAgentActionGroupResponseFilterSensitiveLog = (obj: GetAgentActionGroupResponse): any => ({ + ...obj, + ...(obj.agentActionGroup && { agentActionGroup: AgentActionGroupFilterSensitiveLog(obj.agentActionGroup) }), +}); + +/** + * @internal + */ +export const UpdateAgentActionGroupRequestFilterSensitiveLog = (obj: UpdateAgentActionGroupRequest): any => ({ + ...obj, + ...(obj.actionGroupExecutor && { actionGroupExecutor: obj.actionGroupExecutor }), + ...(obj.apiSchema && { apiSchema: APISchemaFilterSensitiveLog(obj.apiSchema) }), + ...(obj.functionSchema && { functionSchema: obj.functionSchema }), +}); + +/** + * @internal + */ +export const UpdateAgentActionGroupResponseFilterSensitiveLog = (obj: UpdateAgentActionGroupResponse): any => ({ + ...obj, + ...(obj.agentActionGroup && { agentActionGroup: AgentActionGroupFilterSensitiveLog(obj.agentActionGroup) }), +}); + +/** + * @internal + */ +export const PromptConfigurationFilterSensitiveLog = (obj: PromptConfiguration): any => ({ + ...obj, + ...(obj.basePromptTemplate && { basePromptTemplate: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const PromptOverrideConfigurationFilterSensitiveLog = (obj: PromptOverrideConfiguration): any => ({ + ...obj, + ...(obj.promptConfigurations && { + promptConfigurations: obj.promptConfigurations.map((item) => PromptConfigurationFilterSensitiveLog(item)), + }), +}); + +/** + * @internal + */ +export const AgentFilterSensitiveLog = (obj: Agent): any => ({ + ...obj, + ...(obj.instruction && { instruction: SENSITIVE_STRING }), + ...(obj.promptOverrideConfiguration && { promptOverrideConfiguration: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const CreateAgentRequestFilterSensitiveLog = (obj: CreateAgentRequest): any => ({ + ...obj, + ...(obj.instruction && { instruction: SENSITIVE_STRING }), + ...(obj.promptOverrideConfiguration && { promptOverrideConfiguration: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const CreateAgentResponseFilterSensitiveLog = (obj: CreateAgentResponse): any => ({ + ...obj, + ...(obj.agent && { agent: AgentFilterSensitiveLog(obj.agent) }), +}); + +/** + * @internal + */ +export const GetAgentResponseFilterSensitiveLog = (obj: GetAgentResponse): any => ({ + ...obj, + ...(obj.agent && { agent: AgentFilterSensitiveLog(obj.agent) }), +}); + +/** + * @internal + */ +export const UpdateAgentRequestFilterSensitiveLog = (obj: UpdateAgentRequest): any => ({ + ...obj, + ...(obj.instruction && { instruction: SENSITIVE_STRING }), + ...(obj.promptOverrideConfiguration && { promptOverrideConfiguration: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const UpdateAgentResponseFilterSensitiveLog = (obj: UpdateAgentResponse): any => ({ + ...obj, + ...(obj.agent && { agent: AgentFilterSensitiveLog(obj.agent) }), +}); + +/** + * @internal + */ +export const AgentVersionFilterSensitiveLog = (obj: AgentVersion): any => ({ + ...obj, + ...(obj.instruction && { instruction: SENSITIVE_STRING }), + ...(obj.promptOverrideConfiguration && { promptOverrideConfiguration: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const PatternObjectFilterFilterSensitiveLog = (obj: PatternObjectFilter): any => ({ + ...obj, + ...(obj.objectType && { objectType: SENSITIVE_STRING }), + ...(obj.inclusionFilters && { inclusionFilters: SENSITIVE_STRING }), + ...(obj.exclusionFilters && { exclusionFilters: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const PatternObjectFilterConfigurationFilterSensitiveLog = (obj: PatternObjectFilterConfiguration): any => ({ + ...obj, + ...(obj.filters && { filters: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const CrawlFilterConfigurationFilterSensitiveLog = (obj: CrawlFilterConfiguration): any => ({ + ...obj, + ...(obj.patternObjectFilter && { + patternObjectFilter: PatternObjectFilterConfigurationFilterSensitiveLog(obj.patternObjectFilter), + }), +}); + +/** + * @internal + */ +export const ConfluenceCrawlerConfigurationFilterSensitiveLog = (obj: ConfluenceCrawlerConfiguration): any => ({ + ...obj, + ...(obj.filterConfiguration && { + filterConfiguration: CrawlFilterConfigurationFilterSensitiveLog(obj.filterConfiguration), + }), +}); + +/** + * @internal */ -export interface UntagResourceResponse {} +export const ConfluenceDataSourceConfigurationFilterSensitiveLog = (obj: ConfluenceDataSourceConfiguration): any => ({ + ...obj, + ...(obj.crawlerConfiguration && { + crawlerConfiguration: ConfluenceCrawlerConfigurationFilterSensitiveLog(obj.crawlerConfiguration), + }), +}); /** - * @public + * @internal */ -export interface DeleteAgentVersionRequest { - /** - *

    The unique identifier of the agent that the version belongs to.

    - * @public - */ - agentId: string | undefined; +export const S3DataSourceConfigurationFilterSensitiveLog = (obj: S3DataSourceConfiguration): any => ({ + ...obj, + ...(obj.inclusionPrefixes && { inclusionPrefixes: SENSITIVE_STRING }), +}); - /** - *

    The version of the agent to delete.

    - * @public - */ - agentVersion: string | undefined; +/** + * @internal + */ +export const SalesforceCrawlerConfigurationFilterSensitiveLog = (obj: SalesforceCrawlerConfiguration): any => ({ + ...obj, + ...(obj.filterConfiguration && { + filterConfiguration: CrawlFilterConfigurationFilterSensitiveLog(obj.filterConfiguration), + }), +}); - /** - *

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    - * @public - */ - skipResourceInUseCheck?: boolean; -} +/** + * @internal + */ +export const SalesforceDataSourceConfigurationFilterSensitiveLog = (obj: SalesforceDataSourceConfiguration): any => ({ + ...obj, + ...(obj.crawlerConfiguration && { + crawlerConfiguration: SalesforceCrawlerConfigurationFilterSensitiveLog(obj.crawlerConfiguration), + }), +}); /** - * @public + * @internal */ -export interface DeleteAgentVersionResponse { - /** - *

    The unique identifier of the agent that the version belongs to.

    - * @public - */ - agentId: string | undefined; +export const SharePointCrawlerConfigurationFilterSensitiveLog = (obj: SharePointCrawlerConfiguration): any => ({ + ...obj, + ...(obj.filterConfiguration && { + filterConfiguration: CrawlFilterConfigurationFilterSensitiveLog(obj.filterConfiguration), + }), +}); - /** - *

    The version that was deleted.

    - * @public - */ - agentVersion: string | undefined; +/** + * @internal + */ +export const SharePointDataSourceConfigurationFilterSensitiveLog = (obj: SharePointDataSourceConfiguration): any => ({ + ...obj, + ...(obj.crawlerConfiguration && { + crawlerConfiguration: SharePointCrawlerConfigurationFilterSensitiveLog(obj.crawlerConfiguration), + }), +}); - /** - *

    The status of the agent version.

    - * @public - */ - agentStatus: AgentStatus | undefined; -} +/** + * @internal + */ +export const WebCrawlerConfigurationFilterSensitiveLog = (obj: WebCrawlerConfiguration): any => ({ + ...obj, + ...(obj.inclusionFilters && { inclusionFilters: SENSITIVE_STRING }), + ...(obj.exclusionFilters && { exclusionFilters: SENSITIVE_STRING }), +}); /** - * @public + * @internal */ -export interface GetAgentVersionRequest { - /** - *

    The unique identifier of the agent.

    - * @public - */ - agentId: string | undefined; +export const WebDataSourceConfigurationFilterSensitiveLog = (obj: WebDataSourceConfiguration): any => ({ + ...obj, + ...(obj.crawlerConfiguration && { + crawlerConfiguration: WebCrawlerConfigurationFilterSensitiveLog(obj.crawlerConfiguration), + }), +}); - /** - *

    The version of the agent.

    - * @public - */ - agentVersion: string | undefined; -} +/** + * @internal + */ +export const DataSourceConfigurationFilterSensitiveLog = (obj: DataSourceConfiguration): any => ({ + ...obj, + ...(obj.s3Configuration && { s3Configuration: S3DataSourceConfigurationFilterSensitiveLog(obj.s3Configuration) }), + ...(obj.webConfiguration && { webConfiguration: WebDataSourceConfigurationFilterSensitiveLog(obj.webConfiguration) }), + ...(obj.confluenceConfiguration && { + confluenceConfiguration: ConfluenceDataSourceConfigurationFilterSensitiveLog(obj.confluenceConfiguration), + }), + ...(obj.salesforceConfiguration && { + salesforceConfiguration: SalesforceDataSourceConfigurationFilterSensitiveLog(obj.salesforceConfiguration), + }), + ...(obj.sharePointConfiguration && { + sharePointConfiguration: SharePointDataSourceConfigurationFilterSensitiveLog(obj.sharePointConfiguration), + }), +}); /** - * @public + * @internal */ -export interface GetAgentVersionResponse { - /** - *

    Contains details about the version of the agent.

    - * @public - */ - agentVersion: AgentVersion | undefined; -} +export const CreateDataSourceRequestFilterSensitiveLog = (obj: CreateDataSourceRequest): any => ({ + ...obj, + ...(obj.dataSourceConfiguration && { + dataSourceConfiguration: DataSourceConfigurationFilterSensitiveLog(obj.dataSourceConfiguration), + }), +}); /** - * @public + * @internal */ -export interface ListAgentVersionsRequest { - /** - *

    The unique identifier of the agent.

    - * @public - */ - agentId: string | undefined; +export const DataSourceFilterSensitiveLog = (obj: DataSource): any => ({ + ...obj, + ...(obj.dataSourceConfiguration && { + dataSourceConfiguration: DataSourceConfigurationFilterSensitiveLog(obj.dataSourceConfiguration), + }), +}); - /** - *

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    - * @public - */ - maxResults?: number; +/** + * @internal + */ +export const CreateDataSourceResponseFilterSensitiveLog = (obj: CreateDataSourceResponse): any => ({ + ...obj, + ...(obj.dataSource && { dataSource: DataSourceFilterSensitiveLog(obj.dataSource) }), +}); - /** - *

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    - * @public - */ - nextToken?: string; -} +/** + * @internal + */ +export const GetDataSourceResponseFilterSensitiveLog = (obj: GetDataSourceResponse): any => ({ + ...obj, + ...(obj.dataSource && { dataSource: DataSourceFilterSensitiveLog(obj.dataSource) }), +}); /** - * @public + * @internal */ -export interface ListAgentVersionsResponse { - /** - *

    A list of objects, each of which contains information about a version of the agent.

    - * @public - */ - agentVersionSummaries: AgentVersionSummary[] | undefined; +export const UpdateDataSourceRequestFilterSensitiveLog = (obj: UpdateDataSourceRequest): any => ({ + ...obj, + ...(obj.dataSourceConfiguration && { + dataSourceConfiguration: DataSourceConfigurationFilterSensitiveLog(obj.dataSourceConfiguration), + }), +}); - /** - *

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    - * @public - */ - nextToken?: string; -} +/** + * @internal + */ +export const UpdateDataSourceResponseFilterSensitiveLog = (obj: UpdateDataSourceResponse): any => ({ + ...obj, + ...(obj.dataSource && { dataSource: DataSourceFilterSensitiveLog(obj.dataSource) }), +}); /** * @internal */ -export const APISchemaFilterSensitiveLog = (obj: APISchema): any => { - if (obj.s3 !== undefined) return { s3: obj.s3 }; - if (obj.payload !== undefined) return { payload: SENSITIVE_STRING }; +export const FlowConditionFilterSensitiveLog = (obj: FlowCondition): any => ({ + ...obj, + ...(obj.expression && { expression: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const ConditionFlowNodeConfigurationFilterSensitiveLog = (obj: ConditionFlowNodeConfiguration): any => ({ + ...obj, + ...(obj.conditions && { conditions: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const TextPromptTemplateConfigurationFilterSensitiveLog = (obj: TextPromptTemplateConfiguration): any => ({ + ...obj, + ...(obj.text && { text: SENSITIVE_STRING }), + ...(obj.inputVariables && { inputVariables: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const PromptTemplateConfigurationFilterSensitiveLog = (obj: PromptTemplateConfiguration): any => { + if (obj.text !== undefined) return { text: SENSITIVE_STRING }; if (obj.$unknown !== undefined) return { [obj.$unknown[0]]: "UNKNOWN" }; }; /** * @internal */ -export const CreateAgentActionGroupRequestFilterSensitiveLog = (obj: CreateAgentActionGroupRequest): any => ({ +export const PromptFlowNodeInlineConfigurationFilterSensitiveLog = (obj: PromptFlowNodeInlineConfiguration): any => ({ ...obj, - ...(obj.actionGroupExecutor && { actionGroupExecutor: obj.actionGroupExecutor }), - ...(obj.apiSchema && { apiSchema: APISchemaFilterSensitiveLog(obj.apiSchema) }), - ...(obj.functionSchema && { functionSchema: obj.functionSchema }), + ...(obj.templateConfiguration && { + templateConfiguration: PromptTemplateConfigurationFilterSensitiveLog(obj.templateConfiguration), + }), + ...(obj.inferenceConfiguration && { inferenceConfiguration: obj.inferenceConfiguration }), }); /** * @internal */ -export const AgentActionGroupFilterSensitiveLog = (obj: AgentActionGroup): any => ({ +export const PromptFlowNodeSourceConfigurationFilterSensitiveLog = (obj: PromptFlowNodeSourceConfiguration): any => { + if (obj.resource !== undefined) return { resource: obj.resource }; + if (obj.inline !== undefined) return { inline: PromptFlowNodeInlineConfigurationFilterSensitiveLog(obj.inline) }; + if (obj.$unknown !== undefined) return { [obj.$unknown[0]]: "UNKNOWN" }; +}; + +/** + * @internal + */ +export const PromptFlowNodeConfigurationFilterSensitiveLog = (obj: PromptFlowNodeConfiguration): any => ({ ...obj, - ...(obj.actionGroupExecutor && { actionGroupExecutor: obj.actionGroupExecutor }), - ...(obj.apiSchema && { apiSchema: APISchemaFilterSensitiveLog(obj.apiSchema) }), - ...(obj.functionSchema && { functionSchema: obj.functionSchema }), + ...(obj.sourceConfiguration && { + sourceConfiguration: PromptFlowNodeSourceConfigurationFilterSensitiveLog(obj.sourceConfiguration), + }), }); /** * @internal */ -export const CreateAgentActionGroupResponseFilterSensitiveLog = (obj: CreateAgentActionGroupResponse): any => ({ +export const FlowNodeConfigurationFilterSensitiveLog = (obj: FlowNodeConfiguration): any => { + if (obj.input !== undefined) return { input: obj.input }; + if (obj.output !== undefined) return { output: obj.output }; + if (obj.knowledgeBase !== undefined) return { knowledgeBase: obj.knowledgeBase }; + if (obj.condition !== undefined) + return { condition: ConditionFlowNodeConfigurationFilterSensitiveLog(obj.condition) }; + if (obj.lex !== undefined) return { lex: obj.lex }; + if (obj.prompt !== undefined) return { prompt: PromptFlowNodeConfigurationFilterSensitiveLog(obj.prompt) }; + if (obj.lambdaFunction !== undefined) return { lambdaFunction: obj.lambdaFunction }; + if (obj.storage !== undefined) return { storage: obj.storage }; + if (obj.agent !== undefined) return { agent: obj.agent }; + if (obj.retrieval !== undefined) return { retrieval: obj.retrieval }; + if (obj.iterator !== undefined) return { iterator: obj.iterator }; + if (obj.collector !== undefined) return { collector: obj.collector }; + if (obj.$unknown !== undefined) return { [obj.$unknown[0]]: "UNKNOWN" }; +}; + +/** + * @internal + */ +export const FlowNodeInputFilterSensitiveLog = (obj: FlowNodeInput): any => ({ ...obj, - ...(obj.agentActionGroup && { agentActionGroup: AgentActionGroupFilterSensitiveLog(obj.agentActionGroup) }), + ...(obj.expression && { expression: SENSITIVE_STRING }), }); /** * @internal */ -export const GetAgentActionGroupResponseFilterSensitiveLog = (obj: GetAgentActionGroupResponse): any => ({ +export const FlowNodeFilterSensitiveLog = (obj: FlowNode): any => ({ ...obj, - ...(obj.agentActionGroup && { agentActionGroup: AgentActionGroupFilterSensitiveLog(obj.agentActionGroup) }), + ...(obj.configuration && { configuration: FlowNodeConfigurationFilterSensitiveLog(obj.configuration) }), + ...(obj.inputs && { inputs: obj.inputs.map((item) => FlowNodeInputFilterSensitiveLog(item)) }), }); /** * @internal */ -export const UpdateAgentActionGroupRequestFilterSensitiveLog = (obj: UpdateAgentActionGroupRequest): any => ({ +export const FlowDefinitionFilterSensitiveLog = (obj: FlowDefinition): any => ({ ...obj, - ...(obj.actionGroupExecutor && { actionGroupExecutor: obj.actionGroupExecutor }), - ...(obj.apiSchema && { apiSchema: APISchemaFilterSensitiveLog(obj.apiSchema) }), - ...(obj.functionSchema && { functionSchema: obj.functionSchema }), + ...(obj.nodes && { nodes: SENSITIVE_STRING }), + ...(obj.connections && { connections: obj.connections.map((item) => item) }), }); /** * @internal */ -export const UpdateAgentActionGroupResponseFilterSensitiveLog = (obj: UpdateAgentActionGroupResponse): any => ({ +export const CreateFlowRequestFilterSensitiveLog = (obj: CreateFlowRequest): any => ({ ...obj, - ...(obj.agentActionGroup && { agentActionGroup: AgentActionGroupFilterSensitiveLog(obj.agentActionGroup) }), + ...(obj.definition && { definition: FlowDefinitionFilterSensitiveLog(obj.definition) }), }); /** * @internal */ -export const PromptOverrideConfigurationFilterSensitiveLog = (obj: PromptOverrideConfiguration): any => ({ +export const CreateFlowResponseFilterSensitiveLog = (obj: CreateFlowResponse): any => ({ ...obj, + ...(obj.definition && { definition: FlowDefinitionFilterSensitiveLog(obj.definition) }), }); /** * @internal */ -export const AgentFilterSensitiveLog = (obj: Agent): any => ({ +export const CreateFlowVersionResponseFilterSensitiveLog = (obj: CreateFlowVersionResponse): any => ({ ...obj, - ...(obj.instruction && { instruction: SENSITIVE_STRING }), - ...(obj.promptOverrideConfiguration && { promptOverrideConfiguration: SENSITIVE_STRING }), + ...(obj.definition && { definition: FlowDefinitionFilterSensitiveLog(obj.definition) }), }); /** * @internal */ -export const CreateAgentRequestFilterSensitiveLog = (obj: CreateAgentRequest): any => ({ +export const GetFlowVersionResponseFilterSensitiveLog = (obj: GetFlowVersionResponse): any => ({ ...obj, - ...(obj.instruction && { instruction: SENSITIVE_STRING }), - ...(obj.promptOverrideConfiguration && { promptOverrideConfiguration: SENSITIVE_STRING }), + ...(obj.definition && { definition: FlowDefinitionFilterSensitiveLog(obj.definition) }), }); /** * @internal */ -export const CreateAgentResponseFilterSensitiveLog = (obj: CreateAgentResponse): any => ({ +export const GetFlowResponseFilterSensitiveLog = (obj: GetFlowResponse): any => ({ ...obj, - ...(obj.agent && { agent: AgentFilterSensitiveLog(obj.agent) }), + ...(obj.definition && { definition: FlowDefinitionFilterSensitiveLog(obj.definition) }), }); /** * @internal */ -export const GetAgentResponseFilterSensitiveLog = (obj: GetAgentResponse): any => ({ +export const UpdateFlowRequestFilterSensitiveLog = (obj: UpdateFlowRequest): any => ({ ...obj, - ...(obj.agent && { agent: AgentFilterSensitiveLog(obj.agent) }), + ...(obj.definition && { definition: FlowDefinitionFilterSensitiveLog(obj.definition) }), }); /** * @internal */ -export const UpdateAgentRequestFilterSensitiveLog = (obj: UpdateAgentRequest): any => ({ +export const UpdateFlowResponseFilterSensitiveLog = (obj: UpdateFlowResponse): any => ({ ...obj, - ...(obj.instruction && { instruction: SENSITIVE_STRING }), - ...(obj.promptOverrideConfiguration && { promptOverrideConfiguration: SENSITIVE_STRING }), + ...(obj.definition && { definition: FlowDefinitionFilterSensitiveLog(obj.definition) }), }); /** * @internal */ -export const UpdateAgentResponseFilterSensitiveLog = (obj: UpdateAgentResponse): any => ({ +export const PromptVariantFilterSensitiveLog = (obj: PromptVariant): any => ({ ...obj, - ...(obj.agent && { agent: AgentFilterSensitiveLog(obj.agent) }), + ...(obj.templateConfiguration && { + templateConfiguration: PromptTemplateConfigurationFilterSensitiveLog(obj.templateConfiguration), + }), + ...(obj.inferenceConfiguration && { inferenceConfiguration: obj.inferenceConfiguration }), }); /** * @internal */ -export const AgentVersionFilterSensitiveLog = (obj: AgentVersion): any => ({ +export const CreatePromptRequestFilterSensitiveLog = (obj: CreatePromptRequest): any => ({ ...obj, - ...(obj.instruction && { instruction: SENSITIVE_STRING }), - ...(obj.promptOverrideConfiguration && { promptOverrideConfiguration: SENSITIVE_STRING }), + ...(obj.variants && { variants: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const CreatePromptResponseFilterSensitiveLog = (obj: CreatePromptResponse): any => ({ + ...obj, + ...(obj.variants && { variants: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const CreatePromptVersionResponseFilterSensitiveLog = (obj: CreatePromptVersionResponse): any => ({ + ...obj, + ...(obj.variants && { variants: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const GetPromptResponseFilterSensitiveLog = (obj: GetPromptResponse): any => ({ + ...obj, + ...(obj.variants && { variants: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const UpdatePromptRequestFilterSensitiveLog = (obj: UpdatePromptRequest): any => ({ + ...obj, + ...(obj.variants && { variants: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const UpdatePromptResponseFilterSensitiveLog = (obj: UpdatePromptResponse): any => ({ + ...obj, + ...(obj.variants && { variants: SENSITIVE_STRING }), }); /** diff --git a/clients/client-bedrock-agent/src/pagination/ListFlowAliasesPaginator.ts b/clients/client-bedrock-agent/src/pagination/ListFlowAliasesPaginator.ts new file mode 100644 index 000000000000..2dd4ef3cb4d1 --- /dev/null +++ b/clients/client-bedrock-agent/src/pagination/ListFlowAliasesPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { BedrockAgentClient } from "../BedrockAgentClient"; +import { + ListFlowAliasesCommand, + ListFlowAliasesCommandInput, + ListFlowAliasesCommandOutput, +} from "../commands/ListFlowAliasesCommand"; +import { BedrockAgentPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListFlowAliases: ( + config: BedrockAgentPaginationConfiguration, + input: ListFlowAliasesCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + BedrockAgentPaginationConfiguration, + ListFlowAliasesCommandInput, + ListFlowAliasesCommandOutput +>(BedrockAgentClient, ListFlowAliasesCommand, "nextToken", "nextToken", "maxResults"); diff --git a/clients/client-bedrock-agent/src/pagination/ListFlowVersionsPaginator.ts b/clients/client-bedrock-agent/src/pagination/ListFlowVersionsPaginator.ts new file mode 100644 index 000000000000..d76c1a5cf651 --- /dev/null +++ b/clients/client-bedrock-agent/src/pagination/ListFlowVersionsPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { BedrockAgentClient } from "../BedrockAgentClient"; +import { + ListFlowVersionsCommand, + ListFlowVersionsCommandInput, + ListFlowVersionsCommandOutput, +} from "../commands/ListFlowVersionsCommand"; +import { BedrockAgentPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListFlowVersions: ( + config: BedrockAgentPaginationConfiguration, + input: ListFlowVersionsCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + BedrockAgentPaginationConfiguration, + ListFlowVersionsCommandInput, + ListFlowVersionsCommandOutput +>(BedrockAgentClient, ListFlowVersionsCommand, "nextToken", "nextToken", "maxResults"); diff --git a/clients/client-bedrock-agent/src/pagination/ListFlowsPaginator.ts b/clients/client-bedrock-agent/src/pagination/ListFlowsPaginator.ts new file mode 100644 index 000000000000..d76f19a7b430 --- /dev/null +++ b/clients/client-bedrock-agent/src/pagination/ListFlowsPaginator.ts @@ -0,0 +1,20 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { BedrockAgentClient } from "../BedrockAgentClient"; +import { ListFlowsCommand, ListFlowsCommandInput, ListFlowsCommandOutput } from "../commands/ListFlowsCommand"; +import { BedrockAgentPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListFlows: ( + config: BedrockAgentPaginationConfiguration, + input: ListFlowsCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + BedrockAgentPaginationConfiguration, + ListFlowsCommandInput, + ListFlowsCommandOutput +>(BedrockAgentClient, ListFlowsCommand, "nextToken", "nextToken", "maxResults"); diff --git a/clients/client-bedrock-agent/src/pagination/ListPromptsPaginator.ts b/clients/client-bedrock-agent/src/pagination/ListPromptsPaginator.ts new file mode 100644 index 000000000000..698925980e68 --- /dev/null +++ b/clients/client-bedrock-agent/src/pagination/ListPromptsPaginator.ts @@ -0,0 +1,20 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { BedrockAgentClient } from "../BedrockAgentClient"; +import { ListPromptsCommand, ListPromptsCommandInput, ListPromptsCommandOutput } from "../commands/ListPromptsCommand"; +import { BedrockAgentPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListPrompts: ( + config: BedrockAgentPaginationConfiguration, + input: ListPromptsCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + BedrockAgentPaginationConfiguration, + ListPromptsCommandInput, + ListPromptsCommandOutput +>(BedrockAgentClient, ListPromptsCommand, "nextToken", "nextToken", "maxResults"); diff --git a/clients/client-bedrock-agent/src/pagination/index.ts b/clients/client-bedrock-agent/src/pagination/index.ts index 49a20f0da691..7d5004a134e9 100644 --- a/clients/client-bedrock-agent/src/pagination/index.ts +++ b/clients/client-bedrock-agent/src/pagination/index.ts @@ -6,5 +6,9 @@ export * from "./ListAgentKnowledgeBasesPaginator"; export * from "./ListAgentVersionsPaginator"; export * from "./ListAgentsPaginator"; export * from "./ListDataSourcesPaginator"; +export * from "./ListFlowAliasesPaginator"; +export * from "./ListFlowVersionsPaginator"; +export * from "./ListFlowsPaginator"; export * from "./ListIngestionJobsPaginator"; export * from "./ListKnowledgeBasesPaginator"; +export * from "./ListPromptsPaginator"; diff --git a/clients/client-bedrock-agent/src/protocols/Aws_restJson1.ts b/clients/client-bedrock-agent/src/protocols/Aws_restJson1.ts index d1cab66e5da8..1d3a4cf048b0 100644 --- a/clients/client-bedrock-agent/src/protocols/Aws_restJson1.ts +++ b/clients/client-bedrock-agent/src/protocols/Aws_restJson1.ts @@ -42,10 +42,18 @@ import { import { CreateAgentAliasCommandInput, CreateAgentAliasCommandOutput } from "../commands/CreateAgentAliasCommand"; import { CreateAgentCommandInput, CreateAgentCommandOutput } from "../commands/CreateAgentCommand"; import { CreateDataSourceCommandInput, CreateDataSourceCommandOutput } from "../commands/CreateDataSourceCommand"; +import { CreateFlowAliasCommandInput, CreateFlowAliasCommandOutput } from "../commands/CreateFlowAliasCommand"; +import { CreateFlowCommandInput, CreateFlowCommandOutput } from "../commands/CreateFlowCommand"; +import { CreateFlowVersionCommandInput, CreateFlowVersionCommandOutput } from "../commands/CreateFlowVersionCommand"; import { CreateKnowledgeBaseCommandInput, CreateKnowledgeBaseCommandOutput, } from "../commands/CreateKnowledgeBaseCommand"; +import { CreatePromptCommandInput, CreatePromptCommandOutput } from "../commands/CreatePromptCommand"; +import { + CreatePromptVersionCommandInput, + CreatePromptVersionCommandOutput, +} from "../commands/CreatePromptVersionCommand"; import { DeleteAgentActionGroupCommandInput, DeleteAgentActionGroupCommandOutput, @@ -54,10 +62,14 @@ import { DeleteAgentAliasCommandInput, DeleteAgentAliasCommandOutput } from "../ import { DeleteAgentCommandInput, DeleteAgentCommandOutput } from "../commands/DeleteAgentCommand"; import { DeleteAgentVersionCommandInput, DeleteAgentVersionCommandOutput } from "../commands/DeleteAgentVersionCommand"; import { DeleteDataSourceCommandInput, DeleteDataSourceCommandOutput } from "../commands/DeleteDataSourceCommand"; +import { DeleteFlowAliasCommandInput, DeleteFlowAliasCommandOutput } from "../commands/DeleteFlowAliasCommand"; +import { DeleteFlowCommandInput, DeleteFlowCommandOutput } from "../commands/DeleteFlowCommand"; +import { DeleteFlowVersionCommandInput, DeleteFlowVersionCommandOutput } from "../commands/DeleteFlowVersionCommand"; import { DeleteKnowledgeBaseCommandInput, DeleteKnowledgeBaseCommandOutput, } from "../commands/DeleteKnowledgeBaseCommand"; +import { DeletePromptCommandInput, DeletePromptCommandOutput } from "../commands/DeletePromptCommand"; import { DisassociateAgentKnowledgeBaseCommandInput, DisassociateAgentKnowledgeBaseCommandOutput, @@ -74,8 +86,12 @@ import { } from "../commands/GetAgentKnowledgeBaseCommand"; import { GetAgentVersionCommandInput, GetAgentVersionCommandOutput } from "../commands/GetAgentVersionCommand"; import { GetDataSourceCommandInput, GetDataSourceCommandOutput } from "../commands/GetDataSourceCommand"; +import { GetFlowAliasCommandInput, GetFlowAliasCommandOutput } from "../commands/GetFlowAliasCommand"; +import { GetFlowCommandInput, GetFlowCommandOutput } from "../commands/GetFlowCommand"; +import { GetFlowVersionCommandInput, GetFlowVersionCommandOutput } from "../commands/GetFlowVersionCommand"; import { GetIngestionJobCommandInput, GetIngestionJobCommandOutput } from "../commands/GetIngestionJobCommand"; import { GetKnowledgeBaseCommandInput, GetKnowledgeBaseCommandOutput } from "../commands/GetKnowledgeBaseCommand"; +import { GetPromptCommandInput, GetPromptCommandOutput } from "../commands/GetPromptCommand"; import { ListAgentActionGroupsCommandInput, ListAgentActionGroupsCommandOutput, @@ -88,13 +104,18 @@ import { import { ListAgentsCommandInput, ListAgentsCommandOutput } from "../commands/ListAgentsCommand"; import { ListAgentVersionsCommandInput, ListAgentVersionsCommandOutput } from "../commands/ListAgentVersionsCommand"; import { ListDataSourcesCommandInput, ListDataSourcesCommandOutput } from "../commands/ListDataSourcesCommand"; +import { ListFlowAliasesCommandInput, ListFlowAliasesCommandOutput } from "../commands/ListFlowAliasesCommand"; +import { ListFlowsCommandInput, ListFlowsCommandOutput } from "../commands/ListFlowsCommand"; +import { ListFlowVersionsCommandInput, ListFlowVersionsCommandOutput } from "../commands/ListFlowVersionsCommand"; import { ListIngestionJobsCommandInput, ListIngestionJobsCommandOutput } from "../commands/ListIngestionJobsCommand"; import { ListKnowledgeBasesCommandInput, ListKnowledgeBasesCommandOutput } from "../commands/ListKnowledgeBasesCommand"; +import { ListPromptsCommandInput, ListPromptsCommandOutput } from "../commands/ListPromptsCommand"; import { ListTagsForResourceCommandInput, ListTagsForResourceCommandOutput, } from "../commands/ListTagsForResourceCommand"; import { PrepareAgentCommandInput, PrepareAgentCommandOutput } from "../commands/PrepareAgentCommand"; +import { PrepareFlowCommandInput, PrepareFlowCommandOutput } from "../commands/PrepareFlowCommand"; import { StartIngestionJobCommandInput, StartIngestionJobCommandOutput } from "../commands/StartIngestionJobCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; @@ -109,10 +130,13 @@ import { UpdateAgentKnowledgeBaseCommandOutput, } from "../commands/UpdateAgentKnowledgeBaseCommand"; import { UpdateDataSourceCommandInput, UpdateDataSourceCommandOutput } from "../commands/UpdateDataSourceCommand"; +import { UpdateFlowAliasCommandInput, UpdateFlowAliasCommandOutput } from "../commands/UpdateFlowAliasCommand"; +import { UpdateFlowCommandInput, UpdateFlowCommandOutput } from "../commands/UpdateFlowCommand"; import { UpdateKnowledgeBaseCommandInput, UpdateKnowledgeBaseCommandOutput, } from "../commands/UpdateKnowledgeBaseCommand"; +import { UpdatePromptCommandInput, UpdatePromptCommandOutput } from "../commands/UpdatePromptCommand"; import { BedrockAgentServiceException as __BaseException } from "../models/BedrockAgentServiceException"; import { AccessDeniedException, @@ -124,6 +148,7 @@ import { AgentAliasHistoryEvent, AgentAliasRoutingConfigurationListItem, AgentAliasSummary, + AgentFlowNodeConfiguration, AgentKnowledgeBase, AgentKnowledgeBaseSummary, AgentSummary, @@ -131,48 +156,119 @@ import { AgentVersionSummary, APISchema, BedrockEmbeddingModelConfiguration, + BedrockFoundationModelConfiguration, ChunkingConfiguration, + CollectorFlowNodeConfiguration, + ConditionFlowNodeConfiguration, ConflictException, + ConfluenceCrawlerConfiguration, + ConfluenceDataSourceConfiguration, + ConfluenceSourceConfiguration, + CrawlFilterConfiguration, + CustomTransformationConfiguration, DataSource, DataSourceConfiguration, DataSourceSummary, EmbeddingModelConfiguration, FixedSizeChunkingConfiguration, + FlowAliasRoutingConfigurationListItem, + FlowAliasSummary, + FlowCondition, + FlowConditionalConnectionConfiguration, + FlowConnection, + FlowConnectionConfiguration, + FlowDataConnectionConfiguration, + FlowDefinition, + FlowNode, + FlowNodeConfiguration, + FlowNodeInput, + FlowNodeOutput, + FlowSummary, + FlowVersionSummary, Function, FunctionSchema, GuardrailConfiguration, + HierarchicalChunkingConfiguration, + HierarchicalChunkingLevelConfiguration, InferenceConfiguration, IngestionJob, IngestionJobFilter, IngestionJobSortBy, IngestionJobSummary, + InputFlowNodeConfiguration, + IntermediateStorage, InternalServerException, + IteratorFlowNodeConfiguration, KnowledgeBase, KnowledgeBaseConfiguration, + KnowledgeBaseFlowNodeConfiguration, KnowledgeBaseSummary, + LambdaFunctionFlowNodeConfiguration, + LexFlowNodeConfiguration, + MemoryConfiguration, + MemoryType, MongoDbAtlasConfiguration, MongoDbAtlasFieldMapping, OpenSearchServerlessConfiguration, OpenSearchServerlessFieldMapping, + OutputFlowNodeConfiguration, ParameterDetail, + ParsingConfiguration, + ParsingPrompt, + PatternObjectFilter, + PatternObjectFilterConfiguration, PineconeConfiguration, PineconeFieldMapping, PromptConfiguration, + PromptFlowNodeConfiguration, + PromptFlowNodeInlineConfiguration, + PromptFlowNodeResourceConfiguration, + PromptFlowNodeSourceConfiguration, + PromptInferenceConfiguration, + PromptInputVariable, + PromptModelInferenceConfiguration, PromptOverrideConfiguration, + PromptSummary, + PromptTemplateConfiguration, + PromptVariant, RdsConfiguration, RdsFieldMapping, RedisEnterpriseCloudConfiguration, RedisEnterpriseCloudFieldMapping, ResourceNotFoundException, + RetrievalFlowNodeConfiguration, + RetrievalFlowNodeS3Configuration, + RetrievalFlowNodeServiceConfiguration, S3DataSourceConfiguration, S3Identifier, + S3Location, + SalesforceCrawlerConfiguration, + SalesforceDataSourceConfiguration, + SalesforceSourceConfiguration, + SeedUrl, + SemanticChunkingConfiguration, ServerSideEncryptionConfiguration, ServiceQuotaExceededException, + SharePointCrawlerConfiguration, + SharePointDataSourceConfiguration, + SharePointSourceConfiguration, StorageConfiguration, + StorageFlowNodeConfiguration, + StorageFlowNodeS3Configuration, + StorageFlowNodeServiceConfiguration, + TextPromptTemplateConfiguration, ThrottlingException, + Transformation, + TransformationFunction, + TransformationLambdaConfiguration, + UrlConfiguration, ValidationException, VectorIngestionConfiguration, VectorKnowledgeBaseConfiguration, + WebCrawlerConfiguration, + WebCrawlerLimits, + WebDataSourceConfiguration, + WebSourceConfiguration, } from "../models/models_0"; /** @@ -225,6 +321,7 @@ export const se_CreateAgentCommand = async ( guardrailConfiguration: (_) => _json(_), idleSessionTTLInSeconds: [], instruction: [], + memoryConfiguration: (_) => _json(_), promptOverrideConfiguration: (_) => se_PromptOverrideConfiguration(_, context), tags: (_) => _json(_), }) @@ -320,6 +417,85 @@ export const se_CreateDataSourceCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1CreateFlowCommand + */ +export const se_CreateFlowCommand = async ( + input: CreateFlowCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/flows"); + let body: any; + body = JSON.stringify( + take(input, { + clientToken: [true, (_) => _ ?? generateIdempotencyToken()], + customerEncryptionKeyArn: [], + definition: (_) => se_FlowDefinition(_, context), + description: [], + executionRoleArn: [], + name: [], + tags: (_) => _json(_), + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1CreateFlowAliasCommand + */ +export const se_CreateFlowAliasCommand = async ( + input: CreateFlowAliasCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/flows/{flowIdentifier}/aliases"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + let body: any; + body = JSON.stringify( + take(input, { + clientToken: [true, (_) => _ ?? generateIdempotencyToken()], + description: [], + name: [], + routingConfiguration: (_) => _json(_), + tags: (_) => _json(_), + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1CreateFlowVersionCommand + */ +export const se_CreateFlowVersionCommand = async ( + input: CreateFlowVersionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/flows/{flowIdentifier}/versions"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + let body: any; + body = JSON.stringify( + take(input, { + clientToken: [true, (_) => _ ?? generateIdempotencyToken()], + description: [], + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1CreateKnowledgeBaseCommand */ @@ -348,6 +524,59 @@ export const se_CreateKnowledgeBaseCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1CreatePromptCommand + */ +export const se_CreatePromptCommand = async ( + input: CreatePromptCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/prompts"); + let body: any; + body = JSON.stringify( + take(input, { + clientToken: [true, (_) => _ ?? generateIdempotencyToken()], + customerEncryptionKeyArn: [], + defaultVariant: [], + description: [], + name: [], + tags: (_) => _json(_), + variants: (_) => se_PromptVariantList(_, context), + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1CreatePromptVersionCommand + */ +export const se_CreatePromptVersionCommand = async ( + input: CreatePromptVersionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/prompts/{promptIdentifier}/versions"); + b.p("promptIdentifier", () => input.promptIdentifier!, "{promptIdentifier}", false); + let body: any; + body = JSON.stringify( + take(input, { + clientToken: [true, (_) => _ ?? generateIdempotencyToken()], + description: [], + tags: (_) => _json(_), + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1DeleteAgentCommand */ @@ -442,6 +671,62 @@ export const se_DeleteDataSourceCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1DeleteFlowCommand + */ +export const se_DeleteFlowCommand = async ( + input: DeleteFlowCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/flows/{flowIdentifier}"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + const query: any = map({ + [_sRIUC]: [() => input.skipResourceInUseCheck !== void 0, () => input[_sRIUC]!.toString()], + }); + let body: any; + b.m("DELETE").h(headers).q(query).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1DeleteFlowAliasCommand + */ +export const se_DeleteFlowAliasCommand = async ( + input: DeleteFlowAliasCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/flows/{flowIdentifier}/aliases/{aliasIdentifier}"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + b.p("aliasIdentifier", () => input.aliasIdentifier!, "{aliasIdentifier}", false); + let body: any; + b.m("DELETE").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1DeleteFlowVersionCommand + */ +export const se_DeleteFlowVersionCommand = async ( + input: DeleteFlowVersionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/flows/{flowIdentifier}/versions/{flowVersion}"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + b.p("flowVersion", () => input.flowVersion!, "{flowVersion}", false); + const query: any = map({ + [_sRIUC]: [() => input.skipResourceInUseCheck !== void 0, () => input[_sRIUC]!.toString()], + }); + let body: any; + b.m("DELETE").h(headers).q(query).b(body); + return b.build(); +}; + /** * serializeAws_restJson1DeleteKnowledgeBaseCommand */ @@ -458,6 +743,25 @@ export const se_DeleteKnowledgeBaseCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1DeletePromptCommand + */ +export const se_DeletePromptCommand = async ( + input: DeletePromptCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/prompts/{promptIdentifier}"); + b.p("promptIdentifier", () => input.promptIdentifier!, "{promptIdentifier}", false); + const query: any = map({ + [_pV]: [, input[_pV]!], + }); + let body: any; + b.m("DELETE").h(headers).q(query).b(body); + return b.build(); +}; + /** * serializeAws_restJson1DisassociateAgentKnowledgeBaseCommand */ @@ -579,6 +883,56 @@ export const se_GetDataSourceCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1GetFlowCommand + */ +export const se_GetFlowCommand = async ( + input: GetFlowCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/flows/{flowIdentifier}"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + let body: any; + b.m("GET").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1GetFlowAliasCommand + */ +export const se_GetFlowAliasCommand = async ( + input: GetFlowAliasCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/flows/{flowIdentifier}/aliases/{aliasIdentifier}"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + b.p("aliasIdentifier", () => input.aliasIdentifier!, "{aliasIdentifier}", false); + let body: any; + b.m("GET").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1GetFlowVersionCommand + */ +export const se_GetFlowVersionCommand = async ( + input: GetFlowVersionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/flows/{flowIdentifier}/versions/{flowVersion}"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + b.p("flowVersion", () => input.flowVersion!, "{flowVersion}", false); + let body: any; + b.m("GET").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1GetIngestionJobCommand */ @@ -613,6 +967,25 @@ export const se_GetKnowledgeBaseCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1GetPromptCommand + */ +export const se_GetPromptCommand = async ( + input: GetPromptCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/prompts/{promptIdentifier}"); + b.p("promptIdentifier", () => input.promptIdentifier!, "{promptIdentifier}", false); + const query: any = map({ + [_pV]: [, input[_pV]!], + }); + let body: any; + b.m("GET").h(headers).q(query).b(body); + return b.build(); +}; + /** * serializeAws_restJson1ListAgentActionGroupsCommand */ @@ -758,6 +1131,65 @@ export const se_ListDataSourcesCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1ListFlowAliasesCommand + */ +export const se_ListFlowAliasesCommand = async ( + input: ListFlowAliasesCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/flows/{flowIdentifier}/aliases"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + const query: any = map({ + [_mR]: [() => input.maxResults !== void 0, () => input[_mR]!.toString()], + [_nT]: [, input[_nT]!], + }); + let body: any; + b.m("GET").h(headers).q(query).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1ListFlowsCommand + */ +export const se_ListFlowsCommand = async ( + input: ListFlowsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/flows"); + const query: any = map({ + [_mR]: [() => input.maxResults !== void 0, () => input[_mR]!.toString()], + [_nT]: [, input[_nT]!], + }); + let body: any; + b.m("GET").h(headers).q(query).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1ListFlowVersionsCommand + */ +export const se_ListFlowVersionsCommand = async ( + input: ListFlowVersionsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/flows/{flowIdentifier}/versions"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + const query: any = map({ + [_mR]: [() => input.maxResults !== void 0, () => input[_mR]!.toString()], + [_nT]: [, input[_nT]!], + }); + let body: any; + b.m("GET").h(headers).q(query).b(body); + return b.build(); +}; + /** * serializeAws_restJson1ListIngestionJobsCommand */ @@ -808,6 +1240,26 @@ export const se_ListKnowledgeBasesCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1ListPromptsCommand + */ +export const se_ListPromptsCommand = async ( + input: ListPromptsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/prompts"); + const query: any = map({ + [_pI]: [, input[_pI]!], + [_mR]: [() => input.maxResults !== void 0, () => input[_mR]!.toString()], + [_nT]: [, input[_nT]!], + }); + let body: any; + b.m("GET").h(headers).q(query).b(body); + return b.build(); +}; + /** * serializeAws_restJson1ListTagsForResourceCommand */ @@ -841,15 +1293,31 @@ export const se_PrepareAgentCommand = async ( }; /** - * serializeAws_restJson1StartIngestionJobCommand + * serializeAws_restJson1PrepareFlowCommand */ -export const se_StartIngestionJobCommand = async ( - input: StartIngestionJobCommandInput, +export const se_PrepareFlowCommand = async ( + input: PrepareFlowCommandInput, context: __SerdeContext ): Promise<__HttpRequest> => { const b = rb(input, context); - const headers: any = { - "content-type": "application/json", + const headers: any = {}; + b.bp("/flows/{flowIdentifier}"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + let body: any; + b.m("POST").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1StartIngestionJobCommand + */ +export const se_StartIngestionJobCommand = async ( + input: StartIngestionJobCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", }; b.bp("/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs"); b.p("knowledgeBaseId", () => input.knowledgeBaseId!, "{knowledgeBaseId}", false); @@ -934,6 +1402,7 @@ export const se_UpdateAgentCommand = async ( guardrailConfiguration: (_) => _json(_), idleSessionTTLInSeconds: [], instruction: [], + memoryConfiguration: (_) => _json(_), promptOverrideConfiguration: (_) => se_PromptOverrideConfiguration(_, context), }) ); @@ -1053,6 +1522,59 @@ export const se_UpdateDataSourceCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1UpdateFlowCommand + */ +export const se_UpdateFlowCommand = async ( + input: UpdateFlowCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/flows/{flowIdentifier}"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + let body: any; + body = JSON.stringify( + take(input, { + customerEncryptionKeyArn: [], + definition: (_) => se_FlowDefinition(_, context), + description: [], + executionRoleArn: [], + name: [], + }) + ); + b.m("PUT").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1UpdateFlowAliasCommand + */ +export const se_UpdateFlowAliasCommand = async ( + input: UpdateFlowAliasCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/flows/{flowIdentifier}/aliases/{aliasIdentifier}"); + b.p("flowIdentifier", () => input.flowIdentifier!, "{flowIdentifier}", false); + b.p("aliasIdentifier", () => input.aliasIdentifier!, "{aliasIdentifier}", false); + let body: any; + body = JSON.stringify( + take(input, { + description: [], + name: [], + routingConfiguration: (_) => _json(_), + }) + ); + b.m("PUT").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1UpdateKnowledgeBaseCommand */ @@ -1080,6 +1602,33 @@ export const se_UpdateKnowledgeBaseCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1UpdatePromptCommand + */ +export const se_UpdatePromptCommand = async ( + input: UpdatePromptCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/prompts/{promptIdentifier}"); + b.p("promptIdentifier", () => input.promptIdentifier!, "{promptIdentifier}", false); + let body: any; + body = JSON.stringify( + take(input, { + customerEncryptionKeyArn: [], + defaultVariant: [], + description: [], + name: [], + variants: (_) => se_PromptVariantList(_, context), + }) + ); + b.m("PUT").h(headers).b(body); + return b.build(); +}; + /** * deserializeAws_restJson1AssociateAgentKnowledgeBaseCommand */ @@ -1185,6 +1734,95 @@ export const de_CreateDataSourceCommand = async ( return contents; }; +/** + * deserializeAws_restJson1CreateFlowCommand + */ +export const de_CreateFlowCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 201 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + customerEncryptionKeyArn: __expectString, + definition: (_) => de_FlowDefinition(_, context), + description: __expectString, + executionRoleArn: __expectString, + id: __expectString, + name: __expectString, + status: __expectString, + updatedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + version: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1CreateFlowAliasCommand + */ +export const de_CreateFlowAliasCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 201 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + description: __expectString, + flowId: __expectString, + id: __expectString, + name: __expectString, + routingConfiguration: _json, + updatedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1CreateFlowVersionCommand + */ +export const de_CreateFlowVersionCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 201 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + customerEncryptionKeyArn: __expectString, + definition: (_) => de_FlowDefinition(_, context), + description: __expectString, + executionRoleArn: __expectString, + id: __expectString, + name: __expectString, + status: __expectString, + version: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1CreateKnowledgeBaseCommand */ @@ -1206,6 +1844,66 @@ export const de_CreateKnowledgeBaseCommand = async ( return contents; }; +/** + * deserializeAws_restJson1CreatePromptCommand + */ +export const de_CreatePromptCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 201 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + customerEncryptionKeyArn: __expectString, + defaultVariant: __expectString, + description: __expectString, + id: __expectString, + name: __expectString, + updatedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + variants: (_) => de_PromptVariantList(_, context), + version: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1CreatePromptVersionCommand + */ +export const de_CreatePromptVersionCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 201 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + customerEncryptionKeyArn: __expectString, + defaultVariant: __expectString, + description: __expectString, + id: __expectString, + name: __expectString, + updatedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + variants: (_) => de_PromptVariantList(_, context), + version: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1DeleteAgentCommand */ @@ -1314,6 +2012,71 @@ export const de_DeleteDataSourceCommand = async ( return contents; }; +/** + * deserializeAws_restJson1DeleteFlowCommand + */ +export const de_DeleteFlowCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + id: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1DeleteFlowAliasCommand + */ +export const de_DeleteFlowAliasCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + flowId: __expectString, + id: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1DeleteFlowVersionCommand + */ +export const de_DeleteFlowVersionCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + id: __expectString, + version: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1DeleteKnowledgeBaseCommand */ @@ -1336,6 +2099,28 @@ export const de_DeleteKnowledgeBaseCommand = async ( return contents; }; +/** + * deserializeAws_restJson1DeletePromptCommand + */ +export const de_DeletePromptCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + id: __expectString, + version: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1DisassociateAgentKnowledgeBaseCommand */ @@ -1480,12 +2265,12 @@ export const de_GetDataSourceCommand = async ( }; /** - * deserializeAws_restJson1GetIngestionJobCommand + * deserializeAws_restJson1GetFlowCommand */ -export const de_GetIngestionJobCommand = async ( +export const de_GetFlowCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { return de_CommandError(output, context); } @@ -1494,7 +2279,97 @@ export const de_GetIngestionJobCommand = async ( }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - ingestionJob: (_) => de_IngestionJob(_, context), + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + customerEncryptionKeyArn: __expectString, + definition: (_) => de_FlowDefinition(_, context), + description: __expectString, + executionRoleArn: __expectString, + id: __expectString, + name: __expectString, + status: __expectString, + updatedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + validations: _json, + version: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1GetFlowAliasCommand + */ +export const de_GetFlowAliasCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + description: __expectString, + flowId: __expectString, + id: __expectString, + name: __expectString, + routingConfiguration: _json, + updatedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1GetFlowVersionCommand + */ +export const de_GetFlowVersionCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + customerEncryptionKeyArn: __expectString, + definition: (_) => de_FlowDefinition(_, context), + description: __expectString, + executionRoleArn: __expectString, + id: __expectString, + name: __expectString, + status: __expectString, + version: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1GetIngestionJobCommand + */ +export const de_GetIngestionJobCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + ingestionJob: (_) => de_IngestionJob(_, context), }); Object.assign(contents, doc); return contents; @@ -1521,6 +2396,36 @@ export const de_GetKnowledgeBaseCommand = async ( return contents; }; +/** + * deserializeAws_restJson1GetPromptCommand + */ +export const de_GetPromptCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + customerEncryptionKeyArn: __expectString, + defaultVariant: __expectString, + description: __expectString, + id: __expectString, + name: __expectString, + updatedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + variants: (_) => de_PromptVariantList(_, context), + version: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1ListAgentActionGroupsCommand */ @@ -1653,6 +2558,72 @@ export const de_ListDataSourcesCommand = async ( return contents; }; +/** + * deserializeAws_restJson1ListFlowAliasesCommand + */ +export const de_ListFlowAliasesCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + flowAliasSummaries: (_) => de_FlowAliasSummaries(_, context), + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListFlowsCommand + */ +export const de_ListFlowsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + flowSummaries: (_) => de_FlowSummaries(_, context), + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListFlowVersionsCommand + */ +export const de_ListFlowVersionsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + flowVersionSummaries: (_) => de_FlowVersionSummaries(_, context), + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1ListIngestionJobsCommand */ @@ -1697,6 +2668,28 @@ export const de_ListKnowledgeBasesCommand = async ( return contents; }; +/** + * deserializeAws_restJson1ListPromptsCommand + */ +export const de_ListPromptsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(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, + promptSummaries: (_) => de_PromptSummaries(_, context), + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1ListTagsForResourceCommand */ @@ -1742,6 +2735,28 @@ export const de_PrepareAgentCommand = async ( return contents; }; +/** + * deserializeAws_restJson1PrepareFlowCommand + */ +export const de_PrepareFlowCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 202 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + id: __expectString, + status: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1StartIngestionJobCommand */ @@ -1902,6 +2917,65 @@ export const de_UpdateDataSourceCommand = async ( return contents; }; +/** + * deserializeAws_restJson1UpdateFlowCommand + */ +export const de_UpdateFlowCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + customerEncryptionKeyArn: __expectString, + definition: (_) => de_FlowDefinition(_, context), + description: __expectString, + executionRoleArn: __expectString, + id: __expectString, + name: __expectString, + status: __expectString, + updatedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + version: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1UpdateFlowAliasCommand + */ +export const de_UpdateFlowAliasCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + description: __expectString, + flowId: __expectString, + id: __expectString, + name: __expectString, + routingConfiguration: _json, + updatedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1UpdateKnowledgeBaseCommand */ @@ -1923,6 +2997,36 @@ export const de_UpdateKnowledgeBaseCommand = async ( return contents; }; +/** + * deserializeAws_restJson1UpdatePromptCommand + */ +export const de_UpdatePromptCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + arn: __expectString, + createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + customerEncryptionKeyArn: __expectString, + defaultVariant: __expectString, + description: __expectString, + id: __expectString, + name: __expectString, + updatedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + variants: (_) => de_PromptVariantList(_, context), + version: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserialize_Aws_restJson1CommandError */ @@ -2103,30 +3207,139 @@ const de_ValidationExceptionRes = async (parsedOutput: any, context: __SerdeCont // se_AgentAliasRoutingConfigurationListItem omitted. +// se_AgentFlowNodeConfiguration omitted. + // se_APISchema omitted. // se_BedrockEmbeddingModelConfiguration omitted. +// se_BedrockFoundationModelConfiguration omitted. + // se_ChunkingConfiguration omitted. +// se_CollectorFlowNodeConfiguration omitted. + +// se_ConditionFlowNodeConfiguration omitted. + +// se_ConfluenceCrawlerConfiguration omitted. + +// se_ConfluenceDataSourceConfiguration omitted. + +// se_ConfluenceSourceConfiguration omitted. + +// se_CrawlFilterConfiguration omitted. + +// se_CustomTransformationConfiguration omitted. + // se_DataSourceConfiguration omitted. // se_EmbeddingModelConfiguration omitted. +// se_EnabledMemoryTypes omitted. + +// se_FilterList omitted. + // se_FixedSizeChunkingConfiguration omitted. -// se_Function omitted. +// se_FlowAliasRoutingConfiguration omitted. -// se_Functions omitted. +// se_FlowAliasRoutingConfigurationListItem omitted. -// se_FunctionSchema omitted. +// se_FlowCondition omitted. -// se_GuardrailConfiguration omitted. +// se_FlowConditionalConnectionConfiguration omitted. -/** - * serializeAws_restJson1InferenceConfiguration - */ -const se_InferenceConfiguration = (input: InferenceConfiguration, context: __SerdeContext): any => { +// se_FlowConditions omitted. + +// se_FlowConnection omitted. + +// se_FlowConnectionConfiguration omitted. + +// se_FlowConnections omitted. + +// se_FlowDataConnectionConfiguration omitted. + +/** + * serializeAws_restJson1FlowDefinition + */ +const se_FlowDefinition = (input: FlowDefinition, context: __SerdeContext): any => { + return take(input, { + connections: _json, + nodes: (_) => se_FlowNodes(_, context), + }); +}; + +/** + * serializeAws_restJson1FlowNode + */ +const se_FlowNode = (input: FlowNode, context: __SerdeContext): any => { + return take(input, { + configuration: (_) => se_FlowNodeConfiguration(_, context), + inputs: _json, + name: [], + outputs: _json, + type: [], + }); +}; + +/** + * serializeAws_restJson1FlowNodeConfiguration + */ +const se_FlowNodeConfiguration = (input: FlowNodeConfiguration, context: __SerdeContext): any => { + return FlowNodeConfiguration.visit(input, { + agent: (value) => ({ agent: _json(value) }), + collector: (value) => ({ collector: _json(value) }), + condition: (value) => ({ condition: _json(value) }), + input: (value) => ({ input: _json(value) }), + iterator: (value) => ({ iterator: _json(value) }), + knowledgeBase: (value) => ({ knowledgeBase: _json(value) }), + lambdaFunction: (value) => ({ lambdaFunction: _json(value) }), + lex: (value) => ({ lex: _json(value) }), + output: (value) => ({ output: _json(value) }), + prompt: (value) => ({ prompt: se_PromptFlowNodeConfiguration(value, context) }), + retrieval: (value) => ({ retrieval: _json(value) }), + storage: (value) => ({ storage: _json(value) }), + _: (name, value) => ({ name: value } as any), + }); +}; + +// se_FlowNodeInput omitted. + +// se_FlowNodeInputs omitted. + +// se_FlowNodeOutput omitted. + +// se_FlowNodeOutputs omitted. + +/** + * serializeAws_restJson1FlowNodes + */ +const se_FlowNodes = (input: FlowNode[], context: __SerdeContext): any => { + return input + .filter((e: any) => e != null) + .map((entry) => { + return se_FlowNode(entry, context); + }); +}; + +// se_Function omitted. + +// se_Functions omitted. + +// se_FunctionSchema omitted. + +// se_GuardrailConfiguration omitted. + +// se_HierarchicalChunkingConfiguration omitted. + +// se_HierarchicalChunkingLevelConfiguration omitted. + +// se_HierarchicalChunkingLevelConfigurations omitted. + +/** + * serializeAws_restJson1InferenceConfiguration + */ +const se_InferenceConfiguration = (input: InferenceConfiguration, context: __SerdeContext): any => { return take(input, { maximumLength: [], stopSequences: _json, @@ -2144,8 +3357,22 @@ const se_InferenceConfiguration = (input: InferenceConfiguration, context: __Ser // se_IngestionJobSortBy omitted. +// se_InputFlowNodeConfiguration omitted. + +// se_IntermediateStorage omitted. + +// se_IteratorFlowNodeConfiguration omitted. + // se_KnowledgeBaseConfiguration omitted. +// se_KnowledgeBaseFlowNodeConfiguration omitted. + +// se_LambdaFunctionFlowNodeConfiguration omitted. + +// se_LexFlowNodeConfiguration omitted. + +// se_MemoryConfiguration omitted. + // se_MongoDbAtlasConfiguration omitted. // se_MongoDbAtlasFieldMapping omitted. @@ -2154,10 +3381,22 @@ const se_InferenceConfiguration = (input: InferenceConfiguration, context: __Ser // se_OpenSearchServerlessFieldMapping omitted. +// se_OutputFlowNodeConfiguration omitted. + // se_ParameterDetail omitted. // se_ParameterMap omitted. +// se_ParsingConfiguration omitted. + +// se_ParsingPrompt omitted. + +// se_PatternObjectFilter omitted. + +// se_PatternObjectFilterConfiguration omitted. + +// se_PatternObjectFilterList omitted. + // se_PineconeConfiguration omitted. // se_PineconeFieldMapping omitted. @@ -2187,6 +3426,76 @@ const se_PromptConfigurations = (input: PromptConfiguration[], context: __SerdeC }); }; +/** + * serializeAws_restJson1PromptFlowNodeConfiguration + */ +const se_PromptFlowNodeConfiguration = (input: PromptFlowNodeConfiguration, context: __SerdeContext): any => { + return take(input, { + sourceConfiguration: (_) => se_PromptFlowNodeSourceConfiguration(_, context), + }); +}; + +/** + * serializeAws_restJson1PromptFlowNodeInlineConfiguration + */ +const se_PromptFlowNodeInlineConfiguration = ( + input: PromptFlowNodeInlineConfiguration, + context: __SerdeContext +): any => { + return take(input, { + inferenceConfiguration: (_) => se_PromptInferenceConfiguration(_, context), + modelId: [], + templateConfiguration: _json, + templateType: [], + }); +}; + +// se_PromptFlowNodeResourceConfiguration omitted. + +/** + * serializeAws_restJson1PromptFlowNodeSourceConfiguration + */ +const se_PromptFlowNodeSourceConfiguration = ( + input: PromptFlowNodeSourceConfiguration, + context: __SerdeContext +): any => { + return PromptFlowNodeSourceConfiguration.visit(input, { + inline: (value) => ({ inline: se_PromptFlowNodeInlineConfiguration(value, context) }), + resource: (value) => ({ resource: _json(value) }), + _: (name, value) => ({ name: value } as any), + }); +}; + +/** + * serializeAws_restJson1PromptInferenceConfiguration + */ +const se_PromptInferenceConfiguration = (input: PromptInferenceConfiguration, context: __SerdeContext): any => { + return PromptInferenceConfiguration.visit(input, { + text: (value) => ({ text: se_PromptModelInferenceConfiguration(value, context) }), + _: (name, value) => ({ name: value } as any), + }); +}; + +// se_PromptInputVariable omitted. + +// se_PromptInputVariablesList omitted. + +/** + * serializeAws_restJson1PromptModelInferenceConfiguration + */ +const se_PromptModelInferenceConfiguration = ( + input: PromptModelInferenceConfiguration, + context: __SerdeContext +): any => { + return take(input, { + maxTokens: [], + stopSequences: _json, + temperature: __serializeFloat, + topK: [], + topP: __serializeFloat, + }); +}; + /** * serializeAws_restJson1PromptOverrideConfiguration */ @@ -2197,6 +3506,32 @@ const se_PromptOverrideConfiguration = (input: PromptOverrideConfiguration, cont }); }; +// se_PromptTemplateConfiguration omitted. + +/** + * serializeAws_restJson1PromptVariant + */ +const se_PromptVariant = (input: PromptVariant, context: __SerdeContext): any => { + return take(input, { + inferenceConfiguration: (_) => se_PromptInferenceConfiguration(_, context), + modelId: [], + name: [], + templateConfiguration: _json, + templateType: [], + }); +}; + +/** + * serializeAws_restJson1PromptVariantList + */ +const se_PromptVariantList = (input: PromptVariant[], context: __SerdeContext): any => { + return input + .filter((e: any) => e != null) + .map((entry) => { + return se_PromptVariant(entry, context); + }); +}; + // se_RdsConfiguration omitted. // se_RdsFieldMapping omitted. @@ -2205,24 +3540,78 @@ const se_PromptOverrideConfiguration = (input: PromptOverrideConfiguration, cont // se_RedisEnterpriseCloudFieldMapping omitted. +// se_RetrievalFlowNodeConfiguration omitted. + +// se_RetrievalFlowNodeS3Configuration omitted. + +// se_RetrievalFlowNodeServiceConfiguration omitted. + // se_S3DataSourceConfiguration omitted. // se_S3Identifier omitted. +// se_S3Location omitted. + // se_S3Prefixes omitted. +// se_SalesforceCrawlerConfiguration omitted. + +// se_SalesforceDataSourceConfiguration omitted. + +// se_SalesforceSourceConfiguration omitted. + +// se_SeedUrl omitted. + +// se_SeedUrls omitted. + +// se_SemanticChunkingConfiguration omitted. + // se_ServerSideEncryptionConfiguration omitted. +// se_SharePointCrawlerConfiguration omitted. + +// se_SharePointDataSourceConfiguration omitted. + +// se_SharePointSiteUrls omitted. + +// se_SharePointSourceConfiguration omitted. + // se_StopSequences omitted. // se_StorageConfiguration omitted. +// se_StorageFlowNodeConfiguration omitted. + +// se_StorageFlowNodeS3Configuration omitted. + +// se_StorageFlowNodeServiceConfiguration omitted. + // se_TagsMap omitted. +// se_TextPromptTemplateConfiguration omitted. + +// se_Transformation omitted. + +// se_TransformationFunction omitted. + +// se_TransformationLambdaConfiguration omitted. + +// se_Transformations omitted. + +// se_UrlConfiguration omitted. + // se_VectorIngestionConfiguration omitted. // se_VectorKnowledgeBaseConfiguration omitted. +// se_WebCrawlerConfiguration omitted. + +// se_WebCrawlerLimits omitted. + +// se_WebDataSourceConfiguration omitted. + +// se_WebSourceConfiguration omitted. + // de_ActionGroupExecutor omitted. /** @@ -2270,6 +3659,7 @@ const de_Agent = (output: any, context: __SerdeContext): Agent => { guardrailConfiguration: _json, idleSessionTTLInSeconds: __expectInt32, instruction: __expectString, + memoryConfiguration: _json, preparedAt: (_: any) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), promptOverrideConfiguration: (_: any) => de_PromptOverrideConfiguration(_, context), recommendedActions: _json, @@ -2372,6 +3762,8 @@ const de_AgentAliasSummary = (output: any, context: __SerdeContext): AgentAliasS }) as any; }; +// de_AgentFlowNodeConfiguration omitted. + /** * deserializeAws_restJson1AgentKnowledgeBase */ @@ -2456,6 +3848,7 @@ const de_AgentVersion = (output: any, context: __SerdeContext): AgentVersion => guardrailConfiguration: _json, idleSessionTTLInSeconds: __expectInt32, instruction: __expectString, + memoryConfiguration: _json, promptOverrideConfiguration: (_: any) => de_PromptOverrideConfiguration(_, context), recommendedActions: _json, updatedAt: (_: any) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), @@ -2494,8 +3887,24 @@ const de_AgentVersionSummary = (output: any, context: __SerdeContext): AgentVers // de_BedrockEmbeddingModelConfiguration omitted. +// de_BedrockFoundationModelConfiguration omitted. + // de_ChunkingConfiguration omitted. +// de_CollectorFlowNodeConfiguration omitted. + +// de_ConditionFlowNodeConfiguration omitted. + +// de_ConfluenceCrawlerConfiguration omitted. + +// de_ConfluenceDataSourceConfiguration omitted. + +// de_ConfluenceSourceConfiguration omitted. + +// de_CrawlFilterConfiguration omitted. + +// de_CustomTransformationConfiguration omitted. + /** * deserializeAws_restJson1DataSource */ @@ -2546,10 +3955,227 @@ const de_DataSourceSummary = (output: any, context: __SerdeContext): DataSourceS // de_EmbeddingModelConfiguration omitted. +// de_EnabledMemoryTypes omitted. + // de_FailureReasons omitted. +// de_FilterList omitted. + // de_FixedSizeChunkingConfiguration omitted. +// de_FlowAliasRoutingConfiguration omitted. + +// de_FlowAliasRoutingConfigurationListItem omitted. + +/** + * deserializeAws_restJson1FlowAliasSummaries + */ +const de_FlowAliasSummaries = (output: any, context: __SerdeContext): FlowAliasSummary[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_FlowAliasSummary(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_restJson1FlowAliasSummary + */ +const de_FlowAliasSummary = (output: any, context: __SerdeContext): FlowAliasSummary => { + return take(output, { + arn: __expectString, + createdAt: (_: any) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + description: __expectString, + flowId: __expectString, + id: __expectString, + name: __expectString, + routingConfiguration: _json, + updatedAt: (_: any) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + }) as any; +}; + +// de_FlowCondition omitted. + +// de_FlowConditionalConnectionConfiguration omitted. + +// de_FlowConditions omitted. + +// de_FlowConnection omitted. + +// de_FlowConnectionConfiguration omitted. + +// de_FlowConnections omitted. + +// de_FlowDataConnectionConfiguration omitted. + +/** + * deserializeAws_restJson1FlowDefinition + */ +const de_FlowDefinition = (output: any, context: __SerdeContext): FlowDefinition => { + return take(output, { + connections: _json, + nodes: (_: any) => de_FlowNodes(_, context), + }) as any; +}; + +/** + * deserializeAws_restJson1FlowNode + */ +const de_FlowNode = (output: any, context: __SerdeContext): FlowNode => { + return take(output, { + configuration: (_: any) => de_FlowNodeConfiguration(__expectUnion(_), context), + inputs: _json, + name: __expectString, + outputs: _json, + type: __expectString, + }) as any; +}; + +/** + * deserializeAws_restJson1FlowNodeConfiguration + */ +const de_FlowNodeConfiguration = (output: any, context: __SerdeContext): FlowNodeConfiguration => { + if (output.agent != null) { + return { + agent: _json(output.agent), + }; + } + if (output.collector != null) { + return { + collector: _json(output.collector), + }; + } + if (output.condition != null) { + return { + condition: _json(output.condition), + }; + } + if (output.input != null) { + return { + input: _json(output.input), + }; + } + if (output.iterator != null) { + return { + iterator: _json(output.iterator), + }; + } + if (output.knowledgeBase != null) { + return { + knowledgeBase: _json(output.knowledgeBase), + }; + } + if (output.lambdaFunction != null) { + return { + lambdaFunction: _json(output.lambdaFunction), + }; + } + if (output.lex != null) { + return { + lex: _json(output.lex), + }; + } + if (output.output != null) { + return { + output: _json(output.output), + }; + } + if (output.prompt != null) { + return { + prompt: de_PromptFlowNodeConfiguration(output.prompt, context), + }; + } + if (output.retrieval != null) { + return { + retrieval: _json(output.retrieval), + }; + } + if (output.storage != null) { + return { + storage: _json(output.storage), + }; + } + return { $unknown: Object.entries(output)[0] }; +}; + +// de_FlowNodeInput omitted. + +// de_FlowNodeInputs omitted. + +// de_FlowNodeOutput omitted. + +// de_FlowNodeOutputs omitted. + +/** + * deserializeAws_restJson1FlowNodes + */ +const de_FlowNodes = (output: any, context: __SerdeContext): FlowNode[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_FlowNode(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_restJson1FlowSummaries + */ +const de_FlowSummaries = (output: any, context: __SerdeContext): FlowSummary[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_FlowSummary(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_restJson1FlowSummary + */ +const de_FlowSummary = (output: any, context: __SerdeContext): FlowSummary => { + return take(output, { + arn: __expectString, + createdAt: (_: any) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + description: __expectString, + id: __expectString, + name: __expectString, + status: __expectString, + updatedAt: (_: any) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + version: __expectString, + }) as any; +}; + +// de_FlowValidation omitted. + +// de_FlowValidations omitted. + +/** + * deserializeAws_restJson1FlowVersionSummaries + */ +const de_FlowVersionSummaries = (output: any, context: __SerdeContext): FlowVersionSummary[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_FlowVersionSummary(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_restJson1FlowVersionSummary + */ +const de_FlowVersionSummary = (output: any, context: __SerdeContext): FlowVersionSummary => { + return take(output, { + arn: __expectString, + createdAt: (_: any) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + id: __expectString, + status: __expectString, + version: __expectString, + }) as any; +}; + // de_Function omitted. // de_Functions omitted. @@ -2558,6 +4184,12 @@ const de_DataSourceSummary = (output: any, context: __SerdeContext): DataSourceS // de_GuardrailConfiguration omitted. +// de_HierarchicalChunkingConfiguration omitted. + +// de_HierarchicalChunkingLevelConfiguration omitted. + +// de_HierarchicalChunkingLevelConfigurations omitted. + /** * deserializeAws_restJson1InferenceConfiguration */ @@ -2618,6 +4250,12 @@ const de_IngestionJobSummary = (output: any, context: __SerdeContext): Ingestion }) as any; }; +// de_InputFlowNodeConfiguration omitted. + +// de_IntermediateStorage omitted. + +// de_IteratorFlowNodeConfiguration omitted. + /** * deserializeAws_restJson1KnowledgeBase */ @@ -2639,6 +4277,8 @@ const de_KnowledgeBase = (output: any, context: __SerdeContext): KnowledgeBase = // de_KnowledgeBaseConfiguration omitted. +// de_KnowledgeBaseFlowNodeConfiguration omitted. + /** * deserializeAws_restJson1KnowledgeBaseSummaries */ @@ -2664,6 +4304,12 @@ const de_KnowledgeBaseSummary = (output: any, context: __SerdeContext): Knowledg }) as any; }; +// de_LambdaFunctionFlowNodeConfiguration omitted. + +// de_LexFlowNodeConfiguration omitted. + +// de_MemoryConfiguration omitted. + // de_MongoDbAtlasConfiguration omitted. // de_MongoDbAtlasFieldMapping omitted. @@ -2672,10 +4318,22 @@ const de_KnowledgeBaseSummary = (output: any, context: __SerdeContext): Knowledg // de_OpenSearchServerlessFieldMapping omitted. +// de_OutputFlowNodeConfiguration omitted. + // de_ParameterDetail omitted. // de_ParameterMap omitted. +// de_ParsingConfiguration omitted. + +// de_ParsingPrompt omitted. + +// de_PatternObjectFilter omitted. + +// de_PatternObjectFilterConfiguration omitted. + +// de_PatternObjectFilterList omitted. + // de_PineconeConfiguration omitted. // de_PineconeFieldMapping omitted. @@ -2706,6 +4364,84 @@ const de_PromptConfigurations = (output: any, context: __SerdeContext): PromptCo return retVal; }; +/** + * deserializeAws_restJson1PromptFlowNodeConfiguration + */ +const de_PromptFlowNodeConfiguration = (output: any, context: __SerdeContext): PromptFlowNodeConfiguration => { + return take(output, { + sourceConfiguration: (_: any) => de_PromptFlowNodeSourceConfiguration(__expectUnion(_), context), + }) as any; +}; + +/** + * deserializeAws_restJson1PromptFlowNodeInlineConfiguration + */ +const de_PromptFlowNodeInlineConfiguration = ( + output: any, + context: __SerdeContext +): PromptFlowNodeInlineConfiguration => { + return take(output, { + inferenceConfiguration: (_: any) => de_PromptInferenceConfiguration(__expectUnion(_), context), + modelId: __expectString, + templateConfiguration: (_: any) => _json(__expectUnion(_)), + templateType: __expectString, + }) as any; +}; + +// de_PromptFlowNodeResourceConfiguration omitted. + +/** + * deserializeAws_restJson1PromptFlowNodeSourceConfiguration + */ +const de_PromptFlowNodeSourceConfiguration = ( + output: any, + context: __SerdeContext +): PromptFlowNodeSourceConfiguration => { + if (output.inline != null) { + return { + inline: de_PromptFlowNodeInlineConfiguration(output.inline, context), + }; + } + if (output.resource != null) { + return { + resource: _json(output.resource), + }; + } + return { $unknown: Object.entries(output)[0] }; +}; + +/** + * deserializeAws_restJson1PromptInferenceConfiguration + */ +const de_PromptInferenceConfiguration = (output: any, context: __SerdeContext): PromptInferenceConfiguration => { + if (output.text != null) { + return { + text: de_PromptModelInferenceConfiguration(output.text, context), + }; + } + return { $unknown: Object.entries(output)[0] }; +}; + +// de_PromptInputVariable omitted. + +// de_PromptInputVariablesList omitted. + +/** + * deserializeAws_restJson1PromptModelInferenceConfiguration + */ +const de_PromptModelInferenceConfiguration = ( + output: any, + context: __SerdeContext +): PromptModelInferenceConfiguration => { + return take(output, { + maxTokens: __expectInt32, + stopSequences: _json, + temperature: __limitedParseFloat32, + topK: __expectInt32, + topP: __limitedParseFloat32, + }) as any; +}; + /** * deserializeAws_restJson1PromptOverrideConfiguration */ @@ -2716,6 +4452,60 @@ const de_PromptOverrideConfiguration = (output: any, context: __SerdeContext): P }) as any; }; +/** + * deserializeAws_restJson1PromptSummaries + */ +const de_PromptSummaries = (output: any, context: __SerdeContext): PromptSummary[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_PromptSummary(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_restJson1PromptSummary + */ +const de_PromptSummary = (output: any, context: __SerdeContext): PromptSummary => { + return take(output, { + arn: __expectString, + createdAt: (_: any) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + description: __expectString, + id: __expectString, + name: __expectString, + updatedAt: (_: any) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + version: __expectString, + }) as any; +}; + +// de_PromptTemplateConfiguration omitted. + +/** + * deserializeAws_restJson1PromptVariant + */ +const de_PromptVariant = (output: any, context: __SerdeContext): PromptVariant => { + return take(output, { + inferenceConfiguration: (_: any) => de_PromptInferenceConfiguration(__expectUnion(_), context), + modelId: __expectString, + name: __expectString, + templateConfiguration: (_: any) => _json(__expectUnion(_)), + templateType: __expectString, + }) as any; +}; + +/** + * deserializeAws_restJson1PromptVariantList + */ +const de_PromptVariantList = (output: any, context: __SerdeContext): PromptVariant[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_PromptVariant(entry, context); + }); + return retVal; +}; + // de_RdsConfiguration omitted. // de_RdsFieldMapping omitted. @@ -2726,20 +4516,66 @@ const de_PromptOverrideConfiguration = (output: any, context: __SerdeContext): P // de_RedisEnterpriseCloudFieldMapping omitted. +// de_RetrievalFlowNodeConfiguration omitted. + +// de_RetrievalFlowNodeS3Configuration omitted. + +// de_RetrievalFlowNodeServiceConfiguration omitted. + // de_S3DataSourceConfiguration omitted. // de_S3Identifier omitted. +// de_S3Location omitted. + // de_S3Prefixes omitted. +// de_SalesforceCrawlerConfiguration omitted. + +// de_SalesforceDataSourceConfiguration omitted. + +// de_SalesforceSourceConfiguration omitted. + +// de_SeedUrl omitted. + +// de_SeedUrls omitted. + +// de_SemanticChunkingConfiguration omitted. + // de_ServerSideEncryptionConfiguration omitted. +// de_SharePointCrawlerConfiguration omitted. + +// de_SharePointDataSourceConfiguration omitted. + +// de_SharePointSiteUrls omitted. + +// de_SharePointSourceConfiguration omitted. + // de_StopSequences omitted. // de_StorageConfiguration omitted. +// de_StorageFlowNodeConfiguration omitted. + +// de_StorageFlowNodeS3Configuration omitted. + +// de_StorageFlowNodeServiceConfiguration omitted. + // de_TagsMap omitted. +// de_TextPromptTemplateConfiguration omitted. + +// de_Transformation omitted. + +// de_TransformationFunction omitted. + +// de_TransformationLambdaConfiguration omitted. + +// de_Transformations omitted. + +// de_UrlConfiguration omitted. + // de_ValidationExceptionField omitted. // de_ValidationExceptionFieldList omitted. @@ -2748,6 +4584,14 @@ const de_PromptOverrideConfiguration = (output: any, context: __SerdeContext): P // de_VectorKnowledgeBaseConfiguration omitted. +// de_WebCrawlerConfiguration omitted. + +// de_WebCrawlerLimits omitted. + +// de_WebDataSourceConfiguration omitted. + +// de_WebSourceConfiguration omitted. + const deserializeMetadata = (output: __HttpResponse): __ResponseMetadata => ({ httpStatusCode: output.statusCode, requestId: @@ -2767,5 +4611,9 @@ const isSerializableHeaderValue = (value: any): boolean => (!Object.getOwnPropertyNames(value).includes("length") || value.length != 0) && (!Object.getOwnPropertyNames(value).includes("size") || value.size != 0); +const _mR = "maxResults"; +const _nT = "nextToken"; +const _pI = "promptIdentifier"; +const _pV = "promptVersion"; const _sRIUC = "skipResourceInUseCheck"; const _tK = "tagKeys"; diff --git a/codegen/sdk-codegen/aws-models/bedrock-agent.json b/codegen/sdk-codegen/aws-models/bedrock-agent.json index 0aecb1206b97..37ad75eb7adf 100644 --- a/codegen/sdk-codegen/aws-models/bedrock-agent.json +++ b/codegen/sdk-codegen/aws-models/bedrock-agent.json @@ -82,6 +82,12 @@ "traits": { "smithy.api#enumValue": "AMAZON.UserInput" } + }, + "AMAZON_CODEINTERPRETER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AMAZON.CodeInterpreter" + } } } }, @@ -278,7 +284,13 @@ "guardrailConfiguration": { "target": "com.amazonaws.bedrockagent#GuardrailConfiguration", "traits": { - "smithy.api#documentation": "

    The guardrails configuration assigned to the agent.

    " + "smithy.api#documentation": "

    Details about the guardrail associated with the agent.

    " + } + }, + "memoryConfiguration": { + "target": "com.amazonaws.bedrockagent#MemoryConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains memory configuration for the agent.

    " } } }, @@ -664,6 +676,21 @@ "smithy.api#pattern": "^arn:aws:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent/[0-9a-zA-Z]{10}$" } }, + "com.amazonaws.bedrockagent#AgentFlowNodeConfiguration": { + "type": "structure", + "members": { + "agentAliasArn": { + "target": "com.amazonaws.bedrockagent#AgentAliasArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the alias of the agent to invoke.

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

    Defines an agent node in your flow. You specify the agent to invoke at this point in the flow. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    " + } + }, "com.amazonaws.bedrockagent#AgentKnowledgeBase": { "type": "structure", "members": { @@ -909,7 +936,7 @@ "guardrailConfiguration": { "target": "com.amazonaws.bedrockagent#GuardrailConfiguration", "traits": { - "smithy.api#documentation": "

    The details of the guardrails configuration in the agent summary.

    " + "smithy.api#documentation": "

    Details about the guardrail associated with the agent.

    " } } }, @@ -1028,7 +1055,13 @@ "guardrailConfiguration": { "target": "com.amazonaws.bedrockagent#GuardrailConfiguration", "traits": { - "smithy.api#documentation": "

    The guardrails configuration assigned to the agent version.

    " + "smithy.api#documentation": "

    Details about the guardrail associated with the agent.

    " + } + }, + "memoryConfiguration": { + "target": "com.amazonaws.bedrockagent#MemoryConfiguration", + "traits": { + "smithy.api#documentation": "

    \n Contains details of the memory configuration on the version of the agent. \n

    " } } }, @@ -1094,7 +1127,7 @@ "guardrailConfiguration": { "target": "com.amazonaws.bedrockagent#GuardrailConfiguration", "traits": { - "smithy.api#documentation": "

    The details of the guardrails configuration in the agent version summary.

    " + "smithy.api#documentation": "

    Details about the guardrail associated with the agent.

    " } } }, @@ -1138,12 +1171,18 @@ { "target": "com.amazonaws.bedrockagent#DataSourceResource" }, + { + "target": "com.amazonaws.bedrockagent#FlowResource" + }, { "target": "com.amazonaws.bedrockagent#IngestionJobResource" }, { "target": "com.amazonaws.bedrockagent#KnowledgeBaseResource" }, + { + "target": "com.amazonaws.bedrockagent#PromptResource" + }, { "target": "com.amazonaws.bedrockagent#TaggingResource" }, @@ -1949,7 +1988,8 @@ "smithy.api#length": { "min": 1, "max": 100000 - } + }, + "smithy.api#sensitive": {} } }, "com.amazonaws.bedrockagent#BedrockEmbeddingModelArn": { @@ -1976,6 +2016,37 @@ "smithy.api#documentation": "

    The vector configuration details for the Bedrock embeddings model.

    " } }, + "com.amazonaws.bedrockagent#BedrockFoundationModelConfiguration": { + "type": "structure", + "members": { + "modelArn": { + "target": "com.amazonaws.bedrockagent#BedrockModelArn", + "traits": { + "smithy.api#documentation": "

    The model's ARN.

    ", + "smithy.api#required": {} + } + }, + "parsingPrompt": { + "target": "com.amazonaws.bedrockagent#ParsingPrompt", + "traits": { + "smithy.api#documentation": "

    Instructions for interpreting the contents of a document.

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

    Settings for a foundation model used to parse documents for a data source.

    " + } + }, + "com.amazonaws.bedrockagent#BedrockModelArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})$" + } + }, "com.amazonaws.bedrockagent#BucketOwnerAccountId": { "type": "string", "traits": { @@ -1992,7 +2063,7 @@ "chunkingStrategy": { "target": "com.amazonaws.bedrockagent#ChunkingStrategy", "traits": { - "smithy.api#documentation": "

    Knowledge base can split your source data into chunks. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried. You have the following options for chunking your data. If you opt for NONE, then you may want to pre-process your files by splitting them up such that each file corresponds to a chunk.

    \n
      \n
    • \n

      \n FIXED_SIZE – Amazon Bedrock splits your source data into chunks of the approximate size that you set in the fixedSizeChunkingConfiguration.

      \n
    • \n
    • \n

      \n NONE – Amazon Bedrock treats each file as one chunk. If you choose this option, you may want to pre-process your documents by splitting them into separate files.

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

    Knowledge base can split your source data into chunks. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried. You have the following options for chunking your data. If you opt for NONE, then you may want to pre-process your files by splitting them up such that each file corresponds to a chunk.

    \n
      \n
    • \n

      \n FIXED_SIZE – Amazon Bedrock splits your source data into chunks of the approximate size that you set in the fixedSizeChunkingConfiguration.

      \n
    • \n
    • \n

      \n HIERARCHICAL – Split documents into layers of chunks where the first layer contains large chunks, and the second layer contains smaller chunks derived from the first layer.

      \n
    • \n
    • \n

      \n SEMANTIC – Split documents into chunks based on groups of similar content derived with natural language processing.

      \n
    • \n
    • \n

      \n NONE – Amazon Bedrock treats each file as one chunk. If you choose this option, you may want to pre-process your documents by splitting them into separate files.

      \n
    • \n
    ", "smithy.api#required": {} } }, @@ -2001,6 +2072,18 @@ "traits": { "smithy.api#documentation": "

    Configurations for when you choose fixed-size chunking. If you set the chunkingStrategy as NONE, exclude this field.

    " } + }, + "hierarchicalChunkingConfiguration": { + "target": "com.amazonaws.bedrockagent#HierarchicalChunkingConfiguration", + "traits": { + "smithy.api#documentation": "

    Settings for hierarchical document chunking for a data source. Hierarchical chunking splits documents\n into layers of chunks where the first layer contains large chunks, and the second layer contains smaller\n chunks derived from the first layer.

    " + } + }, + "semanticChunkingConfiguration": { + "target": "com.amazonaws.bedrockagent#SemanticChunkingConfiguration", + "traits": { + "smithy.api#documentation": "

    Settings for semantic document chunking for a data source. Semantic chunking splits\n a document into into smaller documents based on groups of similar content derived from the text\n with natural language processing.

    " + } } }, "traits": { @@ -2021,6 +2104,18 @@ "traits": { "smithy.api#enumValue": "NONE" } + }, + "HIERARCHICAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HIERARCHICAL" + } + }, + "SEMANTIC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SEMANTIC" + } } } }, @@ -2031,7 +2126,14 @@ "min": 33, "max": 256 }, - "smithy.api#pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$" + "smithy.api#pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,256}$" + } + }, + "com.amazonaws.bedrockagent#CollectorFlowNodeConfiguration": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

    Defines a collector node in your flow. This node takes an iteration of inputs and consolidates them into an array in the output. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    " } }, "com.amazonaws.bedrockagent#ColumnName": { @@ -2043,6 +2145,21 @@ "smithy.api#pattern": "^[a-zA-Z0-9_\\-]+$" } }, + "com.amazonaws.bedrockagent#ConditionFlowNodeConfiguration": { + "type": "structure", + "members": { + "conditions": { + "target": "com.amazonaws.bedrockagent#FlowConditions", + "traits": { + "smithy.api#documentation": "

    An array of conditions. Each member contains the name of a condition and an expression that defines the condition.

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

    Defines a condition node in your flow. You can specify conditions that determine which node comes next in the flow. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    " + } + }, "com.amazonaws.bedrockagent#ConflictException": { "type": "structure", "members": { @@ -2056,6 +2173,137 @@ "smithy.api#httpError": 409 } }, + "com.amazonaws.bedrockagent#ConfluenceAuthType": { + "type": "enum", + "members": { + "BASIC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BASIC" + } + }, + "OAUTH2_CLIENT_CREDENTIALS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OAUTH2_CLIENT_CREDENTIALS" + } + } + } + }, + "com.amazonaws.bedrockagent#ConfluenceCrawlerConfiguration": { + "type": "structure", + "members": { + "filterConfiguration": { + "target": "com.amazonaws.bedrockagent#CrawlFilterConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration of filtering the Confluence content. For example, configuring \n regular expression patterns to include or exclude certain content.

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

    The configuration of the Confluence content. For example, configuring specific \n types of Confluence content.

    " + } + }, + "com.amazonaws.bedrockagent#ConfluenceDataSourceConfiguration": { + "type": "structure", + "members": { + "sourceConfiguration": { + "target": "com.amazonaws.bedrockagent#ConfluenceSourceConfiguration", + "traits": { + "smithy.api#documentation": "

    The endpoint information to connect to your Confluence data source.

    ", + "smithy.api#required": {} + } + }, + "crawlerConfiguration": { + "target": "com.amazonaws.bedrockagent#ConfluenceCrawlerConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration of the Confluence content. For example, configuring \n specific types of Confluence content.

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

    The configuration information to connect to Confluence as your data source.

    " + } + }, + "com.amazonaws.bedrockagent#ConfluenceHostType": { + "type": "enum", + "members": { + "SAAS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SAAS" + } + } + } + }, + "com.amazonaws.bedrockagent#ConfluenceSourceConfiguration": { + "type": "structure", + "members": { + "hostUrl": { + "target": "com.amazonaws.bedrockagent#HttpsUrl", + "traits": { + "smithy.api#documentation": "

    The Confluence host URL or instance URL.

    ", + "smithy.api#required": {} + } + }, + "hostType": { + "target": "com.amazonaws.bedrockagent#ConfluenceHostType", + "traits": { + "smithy.api#documentation": "

    The supported host type, whether online/cloud or server/on-premises.

    ", + "smithy.api#required": {} + } + }, + "authType": { + "target": "com.amazonaws.bedrockagent#ConfluenceAuthType", + "traits": { + "smithy.api#documentation": "

    The supported authentication type to authenticate and connect to your \n Confluence instance.

    ", + "smithy.api#required": {} + } + }, + "credentialsSecretArn": { + "target": "com.amazonaws.bedrockagent#SecretArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name of an Secrets Manager secret that \n stores your authentication credentials for your SharePoint site/sites. \n For more information on the key-value pairs that must be included in \n your secret, depending on your authentication type, see \n Confluence connection configuration.

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

    The endpoint information to connect to your Confluence data source.

    " + } + }, + "com.amazonaws.bedrockagent#CrawlFilterConfiguration": { + "type": "structure", + "members": { + "type": { + "target": "com.amazonaws.bedrockagent#CrawlFilterConfigurationType", + "traits": { + "smithy.api#documentation": "

    The type of filtering that you want to apply to certain objects or content of the \n data source. For example, the PATTERN type is regular expression patterns \n you can apply to filter your content.

    ", + "smithy.api#required": {} + } + }, + "patternObjectFilter": { + "target": "com.amazonaws.bedrockagent#PatternObjectFilterConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration of filtering certain objects or content types of the data source.

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

    The configuration of filtering the data source content. For example, \n configuring regular expression patterns to include or exclude certain content.

    " + } + }, + "com.amazonaws.bedrockagent#CrawlFilterConfigurationType": { + "type": "enum", + "members": { + "PATTERN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PATTERN" + } + } + } + }, "com.amazonaws.bedrockagent#CreateAgent": { "type": "operation", "input": { @@ -2085,7 +2333,7 @@ } ], "traits": { - "smithy.api#documentation": "

    Creates an agent that orchestrates interactions between foundation models, data sources, software applications, user conversations, and APIs to carry out tasks to help customers.

    \n
      \n
    • \n

      Specify the following fields for security purposes.

      \n
        \n
      • \n

        \n agentResourceRoleArn – The Amazon Resource Name (ARN) of the role with permissions to invoke API operations on an agent.

        \n
      • \n
      • \n

        (Optional) customerEncryptionKeyArn – The Amazon Resource Name (ARN) of a KMS key to encrypt the creation of the agent.

        \n
      • \n
      • \n

        (Optional) idleSessionTTLinSeconds – Specify the number of seconds for which the agent should maintain session information. After this time expires, the subsequent InvokeAgent request begins a new session.

        \n
      • \n
      \n
    • \n
    • \n

      To override the default prompt behavior for agent orchestration and to use advanced prompts, include a promptOverrideConfiguration object. For more information, see Advanced prompts.

      \n
    • \n
    • \n

      If you agent fails to be created, the response returns a list of failureReasons alongside a list of recommendedActions for you to troubleshoot.

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

    Creates an agent that orchestrates interactions between foundation models, data sources, software applications, user conversations, and APIs to carry out tasks to help customers.

    \n
      \n
    • \n

      Specify the following fields for security purposes.

      \n
        \n
      • \n

        \n agentResourceRoleArn – The Amazon Resource Name (ARN) of the role with permissions to invoke API operations on an agent.

        \n
      • \n
      • \n

        (Optional) customerEncryptionKeyArn – The Amazon Resource Name (ARN) of a KMS key to encrypt the creation of the agent.

        \n
      • \n
      • \n

        (Optional) idleSessionTTLinSeconds – Specify the number of seconds for which the agent should maintain session information. After this time expires, the subsequent InvokeAgent request begins a new session.

        \n
      • \n
      \n
    • \n
    • \n

      To enable your agent to retain conversational context across multiple sessions, include a memoryConfiguration object. \n For more information, see Configure memory.

      \n
    • \n
    • \n

      To override the default prompt behavior for agent orchestration and to use advanced prompts, include a promptOverrideConfiguration object. \n For more information, see Advanced prompts.

      \n
    • \n
    • \n

      If you agent fails to be created, the response returns a list of failureReasons alongside a list of recommendedActions for you to troubleshoot.

      \n
    • \n
    ", "smithy.api#http": { "code": 202, "method": "PUT", @@ -2127,7 +2375,7 @@ } ], "traits": { - "smithy.api#documentation": "

    Creates an action group for an agent. An action group represents the actions that an agent can carry out for the customer by defining the APIs that an agent can call and the logic for calling them.

    \n

    To allow your agent to request the user for additional information when trying to complete a task, add an action group with the parentActionGroupSignature field set to AMAZON.UserInput. You must leave the description, apiSchema, and actionGroupExecutor fields blank for this action group. During orchestration, if your agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an Observation reprompting the user for more information.

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

    Creates an action group for an agent. An action group represents the actions that an agent can carry out for the customer by defining the APIs that an agent can call and the logic for calling them.

    \n

    To allow your agent to request the user for additional information when trying to complete a task, \n add an action group with the parentActionGroupSignature field set to AMAZON.UserInput.

    \n

    To allow your agent to generate, run, and troubleshoot code when trying to complete a task, \n add an action group with the parentActionGroupSignature field set to AMAZON.CodeInterpreter.

    \n

    You must leave the description, apiSchema, and actionGroupExecutor fields blank for this action group. During orchestration, if your agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an Observation reprompting the user for more information.

    ", "smithy.api#http": { "code": 200, "method": "PUT", @@ -2179,7 +2427,7 @@ "parentActionGroupSignature": { "target": "com.amazonaws.bedrockagent#ActionGroupSignature", "traits": { - "smithy.api#documentation": "

    To allow your agent to request the user for additional information when trying to complete a task, set this field to AMAZON.UserInput. You must leave the description, apiSchema, and actionGroupExecutor fields blank for this action group.

    \n

    During orchestration, if your agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an Observation reprompting the user for more information.

    " + "smithy.api#documentation": "

    To allow your agent to request the user for additional information when trying to complete a task, set this field to AMAZON.UserInput. You must leave the description, apiSchema, and actionGroupExecutor fields blank for this action group.

    \n

    To allow your agent to generate, run, and troubleshoot code when trying to complete a task, set this field to AMAZON.CodeInterpreter. You must leave the description, apiSchema, and actionGroupExecutor fields blank for this action group.

    \n

    During orchestration, if your agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an Observation reprompting the user for more information.

    " } }, "actionGroupExecutor": { @@ -2401,6 +2649,12 @@ "traits": { "smithy.api#documentation": "

    The unique Guardrail configuration assigned to the agent when it is created.

    " } + }, + "memoryConfiguration": { + "target": "com.amazonaws.bedrockagent#MemoryConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains the details of the memory configured for the agent.

    " + } } }, "traits": { @@ -2454,7 +2708,7 @@ } ], "traits": { - "smithy.api#documentation": "

    Sets up a data source to be added to a knowledge base.

    \n \n

    You can't change the chunkingConfiguration after you create the data source.

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

    Creates a data source connector for a knowledge base.

    \n \n

    You can't change the chunkingConfiguration after you create the data source connector.

    \n
    ", "smithy.api#http": { "code": 200, "method": "PUT", @@ -2498,14 +2752,14 @@ "dataSourceConfiguration": { "target": "com.amazonaws.bedrockagent#DataSourceConfiguration", "traits": { - "smithy.api#documentation": "

    Contains metadata about where the data source is stored.

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

    The connection configuration for the data source.

    ", "smithy.api#required": {} } }, "dataDeletionPolicy": { "target": "com.amazonaws.bedrockagent#DataDeletionPolicy", "traits": { - "smithy.api#documentation": "

    The data deletion policy assigned to the data source.

    " + "smithy.api#documentation": "

    The data deletion policy for the data source.

    \n

    You can set the data deletion policy to:

    \n
      \n
    • \n

      DELETE: Deletes all underlying data belonging to \n the data source from the vector store upon deletion of a knowledge base or data \n source resource. Note that the vector store itself is not deleted, only the \n underlying data. This flag is ignored if an Amazon Web Services account is deleted.

      \n
    • \n
    • \n

      RETAIN: Retains all underlying data in your \n vector store upon deletion of a knowledge base or data source resource.

      \n
    • \n
    " } }, "serverSideEncryptionConfiguration": { @@ -2540,13 +2794,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#CreateKnowledgeBase": { + "com.amazonaws.bedrockagent#CreateFlow": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#CreateKnowledgeBaseRequest" + "target": "com.amazonaws.bedrockagent#CreateFlowRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#CreateKnowledgeBaseResponse" + "target": "com.amazonaws.bedrockagent#CreateFlowResponse" }, "errors": [ { @@ -2569,64 +2823,101 @@ } ], "traits": { - "smithy.api#documentation": "

    Creates a knowledge base that contains data sources from which information can be queried and used by LLMs. To create a knowledge base, you must first set up your data sources and configure a supported vector store. For more information, see Set up your data for ingestion.

    \n \n

    If you prefer to let Amazon Bedrock create and manage a vector store for you in Amazon OpenSearch Service, use the console. For more information, see Create a knowledge base.

    \n
    \n
      \n
    • \n

      Provide the name and an optional description.

      \n
    • \n
    • \n

      Provide the Amazon Resource Name (ARN) with permissions to create a knowledge base in the roleArn field.

      \n
    • \n
    • \n

      Provide the embedding model to use in the embeddingModelArn field in the knowledgeBaseConfiguration object.

      \n
    • \n
    • \n

      Provide the configuration for your vector store in the storageConfiguration object.

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

    Creates a prompt flow that you can use to send an input through various steps to yield an output. Configure nodes, each of which corresponds to a step of the flow, and create connections between the nodes to create paths to different outputs. For more information, see How it works and Create a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", "smithy.api#http": { - "code": 202, - "method": "PUT", - "uri": "/knowledgebases/" + "code": 201, + "method": "POST", + "uri": "/flows/" }, "smithy.api#idempotent": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#CreateKnowledgeBaseRequest": { + "com.amazonaws.bedrockagent#CreateFlowAlias": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#CreateFlowAliasRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#CreateFlowAliasResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Creates an alias of a flow for deployment. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", + "smithy.api#http": { + "code": 201, + "method": "POST", + "uri": "/flows/{flowIdentifier}/aliases" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#CreateFlowAliasRequest": { "type": "structure", "members": { - "clientToken": { - "target": "com.amazonaws.bedrockagent#ClientToken", - "traits": { - "smithy.api#documentation": "

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request,\n Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    ", - "smithy.api#idempotencyToken": {} - } - }, "name": { "target": "com.amazonaws.bedrockagent#Name", "traits": { - "smithy.api#documentation": "

    A name for the knowledge base.

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

    A name for the alias.

    ", "smithy.api#required": {} } }, "description": { "target": "com.amazonaws.bedrockagent#Description", "traits": { - "smithy.api#documentation": "

    A description of the knowledge base.

    " + "smithy.api#documentation": "

    A description for the alias.

    " } }, - "roleArn": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseRoleArn", + "routingConfiguration": { + "target": "com.amazonaws.bedrockagent#FlowAliasRoutingConfiguration", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

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

    Contains information about the version to which to map the alias.

    ", "smithy.api#required": {} } }, - "knowledgeBaseConfiguration": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseConfiguration", + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", "traits": { - "smithy.api#documentation": "

    Contains details about the embeddings model used for the knowledge base.

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

    The unique identifier of the flow for which to create an alias.

    ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "storageConfiguration": { - "target": "com.amazonaws.bedrockagent#StorageConfiguration", + "clientToken": { + "target": "com.amazonaws.bedrockagent#ClientToken", "traits": { - "smithy.api#documentation": "

    Contains details about the configuration of the vector database used for the knowledge base.

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

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request,\n Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    ", + "smithy.api#idempotencyToken": {} } }, "tags": { "target": "com.amazonaws.bedrockagent#TagsMap", "traits": { - "smithy.api#documentation": "

    Specify the key-value pairs for the tags that you want to attach to your knowledge base in this object.

    " + "aws.cloudformation#cfnMutability": "full", + "smithy.api#documentation": "

    Any tags that you want to attach to the alias of the flow. For more information, see Tagging resources in Amazon Bedrock.

    " } } }, @@ -2634,296 +2925,212 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#CreateKnowledgeBaseResponse": { + "com.amazonaws.bedrockagent#CreateFlowAliasResponse": { "type": "structure", "members": { - "knowledgeBase": { - "target": "com.amazonaws.bedrockagent#KnowledgeBase", + "name": { + "target": "com.amazonaws.bedrockagent#Name", "traits": { - "smithy.api#documentation": "

    Contains details about the knowledge base.

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

    The name of the alias.

    ", "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.bedrockagent#CreationMode": { - "type": "enum", - "members": { - "DEFAULT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DEFAULT" - } }, - "OVERRIDDEN": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "OVERRIDDEN" - } - } - } - }, - "com.amazonaws.bedrockagent#CustomControlMethod": { - "type": "enum", - "members": { - "RETURN_CONTROL": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "RETURN_CONTROL" - } - } - } - }, - "com.amazonaws.bedrockagent#DataDeletionPolicy": { - "type": "enum", - "members": { - "RETAIN": { - "target": "smithy.api#Unit", + "description": { + "target": "com.amazonaws.bedrockagent#Description", "traits": { - "smithy.api#enumValue": "RETAIN" + "smithy.api#documentation": "

    The description of the alias.

    " } }, - "DELETE": { - "target": "smithy.api#Unit", + "routingConfiguration": { + "target": "com.amazonaws.bedrockagent#FlowAliasRoutingConfiguration", "traits": { - "smithy.api#enumValue": "DELETE" + "smithy.api#documentation": "

    Contains information about the version that the alias is mapped to.

    ", + "smithy.api#required": {} } - } - } - }, - "com.amazonaws.bedrockagent#DataSource": { - "type": "structure", - "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + }, + "flowId": { + "target": "com.amazonaws.bedrockagent#FlowId", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base to which the data source belongs.

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

    The unique identifier of the flow that the alias belongs to.

    ", "smithy.api#required": {} } }, - "dataSourceId": { - "target": "com.amazonaws.bedrockagent#Id", + "id": { + "target": "com.amazonaws.bedrockagent#FlowAliasId", "traits": { - "smithy.api#documentation": "

    The unique identifier of the data source.

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

    The unique identifier of the alias.

    ", "smithy.api#required": {} } }, - "name": { - "target": "com.amazonaws.bedrockagent#Name", + "arn": { + "target": "com.amazonaws.bedrockagent#FlowAliasArn", "traits": { - "smithy.api#documentation": "

    The name of the data source.

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

    The Amazon Resource Name (ARN) of the alias.

    ", "smithy.api#required": {} } }, - "status": { - "target": "com.amazonaws.bedrockagent#DataSourceStatus", + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", "traits": { - "smithy.api#documentation": "

    The status of the data source. The following statuses are possible:

    \n
      \n
    • \n

      Available – The data source has been created and is ready for ingestion into the knowledge base.

      \n
    • \n
    • \n

      Deleting – The data source is being deleted.

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

    The time at which the alias was created.

    ", "smithy.api#required": {} } }, - "description": { - "target": "com.amazonaws.bedrockagent#Description", + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", "traits": { - "smithy.api#documentation": "

    The description of the data source.

    " + "smithy.api#documentation": "

    The time at which the alias of the flow was last updated.

    ", + "smithy.api#required": {} } - }, - "dataSourceConfiguration": { - "target": "com.amazonaws.bedrockagent#DataSourceConfiguration", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#CreateFlowRequest": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#FlowName", "traits": { - "smithy.api#documentation": "

    Contains details about how the data source is stored.

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

    A name for the flow.

    ", "smithy.api#required": {} } }, - "serverSideEncryptionConfiguration": { - "target": "com.amazonaws.bedrockagent#ServerSideEncryptionConfiguration", + "description": { + "target": "com.amazonaws.bedrockagent#FlowDescription", "traits": { - "smithy.api#documentation": "

    Contains details about the configuration of the server-side encryption.

    " + "smithy.api#documentation": "

    A description for the flow.

    " } }, - "vectorIngestionConfiguration": { - "target": "com.amazonaws.bedrockagent#VectorIngestionConfiguration", + "executionRoleArn": { + "target": "com.amazonaws.bedrockagent#FlowExecutionRoleArn", "traits": { - "smithy.api#documentation": "

    Contains details about how to ingest the documents in the data source.

    " + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the service role with permissions to create and manage a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", + "smithy.api#required": {} } }, - "dataDeletionPolicy": { - "target": "com.amazonaws.bedrockagent#DataDeletionPolicy", + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", "traits": { - "smithy.api#documentation": "

    The data deletion policy for a data source.

    " + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key to encrypt the flow.

    " } }, - "createdAt": { - "target": "com.amazonaws.bedrockagent#DateTimestamp", + "definition": { + "target": "com.amazonaws.bedrockagent#FlowDefinition", "traits": { - "smithy.api#documentation": "

    The time at which the data source was created.

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

    A definition of the nodes and connections between nodes in the flow.

    " } }, - "updatedAt": { - "target": "com.amazonaws.bedrockagent#DateTimestamp", + "clientToken": { + "target": "com.amazonaws.bedrockagent#ClientToken", "traits": { - "smithy.api#documentation": "

    The time at which the data source was last updated.

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

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request,\n Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    ", + "smithy.api#idempotencyToken": {} } }, - "failureReasons": { - "target": "com.amazonaws.bedrockagent#FailureReasons", + "tags": { + "target": "com.amazonaws.bedrockagent#TagsMap", "traits": { - "smithy.api#documentation": "

    The detailed reasons on the failure to delete a data source.

    " + "aws.cloudformation#cfnMutability": "full", + "smithy.api#documentation": "

    Any tags that you want to attach to the flow. For more information, see Tagging resources in Amazon Bedrock.

    " } } }, "traits": { - "smithy.api#documentation": "

    Contains details about a data source.

    " + "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#DataSourceConfiguration": { + "com.amazonaws.bedrockagent#CreateFlowResponse": { "type": "structure", "members": { - "type": { - "target": "com.amazonaws.bedrockagent#DataSourceType", + "name": { + "target": "com.amazonaws.bedrockagent#FlowName", "traits": { - "smithy.api#documentation": "

    The type of storage for the data source.

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

    The name of the flow.

    ", "smithy.api#required": {} } }, - "s3Configuration": { - "target": "com.amazonaws.bedrockagent#S3DataSourceConfiguration", + "description": { + "target": "com.amazonaws.bedrockagent#FlowDescription", "traits": { - "smithy.api#documentation": "

    Contains details about the configuration of the S3 object containing the data source.

    " + "smithy.api#documentation": "

    The description of the flow.

    " } - } - }, - "traits": { - "smithy.api#documentation": "

    Contains details about how a data source is stored.

    " - } - }, - "com.amazonaws.bedrockagent#DataSourceResource": { - "type": "resource", - "operations": [ - { - "target": "com.amazonaws.bedrockagent#CreateDataSource" }, - { - "target": "com.amazonaws.bedrockagent#DeleteDataSource" - }, - { - "target": "com.amazonaws.bedrockagent#GetDataSource" - }, - { - "target": "com.amazonaws.bedrockagent#ListDataSources" - }, - { - "target": "com.amazonaws.bedrockagent#UpdateDataSource" - } - ] - }, - "com.amazonaws.bedrockagent#DataSourceStatus": { - "type": "enum", - "members": { - "AVAILABLE": { - "target": "smithy.api#Unit", + "executionRoleArn": { + "target": "com.amazonaws.bedrockagent#FlowExecutionRoleArn", "traits": { - "smithy.api#enumValue": "AVAILABLE" + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", + "smithy.api#required": {} } }, - "DELETING": { - "target": "smithy.api#Unit", + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", "traits": { - "smithy.api#enumValue": "DELETING" + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key that you encrypted the flow with.

    " } }, - "DELETE_UNSUCCESSFUL": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DELETE_UNSUCCESSFUL" - } - } - } - }, - "com.amazonaws.bedrockagent#DataSourceSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.bedrockagent#DataSourceSummary" - } - }, - "com.amazonaws.bedrockagent#DataSourceSummary": { - "type": "structure", - "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "id": { + "target": "com.amazonaws.bedrockagent#FlowId", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base to which the data source belongs.

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

    The unique identifier of the flow.

    ", "smithy.api#required": {} } }, - "dataSourceId": { - "target": "com.amazonaws.bedrockagent#Id", + "arn": { + "target": "com.amazonaws.bedrockagent#FlowArn", "traits": { - "smithy.api#documentation": "

    The unique identifier of the data source.

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

    The Amazon Resource Name (ARN) of the flow.

    ", "smithy.api#required": {} } }, - "name": { - "target": "com.amazonaws.bedrockagent#Name", + "status": { + "target": "com.amazonaws.bedrockagent#FlowStatus", "traits": { - "smithy.api#documentation": "

    The name of the data source.

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

    The status of the flow. When you submit this request, the status will be NotPrepared. If creation fails, the status becomes Failed.

    ", "smithy.api#required": {} } }, - "status": { - "target": "com.amazonaws.bedrockagent#DataSourceStatus", + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", "traits": { - "smithy.api#documentation": "

    The status of the data source.

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

    The time at which the flow was created.

    ", "smithy.api#required": {} } }, - "description": { - "target": "com.amazonaws.bedrockagent#Description", + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", "traits": { - "smithy.api#documentation": "

    The description of the data source.

    " + "smithy.api#documentation": "

    The time at which the flow was last updated.

    ", + "smithy.api#required": {} } }, - "updatedAt": { - "target": "com.amazonaws.bedrockagent#DateTimestamp", + "version": { + "target": "com.amazonaws.bedrockagent#DraftVersion", "traits": { - "smithy.api#documentation": "

    The time at which the data source was last updated.

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

    The version of the flow. When you create a flow, the version created is the DRAFT version.

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

    Contains details about a data source.

    " - } - }, - "com.amazonaws.bedrockagent#DataSourceType": { - "type": "enum", - "members": { - "S3": { - "target": "smithy.api#Unit", + }, + "definition": { + "target": "com.amazonaws.bedrockagent#FlowDefinition", "traits": { - "smithy.api#enumValue": "S3" + "smithy.api#documentation": "

    A definition of the nodes and connections between nodes in the flow.

    " } } - } - }, - "com.amazonaws.bedrockagent#DateTimestamp": { - "type": "timestamp", + }, "traits": { - "smithy.api#timestampFormat": "date-time" + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#DeleteAgent": { + "com.amazonaws.bedrockagent#CreateFlowVersion": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#DeleteAgentRequest" + "target": "com.amazonaws.bedrockagent#CreateFlowVersionRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#DeleteAgentResponse" + "target": "com.amazonaws.bedrockagent#CreateFlowVersionResponse" }, "errors": [ { @@ -2938,6 +3145,9 @@ { "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, + { + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" + }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" }, @@ -2946,119 +3156,140 @@ } ], "traits": { - "smithy.api#documentation": "

    Deletes an agent.

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

    Creates a version of the flow that you can deploy. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", "smithy.api#http": { - "code": 202, - "method": "DELETE", - "uri": "/agents/{agentId}/" + "code": 201, + "method": "POST", + "uri": "/flows/{flowIdentifier}/versions" }, "smithy.api#idempotent": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#DeleteAgentActionGroup": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#DeleteAgentActionGroupRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#DeleteAgentActionGroupResponse" - }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#ConflictException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" + "com.amazonaws.bedrockagent#CreateFlowVersionRequest": { + "type": "structure", + "members": { + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow that you want to create a version of.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + "description": { + "target": "com.amazonaws.bedrockagent#FlowDescription", + "traits": { + "smithy.api#documentation": "

    A description of the version of the flow.

    " + } }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" - }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" + "clientToken": { + "target": "com.amazonaws.bedrockagent#ClientToken", + "traits": { + "smithy.api#documentation": "

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request,\n Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    ", + "smithy.api#idempotencyToken": {} + } } - ], + }, "traits": { - "smithy.api#documentation": "

    Deletes an action group in an agent.

    ", - "smithy.api#http": { - "code": 204, - "method": "DELETE", - "uri": "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/" - }, - "smithy.api#idempotent": {}, - "smithy.api#tags": ["console"] + "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#DeleteAgentActionGroupRequest": { + "com.amazonaws.bedrockagent#CreateFlowVersionResponse": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "name": { + "target": "com.amazonaws.bedrockagent#FlowName", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent that the action group belongs to.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The name of the flow version.

    ", "smithy.api#required": {} } }, - "agentVersion": { - "target": "com.amazonaws.bedrockagent#DraftVersion", + "description": { + "target": "com.amazonaws.bedrockagent#FlowDescription", "traits": { - "smithy.api#documentation": "

    The version of the agent that the action group belongs to.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The description of the flow version.

    " + } + }, + "executionRoleArn": { + "target": "com.amazonaws.bedrockagent#FlowExecutionRoleArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", "smithy.api#required": {} } }, - "actionGroupId": { - "target": "com.amazonaws.bedrockagent#Id", + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", "traits": { - "smithy.api#documentation": "

    The unique identifier of the action group to delete.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The KMS key that the flow is encrypted with.

    " + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#FlowId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", "smithy.api#required": {} } }, - "skipResourceInUseCheck": { - "target": "smithy.api#Boolean", + "arn": { + "target": "com.amazonaws.bedrockagent#FlowArn", "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    ", - "smithy.api#httpQuery": "skipResourceInUseCheck" + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the flow.

    ", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#FlowStatus", + "traits": { + "smithy.api#documentation": "

    The status of the flow.

    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the flow was created.

    ", + "smithy.api#required": {} + } + }, + "version": { + "target": "com.amazonaws.bedrockagent#NumericalVersion", + "traits": { + "smithy.api#documentation": "

    The version of the flow that was created. Versions are numbered incrementally, starting from 1.

    ", + "smithy.api#required": {} + } + }, + "definition": { + "target": "com.amazonaws.bedrockagent#FlowDefinition", + "traits": { + "smithy.api#documentation": "

    A definition of the nodes and connections in the flow.

    " } } }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.bedrockagent#DeleteAgentActionGroupResponse": { - "type": "structure", - "members": {}, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#DeleteAgentAlias": { + "com.amazonaws.bedrockagent#CreateKnowledgeBase": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#DeleteAgentAliasRequest" + "target": "com.amazonaws.bedrockagent#CreateKnowledgeBaseRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#DeleteAgentAliasResponse" + "target": "com.amazonaws.bedrockagent#CreateKnowledgeBaseResponse" }, "errors": [ { "target": "com.amazonaws.bedrockagent#AccessDeniedException" }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, { "target": "com.amazonaws.bedrockagent#InternalServerException" }, { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" @@ -3068,86 +3299,64 @@ } ], "traits": { - "smithy.api#documentation": "

    Deletes an alias of an agent.

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

    Creates a knowledge base that contains data sources from which information can be queried and used by LLMs. To create a knowledge base, you must first set up your data sources and configure a supported vector store. For more information, see Set up your data for ingestion.

    \n \n

    If you prefer to let Amazon Bedrock create and manage a vector store for you in Amazon OpenSearch Service, use the console. For more information, see Create a knowledge base.

    \n
    \n
      \n
    • \n

      Provide the name and an optional description.

      \n
    • \n
    • \n

      Provide the Amazon Resource Name (ARN) with permissions to create a knowledge base in the roleArn field.

      \n
    • \n
    • \n

      Provide the embedding model to use in the embeddingModelArn field in the knowledgeBaseConfiguration object.

      \n
    • \n
    • \n

      Provide the configuration for your vector store in the storageConfiguration object.

      \n \n
    • \n
    ", "smithy.api#http": { "code": 202, - "method": "DELETE", - "uri": "/agents/{agentId}/agentaliases/{agentAliasId}/" + "method": "PUT", + "uri": "/knowledgebases/" }, "smithy.api#idempotent": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#DeleteAgentAliasRequest": { + "com.amazonaws.bedrockagent#CreateKnowledgeBaseRequest": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "clientToken": { + "target": "com.amazonaws.bedrockagent#ClientToken", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent that the alias belongs to.

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

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request,\n Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    ", + "smithy.api#idempotencyToken": {} } }, - "agentAliasId": { - "target": "com.amazonaws.bedrockagent#AgentAliasId", + "name": { + "target": "com.amazonaws.bedrockagent#Name", "traits": { - "smithy.api#documentation": "

    The unique identifier of the alias to delete.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    A name for the knowledge base.

    ", "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.bedrockagent#DeleteAgentAliasResponse": { - "type": "structure", - "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + }, + "description": { + "target": "com.amazonaws.bedrockagent#Description", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent that the alias belongs to.

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

    A description of the knowledge base.

    " } }, - "agentAliasId": { - "target": "com.amazonaws.bedrockagent#AgentAliasId", + "roleArn": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseRoleArn", "traits": { - "smithy.api#documentation": "

    The unique identifier of the alias that was deleted.

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

    The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

    ", "smithy.api#required": {} } }, - "agentAliasStatus": { - "target": "com.amazonaws.bedrockagent#AgentAliasStatus", + "knowledgeBaseConfiguration": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseConfiguration", "traits": { - "smithy.api#documentation": "

    The status of the alias.

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

    Contains details about the embeddings model used for the knowledge base.

    ", "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.bedrockagent#DeleteAgentRequest": { - "type": "structure", - "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + }, + "storageConfiguration": { + "target": "com.amazonaws.bedrockagent#StorageConfiguration", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent to delete.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    Contains details about the configuration of the vector database used for the knowledge base.

    ", "smithy.api#required": {} } }, - "skipResourceInUseCheck": { - "target": "smithy.api#Boolean", + "tags": { + "target": "com.amazonaws.bedrockagent#TagsMap", "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    ", - "smithy.api#httpQuery": "skipResourceInUseCheck" + "smithy.api#documentation": "

    Specify the key-value pairs for the tags that you want to attach to your knowledge base in this object.

    " } } }, @@ -3155,20 +3364,13 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#DeleteAgentResponse": { + "com.amazonaws.bedrockagent#CreateKnowledgeBaseResponse": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", - "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent that was deleted.

    ", - "smithy.api#required": {} - } - }, - "agentStatus": { - "target": "com.amazonaws.bedrockagent#AgentStatus", + "knowledgeBase": { + "target": "com.amazonaws.bedrockagent#KnowledgeBase", "traits": { - "smithy.api#documentation": "

    The status of the agent.

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

    Contains details about the knowledge base.

    ", "smithy.api#required": {} } } @@ -3177,13 +3379,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#DeleteAgentVersion": { + "com.amazonaws.bedrockagent#CreatePrompt": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#DeleteAgentVersionRequest" + "target": "com.amazonaws.bedrockagent#CreatePromptRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#DeleteAgentVersionResponse" + "target": "com.amazonaws.bedrockagent#CreatePromptResponse" }, "errors": [ { @@ -3196,7 +3398,7 @@ "target": "com.amazonaws.bedrockagent#InternalServerException" }, { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" @@ -3206,41 +3408,62 @@ } ], "traits": { - "smithy.api#documentation": "

    Deletes a version of an agent.

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

    Creates a prompt in your prompt library that you can add to a flow. For more information, see Prompt management in Amazon Bedrock, Create a prompt using Prompt management and Prompt flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", "smithy.api#http": { - "code": 202, - "method": "DELETE", - "uri": "/agents/{agentId}/agentversions/{agentVersion}/" + "code": 201, + "method": "POST", + "uri": "/prompts/" }, "smithy.api#idempotent": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#DeleteAgentVersionRequest": { + "com.amazonaws.bedrockagent#CreatePromptRequest": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "name": { + "target": "com.amazonaws.bedrockagent#PromptName", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent that the version belongs to.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    A name for the prompt.

    ", "smithy.api#required": {} } }, - "agentVersion": { - "target": "com.amazonaws.bedrockagent#NumericalVersion", + "description": { + "target": "com.amazonaws.bedrockagent#PromptDescription", "traits": { - "smithy.api#documentation": "

    The version of the agent to delete.

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

    A description for the prompt.

    " } }, - "skipResourceInUseCheck": { - "target": "smithy.api#Boolean", + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    ", - "smithy.api#httpQuery": "skipResourceInUseCheck" + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key to encrypt the prompt.

    " + } + }, + "defaultVariant": { + "target": "com.amazonaws.bedrockagent#PromptVariantName", + "traits": { + "smithy.api#documentation": "

    The name of the default variant for the prompt. This value must match the name field in the relevant PromptVariant object.

    " + } + }, + "variants": { + "target": "com.amazonaws.bedrockagent#PromptVariantList", + "traits": { + "smithy.api#documentation": "

    A list of objects, each containing details about a variant of the prompt.

    " + } + }, + "clientToken": { + "target": "com.amazonaws.bedrockagent#ClientToken", + "traits": { + "smithy.api#documentation": "

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request,\n Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    ", + "smithy.api#idempotencyToken": {} + } + }, + "tags": { + "target": "com.amazonaws.bedrockagent#TagsMap", + "traits": { + "aws.cloudformation#cfnMutability": "full", + "smithy.api#documentation": "

    Any tags that you want to attach to the prompt. For more information, see Tagging resources in Amazon Bedrock.

    " } } }, @@ -3248,42 +3471,87 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#DeleteAgentVersionResponse": { + "com.amazonaws.bedrockagent#CreatePromptResponse": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "name": { + "target": "com.amazonaws.bedrockagent#PromptName", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent that the version belongs to.

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

    The name of the prompt.

    ", "smithy.api#required": {} } }, - "agentVersion": { - "target": "com.amazonaws.bedrockagent#NumericalVersion", + "description": { + "target": "com.amazonaws.bedrockagent#PromptDescription", "traits": { - "smithy.api#documentation": "

    The version that was deleted.

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

    The description of the prompt.

    " + } + }, + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key that you encrypted the prompt with.

    " + } + }, + "defaultVariant": { + "target": "com.amazonaws.bedrockagent#PromptVariantName", + "traits": { + "smithy.api#documentation": "

    The name of the default variant for your prompt.

    " + } + }, + "variants": { + "target": "com.amazonaws.bedrockagent#PromptVariantList", + "traits": { + "smithy.api#documentation": "

    A list of objects, each containing details about a variant of the prompt.

    " + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#PromptId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the prompt.

    ", "smithy.api#required": {} } }, - "agentStatus": { - "target": "com.amazonaws.bedrockagent#AgentStatus", + "arn": { + "target": "com.amazonaws.bedrockagent#PromptArn", "traits": { - "smithy.api#documentation": "

    The status of the agent version.

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

    The Amazon Resource Name (ARN) of the prompt.

    ", "smithy.api#required": {} } - } + }, + "version": { + "target": "com.amazonaws.bedrockagent#Version", + "traits": { + "smithy.api#documentation": "

    The version of the prompt. When you create a prompt, the version created is the DRAFT version.

    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the prompt was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the prompt was last updated.

    ", + "smithy.api#required": {} + } + } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#DeleteDataSource": { + "com.amazonaws.bedrockagent#CreatePromptVersion": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#DeleteDataSourceRequest" + "target": "com.amazonaws.bedrockagent#CreatePromptVersionRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#DeleteDataSourceResponse" + "target": "com.amazonaws.bedrockagent#CreatePromptVersionResponse" }, "errors": [ { @@ -3298,6 +3566,9 @@ { "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, + { + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" + }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" }, @@ -3306,33 +3577,45 @@ } ], "traits": { - "smithy.api#documentation": "

    Deletes a data source from a knowledge base.

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

    Creates a static snapshot of your prompt that can be deployed to production. For more information, see Deploy prompts using Prompt management by creating versions in the Amazon Bedrock User Guide.

    ", "smithy.api#http": { - "code": 202, - "method": "DELETE", - "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}" + "code": 201, + "method": "POST", + "uri": "/prompts/{promptIdentifier}/versions" }, "smithy.api#idempotent": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#DeleteDataSourceRequest": { + "com.amazonaws.bedrockagent#CreatePromptVersionRequest": { "type": "structure", "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "promptIdentifier": { + "target": "com.amazonaws.bedrockagent#PromptIdentifier", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base from which to delete the data source.

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

    The unique identifier of the prompt that you want to create a version of.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "dataSourceId": { - "target": "com.amazonaws.bedrockagent#Id", + "description": { + "target": "com.amazonaws.bedrockagent#PromptDescription", "traits": { - "smithy.api#documentation": "

    The unique identifier of the data source to delete.

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

    A description for the version of the prompt.

    " + } + }, + "clientToken": { + "target": "com.amazonaws.bedrockagent#ClientToken", + "traits": { + "smithy.api#documentation": "

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request,\n Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    ", + "smithy.api#idempotencyToken": {} + } + }, + "tags": { + "target": "com.amazonaws.bedrockagent#TagsMap", + "traits": { + "aws.cloudformation#cfnMutability": "full", + "smithy.api#documentation": "

    Any tags that you want to attach to the version of the prompt. For more information, see Tagging resources in Amazon Bedrock.

    " } } }, @@ -3340,27 +3623,72 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#DeleteDataSourceResponse": { + "com.amazonaws.bedrockagent#CreatePromptVersionResponse": { "type": "structure", "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "name": { + "target": "com.amazonaws.bedrockagent#PromptName", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base to which the data source that was deleted belonged.

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

    The name of the prompt version.

    ", "smithy.api#required": {} } }, - "dataSourceId": { - "target": "com.amazonaws.bedrockagent#Id", + "description": { + "target": "com.amazonaws.bedrockagent#PromptDescription", "traits": { - "smithy.api#documentation": "

    The unique identifier of the data source that was deleted.

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

    A description for the prompt version.

    " + } + }, + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key to encrypt the version of the prompt.

    " + } + }, + "defaultVariant": { + "target": "com.amazonaws.bedrockagent#PromptVariantName", + "traits": { + "smithy.api#documentation": "

    The name of the default variant for the prompt. This value must match the name field in the relevant PromptVariant object.

    " + } + }, + "variants": { + "target": "com.amazonaws.bedrockagent#PromptVariantList", + "traits": { + "smithy.api#documentation": "

    A list of objects, each containing details about a variant of the prompt.

    " + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#PromptId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the prompt.

    ", "smithy.api#required": {} } }, - "status": { - "target": "com.amazonaws.bedrockagent#DataSourceStatus", + "arn": { + "target": "com.amazonaws.bedrockagent#PromptArn", "traits": { - "smithy.api#documentation": "

    The status of the data source.

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

    The Amazon Resource Name (ARN) of the version of the prompt.

    ", + "smithy.api#required": {} + } + }, + "version": { + "target": "com.amazonaws.bedrockagent#Version", + "traits": { + "smithy.api#documentation": "

    The version of the prompt that was created. Versions are numbered incrementally, starting from 1.

    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the prompt was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the prompt was last updated.

    ", "smithy.api#required": {} } } @@ -3369,517 +3697,4621 @@ "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#DeleteKnowledgeBase": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#DeleteKnowledgeBaseRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#DeleteKnowledgeBaseResponse" - }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#ConflictException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" + "com.amazonaws.bedrockagent#CreationMode": { + "type": "enum", + "members": { + "DEFAULT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEFAULT" + } }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" + "OVERRIDDEN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OVERRIDDEN" + } } - ], - "traits": { - "smithy.api#documentation": "

    Deletes a knowledge base. Before deleting a knowledge base, you should disassociate the knowledge base from any agents that it is associated with by making a DisassociateAgentKnowledgeBase request.

    ", - "smithy.api#http": { - "code": 202, - "method": "DELETE", - "uri": "/knowledgebases/{knowledgeBaseId}" - }, - "smithy.api#idempotent": {}, - "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#DeleteKnowledgeBaseRequest": { - "type": "structure", + "com.amazonaws.bedrockagent#CustomControlMethod": { + "type": "enum", "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "RETURN_CONTROL": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base to delete.

    ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "RETURN_CONTROL" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#DeleteKnowledgeBaseResponse": { + "com.amazonaws.bedrockagent#CustomTransformationConfiguration": { "type": "structure", "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "intermediateStorage": { + "target": "com.amazonaws.bedrockagent#IntermediateStorage", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base that was deleted.

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

    An S3 bucket path for input and output objects.

    ", "smithy.api#required": {} } }, - "status": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseStatus", + "transformations": { + "target": "com.amazonaws.bedrockagent#Transformations", "traits": { - "smithy.api#documentation": "

    The status of the knowledge base and whether it has been successfully deleted.

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

    A Lambda function that processes documents.

    ", "smithy.api#required": {} } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.bedrockagent#Description": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 200 - } - } - }, - "com.amazonaws.bedrockagent#Dimensions": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 4096 - } + "smithy.api#documentation": "

    Settings for customizing steps in the data source content ingestion pipeline.

    \n

    You can configure the data source to process documents with a Lambda function after\n they are parsed and converted into chunks. When you add a post-chunking transformation,\n the service stores chunked documents in an S3 bucket and invokes a Lambda function to process\n them.

    \n

    To process chunked documents with a Lambda function, define an S3 bucket path for input\n and output objects, and a transformation that specifies the Lambda function to invoke. You can\n use the Lambda function to customize how chunks are split, and the metadata for each chunk.\n

    " } }, - "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBase": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBaseRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBaseResponse" - }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#ConflictException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" + "com.amazonaws.bedrockagent#DataDeletionPolicy": { + "type": "enum", + "members": { + "RETAIN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RETAIN" + } }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" + "DELETE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE" + } } - ], - "traits": { - "smithy.api#documentation": "

    Disassociates a knowledge base from an agent.

    ", - "smithy.api#http": { - "code": 204, - "method": "DELETE", - "uri": "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/" - }, - "smithy.api#idempotent": {}, - "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBaseRequest": { + "com.amazonaws.bedrockagent#DataSource": { "type": "structure", "members": { - "agentId": { + "knowledgeBaseId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent from which to disassociate the knowledge base.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The unique identifier of the knowledge base to which the data source belongs.

    ", "smithy.api#required": {} } }, - "agentVersion": { - "target": "com.amazonaws.bedrockagent#DraftVersion", + "dataSourceId": { + "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The version of the agent from which to disassociate the knowledge base.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The unique identifier of the data source.

    ", "smithy.api#required": {} } }, - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "name": { + "target": "com.amazonaws.bedrockagent#Name", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base to disassociate.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The name of the data source.

    ", "smithy.api#required": {} } - } - }, + }, + "status": { + "target": "com.amazonaws.bedrockagent#DataSourceStatus", + "traits": { + "smithy.api#documentation": "

    The status of the data source. The following statuses are possible:

    \n
      \n
    • \n

      Available – The data source has been created and is ready for ingestion into the knowledge base.

      \n
    • \n
    • \n

      Deleting – The data source is being deleted.

      \n
    • \n
    ", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagent#Description", + "traits": { + "smithy.api#documentation": "

    The description of the data source.

    " + } + }, + "dataSourceConfiguration": { + "target": "com.amazonaws.bedrockagent#DataSourceConfiguration", + "traits": { + "smithy.api#documentation": "

    The connection configuration for the data source.

    ", + "smithy.api#required": {} + } + }, + "serverSideEncryptionConfiguration": { + "target": "com.amazonaws.bedrockagent#ServerSideEncryptionConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains details about the configuration of the server-side encryption.

    " + } + }, + "vectorIngestionConfiguration": { + "target": "com.amazonaws.bedrockagent#VectorIngestionConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains details about how to ingest the documents in the data source.

    " + } + }, + "dataDeletionPolicy": { + "target": "com.amazonaws.bedrockagent#DataDeletionPolicy", + "traits": { + "smithy.api#documentation": "

    The data deletion policy for the data source.

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

    The time at which the data source was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the data source was last updated.

    ", + "smithy.api#required": {} + } + }, + "failureReasons": { + "target": "com.amazonaws.bedrockagent#FailureReasons", + "traits": { + "smithy.api#documentation": "

    The detailed reasons on the failure to delete a data source.

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

    Contains details about a data source.

    " + } + }, + "com.amazonaws.bedrockagent#DataSourceConfiguration": { + "type": "structure", + "members": { + "type": { + "target": "com.amazonaws.bedrockagent#DataSourceType", + "traits": { + "smithy.api#documentation": "

    The type of data source.

    ", + "smithy.api#required": {} + } + }, + "s3Configuration": { + "target": "com.amazonaws.bedrockagent#S3DataSourceConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration information to connect to Amazon S3 as your data source.

    " + } + }, + "webConfiguration": { + "target": "com.amazonaws.bedrockagent#WebDataSourceConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration of web URLs to crawl for your data source. \n You should be authorized to crawl the URLs.

    \n \n

    Crawling web URLs as your data source is in preview release \n and is subject to change.

    \n
    " + } + }, + "confluenceConfiguration": { + "target": "com.amazonaws.bedrockagent#ConfluenceDataSourceConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration information to connect to Confluence as your data source.

    \n \n

    Confluence data source connector is in preview release and is subject to change.

    \n
    " + } + }, + "salesforceConfiguration": { + "target": "com.amazonaws.bedrockagent#SalesforceDataSourceConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration information to connect to Salesforce as your data source.

    \n \n

    Salesforce data source connector is in preview release and is subject to change.

    \n
    " + } + }, + "sharePointConfiguration": { + "target": "com.amazonaws.bedrockagent#SharePointDataSourceConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration information to connect to SharePoint as your data source.

    \n \n

    SharePoint data source connector is in preview release and is subject to change.

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

    The connection configuration for the data source.

    " + } + }, + "com.amazonaws.bedrockagent#DataSourceResource": { + "type": "resource", + "operations": [ + { + "target": "com.amazonaws.bedrockagent#CreateDataSource" + }, + { + "target": "com.amazonaws.bedrockagent#DeleteDataSource" + }, + { + "target": "com.amazonaws.bedrockagent#GetDataSource" + }, + { + "target": "com.amazonaws.bedrockagent#ListDataSources" + }, + { + "target": "com.amazonaws.bedrockagent#UpdateDataSource" + } + ] + }, + "com.amazonaws.bedrockagent#DataSourceStatus": { + "type": "enum", + "members": { + "AVAILABLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AVAILABLE" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + }, + "DELETE_UNSUCCESSFUL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_UNSUCCESSFUL" + } + } + } + }, + "com.amazonaws.bedrockagent#DataSourceSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#DataSourceSummary" + } + }, + "com.amazonaws.bedrockagent#DataSourceSummary": { + "type": "structure", + "members": { + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base to which the data source belongs.

    ", + "smithy.api#required": {} + } + }, + "dataSourceId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the data source.

    ", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.bedrockagent#Name", + "traits": { + "smithy.api#documentation": "

    The name of the data source.

    ", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#DataSourceStatus", + "traits": { + "smithy.api#documentation": "

    The status of the data source.

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

    The description of the data source.

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

    The time at which the data source was last updated.

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

    Contains details about a data source.

    " + } + }, + "com.amazonaws.bedrockagent#DataSourceType": { + "type": "enum", + "members": { + "S3": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3" + } + }, + "WEB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WEB" + } + }, + "CONFLUENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CONFLUENCE" + } + }, + "SALESFORCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SALESFORCE" + } + }, + "SHAREPOINT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SHAREPOINT" + } + } + } + }, + "com.amazonaws.bedrockagent#DateTimestamp": { + "type": "timestamp", + "traits": { + "smithy.api#timestampFormat": "date-time" + } + }, + "com.amazonaws.bedrockagent#DeleteAgent": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#DeleteAgentRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#DeleteAgentResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Deletes an agent.

    ", + "smithy.api#http": { + "code": 202, + "method": "DELETE", + "uri": "/agents/{agentId}/" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#DeleteAgentActionGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#DeleteAgentActionGroupRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#DeleteAgentActionGroupResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Deletes an action group in an agent.

    ", + "smithy.api#http": { + "code": 204, + "method": "DELETE", + "uri": "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#DeleteAgentActionGroupRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent that the action group belongs to.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentVersion": { + "target": "com.amazonaws.bedrockagent#DraftVersion", + "traits": { + "smithy.api#documentation": "

    The version of the agent that the action group belongs to.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "actionGroupId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the action group to delete.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "skipResourceInUseCheck": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    ", + "smithy.api#httpQuery": "skipResourceInUseCheck" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#DeleteAgentActionGroupResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#DeleteAgentAlias": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#DeleteAgentAliasRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#DeleteAgentAliasResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Deletes an alias of an agent.

    ", + "smithy.api#http": { + "code": 202, + "method": "DELETE", + "uri": "/agents/{agentId}/agentaliases/{agentAliasId}/" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#DeleteAgentAliasRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent that the alias belongs to.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentAliasId": { + "target": "com.amazonaws.bedrockagent#AgentAliasId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the alias to delete.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#DeleteAgentAliasResponse": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent that the alias belongs to.

    ", + "smithy.api#required": {} + } + }, + "agentAliasId": { + "target": "com.amazonaws.bedrockagent#AgentAliasId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the alias that was deleted.

    ", + "smithy.api#required": {} + } + }, + "agentAliasStatus": { + "target": "com.amazonaws.bedrockagent#AgentAliasStatus", + "traits": { + "smithy.api#documentation": "

    The status of the alias.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#DeleteAgentRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent to delete.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "skipResourceInUseCheck": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    ", + "smithy.api#httpQuery": "skipResourceInUseCheck" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#DeleteAgentResponse": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent that was deleted.

    ", + "smithy.api#required": {} + } + }, + "agentStatus": { + "target": "com.amazonaws.bedrockagent#AgentStatus", + "traits": { + "smithy.api#documentation": "

    The status of the agent.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#DeleteAgentVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#DeleteAgentVersionRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#DeleteAgentVersionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Deletes a version of an agent.

    ", + "smithy.api#http": { + "code": 202, + "method": "DELETE", + "uri": "/agents/{agentId}/agentversions/{agentVersion}/" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#DeleteAgentVersionRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent that the version belongs to.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentVersion": { + "target": "com.amazonaws.bedrockagent#NumericalVersion", + "traits": { + "smithy.api#documentation": "

    The version of the agent to delete.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "skipResourceInUseCheck": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    ", + "smithy.api#httpQuery": "skipResourceInUseCheck" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#DeleteAgentVersionResponse": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent that the version belongs to.

    ", + "smithy.api#required": {} + } + }, + "agentVersion": { + "target": "com.amazonaws.bedrockagent#NumericalVersion", + "traits": { + "smithy.api#documentation": "

    The version that was deleted.

    ", + "smithy.api#required": {} + } + }, + "agentStatus": { + "target": "com.amazonaws.bedrockagent#AgentStatus", + "traits": { + "smithy.api#documentation": "

    The status of the agent version.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#DeleteDataSource": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#DeleteDataSourceRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#DeleteDataSourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Deletes a data source from a knowledge base.

    ", + "smithy.api#http": { + "code": 202, + "method": "DELETE", + "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#DeleteDataSourceRequest": { + "type": "structure", + "members": { + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base from which to delete the data source.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "dataSourceId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the data source to delete.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#DeleteDataSourceResponse": { + "type": "structure", + "members": { + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base to which the data source that was deleted belonged.

    ", + "smithy.api#required": {} + } + }, + "dataSourceId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the data source that was deleted.

    ", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#DataSourceStatus", + "traits": { + "smithy.api#documentation": "

    The status of the data source.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#DeleteFlow": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#DeleteFlowRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#DeleteFlowResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Deletes a flow.

    ", + "smithy.api#http": { + "code": 200, + "method": "DELETE", + "uri": "/flows/{flowIdentifier}/" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#DeleteFlowAlias": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#DeleteFlowAliasRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#DeleteFlowAliasResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Deletes an alias of a flow.

    ", + "smithy.api#http": { + "code": 200, + "method": "DELETE", + "uri": "/flows/{flowIdentifier}/aliases/{aliasIdentifier}" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#DeleteFlowAliasRequest": { + "type": "structure", + "members": { + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow that the alias belongs to.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "aliasIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowAliasIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the alias to be deleted.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#DeleteFlowAliasResponse": { + "type": "structure", + "members": { + "flowId": { + "target": "com.amazonaws.bedrockagent#FlowId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow that the alias belongs to.

    ", + "smithy.api#required": {} + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#FlowAliasId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#DeleteFlowRequest": { + "type": "structure", + "members": { + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "skipResourceInUseCheck": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    ", + "smithy.api#httpQuery": "skipResourceInUseCheck" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#DeleteFlowResponse": { + "type": "structure", + "members": { + "id": { + "target": "com.amazonaws.bedrockagent#FlowId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#DeleteFlowVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#DeleteFlowVersionRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#DeleteFlowVersionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Deletes a version of a flow.

    ", + "smithy.api#http": { + "code": 200, + "method": "DELETE", + "uri": "/flows/{flowIdentifier}/versions/{flowVersion}/" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#DeleteFlowVersionRequest": { + "type": "structure", + "members": { + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow whose version that you want to delete

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "flowVersion": { + "target": "com.amazonaws.bedrockagent#NumericalVersion", + "traits": { + "smithy.api#documentation": "

    The version of the flow that you want to delete.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "skipResourceInUseCheck": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

    By default, this value is false and deletion is stopped if the resource is in use. If you set it to true, the resource will be deleted even if the resource is in use.

    ", + "smithy.api#httpQuery": "skipResourceInUseCheck" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#DeleteFlowVersionResponse": { + "type": "structure", + "members": { + "id": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#required": {} + } + }, + "version": { + "target": "com.amazonaws.bedrockagent#NumericalVersion", + "traits": { + "smithy.api#documentation": "

    The version of the flow being deleted.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#DeleteKnowledgeBase": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#DeleteKnowledgeBaseRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#DeleteKnowledgeBaseResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Deletes a knowledge base. Before deleting a knowledge base, you should disassociate the knowledge base from any agents that it is associated with by making a DisassociateAgentKnowledgeBase request.

    ", + "smithy.api#http": { + "code": 202, + "method": "DELETE", + "uri": "/knowledgebases/{knowledgeBaseId}" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#DeleteKnowledgeBaseRequest": { + "type": "structure", + "members": { + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base to delete.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#DeleteKnowledgeBaseResponse": { + "type": "structure", + "members": { + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base that was deleted.

    ", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseStatus", + "traits": { + "smithy.api#documentation": "

    The status of the knowledge base and whether it has been successfully deleted.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#DeletePrompt": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#DeletePromptRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#DeletePromptResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Deletes a prompt or a prompt version from the Prompt management tool. For more information, see Delete prompts from the Prompt management tool and Delete a version of a prompt from the Prompt management tool in the Amazon Bedrock User Guide.

    ", + "smithy.api#http": { + "code": 200, + "method": "DELETE", + "uri": "/prompts/{promptIdentifier}/" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#DeletePromptRequest": { + "type": "structure", + "members": { + "promptIdentifier": { + "target": "com.amazonaws.bedrockagent#PromptIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the prompt.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "promptVersion": { + "target": "com.amazonaws.bedrockagent#NumericalVersion", + "traits": { + "smithy.api#documentation": "

    The version of the prompt to delete.

    ", + "smithy.api#httpQuery": "promptVersion" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#DeletePromptResponse": { + "type": "structure", + "members": { + "id": { + "target": "com.amazonaws.bedrockagent#PromptId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the prompt that was deleted.

    ", + "smithy.api#required": {} + } + }, + "version": { + "target": "com.amazonaws.bedrockagent#NumericalVersion", + "traits": { + "smithy.api#documentation": "

    The version of the prompt that was deleted.

    " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#Description": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 200 + } + } + }, + "com.amazonaws.bedrockagent#Dimensions": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 4096 + } + } + }, + "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBase": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBaseRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBaseResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Disassociates a knowledge base from an agent.

    ", + "smithy.api#http": { + "code": 204, + "method": "DELETE", + "uri": "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBaseRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent from which to disassociate the knowledge base.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentVersion": { + "target": "com.amazonaws.bedrockagent#DraftVersion", + "traits": { + "smithy.api#documentation": "

    The version of the agent from which to disassociate the knowledge base.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base to disassociate.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBaseResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#DraftVersion": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 5, + "max": 5 + }, + "smithy.api#pattern": "^DRAFT$" + } + }, + "com.amazonaws.bedrockagent#EmbeddingModelConfiguration": { + "type": "structure", + "members": { + "bedrockEmbeddingModelConfiguration": { + "target": "com.amazonaws.bedrockagent#BedrockEmbeddingModelConfiguration", + "traits": { + "smithy.api#documentation": "

    The vector configuration details on the Bedrock embeddings model.

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

    The configuration details for the embeddings model.

    " + } + }, + "com.amazonaws.bedrockagent#EnabledMemoryTypes": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#MemoryType" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.bedrockagent#FailureReason": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + } + } + }, + "com.amazonaws.bedrockagent#FailureReasons": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FailureReason" + }, + "traits": { + "smithy.api#length": { + "max": 2048 + } + } + }, + "com.amazonaws.bedrockagent#FieldName": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + }, + "smithy.api#pattern": "^.*$" + } + }, + "com.amazonaws.bedrockagent#FilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FilterPattern" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 25 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockagent#FilterPattern": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1000 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockagent#FilteredObjectType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockagent#FixedSizeChunkingConfiguration": { + "type": "structure", + "members": { + "maxTokens": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

    The maximum number of tokens to include in a chunk.

    ", + "smithy.api#range": { + "min": 1 + }, + "smithy.api#required": {} + } + }, + "overlapPercentage": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

    The percentage of overlap between adjacent chunks of a data source.

    ", + "smithy.api#range": { + "min": 1, + "max": 99 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

    Configurations for when you choose fixed-size chunking. If you set the chunkingStrategy as NONE, exclude this field.

    " + } + }, + "com.amazonaws.bedrockagent#FlowAliasArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:aws:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}/alias/(TSTALIASID|[0-9a-zA-Z]{10})$" + } + }, + "com.amazonaws.bedrockagent#FlowAliasId": { + "type": "string", + "traits": { + "smithy.api#pattern": "^(TSTALIASID|[0-9a-zA-Z]{10})$" + } + }, + "com.amazonaws.bedrockagent#FlowAliasIdentifier": { + "type": "string", + "traits": { + "smithy.api#pattern": "^(arn:aws:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}/alias/[0-9a-zA-Z]{10})|(TSTALIASID|[0-9a-zA-Z]{10})$" + } + }, + "com.amazonaws.bedrockagent#FlowAliasResource": { + "type": "resource", + "identifiers": { + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier" + }, + "aliasIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowAliasIdentifier" + } + }, + "create": { + "target": "com.amazonaws.bedrockagent#CreateFlowAlias" + }, + "read": { + "target": "com.amazonaws.bedrockagent#GetFlowAlias" + }, + "update": { + "target": "com.amazonaws.bedrockagent#UpdateFlowAlias" + }, + "delete": { + "target": "com.amazonaws.bedrockagent#DeleteFlowAlias" + }, + "list": { + "target": "com.amazonaws.bedrockagent#ListFlowAliases" + }, + "traits": { + "aws.api#arn": { + "template": "flow/{flowIdentifier}/alias/{aliasIdentifier}" + }, + "aws.cloudformation#cfnResource": { + "name": "FlowAlias" + } + } + }, + "com.amazonaws.bedrockagent#FlowAliasRoutingConfiguration": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FlowAliasRoutingConfigurationListItem" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.bedrockagent#FlowAliasRoutingConfigurationListItem": { + "type": "structure", + "members": { + "flowVersion": { + "target": "com.amazonaws.bedrockagent#Version", + "traits": { + "smithy.api#documentation": "

    The version that the alias maps to.

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

    Contains information about a version that the alias maps to.

    " + } + }, + "com.amazonaws.bedrockagent#FlowAliasSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FlowAliasSummary" + }, + "traits": { + "smithy.api#length": { + "max": 10 + } + } + }, + "com.amazonaws.bedrockagent#FlowAliasSummary": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#Name", + "traits": { + "smithy.api#documentation": "

    The name of the alias.

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

    A description of the alias.

    " + } + }, + "routingConfiguration": { + "target": "com.amazonaws.bedrockagent#FlowAliasRoutingConfiguration", + "traits": { + "smithy.api#documentation": "

    A list of configurations about the versions that the alias maps to. Currently, you can only specify one.

    ", + "smithy.api#required": {} + } + }, + "flowId": { + "target": "com.amazonaws.bedrockagent#FlowId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#required": {} + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#FlowAliasId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the alias of the flow.

    ", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.bedrockagent#FlowAliasArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the flow alias.

    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the alias was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the alias was last updated.

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

    Contains information about an alias of a flow.

    \n

    This data type is used in the following API operations:

    \n " + } + }, + "com.amazonaws.bedrockagent#FlowArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:aws:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}$" + } + }, + "com.amazonaws.bedrockagent#FlowCondition": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#FlowConditionName", + "traits": { + "smithy.api#documentation": "

    A name for the condition that you can reference.

    ", + "smithy.api#required": {} + } + }, + "expression": { + "target": "com.amazonaws.bedrockagent#FlowConditionExpression", + "traits": { + "smithy.api#documentation": "

    Defines the condition. You must refer to at least one of the inputs in the condition. For more information, expand the Condition node section in Node types in prompt flows.

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

    Defines a condition in the condition node.

    ", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockagent#FlowConditionExpression": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockagent#FlowConditionName": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$" + } + }, + "com.amazonaws.bedrockagent#FlowConditionalConnectionConfiguration": { + "type": "structure", + "members": { + "condition": { + "target": "com.amazonaws.bedrockagent#FlowConditionName", + "traits": { + "smithy.api#documentation": "

    The condition that triggers this connection. For more information about how to write conditions, see the Condition node type in the Node types topic in the Amazon Bedrock User Guide.

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

    The configuration of a connection between a condition node and another node.

    " + } + }, + "com.amazonaws.bedrockagent#FlowConditions": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FlowCondition" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockagent#FlowConnection": { + "type": "structure", + "members": { + "type": { + "target": "com.amazonaws.bedrockagent#FlowConnectionType", + "traits": { + "smithy.api#documentation": "

    Whether the source node that the connection begins from is a condition node (Conditional) or not (Data).

    ", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.bedrockagent#FlowConnectionName", + "traits": { + "smithy.api#documentation": "

    A name for the connection that you can reference.

    ", + "smithy.api#required": {} + } + }, + "source": { + "target": "com.amazonaws.bedrockagent#FlowNodeName", + "traits": { + "smithy.api#documentation": "

    The node that the connection starts at.

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

    The node that the connection ends at.

    ", + "smithy.api#required": {} + } + }, + "configuration": { + "target": "com.amazonaws.bedrockagent#FlowConnectionConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration of the connection.

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

    Contains information about a connection between two nodes in the flow.

    " + } + }, + "com.amazonaws.bedrockagent#FlowConnectionConfiguration": { + "type": "union", + "members": { + "data": { + "target": "com.amazonaws.bedrockagent#FlowDataConnectionConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration of a connection originating from a node that isn't a Condition node.

    " + } + }, + "conditional": { + "target": "com.amazonaws.bedrockagent#FlowConditionalConnectionConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration of a connection originating from a Condition node.

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

    The configuration of the connection.

    " + } + }, + "com.amazonaws.bedrockagent#FlowConnectionName": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[a-zA-Z]([_]?[0-9a-zA-Z]){1,100}$" + } + }, + "com.amazonaws.bedrockagent#FlowConnectionType": { + "type": "enum", + "members": { + "DATA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Data" + } + }, + "CONDITIONAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Conditional" + } + } + } + }, + "com.amazonaws.bedrockagent#FlowConnections": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FlowConnection" + }, + "traits": { + "smithy.api#length": { + "max": 20 + } + } + }, + "com.amazonaws.bedrockagent#FlowDataConnectionConfiguration": { + "type": "structure", + "members": { + "sourceOutput": { + "target": "com.amazonaws.bedrockagent#FlowNodeOutputName", + "traits": { + "smithy.api#documentation": "

    The name of the output in the source node that the connection begins from.

    ", + "smithy.api#required": {} + } + }, + "targetInput": { + "target": "com.amazonaws.bedrockagent#FlowNodeInputName", + "traits": { + "smithy.api#documentation": "

    The name of the input in the target node that the connection ends at.

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

    The configuration of a connection originating from a node that isn't a Condition node.

    " + } + }, + "com.amazonaws.bedrockagent#FlowDefinition": { + "type": "structure", + "members": { + "nodes": { + "target": "com.amazonaws.bedrockagent#FlowNodes", + "traits": { + "smithy.api#documentation": "

    An array of node definitions in the flow.

    " + } + }, + "connections": { + "target": "com.amazonaws.bedrockagent#FlowConnections", + "traits": { + "smithy.api#documentation": "

    An array of connection definitions in the flow.

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

    The definition of the nodes and connections between nodes in the flow.

    " + } + }, + "com.amazonaws.bedrockagent#FlowDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 200 + } + } + }, + "com.amazonaws.bedrockagent#FlowExecutionRoleArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/(service-role/)?.+$" + } + }, + "com.amazonaws.bedrockagent#FlowId": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[0-9a-zA-Z]{10}$" + } + }, + "com.amazonaws.bedrockagent#FlowIdentifier": { + "type": "string", + "traits": { + "smithy.api#pattern": "^(arn:aws:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10})|([0-9a-zA-Z]{10})$" + } + }, + "com.amazonaws.bedrockagent#FlowName": { + "type": "string", + "traits": { + "smithy.api#pattern": "^([0-9a-zA-Z][_-]?){1,100}$" + } + }, + "com.amazonaws.bedrockagent#FlowNode": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#FlowNodeName", + "traits": { + "smithy.api#documentation": "

    A name for the node.

    ", + "smithy.api#required": {} + } + }, + "type": { + "target": "com.amazonaws.bedrockagent#FlowNodeType", + "traits": { + "smithy.api#documentation": "

    The type of node. This value must match the name of the key that you provide in the configuration you provide in the FlowNodeConfiguration field.

    ", + "smithy.api#required": {} + } + }, + "configuration": { + "target": "com.amazonaws.bedrockagent#FlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for the node.

    " + } + }, + "inputs": { + "target": "com.amazonaws.bedrockagent#FlowNodeInputs", + "traits": { + "smithy.api#documentation": "

    An array of objects, each of which contains information about an input into the node.

    " + } + }, + "outputs": { + "target": "com.amazonaws.bedrockagent#FlowNodeOutputs", + "traits": { + "smithy.api#documentation": "

    A list of objects, each of which contains information about an output from the node.

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

    Contains configurations about a node in the flow.

    " + } + }, + "com.amazonaws.bedrockagent#FlowNodeConfiguration": { + "type": "union", + "members": { + "input": { + "target": "com.amazonaws.bedrockagent#InputFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for an input flow node in your flow. The first node in the flow. inputs can't be specified for this node.

    " + } + }, + "output": { + "target": "com.amazonaws.bedrockagent#OutputFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for an output flow node in your flow. The last node in the flow. outputs can't be specified for this node.

    " + } + }, + "knowledgeBase": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for a knowledge base node in your flow. Queries a knowledge base and returns the retrieved results or generated response.

    " + } + }, + "condition": { + "target": "com.amazonaws.bedrockagent#ConditionFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for a Condition node in your flow. Defines conditions that lead to different branches of the flow.

    " + } + }, + "lex": { + "target": "com.amazonaws.bedrockagent#LexFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for a Lex node in your flow. Invokes an Amazon Lex bot to identify the intent of the input and return the intent as the output.

    " + } + }, + "prompt": { + "target": "com.amazonaws.bedrockagent#PromptFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for a prompt node in your flow. Runs a prompt and generates the model response as the output. You can use a prompt from Prompt management or you can configure one in this node.

    " + } + }, + "lambdaFunction": { + "target": "com.amazonaws.bedrockagent#LambdaFunctionFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for a Lambda function node in your flow. Invokes an Lambda function.

    " + } + }, + "storage": { + "target": "com.amazonaws.bedrockagent#StorageFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for a Storage node in your flow. Stores an input in an Amazon S3 location.

    " + } + }, + "agent": { + "target": "com.amazonaws.bedrockagent#AgentFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for an agent node in your flow. Invokes an alias of an agent and returns the response.

    " + } + }, + "retrieval": { + "target": "com.amazonaws.bedrockagent#RetrievalFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for a Retrieval node in your flow. Retrieves data from an Amazon S3 location and returns it as the output.

    " + } + }, + "iterator": { + "target": "com.amazonaws.bedrockagent#IteratorFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for an iterator node in your flow. Takes an input that is an array and iteratively sends each item of the array as an output to the following node. The size of the array is also returned in the output.

    \n

    The output flow node at the end of the flow iteration will return a response for each member of the array. To return only one response, you can include a collector node downstream from the iterator node.

    " + } + }, + "collector": { + "target": "com.amazonaws.bedrockagent#CollectorFlowNodeConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for a collector node in your flow. Collects an iteration of inputs and consolidates them into an array of outputs.

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

    Contains configurations for a node in your flow. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    " + } + }, + "com.amazonaws.bedrockagent#FlowNodeIODataType": { + "type": "enum", + "members": { + "STRING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "String" + } + }, + "NUMBER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Number" + } + }, + "BOOLEAN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Boolean" + } + }, + "OBJECT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Object" + } + }, + "ARRAY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Array" + } + } + } + }, + "com.amazonaws.bedrockagent#FlowNodeInput": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#FlowNodeInputName", + "traits": { + "smithy.api#documentation": "

    A name for the input that you can reference.

    ", + "smithy.api#required": {} + } + }, + "type": { + "target": "com.amazonaws.bedrockagent#FlowNodeIODataType", + "traits": { + "smithy.api#documentation": "

    The data type of the input. If the input doesn't match this type at runtime, a validation error will be thrown.

    ", + "smithy.api#required": {} + } + }, + "expression": { + "target": "com.amazonaws.bedrockagent#FlowNodeInputExpression", + "traits": { + "smithy.api#documentation": "

    An expression that formats the input for the node. For an explanation of how to create expressions, see Expressions in Prompt flows in Amazon Bedrock.

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

    Contains configurations for an input to a node.

    " + } + }, + "com.amazonaws.bedrockagent#FlowNodeInputExpression": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockagent#FlowNodeInputName": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$" + } + }, + "com.amazonaws.bedrockagent#FlowNodeInputs": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FlowNodeInput" + }, + "traits": { + "smithy.api#length": { + "max": 5 + } + } + }, + "com.amazonaws.bedrockagent#FlowNodeName": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$" + } + }, + "com.amazonaws.bedrockagent#FlowNodeOutput": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#FlowNodeOutputName", + "traits": { + "smithy.api#documentation": "

    A name for the output that you can reference.

    ", + "smithy.api#required": {} + } + }, + "type": { + "target": "com.amazonaws.bedrockagent#FlowNodeIODataType", + "traits": { + "smithy.api#documentation": "

    The data type of the output. If the output doesn't match this type at runtime, a validation error will be thrown.

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

    Contains configurations for an output from a node.

    " + } + }, + "com.amazonaws.bedrockagent#FlowNodeOutputName": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$" + } + }, + "com.amazonaws.bedrockagent#FlowNodeOutputs": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FlowNodeOutput" + }, + "traits": { + "smithy.api#length": { + "max": 5 + } + } + }, + "com.amazonaws.bedrockagent#FlowNodeType": { + "type": "enum", + "members": { + "INPUT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Input" + } + }, + "OUTPUT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Output" + } + }, + "KNOWLEDGE_BASE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KnowledgeBase" + } + }, + "CONDITION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Condition" + } + }, + "LEX": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lex" + } + }, + "PROMPT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Prompt" + } + }, + "LAMBDA_FUNCTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LambdaFunction" + } + }, + "STORAGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Storage" + } + }, + "AGENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Agent" + } + }, + "RETRIEVAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Retrieval" + } + }, + "ITERATOR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Iterator" + } + }, + "COLLECTOR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Collector" + } + } + } + }, + "com.amazonaws.bedrockagent#FlowNodes": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FlowNode" + }, + "traits": { + "smithy.api#length": { + "max": 20 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockagent#FlowResource": { + "type": "resource", + "identifiers": { + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier" + } + }, + "create": { + "target": "com.amazonaws.bedrockagent#CreateFlow" + }, + "read": { + "target": "com.amazonaws.bedrockagent#GetFlow" + }, + "update": { + "target": "com.amazonaws.bedrockagent#UpdateFlow" + }, + "delete": { + "target": "com.amazonaws.bedrockagent#DeleteFlow" + }, + "list": { + "target": "com.amazonaws.bedrockagent#ListFlows" + }, + "operations": [ + { + "target": "com.amazonaws.bedrockagent#PrepareFlow" + } + ], + "resources": [ + { + "target": "com.amazonaws.bedrockagent#FlowAliasResource" + }, + { + "target": "com.amazonaws.bedrockagent#FlowVersionResource" + } + ], + "traits": { + "aws.cloudformation#cfnResource": { + "name": "Flow" + } + } + }, + "com.amazonaws.bedrockagent#FlowStatus": { + "type": "enum", + "members": { + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Failed" + } + }, + "PREPARED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Prepared" + } + }, + "PREPARING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Preparing" + } + }, + "NOT_PREPARED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NotPrepared" + } + } + } + }, + "com.amazonaws.bedrockagent#FlowSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FlowSummary" + }, + "traits": { + "smithy.api#length": { + "max": 10 + } + } + }, + "com.amazonaws.bedrockagent#FlowSummary": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#FlowName", + "traits": { + "smithy.api#documentation": "

    The name of the flow.

    ", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagent#FlowDescription", + "traits": { + "smithy.api#documentation": "

    A description of the flow.

    " + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#FlowId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.bedrockagent#FlowArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the flow.

    ", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#FlowStatus", + "traits": { + "smithy.api#documentation": "

    The status of the flow. The following statuses are possible:

    \n
      \n
    • \n

      NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the DRAFT version won't contain the latest changes for testing. Send a PrepareFlow request to package the latest changes into the DRAFT version.

      \n
    • \n
    • \n

      Preparing – The flow is being prepared so that the DRAFT version contains the latest changes for testing.

      \n
    • \n
    • \n

      Prepared – The flow is prepared and the DRAFT version contains the latest changes for testing.

      \n
    • \n
    • \n

      Failed – The last API operation that you invoked on the flow failed. Send a GetFlow request and check the error message in the validations field.

      \n
    • \n
    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the flow was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the flow was last updated.

    ", + "smithy.api#required": {} + } + }, + "version": { + "target": "com.amazonaws.bedrockagent#DraftVersion", + "traits": { + "smithy.api#documentation": "

    The latest version of the flow.

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

    Contains the definition of a flow.

    " + } + }, + "com.amazonaws.bedrockagent#FlowValidation": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.bedrockagent#NonBlankString", + "traits": { + "smithy.api#documentation": "

    A message describing the validation error.

    ", + "smithy.api#required": {} + } + }, + "severity": { + "target": "com.amazonaws.bedrockagent#FlowValidationSeverity", + "traits": { + "smithy.api#documentation": "

    The severity of the issue described in the message.

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

    Contains information about validation of the flow.

    \n

    This data type is used in the following API operations:

    \n " + } + }, + "com.amazonaws.bedrockagent#FlowValidationSeverity": { + "type": "enum", + "members": { + "WARNING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Warning" + } + }, + "ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Error" + } + } + } + }, + "com.amazonaws.bedrockagent#FlowValidations": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FlowValidation" + }, + "traits": { + "smithy.api#length": { + "max": 100 + } + } + }, + "com.amazonaws.bedrockagent#FlowVersionResource": { + "type": "resource", + "identifiers": { + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier" + }, + "flowVersion": { + "target": "com.amazonaws.bedrockagent#NumericalVersion" + } + }, + "create": { + "target": "com.amazonaws.bedrockagent#CreateFlowVersion" + }, + "read": { + "target": "com.amazonaws.bedrockagent#GetFlowVersion" + }, + "delete": { + "target": "com.amazonaws.bedrockagent#DeleteFlowVersion" + }, + "list": { + "target": "com.amazonaws.bedrockagent#ListFlowVersions" + }, + "traits": { + "aws.cloudformation#cfnResource": { + "name": "FlowVersion" + } + } + }, + "com.amazonaws.bedrockagent#FlowVersionSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#FlowVersionSummary" + }, + "traits": { + "smithy.api#length": { + "max": 10 + } + } + }, + "com.amazonaws.bedrockagent#FlowVersionSummary": { + "type": "structure", + "members": { + "id": { + "target": "com.amazonaws.bedrockagent#FlowId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.bedrockagent#FlowArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the flow that the version belongs to.

    ", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#FlowStatus", + "traits": { + "smithy.api#documentation": "

    The status of the flow.

    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at the flow version was created.

    ", + "smithy.api#required": {} + } + }, + "version": { + "target": "com.amazonaws.bedrockagent#NumericalVersion", + "traits": { + "smithy.api#documentation": "

    The version of the flow.

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

    Contains information about the flow version.

    \n

    This data type is used in the following API operations:

    \n " + } + }, + "com.amazonaws.bedrockagent#Function": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#Name", + "traits": { + "smithy.api#documentation": "

    A name for the function.

    ", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagent#FunctionDescription", + "traits": { + "smithy.api#documentation": "

    A description of the function and its purpose.

    " + } + }, + "parameters": { + "target": "com.amazonaws.bedrockagent#ParameterMap", + "traits": { + "smithy.api#documentation": "

    The parameters that the agent elicits from the user to fulfill the function.

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

    Defines parameters that the agent needs to invoke from the user to complete the function. Corresponds to an action in an action group.

    \n

    This data type is used in the following API operations:

    \n " + } + }, + "com.amazonaws.bedrockagent#FunctionDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1200 + } + } + }, + "com.amazonaws.bedrockagent#FunctionSchema": { + "type": "union", + "members": { + "functions": { + "target": "com.amazonaws.bedrockagent#Functions", + "traits": { + "smithy.api#documentation": "

    A list of functions that each define an action in the action group.

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

    Defines functions that each define parameters that the agent needs to invoke from the user. Each function represents an action in an action group.

    \n

    This data type is used in the following API operations:

    \n " + } + }, + "com.amazonaws.bedrockagent#Functions": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#Function" + } + }, + "com.amazonaws.bedrockagent#GetAgent": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetAgentRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetAgentResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Gets information about an agent.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/agents/{agentId}/" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetAgentActionGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetAgentActionGroupRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetAgentActionGroupResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Gets information about an action group for an agent.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetAgentActionGroupRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent that the action group belongs to.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentVersion": { + "target": "com.amazonaws.bedrockagent#Version", + "traits": { + "smithy.api#documentation": "

    The version of the agent that the action group belongs to.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "actionGroupId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the action group for which to get information.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetAgentActionGroupResponse": { + "type": "structure", + "members": { + "agentActionGroup": { + "target": "com.amazonaws.bedrockagent#AgentActionGroup", + "traits": { + "smithy.api#documentation": "

    Contains details about the action group.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GetAgentAlias": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetAgentAliasRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetAgentAliasResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Gets information about an alias of an agent.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/agents/{agentId}/agentaliases/{agentAliasId}/" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetAgentAliasRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent to which the alias to get information belongs.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentAliasId": { + "target": "com.amazonaws.bedrockagent#AgentAliasId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the alias for which to get information.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetAgentAliasResponse": { + "type": "structure", + "members": { + "agentAlias": { + "target": "com.amazonaws.bedrockagent#AgentAlias", + "traits": { + "smithy.api#documentation": "

    Contains information about the alias.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GetAgentKnowledgeBase": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetAgentKnowledgeBaseRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetAgentKnowledgeBaseResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Gets information about a knowledge base associated with an agent.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetAgentKnowledgeBaseRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent with which the knowledge base is associated.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentVersion": { + "target": "com.amazonaws.bedrockagent#Version", + "traits": { + "smithy.api#documentation": "

    The version of the agent with which the knowledge base is associated.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base associated with the agent.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetAgentKnowledgeBaseResponse": { + "type": "structure", + "members": { + "agentKnowledgeBase": { + "target": "com.amazonaws.bedrockagent#AgentKnowledgeBase", + "traits": { + "smithy.api#documentation": "

    Contains details about a knowledge base attached to an agent.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GetAgentRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetAgentResponse": { + "type": "structure", + "members": { + "agent": { + "target": "com.amazonaws.bedrockagent#Agent", + "traits": { + "smithy.api#documentation": "

    Contains details about the agent.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GetAgentVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetAgentVersionRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetAgentVersionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Gets details about a version of an agent.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/agents/{agentId}/agentversions/{agentVersion}/" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetAgentVersionRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentVersion": { + "target": "com.amazonaws.bedrockagent#NumericalVersion", + "traits": { + "smithy.api#documentation": "

    The version of the agent.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetAgentVersionResponse": { + "type": "structure", + "members": { + "agentVersion": { + "target": "com.amazonaws.bedrockagent#AgentVersion", + "traits": { + "smithy.api#documentation": "

    Contains details about the version of the agent.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GetDataSource": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetDataSourceRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetDataSourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Gets information about a data source.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetDataSourceRequest": { + "type": "structure", + "members": { + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base that the data source was added to.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "dataSourceId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the data source.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetDataSourceResponse": { + "type": "structure", + "members": { + "dataSource": { + "target": "com.amazonaws.bedrockagent#DataSource", + "traits": { + "smithy.api#documentation": "

    Contains details about the data source.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GetFlow": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetFlowRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetFlowResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Retrieves information about a flow. For more information, see Manage a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/flows/{flowIdentifier}/" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetFlowAlias": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetFlowAliasRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetFlowAliasResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Retrieves information about a flow. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/flows/{flowIdentifier}/aliases/{aliasIdentifier}" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetFlowAliasRequest": { + "type": "structure", + "members": { + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow that the alias belongs to.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "aliasIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowAliasIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the alias for which to retrieve information.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetFlowAliasResponse": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#Name", + "traits": { + "smithy.api#documentation": "

    The name of the flow alias.

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

    The description of the flow.

    " + } + }, + "routingConfiguration": { + "target": "com.amazonaws.bedrockagent#FlowAliasRoutingConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains information about the version that the alias is mapped to.

    ", + "smithy.api#required": {} + } + }, + "flowId": { + "target": "com.amazonaws.bedrockagent#FlowId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow that the alias belongs to.

    ", + "smithy.api#required": {} + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#FlowAliasId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the alias of the flow.

    ", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.bedrockagent#FlowAliasArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the flow.

    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the flow was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the flow alias was last updated.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GetFlowRequest": { + "type": "structure", + "members": { + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetFlowResponse": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#FlowName", + "traits": { + "smithy.api#documentation": "

    The name of the flow.

    ", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagent#FlowDescription", + "traits": { + "smithy.api#documentation": "

    The description of the flow.

    " + } + }, + "executionRoleArn": { + "target": "com.amazonaws.bedrockagent#FlowExecutionRoleArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see Create a service row for flows in the Amazon Bedrock User Guide.

    ", + "smithy.api#required": {} + } + }, + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key that the flow is encrypted with.

    " + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#FlowId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.bedrockagent#FlowArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the flow.

    ", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#FlowStatus", + "traits": { + "smithy.api#documentation": "

    The status of the flow. The following statuses are possible:

    \n
      \n
    • \n

      NotPrepared – The flow has been created or updated, but hasn't been prepared. If you just created the flow, you can't test it. If you updated the flow, the DRAFT version won't contain the latest changes for testing. Send a PrepareFlow request to package the latest changes into the DRAFT version.

      \n
    • \n
    • \n

      Preparing – The flow is being prepared so that the DRAFT version contains the latest changes for testing.

      \n
    • \n
    • \n

      Prepared – The flow is prepared and the DRAFT version contains the latest changes for testing.

      \n
    • \n
    • \n

      Failed – The last API operation that you invoked on the flow failed. Send a GetFlow request and check the error message in the validations field.

      \n
    • \n
    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the flow was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the flow was last updated.

    ", + "smithy.api#required": {} + } + }, + "version": { + "target": "com.amazonaws.bedrockagent#DraftVersion", + "traits": { + "smithy.api#documentation": "

    The version of the flow for which information was retrieved.

    ", + "smithy.api#required": {} + } + }, + "definition": { + "target": "com.amazonaws.bedrockagent#FlowDefinition", + "traits": { + "smithy.api#documentation": "

    The definition of the nodes and connections between the nodes in the flow.

    " + } + }, + "validations": { + "target": "com.amazonaws.bedrockagent#FlowValidations", + "traits": { + "smithy.api#documentation": "

    A list of validation error messages related to the last failed operation on the flow.

    " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GetFlowVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetFlowVersionRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetFlowVersionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Retrieves information about a version of a flow. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/flows/{flowIdentifier}/versions/{flowVersion}/" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetFlowVersionRequest": { + "type": "structure", + "members": { + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow for which to get information.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "flowVersion": { + "target": "com.amazonaws.bedrockagent#NumericalVersion", + "traits": { + "smithy.api#documentation": "

    The version of the flow for which to get information.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetFlowVersionResponse": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#FlowName", + "traits": { + "smithy.api#documentation": "

    The name of the flow version.

    ", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagent#FlowDescription", + "traits": { + "smithy.api#documentation": "

    The description of the flow.

    " + } + }, + "executionRoleArn": { + "target": "com.amazonaws.bedrockagent#FlowExecutionRoleArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", + "smithy.api#required": {} + } + }, + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key that the version of the flow is encrypted with.

    " + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#FlowId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.bedrockagent#FlowArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the flow.

    ", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#FlowStatus", + "traits": { + "smithy.api#documentation": "

    The status of the flow.

    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the flow was created.

    ", + "smithy.api#required": {} + } + }, + "version": { + "target": "com.amazonaws.bedrockagent#NumericalVersion", + "traits": { + "smithy.api#documentation": "

    The version of the flow for which information was retrieved.

    ", + "smithy.api#required": {} + } + }, + "definition": { + "target": "com.amazonaws.bedrockagent#FlowDefinition", + "traits": { + "smithy.api#documentation": "

    The definition of the nodes and connections between nodes in the flow.

    " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GetIngestionJob": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetIngestionJobRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetIngestionJobResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Gets information about a ingestion job, in which a data source is added to a knowledge base.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/{ingestionJobId}" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetIngestionJobRequest": { + "type": "structure", + "members": { + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base for which the ingestion job applies.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "dataSourceId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the data source in the ingestion job.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ingestionJobId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the ingestion job.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetIngestionJobResponse": { + "type": "structure", + "members": { + "ingestionJob": { + "target": "com.amazonaws.bedrockagent#IngestionJob", + "traits": { + "smithy.api#documentation": "

    Contains details about the ingestion job.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GetKnowledgeBase": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetKnowledgeBaseRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetKnowledgeBaseResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Gets information about a knoweldge base.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/knowledgebases/{knowledgeBaseId}" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetKnowledgeBaseRequest": { + "type": "structure", + "members": { + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base for which to get information.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetKnowledgeBaseResponse": { + "type": "structure", + "members": { + "knowledgeBase": { + "target": "com.amazonaws.bedrockagent#KnowledgeBase", + "traits": { + "smithy.api#documentation": "

    Contains details about the knowledge base.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GetPrompt": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#GetPromptRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#GetPromptResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Retrieves information about a prompt or a version of it. For more information, see View information about prompts using Prompt management and View information about a version of your prompt in the Amazon Bedrock User Guide.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/prompts/{promptIdentifier}/" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#GetPromptRequest": { + "type": "structure", + "members": { + "promptIdentifier": { + "target": "com.amazonaws.bedrockagent#PromptIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the prompt.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "promptVersion": { + "target": "com.amazonaws.bedrockagent#Version", + "traits": { + "smithy.api#documentation": "

    The version of the prompt about which you want to retrieve information.

    ", + "smithy.api#httpQuery": "promptVersion" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#GetPromptResponse": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#PromptName", + "traits": { + "smithy.api#documentation": "

    The name of the prompt.

    ", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagent#PromptDescription", + "traits": { + "smithy.api#documentation": "

    The descriptino of the prompt.

    " + } + }, + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key that the prompt is encrypted with.

    " + } + }, + "defaultVariant": { + "target": "com.amazonaws.bedrockagent#PromptVariantName", + "traits": { + "smithy.api#documentation": "

    The name of the default variant for the prompt. This value must match the name field in the relevant PromptVariant object.

    " + } + }, + "variants": { + "target": "com.amazonaws.bedrockagent#PromptVariantList", + "traits": { + "smithy.api#documentation": "

    A list of objects, each containing details about a variant of the prompt.

    " + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#PromptId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the prompt.

    ", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.bedrockagent#PromptArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the prompt.

    ", + "smithy.api#required": {} + } + }, + "version": { + "target": "com.amazonaws.bedrockagent#Version", + "traits": { + "smithy.api#documentation": "

    The version of the prompt.

    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the prompt was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the prompt was last updated.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#GuardrailConfiguration": { + "type": "structure", + "members": { + "guardrailIdentifier": { + "target": "com.amazonaws.bedrockagent#GuardrailIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the guardrail.

    " + } + }, + "guardrailVersion": { + "target": "com.amazonaws.bedrockagent#GuardrailVersion", + "traits": { + "smithy.api#documentation": "

    The version of the guardrail.

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

    Details about the guardrail associated with an agent.

    " + } + }, + "com.amazonaws.bedrockagent#GuardrailIdentifier": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + }, + "smithy.api#pattern": "^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$" + } + }, + "com.amazonaws.bedrockagent#GuardrailVersion": { + "type": "string", + "traits": { + "smithy.api#pattern": "^(([0-9]{1,8})|(DRAFT))$" + } + }, + "com.amazonaws.bedrockagent#HierarchicalChunkingConfiguration": { + "type": "structure", + "members": { + "levelConfigurations": { + "target": "com.amazonaws.bedrockagent#HierarchicalChunkingLevelConfigurations", + "traits": { + "smithy.api#documentation": "

    Token settings for each layer.

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

    The number of tokens to repeat across chunks in the same layer.

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

    Settings for hierarchical document chunking for a data source. Hierarchical chunking splits documents\n into layers of chunks where the first layer contains large chunks, and the second layer contains smaller\n chunks derived from the first layer.

    \n

    You configure the number of tokens to overlap, or repeat across adjacent chunks. For example,\n if you set overlap tokens to 60, the last 60 tokens in the first chunk are also included at the beginning of\n the second chunk. For each layer, you must also configure the maximum number of tokens in a chunk.

    " + } + }, + "com.amazonaws.bedrockagent#HierarchicalChunkingLevelConfiguration": { + "type": "structure", + "members": { + "maxTokens": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

    The maximum number of tokens that a chunk can contain in this layer.

    ", + "smithy.api#range": { + "min": 1, + "max": 8192 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

    Token settings for a layer in a hierarchical chunking configuration.

    " + } + }, + "com.amazonaws.bedrockagent#HierarchicalChunkingLevelConfigurations": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#HierarchicalChunkingLevelConfiguration" + }, + "traits": { + "smithy.api#length": { + "min": 2, + "max": 2 + } + } + }, + "com.amazonaws.bedrockagent#HttpsUrl": { + "type": "string", + "traits": { + "smithy.api#pattern": "^https://[A-Za-z0-9][^\\s]*$" + } + }, + "com.amazonaws.bedrockagent#Id": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[0-9a-zA-Z]{10}$" + } + }, + "com.amazonaws.bedrockagent#InferenceConfiguration": { + "type": "structure", + "members": { + "temperature": { + "target": "com.amazonaws.bedrockagent#Temperature", + "traits": { + "smithy.api#documentation": "

    The likelihood of the model selecting higher-probability options while generating a response. A lower value makes the model more likely to choose higher-probability options, while a higher value makes the model more likely to choose lower-probability options.

    " + } + }, + "topP": { + "target": "com.amazonaws.bedrockagent#TopP", + "traits": { + "smithy.api#documentation": "

    While generating a response, the model determines the probability of the following token at each point of generation. The value that you set for Top P determines the number of most-likely candidates from which the model chooses the next token in the sequence. For example, if you set topP to 80, the model only selects the next token from the top 80% of the probability distribution of next tokens.

    " + } + }, + "topK": { + "target": "com.amazonaws.bedrockagent#TopK", + "traits": { + "smithy.api#documentation": "

    While generating a response, the model determines the probability of the following token at each point of generation. The value that you set for topK is the number of most-likely candidates from which the model chooses the next token in the sequence. For example, if you set topK to 50, the model selects the next token from among the top 50 most likely choices.

    " + } + }, + "maximumLength": { + "target": "com.amazonaws.bedrockagent#MaximumLength", + "traits": { + "smithy.api#documentation": "

    The maximum number of tokens to allow in the generated response.

    " + } + }, + "stopSequences": { + "target": "com.amazonaws.bedrockagent#StopSequences", + "traits": { + "smithy.api#documentation": "

    A list of stop sequences. A stop sequence is a sequence of characters that causes the model to stop generating the response.

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

    Contains inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the promptType. For more information, see Inference parameters for foundation models.

    " + } + }, + "com.amazonaws.bedrockagent#IngestionJob": { + "type": "structure", + "members": { + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base to which the data source is being added.

    ", + "smithy.api#required": {} + } + }, + "dataSourceId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the ingested data source.

    ", + "smithy.api#required": {} + } + }, + "ingestionJobId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the ingestion job.

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

    The description of the ingestion job.

    " + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#IngestionJobStatus", + "traits": { + "smithy.api#documentation": "

    The status of the ingestion job.

    ", + "smithy.api#required": {} + } + }, + "statistics": { + "target": "com.amazonaws.bedrockagent#IngestionJobStatistics", + "traits": { + "smithy.api#documentation": "

    Contains statistics about the ingestion job.

    " + } + }, + "failureReasons": { + "target": "com.amazonaws.bedrockagent#FailureReasons", + "traits": { + "smithy.api#documentation": "

    A list of reasons that the ingestion job failed.

    " + } + }, + "startedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the ingestion job started.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the ingestion job was last updated.

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

    Contains details about an ingestion job, which converts a data source to embeddings for a vector store in knowledge base.

    \n

    This data type is used in the following API operations:

    \n " + } + }, + "com.amazonaws.bedrockagent#IngestionJobFilter": { + "type": "structure", + "members": { + "attribute": { + "target": "com.amazonaws.bedrockagent#IngestionJobFilterAttribute", + "traits": { + "smithy.api#documentation": "

    The attribute by which to filter the results.

    ", + "smithy.api#required": {} + } + }, + "operator": { + "target": "com.amazonaws.bedrockagent#IngestionJobFilterOperator", + "traits": { + "smithy.api#documentation": "

    The operation to carry out between the attribute and the values.

    ", + "smithy.api#required": {} + } + }, + "values": { + "target": "com.amazonaws.bedrockagent#IngestionJobFilterValues", + "traits": { + "smithy.api#documentation": "

    A list of values for the attribute.

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

    Defines a filter by which to filter the results.

    " + } + }, + "com.amazonaws.bedrockagent#IngestionJobFilterAttribute": { + "type": "enum", + "members": { + "STATUS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STATUS" + } + } + } + }, + "com.amazonaws.bedrockagent#IngestionJobFilterOperator": { + "type": "enum", + "members": { + "EQ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EQ" + } + } + } + }, + "com.amazonaws.bedrockagent#IngestionJobFilterValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 100 + }, + "smithy.api#pattern": "^.*$" + } + }, + "com.amazonaws.bedrockagent#IngestionJobFilterValues": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#IngestionJobFilterValue" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 10 + } + } + }, + "com.amazonaws.bedrockagent#IngestionJobFilters": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#IngestionJobFilter" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.bedrockagent#IngestionJobResource": { + "type": "resource", + "operations": [ + { + "target": "com.amazonaws.bedrockagent#GetIngestionJob" + }, + { + "target": "com.amazonaws.bedrockagent#ListIngestionJobs" + }, + { + "target": "com.amazonaws.bedrockagent#StartIngestionJob" + } + ] + }, + "com.amazonaws.bedrockagent#IngestionJobSortBy": { + "type": "structure", + "members": { + "attribute": { + "target": "com.amazonaws.bedrockagent#IngestionJobSortByAttribute", + "traits": { + "smithy.api#documentation": "

    The attribute by which to sort the results.

    ", + "smithy.api#required": {} + } + }, + "order": { + "target": "com.amazonaws.bedrockagent#SortOrder", + "traits": { + "smithy.api#documentation": "

    The order by which to sort the results.

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

    Parameters by which to sort the results.

    " + } + }, + "com.amazonaws.bedrockagent#IngestionJobSortByAttribute": { + "type": "enum", + "members": { + "STATUS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STATUS" + } + }, + "STARTED_AT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STARTED_AT" + } + } + } + }, + "com.amazonaws.bedrockagent#IngestionJobStatistics": { + "type": "structure", + "members": { + "numberOfDocumentsScanned": { + "target": "smithy.api#PrimitiveLong", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

    The total number of source documents that were scanned. Includes new, updated, and unchanged documents.

    " + } + }, + "numberOfMetadataDocumentsScanned": { + "target": "smithy.api#PrimitiveLong", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

    The total number of metadata files that were scanned. Includes new, updated, and unchanged files.

    " + } + }, + "numberOfNewDocumentsIndexed": { + "target": "smithy.api#PrimitiveLong", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

    The number of new source documents in the data source that were successfully indexed.

    " + } + }, + "numberOfModifiedDocumentsIndexed": { + "target": "smithy.api#PrimitiveLong", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

    The number of modified source documents in the data source that were successfully indexed.

    " + } + }, + "numberOfMetadataDocumentsModified": { + "target": "smithy.api#PrimitiveLong", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

    The number of metadata files that were updated or deleted.

    " + } + }, + "numberOfDocumentsDeleted": { + "target": "smithy.api#PrimitiveLong", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

    The number of source documents that was deleted.

    " + } + }, + "numberOfDocumentsFailed": { + "target": "smithy.api#PrimitiveLong", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

    The number of source documents that failed to be ingested.

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

    Contains the statistics for the ingestion job.

    " } }, - "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBaseResponse": { + "com.amazonaws.bedrockagent#IngestionJobStatus": { + "type": "enum", + "members": { + "STARTING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STARTING" + } + }, + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN_PROGRESS" + } + }, + "COMPLETE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETE" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + } + } + }, + "com.amazonaws.bedrockagent#IngestionJobSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#IngestionJobSummary" + } + }, + "com.amazonaws.bedrockagent#IngestionJobSummary": { + "type": "structure", + "members": { + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base to which the data source is added.

    ", + "smithy.api#required": {} + } + }, + "dataSourceId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the data source in the ingestion job.

    ", + "smithy.api#required": {} + } + }, + "ingestionJobId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the ingestion job.

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

    The description of the ingestion job.

    " + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#IngestionJobStatus", + "traits": { + "smithy.api#documentation": "

    The status of the ingestion job.

    ", + "smithy.api#required": {} + } + }, + "startedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the ingestion job was started.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the ingestion job was last updated.

    ", + "smithy.api#required": {} + } + }, + "statistics": { + "target": "com.amazonaws.bedrockagent#IngestionJobStatistics", + "traits": { + "smithy.api#documentation": "

    Contains statistics for the ingestion job.

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

    Contains details about an ingestion job.

    " + } + }, + "com.amazonaws.bedrockagent#InputFlowNodeConfiguration": { "type": "structure", "members": {}, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

    Contains configurations for the input flow node for a flow. This node takes the input from flow invocation and passes it to the next node in the data type that you specify.

    " } }, - "com.amazonaws.bedrockagent#DraftVersion": { + "com.amazonaws.bedrockagent#Instruction": { "type": "string", "traits": { "smithy.api#length": { - "min": 5, - "max": 5 + "min": 40, + "max": 4000 }, - "smithy.api#pattern": "^DRAFT$" + "smithy.api#sensitive": {} } }, - "com.amazonaws.bedrockagent#EmbeddingModelConfiguration": { + "com.amazonaws.bedrockagent#IntermediateStorage": { "type": "structure", "members": { - "bedrockEmbeddingModelConfiguration": { - "target": "com.amazonaws.bedrockagent#BedrockEmbeddingModelConfiguration", + "s3Location": { + "target": "com.amazonaws.bedrockagent#S3Location", "traits": { - "smithy.api#documentation": "

    The vector configuration details on the Bedrock embeddings model.

    " + "smithy.api#documentation": "

    An S3 bucket path.

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

    The configuration details for the embeddings model.

    " + "smithy.api#documentation": "

    A location for storing content from data sources temporarily as it is processed by\n custom components in the ingestion pipeline.

    " } }, - "com.amazonaws.bedrockagent#FailureReason": { + "com.amazonaws.bedrockagent#InternalServerException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.bedrockagent#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

    An internal server error occurred. Retry your request.

    ", + "smithy.api#error": "server", + "smithy.api#httpError": 500 + } + }, + "com.amazonaws.bedrockagent#IteratorFlowNodeConfiguration": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

    Contains configurations for an iterator node in a flow. Takes an input that is an array and iteratively sends each item of the array as an output to the following node. The size of the array is also returned in the output.

    \n

    The output flow node at the end of the flow iteration will return a response for each member of the array. To return only one response, you can include a collector node downstream from the iterator node.

    " + } + }, + "com.amazonaws.bedrockagent#KmsKeyArn": { "type": "string", "traits": { "smithy.api#length": { + "min": 1, "max": 2048 - } + }, + "smithy.api#pattern": "^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$" } }, - "com.amazonaws.bedrockagent#FailureReasons": { - "type": "list", - "member": { - "target": "com.amazonaws.bedrockagent#FailureReason" + "com.amazonaws.bedrockagent#KnowledgeBase": { + "type": "structure", + "members": { + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the knowledge base.

    ", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.bedrockagent#Name", + "traits": { + "smithy.api#documentation": "

    The name of the knowledge base.

    ", + "smithy.api#required": {} + } + }, + "knowledgeBaseArn": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the knowledge base.

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

    The description of the knowledge base.

    " + } + }, + "roleArn": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseRoleArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

    ", + "smithy.api#required": {} + } + }, + "knowledgeBaseConfiguration": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains details about the embeddings configuration of the knowledge base.

    ", + "smithy.api#required": {} + } + }, + "storageConfiguration": { + "target": "com.amazonaws.bedrockagent#StorageConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base.

    ", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseStatus", + "traits": { + "smithy.api#documentation": "

    The status of the knowledge base. The following statuses are possible:

    \n
      \n
    • \n

      CREATING – The knowledge base is being created.

      \n
    • \n
    • \n

      ACTIVE – The knowledge base is ready to be queried.

      \n
    • \n
    • \n

      DELETING – The knowledge base is being deleted.

      \n
    • \n
    • \n

      UPDATING – The knowledge base is being updated.

      \n
    • \n
    • \n

      FAILED – The knowledge base API operation failed.

      \n
    • \n
    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the knowledge base was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the knowledge base was last updated.

    ", + "smithy.api#required": {} + } + }, + "failureReasons": { + "target": "com.amazonaws.bedrockagent#FailureReasons", + "traits": { + "smithy.api#documentation": "

    A list of reasons that the API operation on the knowledge base failed.

    " + } + } }, "traits": { - "smithy.api#length": { - "max": 2048 - } + "smithy.api#documentation": "

    Contains information about a knowledge base.

    " } }, - "com.amazonaws.bedrockagent#FieldName": { + "com.amazonaws.bedrockagent#KnowledgeBaseArn": { "type": "string", "traits": { "smithy.api#length": { - "max": 2048 + "max": 128 }, - "smithy.api#pattern": "^.*$" + "smithy.api#pattern": "^arn:aws(|-cn|-us-gov):bedrock:[a-zA-Z0-9-]*:[0-9]{12}:knowledge-base/[0-9a-zA-Z]+$" } }, - "com.amazonaws.bedrockagent#FixedSizeChunkingConfiguration": { + "com.amazonaws.bedrockagent#KnowledgeBaseConfiguration": { "type": "structure", "members": { - "maxTokens": { - "target": "smithy.api#Integer", - "traits": { - "smithy.api#documentation": "

    The maximum number of tokens to include in a chunk.

    ", - "smithy.api#range": { - "min": 1 - }, + "type": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseType", + "traits": { + "smithy.api#documentation": "

    The type of data that the data source is converted into for the knowledge base.

    ", "smithy.api#required": {} } }, - "overlapPercentage": { - "target": "smithy.api#Integer", + "vectorKnowledgeBaseConfiguration": { + "target": "com.amazonaws.bedrockagent#VectorKnowledgeBaseConfiguration", "traits": { - "smithy.api#documentation": "

    The percentage of overlap between adjacent chunks of a data source.

    ", - "smithy.api#range": { - "min": 1, - "max": 99 - }, - "smithy.api#required": {} + "smithy.api#documentation": "

    Contains details about the embeddings model that'sused to convert the data source.

    " } } }, "traits": { - "smithy.api#documentation": "

    Configurations for when you choose fixed-size chunking. If you set the chunkingStrategy as NONE, exclude this field.

    " + "smithy.api#documentation": "

    Contains details about the embeddings configuration of the knowledge base.

    " } }, - "com.amazonaws.bedrockagent#Function": { + "com.amazonaws.bedrockagent#KnowledgeBaseFlowNodeConfiguration": { "type": "structure", "members": { - "name": { - "target": "com.amazonaws.bedrockagent#Name", + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseId", "traits": { - "smithy.api#documentation": "

    A name for the function.

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

    The unique identifier of the knowledge base to query.

    ", "smithy.api#required": {} } }, - "description": { - "target": "com.amazonaws.bedrockagent#FunctionDescription", - "traits": { - "smithy.api#documentation": "

    A description of the function and its purpose.

    " - } - }, - "parameters": { - "target": "com.amazonaws.bedrockagent#ParameterMap", + "modelId": { + "target": "com.amazonaws.bedrockagent#ModelIdentifier", "traits": { - "smithy.api#documentation": "

    The parameters that the agent elicits from the user to fulfill the function.

    " + "smithy.api#documentation": "

    The unique identifier of the model to use to generate a response from the query results. Omit this field if you want to return the retrieved results as an array.

    " } } }, "traits": { - "smithy.api#documentation": "

    Defines parameters that the agent needs to invoke from the user to complete the function. Corresponds to an action in an action group.

    \n

    This data type is used in the following API operations:

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

    Contains configurations for a knowledge base node in a flow. This node takes a query as the input and returns, as the output, the retrieved responses directly (as an array) or a response generated based on the retrieved responses. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    " } }, - "com.amazonaws.bedrockagent#FunctionDescription": { + "com.amazonaws.bedrockagent#KnowledgeBaseId": { "type": "string", "traits": { "smithy.api#length": { - "min": 1, - "max": 1200 - } - } - }, - "com.amazonaws.bedrockagent#FunctionSchema": { - "type": "union", - "members": { - "functions": { - "target": "com.amazonaws.bedrockagent#Functions", - "traits": { - "smithy.api#documentation": "

    A list of functions that each define an action in the action group.

    " - } - } - }, - "traits": { - "smithy.api#documentation": "

    Defines functions that each define parameters that the agent needs to invoke from the user. Each function represents an action in an action group.

    \n

    This data type is used in the following API operations:

    \n " - } - }, - "com.amazonaws.bedrockagent#Functions": { - "type": "list", - "member": { - "target": "com.amazonaws.bedrockagent#Function" + "max": 10 + }, + "smithy.api#pattern": "^[0-9a-zA-Z]+$" } }, - "com.amazonaws.bedrockagent#GetAgent": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#GetAgentRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#GetAgentResponse" - }, - "errors": [ + "com.amazonaws.bedrockagent#KnowledgeBaseResource": { + "type": "resource", + "operations": [ { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" + "target": "com.amazonaws.bedrockagent#AssociateAgentKnowledgeBase" }, { - "target": "com.amazonaws.bedrockagent#InternalServerException" + "target": "com.amazonaws.bedrockagent#CreateKnowledgeBase" }, { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + "target": "com.amazonaws.bedrockagent#DeleteKnowledgeBase" }, { - "target": "com.amazonaws.bedrockagent#ThrottlingException" + "target": "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBase" }, { - "target": "com.amazonaws.bedrockagent#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

    Gets information about an agent.

    ", - "smithy.api#http": { - "code": 200, - "method": "GET", - "uri": "/agents/{agentId}/" + "target": "com.amazonaws.bedrockagent#GetAgentKnowledgeBase" }, - "smithy.api#readonly": {}, - "smithy.api#tags": ["console"] - } - }, - "com.amazonaws.bedrockagent#GetAgentActionGroup": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#GetAgentActionGroupRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#GetAgentActionGroupResponse" - }, - "errors": [ { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" + "target": "com.amazonaws.bedrockagent#GetKnowledgeBase" }, { - "target": "com.amazonaws.bedrockagent#InternalServerException" + "target": "com.amazonaws.bedrockagent#ListAgentKnowledgeBases" }, { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + "target": "com.amazonaws.bedrockagent#ListKnowledgeBases" }, { - "target": "com.amazonaws.bedrockagent#ThrottlingException" + "target": "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBase" }, { - "target": "com.amazonaws.bedrockagent#ValidationException" + "target": "com.amazonaws.bedrockagent#UpdateKnowledgeBase" } - ], + ] + }, + "com.amazonaws.bedrockagent#KnowledgeBaseRoleArn": { + "type": "string", "traits": { - "smithy.api#documentation": "

    Gets information about an action group for an agent.

    ", - "smithy.api#http": { - "code": 200, - "method": "GET", - "uri": "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/" + "smithy.api#length": { + "max": 2048 }, - "smithy.api#readonly": {}, - "smithy.api#tags": ["console"] + "smithy.api#pattern": "^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/.+$" } }, - "com.amazonaws.bedrockagent#GetAgentActionGroupRequest": { + "com.amazonaws.bedrockagent#KnowledgeBaseState": { + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + } + } + }, + "com.amazonaws.bedrockagent#KnowledgeBaseStatus": { + "type": "enum", + "members": { + "CREATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATING" + } + }, + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACTIVE" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + }, + "UPDATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATING" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + }, + "DELETE_UNSUCCESSFUL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_UNSUCCESSFUL" + } + } + } + }, + "com.amazonaws.bedrockagent#KnowledgeBaseStorageType": { + "type": "enum", + "members": { + "OPENSEARCH_SERVERLESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OPENSEARCH_SERVERLESS" + } + }, + "PINECONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PINECONE" + } + }, + "REDIS_ENTERPRISE_CLOUD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REDIS_ENTERPRISE_CLOUD" + } + }, + "RDS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RDS" + } + }, + "MONGO_DB_ATLAS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MONGO_DB_ATLAS" + } + } + } + }, + "com.amazonaws.bedrockagent#KnowledgeBaseSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseSummary" + } + }, + "com.amazonaws.bedrockagent#KnowledgeBaseSummary": { "type": "structure", "members": { - "agentId": { + "knowledgeBaseId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent that the action group belongs to.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The unique identifier of the knowledge base.

    ", "smithy.api#required": {} } }, - "agentVersion": { - "target": "com.amazonaws.bedrockagent#Version", + "name": { + "target": "com.amazonaws.bedrockagent#Name", "traits": { - "smithy.api#documentation": "

    The version of the agent that the action group belongs to.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The name of the knowledge base.

    ", "smithy.api#required": {} } }, - "actionGroupId": { - "target": "com.amazonaws.bedrockagent#Id", + "description": { + "target": "com.amazonaws.bedrockagent#Description", + "traits": { + "smithy.api#documentation": "

    The description of the knowledge base.

    " + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseStatus", + "traits": { + "smithy.api#documentation": "

    The status of the knowledge base.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", "traits": { - "smithy.api#documentation": "

    The unique identifier of the action group for which to get information.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The time at which the knowledge base was last updated.

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

    Contains details about a knowledge base.

    " } }, - "com.amazonaws.bedrockagent#GetAgentActionGroupResponse": { - "type": "structure", + "com.amazonaws.bedrockagent#KnowledgeBaseType": { + "type": "enum", "members": { - "agentActionGroup": { - "target": "com.amazonaws.bedrockagent#AgentActionGroup", + "VECTOR": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

    Contains details about the action group.

    ", - "smithy.api#required": {} + "smithy.api#enumValue": "VECTOR" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#GetAgentAlias": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#GetAgentAliasRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#GetAgentAliasResponse" - }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" - }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" - } - ], + "com.amazonaws.bedrockagent#LambdaArn": { + "type": "string", "traits": { - "smithy.api#documentation": "

    Gets information about an alias of an agent.

    ", - "smithy.api#http": { - "code": 200, - "method": "GET", - "uri": "/agents/{agentId}/agentaliases/{agentAliasId}/" + "smithy.api#length": { + "max": 2048 }, - "smithy.api#readonly": {}, - "smithy.api#tags": ["console"] + "smithy.api#pattern": "^arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9-_\\.]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?$" } }, - "com.amazonaws.bedrockagent#GetAgentAliasRequest": { + "com.amazonaws.bedrockagent#LambdaFunctionFlowNodeConfiguration": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", - "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent to which the alias to get information belongs.

    ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "agentAliasId": { - "target": "com.amazonaws.bedrockagent#AgentAliasId", + "lambdaArn": { + "target": "com.amazonaws.bedrockagent#LambdaArn", "traits": { - "smithy.api#documentation": "

    The unique identifier of the alias for which to get information.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the Lambda function to invoke.

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

    Contains configurations for a Lambda function node in the flow. You specify the Lambda function to invoke and the inputs into the function. The output is the response that is defined in the Lambda function. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    " } }, - "com.amazonaws.bedrockagent#GetAgentAliasResponse": { + "com.amazonaws.bedrockagent#LexBotAliasArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 78 + }, + "smithy.api#pattern": "^arn:aws(|-us-gov):lex:[a-z]{2}(-gov)?-[a-z]+-\\d{1}:\\d{12}:bot-alias/[0-9a-zA-Z]+/[0-9a-zA-Z]+$" + } + }, + "com.amazonaws.bedrockagent#LexBotLocaleId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.bedrockagent#LexFlowNodeConfiguration": { "type": "structure", "members": { - "agentAlias": { - "target": "com.amazonaws.bedrockagent#AgentAlias", + "botAliasArn": { + "target": "com.amazonaws.bedrockagent#LexBotAliasArn", "traits": { - "smithy.api#documentation": "

    Contains information about the alias.

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

    The Amazon Resource Name (ARN) of the Amazon Lex bot alias to invoke.

    ", + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.bedrockagent#LexBotLocaleId", + "traits": { + "smithy.api#documentation": "

    The Region to invoke the Amazon Lex bot in.

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

    Contains configurations for a Lex node in the flow. You specify a Amazon Lex bot to invoke. This node takes an utterance as the input and returns as the output the intent identified by the Amazon Lex bot. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    " } }, - "com.amazonaws.bedrockagent#GetAgentKnowledgeBase": { + "com.amazonaws.bedrockagent#ListAgentActionGroups": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#GetAgentKnowledgeBaseRequest" + "target": "com.amazonaws.bedrockagent#ListAgentActionGroupsRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#GetAgentKnowledgeBaseResponse" + "target": "com.amazonaws.bedrockagent#ListAgentActionGroupsResponse" }, "errors": [ { @@ -3899,23 +8331,29 @@ } ], "traits": { - "smithy.api#documentation": "

    Gets information about a knowledge base associated with an agent.

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

    Lists the action groups for an agent and information about each one.

    ", "smithy.api#http": { "code": 200, - "method": "GET", - "uri": "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/" + "method": "POST", + "uri": "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "actionGroupSummaries" }, "smithy.api#readonly": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#GetAgentKnowledgeBaseRequest": { + "com.amazonaws.bedrockagent#ListAgentActionGroupsRequest": { "type": "structure", "members": { "agentId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent with which the knowledge base is associated.

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

    The unique identifier of the agent.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -3923,63 +8361,42 @@ "agentVersion": { "target": "com.amazonaws.bedrockagent#Version", "traits": { - "smithy.api#documentation": "

    The version of the agent with which the knowledge base is associated.

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

    The version of the agent.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base associated with the agent.

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

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.bedrockagent#GetAgentKnowledgeBaseResponse": { - "type": "structure", - "members": { - "agentKnowledgeBase": { - "target": "com.amazonaws.bedrockagent#AgentKnowledgeBase", + }, + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    Contains details about a knowledge base attached to an agent.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#GetAgentRequest": { + "com.amazonaws.bedrockagent#ListAgentActionGroupsResponse": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "actionGroupSummaries": { + "target": "com.amazonaws.bedrockagent#ActionGroupSummaries", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    A list of objects, each of which contains information about an action group.

    ", "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.bedrockagent#GetAgentResponse": { - "type": "structure", - "members": { - "agent": { - "target": "com.amazonaws.bedrockagent#Agent", + }, + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    Contains details about the agent.

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

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " } } }, @@ -3987,13 +8404,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#GetAgentVersion": { + "com.amazonaws.bedrockagent#ListAgentAliases": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#GetAgentVersionRequest" + "target": "com.amazonaws.bedrockagent#ListAgentAliasesRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#GetAgentVersionResponse" + "target": "com.amazonaws.bedrockagent#ListAgentAliasesResponse" }, "errors": [ { @@ -4013,17 +8430,23 @@ } ], "traits": { - "smithy.api#documentation": "

    Gets details about a version of an agent.

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

    Lists the aliases of an agent and information about each one.

    ", "smithy.api#http": { "code": 200, - "method": "GET", - "uri": "/agents/{agentId}/agentversions/{agentVersion}/" + "method": "POST", + "uri": "/agents/{agentId}/agentaliases/" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "agentAliasSummaries" }, "smithy.api#readonly": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#GetAgentVersionRequest": { + "com.amazonaws.bedrockagent#ListAgentAliasesRequest": { "type": "structure", "members": { "agentId": { @@ -4034,12 +8457,16 @@ "smithy.api#required": {} } }, - "agentVersion": { - "target": "com.amazonaws.bedrockagent#NumericalVersion", + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", "traits": { - "smithy.api#documentation": "

    The version of the agent.

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

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " } } }, @@ -4047,28 +8474,34 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#GetAgentVersionResponse": { + "com.amazonaws.bedrockagent#ListAgentAliasesResponse": { "type": "structure", "members": { - "agentVersion": { - "target": "com.amazonaws.bedrockagent#AgentVersion", + "agentAliasSummaries": { + "target": "com.amazonaws.bedrockagent#AgentAliasSummaries", "traits": { - "smithy.api#documentation": "

    Contains details about the version of the agent.

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

    A list of objects, each of which contains information about an alias of the agent.

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

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#GetDataSource": { + "com.amazonaws.bedrockagent#ListAgentKnowledgeBases": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#GetDataSourceRequest" + "target": "com.amazonaws.bedrockagent#ListAgentKnowledgeBasesRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#GetDataSourceResponse" + "target": "com.amazonaws.bedrockagent#ListAgentKnowledgeBasesResponse" }, "errors": [ { @@ -4088,33 +8521,51 @@ } ], "traits": { - "smithy.api#documentation": "

    Gets information about a data source.

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

    Lists knowledge bases associated with an agent and information about each one.

    ", "smithy.api#http": { "code": 200, - "method": "GET", - "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}" + "method": "POST", + "uri": "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "agentKnowledgeBaseSummaries" }, "smithy.api#readonly": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#GetDataSourceRequest": { + "com.amazonaws.bedrockagent#ListAgentKnowledgeBasesRequest": { "type": "structure", "members": { - "knowledgeBaseId": { + "agentId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base that the data source was added to.

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

    The unique identifier of the agent for which to return information about knowledge bases associated with it.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentVersion": { + "target": "com.amazonaws.bedrockagent#Version", + "traits": { + "smithy.api#documentation": "

    The version of the agent for which to return information about knowledge bases associated with it.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "dataSourceId": { - "target": "com.amazonaws.bedrockagent#Id", + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", + "traits": { + "smithy.api#documentation": "

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

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

    The unique identifier of the data source.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " } } }, @@ -4122,28 +8573,34 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#GetDataSourceResponse": { + "com.amazonaws.bedrockagent#ListAgentKnowledgeBasesResponse": { "type": "structure", "members": { - "dataSource": { - "target": "com.amazonaws.bedrockagent#DataSource", + "agentKnowledgeBaseSummaries": { + "target": "com.amazonaws.bedrockagent#AgentKnowledgeBaseSummaries", "traits": { - "smithy.api#documentation": "

    Contains details about the data source.

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

    A list of objects, each of which contains information about a knowledge base associated with the agent.

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

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#GetIngestionJob": { + "com.amazonaws.bedrockagent#ListAgentVersions": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#GetIngestionJobRequest" + "target": "com.amazonaws.bedrockagent#ListAgentVersionsRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#GetIngestionJobResponse" + "target": "com.amazonaws.bedrockagent#ListAgentVersionsResponse" }, "errors": [ { @@ -4163,41 +8620,43 @@ } ], "traits": { - "smithy.api#documentation": "

    Gets information about a ingestion job, in which a data source is added to a knowledge base.

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

    Lists the versions of an agent and information about each version.

    ", "smithy.api#http": { "code": 200, - "method": "GET", - "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/{ingestionJobId}" + "method": "POST", + "uri": "/agents/{agentId}/agentversions/" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "agentVersionSummaries" }, "smithy.api#readonly": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#GetIngestionJobRequest": { + "com.amazonaws.bedrockagent#ListAgentVersionsRequest": { "type": "structure", "members": { - "knowledgeBaseId": { + "agentId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base for which the ingestion job applies.

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

    The unique identifier of the agent.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "dataSourceId": { - "target": "com.amazonaws.bedrockagent#Id", + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", "traits": { - "smithy.api#documentation": "

    The unique identifier of the data source in the ingestion job.

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

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " } }, - "ingestionJobId": { - "target": "com.amazonaws.bedrockagent#Id", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    The unique identifier of the ingestion job.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " } } }, @@ -4205,28 +8664,34 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#GetIngestionJobResponse": { + "com.amazonaws.bedrockagent#ListAgentVersionsResponse": { "type": "structure", "members": { - "ingestionJob": { - "target": "com.amazonaws.bedrockagent#IngestionJob", + "agentVersionSummaries": { + "target": "com.amazonaws.bedrockagent#AgentVersionSummaries", "traits": { - "smithy.api#documentation": "

    Contains details about the ingestion job.

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

    A list of objects, each of which contains information about a version of the agent.

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

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#GetKnowledgeBase": { + "com.amazonaws.bedrockagent#ListAgents": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#GetKnowledgeBaseRequest" + "target": "com.amazonaws.bedrockagent#ListAgentsRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#GetKnowledgeBaseResponse" + "target": "com.amazonaws.bedrockagent#ListAgentsResponse" }, "errors": [ { @@ -4235,9 +8700,6 @@ { "target": "com.amazonaws.bedrockagent#InternalServerException" }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" }, @@ -4246,1144 +8708,1344 @@ } ], "traits": { - "smithy.api#documentation": "

    Gets information about a knoweldge base.

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

    Lists the agents belonging to an account and information about each agent.

    ", "smithy.api#http": { "code": 200, - "method": "GET", - "uri": "/knowledgebases/{knowledgeBaseId}" + "method": "POST", + "uri": "/agents/" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "agentSummaries" }, "smithy.api#readonly": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#GetKnowledgeBaseRequest": { + "com.amazonaws.bedrockagent#ListAgentsRequest": { "type": "structure", "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base for which to get information.

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

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.bedrockagent#GetKnowledgeBaseResponse": { - "type": "structure", - "members": { - "knowledgeBase": { - "target": "com.amazonaws.bedrockagent#KnowledgeBase", + }, + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    Contains details about the knowledge base.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#GuardrailConfiguration": { + "com.amazonaws.bedrockagent#ListAgentsResponse": { "type": "structure", "members": { - "guardrailIdentifier": { - "target": "com.amazonaws.bedrockagent#GuardrailIdentifier", + "agentSummaries": { + "target": "com.amazonaws.bedrockagent#AgentSummaries", "traits": { - "smithy.api#documentation": "

    The guardrails identifier assigned to the guardrails configuration.

    " + "smithy.api#documentation": "

    A list of objects, each of which contains information about an agent.

    ", + "smithy.api#required": {} } }, - "guardrailVersion": { - "target": "com.amazonaws.bedrockagent#GuardrailVersion", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    The guardrails version assigned to the guardrails configuration.

    " + "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " } } }, "traits": { - "smithy.api#documentation": "

    The details of the guardrails configuration.

    " - } - }, - "com.amazonaws.bedrockagent#GuardrailIdentifier": { - "type": "string", - "traits": { - "smithy.api#length": { - "max": 2048 - }, - "smithy.api#pattern": "^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$" - } - }, - "com.amazonaws.bedrockagent#GuardrailVersion": { - "type": "string", - "traits": { - "smithy.api#pattern": "^(([0-9]{1,8})|(DRAFT))$" - } - }, - "com.amazonaws.bedrockagent#Id": { - "type": "string", - "traits": { - "smithy.api#pattern": "^[0-9a-zA-Z]{10}$" + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#InferenceConfiguration": { - "type": "structure", - "members": { - "temperature": { - "target": "com.amazonaws.bedrockagent#Temperature", - "traits": { - "smithy.api#documentation": "

    The likelihood of the model selecting higher-probability options while generating a response. A lower value makes the model more likely to choose higher-probability options, while a higher value makes the model more likely to choose lower-probability options.

    " - } + "com.amazonaws.bedrockagent#ListDataSources": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#ListDataSourcesRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#ListDataSourcesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" }, - "topP": { - "target": "com.amazonaws.bedrockagent#TopP", - "traits": { - "smithy.api#documentation": "

    While generating a response, the model determines the probability of the following token at each point of generation. The value that you set for Top P determines the number of most-likely candidates from which the model chooses the next token in the sequence. For example, if you set topP to 80, the model only selects the next token from the top 80% of the probability distribution of next tokens.

    " - } + { + "target": "com.amazonaws.bedrockagent#InternalServerException" }, - "topK": { - "target": "com.amazonaws.bedrockagent#TopK", - "traits": { - "smithy.api#documentation": "

    While generating a response, the model determines the probability of the following token at each point of generation. The value that you set for topK is the number of most-likely candidates from which the model chooses the next token in the sequence. For example, if you set topK to 50, the model selects the next token from among the top 50 most likely choices.

    " - } + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, - "maximumLength": { - "target": "com.amazonaws.bedrockagent#MaximumLength", - "traits": { - "smithy.api#documentation": "

    The maximum number of tokens to allow in the generated response.

    " - } + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" }, - "stopSequences": { - "target": "com.amazonaws.bedrockagent#StopSequences", - "traits": { - "smithy.api#documentation": "

    A list of stop sequences. A stop sequence is a sequence of characters that causes the model to stop generating the response.

    " - } + { + "target": "com.amazonaws.bedrockagent#ValidationException" } - }, + ], "traits": { - "smithy.api#documentation": "

    Contains inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the promptType. For more information, see Inference parameters for foundation models.

    " + "smithy.api#documentation": "

    Lists the data sources in a knowledge base and information about each one.

    ", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/knowledgebases/{knowledgeBaseId}/datasources/" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "dataSourceSummaries" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#IngestionJob": { + "com.amazonaws.bedrockagent#ListDataSourcesRequest": { "type": "structure", "members": { "knowledgeBaseId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base to which the data source is being added.

    ", - "smithy.api#required": {} - } - }, - "dataSourceId": { - "target": "com.amazonaws.bedrockagent#Id", - "traits": { - "smithy.api#documentation": "

    The unique identifier of the ingested data source.

    ", - "smithy.api#required": {} - } - }, - "ingestionJobId": { - "target": "com.amazonaws.bedrockagent#Id", - "traits": { - "smithy.api#documentation": "

    The unique identifier of the ingestion job.

    ", - "smithy.api#required": {} - } - }, - "description": { - "target": "com.amazonaws.bedrockagent#Description", - "traits": { - "smithy.api#documentation": "

    The description of the ingestion job.

    " - } - }, - "status": { - "target": "com.amazonaws.bedrockagent#IngestionJobStatus", - "traits": { - "smithy.api#documentation": "

    The status of the ingestion job.

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

    The unique identifier of the knowledge base for which to return a list of information.

    ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "statistics": { - "target": "com.amazonaws.bedrockagent#IngestionJobStatistics", + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", "traits": { - "smithy.api#documentation": "

    Contains statistics about the ingestion job.

    " + "smithy.api#documentation": "

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " } }, - "failureReasons": { - "target": "com.amazonaws.bedrockagent#FailureReasons", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    A list of reasons that the ingestion job failed.

    " + "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " } - }, - "startedAt": { - "target": "com.amazonaws.bedrockagent#DateTimestamp", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#ListDataSourcesResponse": { + "type": "structure", + "members": { + "dataSourceSummaries": { + "target": "com.amazonaws.bedrockagent#DataSourceSummaries", "traits": { - "smithy.api#documentation": "

    The time at which the ingestion job started.

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

    A list of objects, each of which contains information about a data source.

    ", "smithy.api#required": {} } }, - "updatedAt": { - "target": "com.amazonaws.bedrockagent#DateTimestamp", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    The time at which the ingestion job was last updated.

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

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " } } }, "traits": { - "smithy.api#documentation": "

    Contains details about an ingestion job, which converts a data source to embeddings for a vector store in knowledge base.

    \n

    This data type is used in the following API operations:

    \n " + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#IngestionJobFilter": { + "com.amazonaws.bedrockagent#ListFlowAliases": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#ListFlowAliasesRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#ListFlowAliasesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Returns a list of aliases for a flow.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/flows/{flowIdentifier}/aliases" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "flowAliasSummaries" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#ListFlowAliasesRequest": { "type": "structure", "members": { - "attribute": { - "target": "com.amazonaws.bedrockagent#IngestionJobFilterAttribute", + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", "traits": { - "smithy.api#documentation": "

    The attribute by which to filter the results.

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

    The unique identifier of the flow for which aliases are being returned.

    ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "operator": { - "target": "com.amazonaws.bedrockagent#IngestionJobFilterOperator", + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", "traits": { - "smithy.api#documentation": "

    The operation to carry out between the attribute and the values.

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

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    ", + "smithy.api#httpQuery": "maxResults" } }, - "values": { - "target": "com.amazonaws.bedrockagent#IngestionJobFilterValues", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    A list of values for the attribute.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    ", + "smithy.api#httpQuery": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

    Defines a filter by which to filter the results.

    " + "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#IngestionJobFilterAttribute": { - "type": "enum", + "com.amazonaws.bedrockagent#ListFlowAliasesResponse": { + "type": "structure", "members": { - "STATUS": { - "target": "smithy.api#Unit", + "flowAliasSummaries": { + "target": "com.amazonaws.bedrockagent#FlowAliasSummaries", "traits": { - "smithy.api#enumValue": "STATUS" + "smithy.api#documentation": "

    A list, each member of which contains information about a flow alias.

    ", + "smithy.api#required": {} } - } - } - }, - "com.amazonaws.bedrockagent#IngestionJobFilterOperator": { - "type": "enum", - "members": { - "EQ": { - "target": "smithy.api#Unit", + }, + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#enumValue": "EQ" + "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " } } - } - }, - "com.amazonaws.bedrockagent#IngestionJobFilterValue": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 100 - }, - "smithy.api#pattern": "^.*$" - } - }, - "com.amazonaws.bedrockagent#IngestionJobFilterValues": { - "type": "list", - "member": { - "target": "com.amazonaws.bedrockagent#IngestionJobFilterValue" }, "traits": { - "smithy.api#length": { - "min": 0, - "max": 10 - } + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#IngestionJobFilters": { - "type": "list", - "member": { - "target": "com.amazonaws.bedrockagent#IngestionJobFilter" + "com.amazonaws.bedrockagent#ListFlowVersions": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#ListFlowVersionsRequest" }, - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1 - } - } - }, - "com.amazonaws.bedrockagent#IngestionJobResource": { - "type": "resource", - "operations": [ + "output": { + "target": "com.amazonaws.bedrockagent#ListFlowVersionsResponse" + }, + "errors": [ { - "target": "com.amazonaws.bedrockagent#GetIngestionJob" + "target": "com.amazonaws.bedrockagent#AccessDeniedException" }, { - "target": "com.amazonaws.bedrockagent#ListIngestionJobs" + "target": "com.amazonaws.bedrockagent#InternalServerException" }, { - "target": "com.amazonaws.bedrockagent#StartIngestionJob" + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" } - ] + ], + "traits": { + "smithy.api#documentation": "

    Returns a list of information about each flow. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/flows/{flowIdentifier}/versions" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "flowVersionSummaries" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } }, - "com.amazonaws.bedrockagent#IngestionJobSortBy": { + "com.amazonaws.bedrockagent#ListFlowVersionsRequest": { "type": "structure", "members": { - "attribute": { - "target": "com.amazonaws.bedrockagent#IngestionJobSortByAttribute", + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", "traits": { - "smithy.api#documentation": "

    The attribute by which to sort the results.

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

    The unique identifier of the flow.

    ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "order": { - "target": "com.amazonaws.bedrockagent#SortOrder", + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", "traits": { - "smithy.api#documentation": "

    The order by which to sort the results.

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

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    ", + "smithy.api#httpQuery": "maxResults" + } + }, + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", + "traits": { + "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    ", + "smithy.api#httpQuery": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

    Parameters by which to sort the results.

    " + "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#IngestionJobSortByAttribute": { - "type": "enum", + "com.amazonaws.bedrockagent#ListFlowVersionsResponse": { + "type": "structure", "members": { - "STATUS": { - "target": "smithy.api#Unit", + "flowVersionSummaries": { + "target": "com.amazonaws.bedrockagent#FlowVersionSummaries", "traits": { - "smithy.api#enumValue": "STATUS" + "smithy.api#documentation": "

    A list, each member of which contains information about a flow.

    ", + "smithy.api#required": {} } }, - "STARTED_AT": { - "target": "smithy.api#Unit", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#enumValue": "STARTED_AT" + "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#IngestionJobStatistics": { - "type": "structure", - "members": { - "numberOfDocumentsScanned": { - "target": "smithy.api#PrimitiveLong", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

    The total number of source documents that were scanned. Includes new, updated, and unchanged documents.

    " - } + "com.amazonaws.bedrockagent#ListFlows": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#ListFlowsRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#ListFlowsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" }, - "numberOfMetadataDocumentsScanned": { - "target": "smithy.api#PrimitiveLong", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

    The total number of metadata files that were scanned. Includes new, updated, and unchanged files.

    " - } + { + "target": "com.amazonaws.bedrockagent#InternalServerException" }, - "numberOfNewDocumentsIndexed": { - "target": "smithy.api#PrimitiveLong", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

    The number of new source documents in the data source that were successfully indexed.

    " - } + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" }, - "numberOfModifiedDocumentsIndexed": { - "target": "smithy.api#PrimitiveLong", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

    The number of modified source documents in the data source that were successfully indexed.

    " - } + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Returns a list of flows and information about each flow. For more information, see Manage a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/flows/" }, - "numberOfMetadataDocumentsModified": { - "target": "smithy.api#PrimitiveLong", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

    The number of metadata files that were updated or deleted.

    " - } + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "flowSummaries" }, - "numberOfDocumentsDeleted": { - "target": "smithy.api#PrimitiveLong", + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#ListFlowsRequest": { + "type": "structure", + "members": { + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

    The number of source documents that was deleted.

    " + "smithy.api#documentation": "

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    ", + "smithy.api#httpQuery": "maxResults" } }, - "numberOfDocumentsFailed": { - "target": "smithy.api#PrimitiveLong", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

    The number of source documents that failed to be ingested.

    " + "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    ", + "smithy.api#httpQuery": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

    Contains the statistics for the ingestion job.

    " + "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#IngestionJobStatus": { - "type": "enum", + "com.amazonaws.bedrockagent#ListFlowsResponse": { + "type": "structure", "members": { - "STARTING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STARTING" - } - }, - "IN_PROGRESS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "IN_PROGRESS" - } - }, - "COMPLETE": { - "target": "smithy.api#Unit", + "flowSummaries": { + "target": "com.amazonaws.bedrockagent#FlowSummaries", "traits": { - "smithy.api#enumValue": "COMPLETE" + "smithy.api#documentation": "

    A list, each member of which contains information about a flow.

    ", + "smithy.api#required": {} } }, - "FAILED": { - "target": "smithy.api#Unit", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#enumValue": "FAILED" + "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#IngestionJobSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.bedrockagent#IngestionJobSummary" + "com.amazonaws.bedrockagent#ListIngestionJobs": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#ListIngestionJobsRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#ListIngestionJobsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Lists the ingestion jobs for a data source and information about each of them.

    ", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "ingestionJobSummaries" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#IngestionJobSummary": { + "com.amazonaws.bedrockagent#ListIngestionJobsRequest": { "type": "structure", "members": { "knowledgeBaseId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base to which the data source is added.

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

    The unique identifier of the knowledge base for which to return ingestion jobs.

    ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, "dataSourceId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the data source in the ingestion job.

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

    The unique identifier of the data source for which to return ingestion jobs.

    ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "ingestionJobId": { - "target": "com.amazonaws.bedrockagent#Id", + "filters": { + "target": "com.amazonaws.bedrockagent#IngestionJobFilters", "traits": { - "smithy.api#documentation": "

    The unique identifier of the ingestion job.

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

    Contains a definition of a filter for which to filter the results.

    " } }, - "description": { - "target": "com.amazonaws.bedrockagent#Description", + "sortBy": { + "target": "com.amazonaws.bedrockagent#IngestionJobSortBy", "traits": { - "smithy.api#documentation": "

    The description of the ingestion job.

    " + "smithy.api#documentation": "

    Contains details about how to sort the results.

    " } }, - "status": { - "target": "com.amazonaws.bedrockagent#IngestionJobStatus", + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", "traits": { - "smithy.api#documentation": "

    The status of the ingestion job.

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

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " } }, - "startedAt": { - "target": "com.amazonaws.bedrockagent#DateTimestamp", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    The time at which the ingestion job was started.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " } - }, - "updatedAt": { - "target": "com.amazonaws.bedrockagent#DateTimestamp", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#ListIngestionJobsResponse": { + "type": "structure", + "members": { + "ingestionJobSummaries": { + "target": "com.amazonaws.bedrockagent#IngestionJobSummaries", "traits": { - "smithy.api#documentation": "

    The time at which the ingestion job was last updated.

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

    A list of objects, each of which contains information about an ingestion job.

    ", "smithy.api#required": {} } }, - "statistics": { - "target": "com.amazonaws.bedrockagent#IngestionJobStatistics", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    Contains statistics for the ingestion job.

    " + "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " } } }, "traits": { - "smithy.api#documentation": "

    Contains details about an ingestion job.

    " + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#Instruction": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 40, - "max": 4000 + "com.amazonaws.bedrockagent#ListKnowledgeBases": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#ListKnowledgeBasesRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#ListKnowledgeBasesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" }, - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.bedrockagent#InternalServerException": { - "type": "structure", - "members": { - "message": { - "target": "com.amazonaws.bedrockagent#NonBlankString" + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" } - }, - "traits": { - "smithy.api#documentation": "

    An internal server error occurred. Retry your request.

    ", - "smithy.api#error": "server", - "smithy.api#httpError": 500 - } - }, - "com.amazonaws.bedrockagent#KmsKeyArn": { - "type": "string", + ], "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 + "smithy.api#documentation": "

    Lists the knowledge bases in an account and information about each of them.

    ", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/knowledgebases/" }, - "smithy.api#pattern": "^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$" + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "knowledgeBaseSummaries" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#KnowledgeBase": { + "com.amazonaws.bedrockagent#ListKnowledgeBasesRequest": { "type": "structure", "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base.

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

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " } }, - "name": { - "target": "com.amazonaws.bedrockagent#Name", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    The name of the knowledge base.

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

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " } - }, - "knowledgeBaseArn": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseArn", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#ListKnowledgeBasesResponse": { + "type": "structure", + "members": { + "knowledgeBaseSummaries": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseSummaries", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the knowledge base.

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

    A list of objects, each of which contains information about a knowledge base.

    ", "smithy.api#required": {} } }, - "description": { - "target": "com.amazonaws.bedrockagent#Description", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    The description of the knowledge base.

    " + "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#ListPrompts": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#ListPromptsRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#ListPromptsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" }, - "roleArn": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseRoleArn", - "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

    ", - "smithy.api#required": {} - } + { + "target": "com.amazonaws.bedrockagent#InternalServerException" }, - "knowledgeBaseConfiguration": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseConfiguration", - "traits": { - "smithy.api#documentation": "

    Contains details about the embeddings configuration of the knowledge base.

    ", - "smithy.api#required": {} - } + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, - "storageConfiguration": { - "target": "com.amazonaws.bedrockagent#StorageConfiguration", - "traits": { - "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base.

    ", - "smithy.api#required": {} - } + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" }, - "status": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseStatus", - "traits": { - "smithy.api#documentation": "

    The status of the knowledge base. The following statuses are possible:

    \n
      \n
    • \n

      CREATING – The knowledge base is being created.

      \n
    • \n
    • \n

      ACTIVE – The knowledge base is ready to be queried.

      \n
    • \n
    • \n

      DELETING – The knowledge base is being deleted.

      \n
    • \n
    • \n

      UPDATING – The knowledge base is being updated.

      \n
    • \n
    • \n

      FAILED – The knowledge base API operation failed.

      \n
    • \n
    ", - "smithy.api#required": {} - } + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Returns a list of prompts from the Prompt management tool and information about each prompt. For more information, see View information about prompts using Prompt management in the Amazon Bedrock User Guide.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/prompts/" }, - "createdAt": { - "target": "com.amazonaws.bedrockagent#DateTimestamp", + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "promptSummaries" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#ListPromptsRequest": { + "type": "structure", + "members": { + "promptIdentifier": { + "target": "com.amazonaws.bedrockagent#PromptIdentifier", "traits": { - "smithy.api#documentation": "

    The time at which the knowledge base was created.

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

    The unique identifier of the prompt.

    ", + "smithy.api#httpQuery": "promptIdentifier" } }, - "updatedAt": { - "target": "com.amazonaws.bedrockagent#DateTimestamp", + "maxResults": { + "target": "com.amazonaws.bedrockagent#MaxResults", "traits": { - "smithy.api#documentation": "

    The time at which the knowledge base was last updated.

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

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    ", + "smithy.api#httpQuery": "maxResults" } }, - "failureReasons": { - "target": "com.amazonaws.bedrockagent#FailureReasons", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    A list of reasons that the API operation on the knowledge base failed.

    " + "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    ", + "smithy.api#httpQuery": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

    Contains information about a knowledge base.

    " - } - }, - "com.amazonaws.bedrockagent#KnowledgeBaseArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "max": 128 - }, - "smithy.api#pattern": "^arn:aws(|-cn|-us-gov):bedrock:[a-zA-Z0-9-]*:[0-9]{12}:knowledge-base/[0-9a-zA-Z]+$" + "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#KnowledgeBaseConfiguration": { + "com.amazonaws.bedrockagent#ListPromptsResponse": { "type": "structure", "members": { - "type": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseType", + "promptSummaries": { + "target": "com.amazonaws.bedrockagent#PromptSummaries", "traits": { - "smithy.api#documentation": "

    The type of data that the data source is converted into for the knowledge base.

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

    A list, each member of which contains information about a prompt using Prompt management.

    ", "smithy.api#required": {} } }, - "vectorKnowledgeBaseConfiguration": { - "target": "com.amazonaws.bedrockagent#VectorKnowledgeBaseConfiguration", + "nextToken": { + "target": "com.amazonaws.bedrockagent#NextToken", "traits": { - "smithy.api#documentation": "

    Contains details about the embeddings model that'sused to convert the data source.

    " + "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " } } }, "traits": { - "smithy.api#documentation": "

    Contains details about the embeddings configuration of the knowledge base.

    " + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#KnowledgeBaseResource": { - "type": "resource", - "operations": [ - { - "target": "com.amazonaws.bedrockagent#AssociateAgentKnowledgeBase" - }, - { - "target": "com.amazonaws.bedrockagent#CreateKnowledgeBase" - }, - { - "target": "com.amazonaws.bedrockagent#DeleteKnowledgeBase" - }, - { - "target": "com.amazonaws.bedrockagent#DisassociateAgentKnowledgeBase" - }, + "com.amazonaws.bedrockagent#ListTagsForResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#ListTagsForResourceRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#ListTagsForResourceResponse" + }, + "errors": [ { - "target": "com.amazonaws.bedrockagent#GetAgentKnowledgeBase" + "target": "com.amazonaws.bedrockagent#AccessDeniedException" }, { - "target": "com.amazonaws.bedrockagent#GetKnowledgeBase" + "target": "com.amazonaws.bedrockagent#InternalServerException" }, { - "target": "com.amazonaws.bedrockagent#ListAgentKnowledgeBases" + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, { - "target": "com.amazonaws.bedrockagent#ListKnowledgeBases" + "target": "com.amazonaws.bedrockagent#ThrottlingException" }, { - "target": "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBase" + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    List all the tags for the resource you specify.

    ", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/tags/{resourceArn}" }, - { - "target": "com.amazonaws.bedrockagent#UpdateKnowledgeBase" + "smithy.api#readonly": {} + } + }, + "com.amazonaws.bedrockagent#ListTagsForResourceRequest": { + "type": "structure", + "members": { + "resourceArn": { + "target": "com.amazonaws.bedrockagent#TaggableResourcesArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the resource for which to list tags.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } } - ] + }, + "traits": { + "smithy.api#input": {} + } }, - "com.amazonaws.bedrockagent#KnowledgeBaseRoleArn": { - "type": "string", + "com.amazonaws.bedrockagent#ListTagsForResourceResponse": { + "type": "structure", + "members": { + "tags": { + "target": "com.amazonaws.bedrockagent#TagsMap", + "traits": { + "smithy.api#documentation": "

    The key-value pairs for the tags associated with the resource.

    " + } + } + }, "traits": { - "smithy.api#length": { - "max": 2048 - }, - "smithy.api#pattern": "^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/.+$" + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#KnowledgeBaseState": { - "type": "enum", + "com.amazonaws.bedrockagent#MaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.bedrockagent#MaximumLength": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 4096 + } + } + }, + "com.amazonaws.bedrockagent#MemoryConfiguration": { + "type": "structure", "members": { - "ENABLED": { - "target": "smithy.api#Unit", + "enabledMemoryTypes": { + "target": "com.amazonaws.bedrockagent#EnabledMemoryTypes", "traits": { - "smithy.api#enumValue": "ENABLED" + "smithy.api#documentation": "

    The type of memory that is stored.

    ", + "smithy.api#required": {} } }, - "DISABLED": { - "target": "smithy.api#Unit", + "storageDays": { + "target": "com.amazonaws.bedrockagent#StorageDays", "traits": { - "smithy.api#enumValue": "DISABLED" + "smithy.api#default": 30, + "smithy.api#documentation": "

    The number of days the agent is configured to retain the conversational context.

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

    Details of the memory configuration.

    " } }, - "com.amazonaws.bedrockagent#KnowledgeBaseStatus": { + "com.amazonaws.bedrockagent#MemoryType": { "type": "enum", "members": { - "CREATING": { + "SESSION_SUMMARY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "CREATING" + "smithy.api#enumValue": "SESSION_SUMMARY" + } + } + } + }, + "com.amazonaws.bedrockagent#Microsoft365TenantId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 36, + "max": 36 + }, + "smithy.api#pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" + } + }, + "com.amazonaws.bedrockagent#ModelIdentifier": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}(([:][a-z0-9-]{1,63}){0,2})?/[a-z0-9]{12})|(:foundation-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})))|(([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2}))|(([0-9a-zA-Z][_-]?)+)$" + } + }, + "com.amazonaws.bedrockagent#MongoDbAtlasCollectionName": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 63 + }, + "smithy.api#pattern": "^.*$" + } + }, + "com.amazonaws.bedrockagent#MongoDbAtlasConfiguration": { + "type": "structure", + "members": { + "endpoint": { + "target": "com.amazonaws.bedrockagent#MongoDbAtlasEndpoint", + "traits": { + "smithy.api#documentation": "

    The endpoint URL of your MongoDB Atlas cluster for your knowledge base.

    ", + "smithy.api#required": {} } }, - "ACTIVE": { - "target": "smithy.api#Unit", + "databaseName": { + "target": "com.amazonaws.bedrockagent#MongoDbAtlasDatabaseName", "traits": { - "smithy.api#enumValue": "ACTIVE" + "smithy.api#documentation": "

    The database name in your MongoDB Atlas cluster for your knowledge base.

    ", + "smithy.api#required": {} } }, - "DELETING": { - "target": "smithy.api#Unit", + "collectionName": { + "target": "com.amazonaws.bedrockagent#MongoDbAtlasCollectionName", "traits": { - "smithy.api#enumValue": "DELETING" + "smithy.api#documentation": "

    The collection name of the knowledge base in MongoDB Atlas.

    ", + "smithy.api#required": {} } }, - "UPDATING": { - "target": "smithy.api#Unit", + "vectorIndexName": { + "target": "com.amazonaws.bedrockagent#MongoDbAtlasIndexName", "traits": { - "smithy.api#enumValue": "UPDATING" + "smithy.api#documentation": "

    The name of the MongoDB Atlas vector search index.

    ", + "smithy.api#required": {} } }, - "FAILED": { - "target": "smithy.api#Unit", + "credentialsSecretArn": { + "target": "com.amazonaws.bedrockagent#SecretArn", "traits": { - "smithy.api#enumValue": "FAILED" + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that contains user credentials for your MongoDB Atlas cluster.

    ", + "smithy.api#required": {} } }, - "DELETE_UNSUCCESSFUL": { - "target": "smithy.api#Unit", + "fieldMapping": { + "target": "com.amazonaws.bedrockagent#MongoDbAtlasFieldMapping", "traits": { - "smithy.api#enumValue": "DELETE_UNSUCCESSFUL" + "smithy.api#documentation": "

    Contains the names of the fields to which to map information about the vector store.

    ", + "smithy.api#required": {} + } + }, + "endpointServiceName": { + "target": "com.amazonaws.bedrockagent#MongoDbAtlasEndpointServiceName", + "traits": { + "smithy.api#documentation": "

    The name of the VPC endpoint service in your account that is connected to your MongoDB Atlas cluster.

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

    Contains details about the storage configuration of the knowledge base in MongoDB Atlas.

    " } }, - "com.amazonaws.bedrockagent#KnowledgeBaseStorageType": { - "type": "enum", - "members": { - "OPENSEARCH_SERVERLESS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "OPENSEARCH_SERVERLESS" - } + "com.amazonaws.bedrockagent#MongoDbAtlasDatabaseName": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 63 }, - "PINECONE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "PINECONE" - } + "smithy.api#pattern": "^.*$" + } + }, + "com.amazonaws.bedrockagent#MongoDbAtlasEndpoint": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 }, - "REDIS_ENTERPRISE_CLOUD": { - "target": "smithy.api#Unit", + "smithy.api#pattern": "^.*$" + } + }, + "com.amazonaws.bedrockagent#MongoDbAtlasEndpointServiceName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^(?:arn:aws(?:-us-gov|-cn|-iso|-iso-[a-z])*:.+:.*:\\d+:.+/.+$|[a-zA-Z0-9*]+[a-zA-Z0-9._-]*)$" + } + }, + "com.amazonaws.bedrockagent#MongoDbAtlasFieldMapping": { + "type": "structure", + "members": { + "vectorField": { + "target": "com.amazonaws.bedrockagent#FieldName", "traits": { - "smithy.api#enumValue": "REDIS_ENTERPRISE_CLOUD" + "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    ", + "smithy.api#required": {} } }, - "RDS": { - "target": "smithy.api#Unit", + "textField": { + "target": "com.amazonaws.bedrockagent#FieldName", "traits": { - "smithy.api#enumValue": "RDS" + "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    ", + "smithy.api#required": {} } }, - "MONGO_DB_ATLAS": { - "target": "smithy.api#Unit", + "metadataField": { + "target": "com.amazonaws.bedrockagent#FieldName", "traits": { - "smithy.api#enumValue": "MONGO_DB_ATLAS" + "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

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

    Contains the names of the fields to which to map information about the vector store.

    " } }, - "com.amazonaws.bedrockagent#KnowledgeBaseSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseSummary" + "com.amazonaws.bedrockagent#MongoDbAtlasIndexName": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + }, + "smithy.api#pattern": "^.*$" } }, - "com.amazonaws.bedrockagent#KnowledgeBaseSummary": { + "com.amazonaws.bedrockagent#Name": { + "type": "string", + "traits": { + "smithy.api#pattern": "^([0-9a-zA-Z][_-]?){1,100}$" + } + }, + "com.amazonaws.bedrockagent#NextToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^\\S*$" + } + }, + "com.amazonaws.bedrockagent#NonBlankString": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[\\s\\S]+$" + } + }, + "com.amazonaws.bedrockagent#NumericalVersion": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[0-9]{1,5}$" + } + }, + "com.amazonaws.bedrockagent#OpenSearchServerlessCollectionArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws:aoss:[a-z]{2}(-gov)?-[a-z]+-\\d{1}:\\d{12}:collection/[a-z0-9-]{3,32}$" + } + }, + "com.amazonaws.bedrockagent#OpenSearchServerlessConfiguration": { "type": "structure", "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", - "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base.

    ", - "smithy.api#required": {} - } - }, - "name": { - "target": "com.amazonaws.bedrockagent#Name", + "collectionArn": { + "target": "com.amazonaws.bedrockagent#OpenSearchServerlessCollectionArn", "traits": { - "smithy.api#documentation": "

    The name of the knowledge base.

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

    The Amazon Resource Name (ARN) of the OpenSearch Service vector store.

    ", "smithy.api#required": {} } }, - "description": { - "target": "com.amazonaws.bedrockagent#Description", - "traits": { - "smithy.api#documentation": "

    The description of the knowledge base.

    " - } - }, - "status": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseStatus", + "vectorIndexName": { + "target": "com.amazonaws.bedrockagent#OpenSearchServerlessIndexName", "traits": { - "smithy.api#documentation": "

    The status of the knowledge base.

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

    The name of the vector store.

    ", "smithy.api#required": {} } }, - "updatedAt": { - "target": "com.amazonaws.bedrockagent#DateTimestamp", + "fieldMapping": { + "target": "com.amazonaws.bedrockagent#OpenSearchServerlessFieldMapping", "traits": { - "smithy.api#documentation": "

    The time at which the knowledge base was last updated.

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

    Contains the names of the fields to which to map information about the vector store.

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

    Contains details about a knowledge base.

    " + "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base in Amazon OpenSearch Service. For more information, see Create a vector index in Amazon OpenSearch Service.

    " } }, - "com.amazonaws.bedrockagent#KnowledgeBaseType": { - "type": "enum", + "com.amazonaws.bedrockagent#OpenSearchServerlessFieldMapping": { + "type": "structure", "members": { - "VECTOR": { - "target": "smithy.api#Unit", + "vectorField": { + "target": "com.amazonaws.bedrockagent#FieldName", "traits": { - "smithy.api#enumValue": "VECTOR" + "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    ", + "smithy.api#required": {} + } + }, + "textField": { + "target": "com.amazonaws.bedrockagent#FieldName", + "traits": { + "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    ", + "smithy.api#required": {} + } + }, + "metadataField": { + "target": "com.amazonaws.bedrockagent#FieldName", + "traits": { + "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

    ", + "smithy.api#required": {} } } - } - }, - "com.amazonaws.bedrockagent#LambdaArn": { - "type": "string", + }, "traits": { - "smithy.api#length": { - "max": 2048 - }, - "smithy.api#pattern": "^arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9-_\\.]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?$" + "smithy.api#documentation": "

    Contains the names of the fields to which to map information about the vector store.

    " } }, - "com.amazonaws.bedrockagent#ListAgentActionGroups": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#ListAgentActionGroupsRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#ListAgentActionGroupsResponse" - }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" - }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" - } - ], + "com.amazonaws.bedrockagent#OpenSearchServerlessIndexName": { + "type": "string", "traits": { - "smithy.api#documentation": "

    Lists the action groups for an agent and information about each one.

    ", - "smithy.api#http": { - "code": 200, - "method": "POST", - "uri": "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/" - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults", - "items": "actionGroupSummaries" + "smithy.api#length": { + "max": 2048 }, - "smithy.api#readonly": {}, - "smithy.api#tags": ["console"] + "smithy.api#pattern": "^.*$" } }, - "com.amazonaws.bedrockagent#ListAgentActionGroupsRequest": { + "com.amazonaws.bedrockagent#OutputFlowNodeConfiguration": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

    Contains configurations for an output flow node in the flow. You specify the data type expected for the input into the node in the type field and how to return the final output in the expression field.

    " + } + }, + "com.amazonaws.bedrockagent#ParameterDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 500 + } + } + }, + "com.amazonaws.bedrockagent#ParameterDetail": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "description": { + "target": "com.amazonaws.bedrockagent#ParameterDescription", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent.

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

    A description of the parameter. Helps the foundation model determine how to elicit the parameters from the user.

    " } }, - "agentVersion": { - "target": "com.amazonaws.bedrockagent#Version", + "type": { + "target": "com.amazonaws.bedrockagent#Type", "traits": { - "smithy.api#documentation": "

    The version of the agent.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The data type of the parameter.

    ", "smithy.api#required": {} } }, - "maxResults": { - "target": "com.amazonaws.bedrockagent#MaxResults", - "traits": { - "smithy.api#documentation": "

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " - } - }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "required": { + "target": "smithy.api#Boolean", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " + "smithy.api#documentation": "

    Whether the parameter is required for the agent to complete the function for action group invocation.

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

    Contains details about a parameter in a function for an action group.

    \n

    This data type is used in the following API operations:

    \n " } }, - "com.amazonaws.bedrockagent#ListAgentActionGroupsResponse": { + "com.amazonaws.bedrockagent#ParameterMap": { + "type": "map", + "key": { + "target": "com.amazonaws.bedrockagent#Name" + }, + "value": { + "target": "com.amazonaws.bedrockagent#ParameterDetail" + } + }, + "com.amazonaws.bedrockagent#ParsingConfiguration": { "type": "structure", "members": { - "actionGroupSummaries": { - "target": "com.amazonaws.bedrockagent#ActionGroupSummaries", + "parsingStrategy": { + "target": "com.amazonaws.bedrockagent#ParsingStrategy", "traits": { - "smithy.api#documentation": "

    A list of objects, each of which contains information about an action group.

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

    The parsing strategy for the data source.

    ", "smithy.api#required": {} } }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "bedrockFoundationModelConfiguration": { + "target": "com.amazonaws.bedrockagent#BedrockFoundationModelConfiguration", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " + "smithy.api#documentation": "

    Settings for a foundation model used to parse documents for a data source.

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

    Settings for parsing document contents. By default, the service converts the contents of each\n document into text before splitting it into chunks. To improve processing of PDF files with tables and images,\n you can configure the data source to convert the pages of text into images and use a model to describe the\n contents of each page.

    \n

    To use a model to parse PDF documents, set the parsing strategy to BEDROCK_FOUNDATION_MODEL and\n specify the model to use by ARN. You can also override the default parsing prompt with instructions for how\n to interpret images and tables in your documents. The following models are supported.

    \n
      \n
    • \n

      Anthropic Claude 3 Sonnet - anthropic.claude-3-sonnet-20240229-v1:0\n

      \n
    • \n
    • \n

      Anthropic Claude 3 Haiku - anthropic.claude-3-haiku-20240307-v1:0\n

      \n
    • \n
    \n

    You can get the ARN of a model with the action. Standard model usage\n charges apply for the foundation model parsing strategy.

    " } }, - "com.amazonaws.bedrockagent#ListAgentAliases": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#ListAgentAliasesRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#ListAgentAliasesResponse" - }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" - }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" + "com.amazonaws.bedrockagent#ParsingPrompt": { + "type": "structure", + "members": { + "parsingPromptText": { + "target": "com.amazonaws.bedrockagent#ParsingPromptText", + "traits": { + "smithy.api#documentation": "

    Instructions for interpreting the contents of a document.

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

    Lists the aliases of an agent and information about each one.

    ", - "smithy.api#http": { - "code": 200, - "method": "POST", - "uri": "/agents/{agentId}/agentaliases/" - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults", - "items": "agentAliasSummaries" - }, - "smithy.api#readonly": {}, - "smithy.api#tags": ["console"] + "smithy.api#documentation": "

    Instructions for interpreting the contents of a document.

    " } }, - "com.amazonaws.bedrockagent#ListAgentAliasesRequest": { + "com.amazonaws.bedrockagent#ParsingPromptText": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10000 + } + } + }, + "com.amazonaws.bedrockagent#ParsingStrategy": { + "type": "enum", + "members": { + "BEDROCK_FOUNDATION_MODEL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BEDROCK_FOUNDATION_MODEL" + } + } + } + }, + "com.amazonaws.bedrockagent#PatternObjectFilter": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "objectType": { + "target": "com.amazonaws.bedrockagent#FilteredObjectType", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The supported object type or content type of the data source.

    ", "smithy.api#required": {} } }, - "maxResults": { - "target": "com.amazonaws.bedrockagent#MaxResults", + "inclusionFilters": { + "target": "com.amazonaws.bedrockagent#FilterList", "traits": { - "smithy.api#documentation": "

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " + "smithy.api#documentation": "

    A list of one or more inclusion regular expression patterns to include certain \n object types that adhere to the pattern. If you specify an inclusion and exclusion \n filter/pattern and both match a document, the exclusion filter takes precedence \n and the document isn’t crawled.

    " } }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "exclusionFilters": { + "target": "com.amazonaws.bedrockagent#FilterList", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " + "smithy.api#documentation": "

    A list of one or more exclusion regular expression patterns to exclude certain \n object types that adhere to the pattern. If you specify an inclusion and exclusion \n filter/pattern and both match a document, the exclusion filter takes precedence \n and the document isn’t crawled.

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

    The specific filters applied to your data source content. You can filter out or \n include certain content.

    " } }, - "com.amazonaws.bedrockagent#ListAgentAliasesResponse": { + "com.amazonaws.bedrockagent#PatternObjectFilterConfiguration": { "type": "structure", "members": { - "agentAliasSummaries": { - "target": "com.amazonaws.bedrockagent#AgentAliasSummaries", + "filters": { + "target": "com.amazonaws.bedrockagent#PatternObjectFilterList", "traits": { - "smithy.api#documentation": "

    A list of objects, each of which contains information about an alias of the agent.

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

    The configuration of specific filters applied to your data source content. You can \n filter out or include certain content.

    ", "smithy.api#required": {} } - }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", - "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

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

    The configuration of filtering certain objects or content types of the data source.

    " } }, - "com.amazonaws.bedrockagent#ListAgentKnowledgeBases": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#ListAgentKnowledgeBasesRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#ListAgentKnowledgeBasesResponse" + "com.amazonaws.bedrockagent#PatternObjectFilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#PatternObjectFilter" }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" - }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" - } - ], "traits": { - "smithy.api#documentation": "

    Lists knowledge bases associated with an agent and information about each one.

    ", - "smithy.api#http": { - "code": 200, - "method": "POST", - "uri": "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/" - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults", - "items": "agentKnowledgeBaseSummaries" + "smithy.api#length": { + "min": 1, + "max": 25 }, - "smithy.api#readonly": {}, - "smithy.api#tags": ["console"] + "smithy.api#sensitive": {} } }, - "com.amazonaws.bedrockagent#ListAgentKnowledgeBasesRequest": { + "com.amazonaws.bedrockagent#Payload": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockagent#PineconeConfiguration": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "connectionString": { + "target": "com.amazonaws.bedrockagent#PineconeConnectionString", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent for which to return information about knowledge bases associated with it.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The endpoint URL for your index management page.

    ", "smithy.api#required": {} } }, - "agentVersion": { - "target": "com.amazonaws.bedrockagent#Version", + "credentialsSecretArn": { + "target": "com.amazonaws.bedrockagent#SecretArn", "traits": { - "smithy.api#documentation": "

    The version of the agent for which to return information about knowledge bases associated with it.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Pinecone API key.

    ", "smithy.api#required": {} } }, - "maxResults": { - "target": "com.amazonaws.bedrockagent#MaxResults", + "namespace": { + "target": "com.amazonaws.bedrockagent#PineconeNamespace", "traits": { - "smithy.api#documentation": "

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " + "smithy.api#documentation": "

    The namespace to be used to write new data to your database.

    " } }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "fieldMapping": { + "target": "com.amazonaws.bedrockagent#PineconeFieldMapping", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " + "smithy.api#documentation": "

    Contains the names of the fields to which to map information about the vector store.

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

    Contains details about the storage configuration of the knowledge base in Pinecone. For more information, see Create a vector index in Pinecone.

    " } }, - "com.amazonaws.bedrockagent#ListAgentKnowledgeBasesResponse": { + "com.amazonaws.bedrockagent#PineconeConnectionString": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + }, + "smithy.api#pattern": "^.*$" + } + }, + "com.amazonaws.bedrockagent#PineconeFieldMapping": { "type": "structure", "members": { - "agentKnowledgeBaseSummaries": { - "target": "com.amazonaws.bedrockagent#AgentKnowledgeBaseSummaries", + "textField": { + "target": "com.amazonaws.bedrockagent#FieldName", "traits": { - "smithy.api#documentation": "

    A list of objects, each of which contains information about a knowledge base associated with the agent.

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

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    ", "smithy.api#required": {} } }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "metadataField": { + "target": "com.amazonaws.bedrockagent#FieldName", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " + "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

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

    Contains the names of the fields to which to map information about the vector store.

    " } }, - "com.amazonaws.bedrockagent#ListAgentVersions": { + "com.amazonaws.bedrockagent#PineconeNamespace": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + }, + "smithy.api#pattern": "^.*$" + } + }, + "com.amazonaws.bedrockagent#PrepareAgent": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#ListAgentVersionsRequest" + "target": "com.amazonaws.bedrockagent#PrepareAgentRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#ListAgentVersionsResponse" + "target": "com.amazonaws.bedrockagent#PrepareAgentResponse" }, "errors": [ { "target": "com.amazonaws.bedrockagent#AccessDeniedException" }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, { "target": "com.amazonaws.bedrockagent#InternalServerException" }, { "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, + { + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" + }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" }, @@ -5392,64 +10054,60 @@ } ], "traits": { - "smithy.api#documentation": "

    Lists the versions of an agent and information about each version.

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

    Creates a DRAFT version of the agent that can be used for internal testing.

    ", "smithy.api#http": { - "code": 200, + "code": 202, "method": "POST", - "uri": "/agents/{agentId}/agentversions/" - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults", - "items": "agentVersionSummaries" + "uri": "/agents/{agentId}/" }, - "smithy.api#readonly": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#ListAgentVersionsRequest": { + "com.amazonaws.bedrockagent#PrepareAgentRequest": { "type": "structure", "members": { "agentId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent.

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

    The unique identifier of the agent for which to create a DRAFT version.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } - }, - "maxResults": { - "target": "com.amazonaws.bedrockagent#MaxResults", - "traits": { - "smithy.api#documentation": "

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " - } - }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", - "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " - } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#ListAgentVersionsResponse": { + "com.amazonaws.bedrockagent#PrepareAgentResponse": { "type": "structure", "members": { - "agentVersionSummaries": { - "target": "com.amazonaws.bedrockagent#AgentVersionSummaries", + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    A list of objects, each of which contains information about a version of the agent.

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

    The unique identifier of the agent for which the DRAFT version was created.

    ", "smithy.api#required": {} } }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "agentStatus": { + "target": "com.amazonaws.bedrockagent#AgentStatus", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " + "smithy.api#documentation": "

    The status of the DRAFT version and whether it is ready for use.

    ", + "smithy.api#required": {} + } + }, + "agentVersion": { + "target": "com.amazonaws.bedrockagent#Version", + "traits": { + "smithy.api#documentation": "

    The version of the agent.

    ", + "smithy.api#required": {} + } + }, + "preparedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the DRAFT version of the agent was last prepared.

    ", + "smithy.api#required": {} } } }, @@ -5457,21 +10115,30 @@ "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#ListAgents": { + "com.amazonaws.bedrockagent#PrepareFlow": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#ListAgentsRequest" + "target": "com.amazonaws.bedrockagent#PrepareFlowRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#ListAgentsResponse" + "target": "com.amazonaws.bedrockagent#PrepareFlowResponse" }, "errors": [ { "target": "com.amazonaws.bedrockagent#AccessDeniedException" }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, { "target": "com.amazonaws.bedrockagent#InternalServerException" }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" + }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" }, @@ -5480,35 +10147,24 @@ } ], "traits": { - "smithy.api#documentation": "

    Lists the agents belonging to an account and information about each agent.

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

    Prepares the DRAFT version of a flow so that it can be invoked. For more information, see Test a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", "smithy.api#http": { - "code": 200, + "code": 202, "method": "POST", - "uri": "/agents/" - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults", - "items": "agentSummaries" + "uri": "/flows/{flowIdentifier}/" }, - "smithy.api#readonly": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#ListAgentsRequest": { + "com.amazonaws.bedrockagent#PrepareFlowRequest": { "type": "structure", "members": { - "maxResults": { - "target": "com.amazonaws.bedrockagent#MaxResults", - "traits": { - "smithy.api#documentation": "

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " - } - }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } } }, @@ -5516,20 +10172,21 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#ListAgentsResponse": { + "com.amazonaws.bedrockagent#PrepareFlowResponse": { "type": "structure", "members": { - "agentSummaries": { - "target": "com.amazonaws.bedrockagent#AgentSummaries", + "id": { + "target": "com.amazonaws.bedrockagent#FlowId", "traits": { - "smithy.api#documentation": "

    A list of objects, each of which contains information about an agent.

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

    The unique identifier of the flow.

    ", "smithy.api#required": {} } }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "status": { + "target": "com.amazonaws.bedrockagent#FlowStatus", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " + "smithy.api#documentation": "

    The status of the flow. When you submit this request, the status will be NotPrepared. If preparation succeeds, the status becomes Prepared. If it fails, the status becomes FAILED.

    ", + "smithy.api#required": {} } } }, @@ -5537,493 +10194,619 @@ "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#ListDataSources": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#ListDataSourcesRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#ListDataSourcesResponse" - }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" + "com.amazonaws.bedrockagent#PromptArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^(arn:aws:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10}(?::[0-9]{1,5})?)$" + } + }, + "com.amazonaws.bedrockagent#PromptConfiguration": { + "type": "structure", + "members": { + "promptType": { + "target": "com.amazonaws.bedrockagent#PromptType", + "traits": { + "smithy.api#documentation": "

    The step in the agent sequence that this prompt configuration applies to.

    " + } }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" + "promptCreationMode": { + "target": "com.amazonaws.bedrockagent#CreationMode", + "traits": { + "smithy.api#documentation": "

    Specifies whether to override the default prompt template for this promptType. Set this value to OVERRIDDEN to use the prompt that you provide in the basePromptTemplate. If you leave it as DEFAULT, the agent uses a default prompt template.

    " + } }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + "promptState": { + "target": "com.amazonaws.bedrockagent#PromptState", + "traits": { + "smithy.api#documentation": "

    Specifies whether to allow the agent to carry out the step specified in the promptType. If you set this value to DISABLED, the agent skips that step. The default state for each promptType is as follows.

    \n
      \n
    • \n

      \n PRE_PROCESSINGENABLED\n

      \n
    • \n
    • \n

      \n ORCHESTRATIONENABLED\n

      \n
    • \n
    • \n

      \n KNOWLEDGE_BASE_RESPONSE_GENERATIONENABLED\n

      \n
    • \n
    • \n

      \n POST_PROCESSINGDISABLED\n

      \n
    • \n
    " + } }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" + "basePromptTemplate": { + "target": "com.amazonaws.bedrockagent#BasePromptTemplate", + "traits": { + "smithy.api#documentation": "

    Defines the prompt template with which to replace the default prompt template. You can use placeholder variables in the base prompt template to customize the prompt. For more information, see Prompt template placeholder variables. For more information, see Configure the prompt templates.

    " + } }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" + "inferenceConfiguration": { + "target": "com.amazonaws.bedrockagent#InferenceConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the promptType. For more information, see Inference parameters for foundation models.

    " + } + }, + "parserMode": { + "target": "com.amazonaws.bedrockagent#CreationMode", + "traits": { + "smithy.api#documentation": "

    Specifies whether to override the default parser Lambda function when parsing the raw foundation model output in the part of the agent sequence defined by the promptType. If you set the field as OVERRIDEN, the overrideLambda field in the PromptOverrideConfiguration must be specified with the ARN of a Lambda function.

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

    Lists the data sources in a knowledge base and information about each one.

    ", - "smithy.api#http": { - "code": 200, - "method": "POST", - "uri": "/knowledgebases/{knowledgeBaseId}/datasources/" + "smithy.api#documentation": "

    Contains configurations to override a prompt template in one part of an agent sequence. For more information, see Advanced prompts.

    " + } + }, + "com.amazonaws.bedrockagent#PromptConfigurations": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#PromptConfiguration" + }, + "traits": { + "smithy.api#length": { + "max": 10 + } + } + }, + "com.amazonaws.bedrockagent#PromptDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 200 + } + } + }, + "com.amazonaws.bedrockagent#PromptFlowNodeConfiguration": { + "type": "structure", + "members": { + "sourceConfiguration": { + "target": "com.amazonaws.bedrockagent#PromptFlowNodeSourceConfiguration", + "traits": { + "smithy.api#documentation": "

    Specifies whether the prompt is from Prompt management or defined inline.

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

    Contains configurations for a prompt node in the flow. You can use a prompt from Prompt management or you can define one in this node. If the prompt contains variables, the inputs into this node will fill in the variables. The output from this node is the response generated by the model. For more information, see Node types in Amazon Bedrock works in the Amazon Bedrock User Guide.

    " + } + }, + "com.amazonaws.bedrockagent#PromptFlowNodeInlineConfiguration": { + "type": "structure", + "members": { + "templateType": { + "target": "com.amazonaws.bedrockagent#PromptTemplateType", + "traits": { + "smithy.api#documentation": "

    The type of prompt template.

    ", + "smithy.api#required": {} + } }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults", - "items": "dataSourceSummaries" + "templateConfiguration": { + "target": "com.amazonaws.bedrockagent#PromptTemplateConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains a prompt and variables in the prompt that can be replaced with values at runtime.

    ", + "smithy.api#required": {} + } }, - "smithy.api#readonly": {}, - "smithy.api#tags": ["console"] + "modelId": { + "target": "com.amazonaws.bedrockagent#PromptModelIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the model to run inference with.

    ", + "smithy.api#required": {} + } + }, + "inferenceConfiguration": { + "target": "com.amazonaws.bedrockagent#PromptInferenceConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains inference configurations for the prompt.

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

    Contains configurations for a prompt defined inline in the node.

    " } }, - "com.amazonaws.bedrockagent#ListDataSourcesRequest": { + "com.amazonaws.bedrockagent#PromptFlowNodeResourceConfiguration": { "type": "structure", "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "promptArn": { + "target": "com.amazonaws.bedrockagent#PromptArn", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base for which to return a list of information.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the prompt from Prompt management.

    ", "smithy.api#required": {} } - }, - "maxResults": { - "target": "com.amazonaws.bedrockagent#MaxResults", + } + }, + "traits": { + "smithy.api#documentation": "

    Contains configurations for a prompt from Prompt management to use in a node.

    " + } + }, + "com.amazonaws.bedrockagent#PromptFlowNodeSourceConfiguration": { + "type": "union", + "members": { + "resource": { + "target": "com.amazonaws.bedrockagent#PromptFlowNodeResourceConfiguration", "traits": { - "smithy.api#documentation": "

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " + "smithy.api#documentation": "

    Contains configurations for a prompt from Prompt management.

    " } }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "inline": { + "target": "com.amazonaws.bedrockagent#PromptFlowNodeInlineConfiguration", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " + "smithy.api#documentation": "

    Contains configurations for a prompt that is defined inline

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

    Contains configurations for a prompt and whether it is from Prompt management or defined inline.

    " } }, - "com.amazonaws.bedrockagent#ListDataSourcesResponse": { - "type": "structure", + "com.amazonaws.bedrockagent#PromptId": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[0-9a-zA-Z]{10}$" + } + }, + "com.amazonaws.bedrockagent#PromptIdentifier": { + "type": "string", + "traits": { + "smithy.api#pattern": "^([0-9a-zA-Z]{10})|(arn:aws:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10})(?::[0-9]{1,5})?$" + } + }, + "com.amazonaws.bedrockagent#PromptInferenceConfiguration": { + "type": "union", "members": { - "dataSourceSummaries": { - "target": "com.amazonaws.bedrockagent#DataSourceSummaries", + "text": { + "target": "com.amazonaws.bedrockagent#PromptModelInferenceConfiguration", "traits": { - "smithy.api#documentation": "

    A list of objects, each of which contains information about a data source.

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

    Contains inference configurations for a text prompt.

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

    Contains inference configurations for the prompt.

    " + } + }, + "com.amazonaws.bedrockagent#PromptInputVariable": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#PromptInputVariableName", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " + "smithy.api#documentation": "

    The name of the variable.

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

    Contains information about a variable in the prompt.

    " } }, - "com.amazonaws.bedrockagent#ListIngestionJobs": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#ListIngestionJobsRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#ListIngestionJobsResponse" + "com.amazonaws.bedrockagent#PromptInputVariableName": { + "type": "string", + "traits": { + "smithy.api#pattern": "^([0-9a-zA-Z][_-]?){1,100}$" + } + }, + "com.amazonaws.bedrockagent#PromptInputVariablesList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#PromptInputVariable" }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" - }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" - } - ], "traits": { - "smithy.api#documentation": "

    Lists the ingestion jobs for a data source and information about each of them.

    ", - "smithy.api#http": { - "code": 200, - "method": "POST", - "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/" + "smithy.api#length": { + "max": 5 }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults", - "items": "ingestionJobSummaries" + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockagent#PromptModelIdentifier": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 }, - "smithy.api#readonly": {}, - "smithy.api#tags": ["console"] + "smithy.api#pattern": "^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}/[a-z0-9]{12})|(:foundation-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.:]?[a-z0-9-]{1,63}))|([0-9]{12}:provisioned-model/[a-z0-9]{12})))|([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.:]?[a-z0-9-]{1,63}))|(([0-9a-zA-Z][_-]?)+)$" } }, - "com.amazonaws.bedrockagent#ListIngestionJobsRequest": { + "com.amazonaws.bedrockagent#PromptModelInferenceConfiguration": { "type": "structure", "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", - "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base for which to return ingestion jobs.

    ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "dataSourceId": { - "target": "com.amazonaws.bedrockagent#Id", + "temperature": { + "target": "com.amazonaws.bedrockagent#Temperature", "traits": { - "smithy.api#documentation": "

    The unique identifier of the data source for which to return ingestion jobs.

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

    Controls the randomness of the response. Choose a lower value for more predictable outputs and a higher value for more surprising outputs.

    " } }, - "filters": { - "target": "com.amazonaws.bedrockagent#IngestionJobFilters", + "topP": { + "target": "com.amazonaws.bedrockagent#TopP", "traits": { - "smithy.api#documentation": "

    Contains a definition of a filter for which to filter the results.

    " + "smithy.api#documentation": "

    The percentage of most-likely candidates that the model considers for the next token.

    " } }, - "sortBy": { - "target": "com.amazonaws.bedrockagent#IngestionJobSortBy", + "topK": { + "target": "com.amazonaws.bedrockagent#TopK", "traits": { - "smithy.api#documentation": "

    Contains details about how to sort the results.

    " + "smithy.api#documentation": "

    The number of most-likely candidates that the model considers for the next token during generation.

    " } }, - "maxResults": { - "target": "com.amazonaws.bedrockagent#MaxResults", + "maxTokens": { + "target": "com.amazonaws.bedrockagent#MaximumLength", "traits": { - "smithy.api#documentation": "

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " + "smithy.api#documentation": "

    The maximum number of tokens to return in the response.

    " } }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "stopSequences": { + "target": "com.amazonaws.bedrockagent#StopSequences", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " + "smithy.api#documentation": "

    A list of strings that define sequences after which the model will stop generating.

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

    Contains inference configurations related to model inference for a prompt. For more information, see Inference parameters.

    " } }, - "com.amazonaws.bedrockagent#ListIngestionJobsResponse": { + "com.amazonaws.bedrockagent#PromptName": { + "type": "string", + "traits": { + "smithy.api#pattern": "^([0-9a-zA-Z][_-]?){1,100}$" + } + }, + "com.amazonaws.bedrockagent#PromptOverrideConfiguration": { "type": "structure", "members": { - "ingestionJobSummaries": { - "target": "com.amazonaws.bedrockagent#IngestionJobSummaries", + "promptConfigurations": { + "target": "com.amazonaws.bedrockagent#PromptConfigurations", "traits": { - "smithy.api#documentation": "

    A list of objects, each of which contains information about an ingestion job.

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

    Contains configurations to override a prompt template in one part of an agent sequence. For more information, see Advanced prompts.

    ", "smithy.api#required": {} } }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "overrideLambda": { + "target": "com.amazonaws.bedrockagent#LambdaArn", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " + "smithy.api#documentation": "

    The ARN of the Lambda function to use when parsing the raw foundation model output in parts of the agent sequence. If you specify this field, at least one of the promptConfigurations must contain a parserMode value that is set to OVERRIDDEN. For more information, see Parser Lambda function in Agents for Amazon Bedrock.

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

    Contains configurations to override prompts in different parts of an agent sequence. For more information, see Advanced prompts.

    ", + "smithy.api#sensitive": {} } }, - "com.amazonaws.bedrockagent#ListKnowledgeBases": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#ListKnowledgeBasesRequest" + "com.amazonaws.bedrockagent#PromptResource": { + "type": "resource", + "identifiers": { + "promptIdentifier": { + "target": "com.amazonaws.bedrockagent#PromptIdentifier" + } }, - "output": { - "target": "com.amazonaws.bedrockagent#ListKnowledgeBasesResponse" + "create": { + "target": "com.amazonaws.bedrockagent#CreatePrompt" }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" - }, + "read": { + "target": "com.amazonaws.bedrockagent#GetPrompt" + }, + "update": { + "target": "com.amazonaws.bedrockagent#UpdatePrompt" + }, + "delete": { + "target": "com.amazonaws.bedrockagent#DeletePrompt" + }, + "list": { + "target": "com.amazonaws.bedrockagent#ListPrompts" + }, + "operations": [ { - "target": "com.amazonaws.bedrockagent#ValidationException" + "target": "com.amazonaws.bedrockagent#CreatePromptVersion" } ], "traits": { - "smithy.api#documentation": "

    Lists the knowledge bases in an account and information about each of them.

    ", - "smithy.api#http": { - "code": 200, - "method": "POST", - "uri": "/knowledgebases/" - }, - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "pageSize": "maxResults", - "items": "knowledgeBaseSummaries" + "aws.cloudformation#cfnResource": { + "name": "Prompt" + } + } + }, + "com.amazonaws.bedrockagent#PromptState": { + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } }, - "smithy.api#readonly": {}, - "smithy.api#tags": ["console"] + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + } } }, - "com.amazonaws.bedrockagent#ListKnowledgeBasesRequest": { + "com.amazonaws.bedrockagent#PromptSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#PromptSummary" + }, + "traits": { + "smithy.api#length": { + "max": 10 + } + } + }, + "com.amazonaws.bedrockagent#PromptSummary": { "type": "structure", "members": { - "maxResults": { - "target": "com.amazonaws.bedrockagent#MaxResults", + "name": { + "target": "com.amazonaws.bedrockagent#PromptName", "traits": { - "smithy.api#documentation": "

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

    " + "smithy.api#documentation": "

    The name of the prompt.

    ", + "smithy.api#required": {} } }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "description": { + "target": "com.amazonaws.bedrockagent#PromptDescription", + "traits": { + "smithy.api#documentation": "

    The description of the prompt.

    " + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#PromptId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the prompt.

    ", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.bedrockagent#PromptArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the prompt.

    ", + "smithy.api#required": {} + } + }, + "version": { + "target": "com.amazonaws.bedrockagent#Version", + "traits": { + "smithy.api#documentation": "

    The version of the prompt that this summary applies to.

    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the prompt was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

    " + "smithy.api#documentation": "

    The time at which the prompt was last updated.

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

    Contains information about a prompt in your Prompt management tool.

    \n

    This data type is used in the following API operations:

    \n " } }, - "com.amazonaws.bedrockagent#ListKnowledgeBasesResponse": { - "type": "structure", + "com.amazonaws.bedrockagent#PromptTemplateConfiguration": { + "type": "union", "members": { - "knowledgeBaseSummaries": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseSummaries", - "traits": { - "smithy.api#documentation": "

    A list of objects, each of which contains information about a knowledge base.

    ", - "smithy.api#required": {} - } - }, - "nextToken": { - "target": "com.amazonaws.bedrockagent#NextToken", + "text": { + "target": "com.amazonaws.bedrockagent#TextPromptTemplateConfiguration", "traits": { - "smithy.api#documentation": "

    If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

    " + "smithy.api#documentation": "

    Contains configurations for the text in a message for a prompt.

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

    Contains the message for a prompt. For more information, see Prompt management in Amazon Bedrock.

    " } }, - "com.amazonaws.bedrockagent#ListTagsForResource": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#ListTagsForResourceRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#ListTagsForResourceResponse" - }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" - }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" + "com.amazonaws.bedrockagent#PromptTemplateType": { + "type": "enum", + "members": { + "TEXT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TEXT" + } } - ], - "traits": { - "smithy.api#documentation": "

    List all the tags for the resource you specify.

    ", - "smithy.api#http": { - "code": 200, - "method": "GET", - "uri": "/tags/{resourceArn}" - }, - "smithy.api#readonly": {} } }, - "com.amazonaws.bedrockagent#ListTagsForResourceRequest": { - "type": "structure", + "com.amazonaws.bedrockagent#PromptType": { + "type": "enum", "members": { - "resourceArn": { - "target": "com.amazonaws.bedrockagent#TaggableResourcesArn", + "PRE_PROCESSING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the resource for which to list tags.

    ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "PRE_PROCESSING" + } + }, + "ORCHESTRATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ORCHESTRATION" + } + }, + "POST_PROCESSING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "POST_PROCESSING" + } + }, + "KNOWLEDGE_BASE_RESPONSE_GENERATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KNOWLEDGE_BASE_RESPONSE_GENERATION" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#ListTagsForResourceResponse": { + "com.amazonaws.bedrockagent#PromptVariant": { "type": "structure", "members": { - "tags": { - "target": "com.amazonaws.bedrockagent#TagsMap", + "name": { + "target": "com.amazonaws.bedrockagent#PromptVariantName", "traits": { - "smithy.api#documentation": "

    The key-value pairs for the tags associated with the resource.

    " + "smithy.api#documentation": "

    The name of the prompt variant.

    ", + "smithy.api#required": {} + } + }, + "templateType": { + "target": "com.amazonaws.bedrockagent#PromptTemplateType", + "traits": { + "smithy.api#documentation": "

    The type of prompt template to use.

    ", + "smithy.api#required": {} + } + }, + "templateConfiguration": { + "target": "com.amazonaws.bedrockagent#PromptTemplateConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for the prompt template.

    " + } + }, + "modelId": { + "target": "com.amazonaws.bedrockagent#PromptModelIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the model with which to run inference on the prompt.

    " + } + }, + "inferenceConfiguration": { + "target": "com.amazonaws.bedrockagent#PromptInferenceConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains inference configurations for the prompt variant.

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

    Contains details about a variant of the prompt.

    ", + "smithy.api#sensitive": {} } }, - "com.amazonaws.bedrockagent#MaxResults": { - "type": "integer", + "com.amazonaws.bedrockagent#PromptVariantList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#PromptVariant" + }, "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 - } + "smithy.api#length": { + "max": 3 + }, + "smithy.api#sensitive": {} } }, - "com.amazonaws.bedrockagent#MaximumLength": { - "type": "integer", + "com.amazonaws.bedrockagent#PromptVariantName": { + "type": "string", "traits": { - "smithy.api#range": { - "min": 0, - "max": 4096 - } + "smithy.api#pattern": "^([0-9a-zA-Z][_-]?){1,100}$" } }, - "com.amazonaws.bedrockagent#ModelIdentifier": { + "com.amazonaws.bedrockagent#ProvisionedModelIdentifier": { "type": "string", "traits": { "smithy.api#length": { "min": 1, "max": 2048 }, - "smithy.api#pattern": "^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}(([:][a-z0-9-]{1,63}){0,2})?/[a-z0-9]{12})|(:foundation-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})))|(([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2}))|(([0-9a-zA-Z][_-]?)+)$" + "smithy.api#pattern": "^((([0-9a-zA-Z][_-]?){1,63})|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:provisioned-model/[a-z0-9]{12}))$" } }, - "com.amazonaws.bedrockagent#MongoDbAtlasCollectionName": { + "com.amazonaws.bedrockagent#RdsArn": { "type": "string", "traits": { - "smithy.api#length": { - "max": 63 - }, - "smithy.api#pattern": "^.*$" + "smithy.api#pattern": "^arn:aws(|-cn|-us-gov):rds:[a-zA-Z0-9-]*:[0-9]{12}:cluster:[a-zA-Z0-9-]{1,63}$" } }, - "com.amazonaws.bedrockagent#MongoDbAtlasConfiguration": { + "com.amazonaws.bedrockagent#RdsConfiguration": { "type": "structure", "members": { - "endpoint": { - "target": "com.amazonaws.bedrockagent#MongoDbAtlasEndpoint", - "traits": { - "smithy.api#documentation": "

    The endpoint URL of your MongoDB Atlas cluster for your knowledge base.

    ", - "smithy.api#required": {} - } - }, - "databaseName": { - "target": "com.amazonaws.bedrockagent#MongoDbAtlasDatabaseName", + "resourceArn": { + "target": "com.amazonaws.bedrockagent#RdsArn", "traits": { - "smithy.api#documentation": "

    The database name in your MongoDB Atlas cluster for your knowledge base.

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

    The Amazon Resource Name (ARN) of the vector store.

    ", "smithy.api#required": {} } }, - "collectionName": { - "target": "com.amazonaws.bedrockagent#MongoDbAtlasCollectionName", + "credentialsSecretArn": { + "target": "com.amazonaws.bedrockagent#SecretArn", "traits": { - "smithy.api#documentation": "

    The collection name of the knowledge base in MongoDB Atlas.

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

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Amazon RDS database.

    ", "smithy.api#required": {} } }, - "vectorIndexName": { - "target": "com.amazonaws.bedrockagent#MongoDbAtlasIndexName", + "databaseName": { + "target": "com.amazonaws.bedrockagent#RdsDatabaseName", "traits": { - "smithy.api#documentation": "

    The name of the MongoDB Atlas vector search index.

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

    The name of your Amazon RDS database.

    ", "smithy.api#required": {} } }, - "credentialsSecretArn": { - "target": "com.amazonaws.bedrockagent#SecretArn", + "tableName": { + "target": "com.amazonaws.bedrockagent#RdsTableName", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that contains user credentials for your MongoDB Atlas cluster.

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

    The name of the table in the database.

    ", "smithy.api#required": {} } }, "fieldMapping": { - "target": "com.amazonaws.bedrockagent#MongoDbAtlasFieldMapping", + "target": "com.amazonaws.bedrockagent#RdsFieldMapping", "traits": { "smithy.api#documentation": "

    Contains the names of the fields to which to map information about the vector store.

    ", "smithy.api#required": {} } - }, - "endpointServiceName": { - "target": "com.amazonaws.bedrockagent#MongoDbAtlasEndpointServiceName", - "traits": { - "smithy.api#documentation": "

    The name of the VPC endpoint service in your account that is connected to your MongoDB Atlas cluster.

    " - } } }, "traits": { - "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base in MongoDB Atlas.

    " + "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see Create a vector index in Amazon RDS.

    " } }, - "com.amazonaws.bedrockagent#MongoDbAtlasDatabaseName": { + "com.amazonaws.bedrockagent#RdsDatabaseName": { "type": "string", "traits": { "smithy.api#length": { "max": 63 }, - "smithy.api#pattern": "^.*$" - } - }, - "com.amazonaws.bedrockagent#MongoDbAtlasEndpoint": { - "type": "string", - "traits": { - "smithy.api#length": { - "max": 2048 - }, - "smithy.api#pattern": "^.*$" - } - }, - "com.amazonaws.bedrockagent#MongoDbAtlasEndpointServiceName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 255 - }, - "smithy.api#pattern": "^(?:arn:aws(?:-us-gov|-cn|-iso|-iso-[a-z])*:.+:.*:\\d+:.+/.+$|[a-zA-Z0-9*]+[a-zA-Z0-9._-]*)$" + "smithy.api#pattern": "^[a-zA-Z0-9_\\-]+$" } }, - "com.amazonaws.bedrockagent#MongoDbAtlasFieldMapping": { + "com.amazonaws.bedrockagent#RdsFieldMapping": { "type": "structure", "members": { + "primaryKeyField": { + "target": "com.amazonaws.bedrockagent#ColumnName", + "traits": { + "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the ID for each entry.

    ", + "smithy.api#required": {} + } + }, "vectorField": { - "target": "com.amazonaws.bedrockagent#FieldName", + "target": "com.amazonaws.bedrockagent#ColumnName", "traits": { "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    ", "smithy.api#required": {} } }, "textField": { - "target": "com.amazonaws.bedrockagent#FieldName", + "target": "com.amazonaws.bedrockagent#ColumnName", "traits": { "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    ", "smithy.api#required": {} } }, "metadataField": { - "target": "com.amazonaws.bedrockagent#FieldName", + "target": "com.amazonaws.bedrockagent#ColumnName", "traits": { "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

    ", "smithy.api#required": {} @@ -6034,71 +10817,60 @@ "smithy.api#documentation": "

    Contains the names of the fields to which to map information about the vector store.

    " } }, - "com.amazonaws.bedrockagent#MongoDbAtlasIndexName": { + "com.amazonaws.bedrockagent#RdsTableName": { "type": "string", "traits": { "smithy.api#length": { - "max": 2048 + "max": 63 }, - "smithy.api#pattern": "^.*$" - } - }, - "com.amazonaws.bedrockagent#Name": { - "type": "string", - "traits": { - "smithy.api#pattern": "^([0-9a-zA-Z][_-]?){1,100}$" + "smithy.api#pattern": "^[a-zA-Z0-9_\\.\\-]+$" } }, - "com.amazonaws.bedrockagent#NextToken": { + "com.amazonaws.bedrockagent#RecommendedAction": { "type": "string", "traits": { "smithy.api#length": { - "min": 1, "max": 2048 - }, - "smithy.api#pattern": "^\\S*$" - } - }, - "com.amazonaws.bedrockagent#NonBlankString": { - "type": "string", - "traits": { - "smithy.api#pattern": "^[\\s\\S]+$" - } - }, - "com.amazonaws.bedrockagent#NumericalVersion": { - "type": "string", - "traits": { - "smithy.api#pattern": "^[0-9]{1,5}$" + } } }, - "com.amazonaws.bedrockagent#OpenSearchServerlessCollectionArn": { - "type": "string", + "com.amazonaws.bedrockagent#RecommendedActions": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#RecommendedAction" + }, "traits": { "smithy.api#length": { "max": 2048 - }, - "smithy.api#pattern": "^arn:aws:aoss:[a-z]{2}(-gov)?-[a-z]+-\\d{1}:\\d{12}:collection/[a-z0-9-]{3,32}$" + } } }, - "com.amazonaws.bedrockagent#OpenSearchServerlessConfiguration": { + "com.amazonaws.bedrockagent#RedisEnterpriseCloudConfiguration": { "type": "structure", "members": { - "collectionArn": { - "target": "com.amazonaws.bedrockagent#OpenSearchServerlessCollectionArn", + "endpoint": { + "target": "com.amazonaws.bedrockagent#RedisEnterpriseCloudEndpoint", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the OpenSearch Service vector store.

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

    The endpoint URL of the Redis Enterprise Cloud database.

    ", "smithy.api#required": {} } }, "vectorIndexName": { - "target": "com.amazonaws.bedrockagent#OpenSearchServerlessIndexName", + "target": "com.amazonaws.bedrockagent#RedisEnterpriseCloudIndexName", "traits": { - "smithy.api#documentation": "

    The name of the vector store.

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

    The name of the vector index.

    ", + "smithy.api#required": {} + } + }, + "credentialsSecretArn": { + "target": "com.amazonaws.bedrockagent#SecretArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Redis Enterprise Cloud database.

    ", "smithy.api#required": {} } }, "fieldMapping": { - "target": "com.amazonaws.bedrockagent#OpenSearchServerlessFieldMapping", + "target": "com.amazonaws.bedrockagent#RedisEnterpriseCloudFieldMapping", "traits": { "smithy.api#documentation": "

    Contains the names of the fields to which to map information about the vector store.

    ", "smithy.api#required": {} @@ -6106,10 +10878,19 @@ } }, "traits": { - "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base in Amazon OpenSearch Service. For more information, see Create a vector index in Amazon OpenSearch Service.

    " + "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base in Redis Enterprise Cloud. For more information, see Create a vector index in Redis Enterprise Cloud.

    " } }, - "com.amazonaws.bedrockagent#OpenSearchServerlessFieldMapping": { + "com.amazonaws.bedrockagent#RedisEnterpriseCloudEndpoint": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + }, + "smithy.api#pattern": "^.*$" + } + }, + "com.amazonaws.bedrockagent#RedisEnterpriseCloudFieldMapping": { "type": "structure", "members": { "vectorField": { @@ -6138,7 +10919,7 @@ "smithy.api#documentation": "

    Contains the names of the fields to which to map information about the vector store.

    " } }, - "com.amazonaws.bedrockagent#OpenSearchServerlessIndexName": { + "com.amazonaws.bedrockagent#RedisEnterpriseCloudIndexName": { "type": "string", "traits": { "smithy.api#length": { @@ -6147,695 +10928,904 @@ "smithy.api#pattern": "^.*$" } }, - "com.amazonaws.bedrockagent#ParameterDescription": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 500 + "com.amazonaws.bedrockagent#ResourceNotFoundException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.bedrockagent#NonBlankString" } + }, + "traits": { + "smithy.api#documentation": "

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

    ", + "smithy.api#error": "client", + "smithy.api#httpError": 404 } }, - "com.amazonaws.bedrockagent#ParameterDetail": { + "com.amazonaws.bedrockagent#RetrievalFlowNodeConfiguration": { "type": "structure", "members": { - "description": { - "target": "com.amazonaws.bedrockagent#ParameterDescription", + "serviceConfiguration": { + "target": "com.amazonaws.bedrockagent#RetrievalFlowNodeServiceConfiguration", "traits": { - "smithy.api#documentation": "

    A description of the parameter. Helps the foundation model determine how to elicit the parameters from the user.

    " + "smithy.api#documentation": "

    Contains configurations for the service to use for retrieving data to return as the output from the node.

    ", + "smithy.api#required": {} } - }, - "type": { - "target": "com.amazonaws.bedrockagent#Type", + } + }, + "traits": { + "smithy.api#documentation": "

    Contains configurations for a Retrieval node in a flow. This node retrieves data from the Amazon S3 location that you specify and returns it as the output.

    " + } + }, + "com.amazonaws.bedrockagent#RetrievalFlowNodeS3Configuration": { + "type": "structure", + "members": { + "bucketName": { + "target": "com.amazonaws.bedrockagent#S3BucketName", "traits": { - "smithy.api#documentation": "

    The data type of the parameter.

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

    The name of the Amazon S3 bucket from which to retrieve data.

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

    Contains configurations for the Amazon S3 location from which to retrieve data to return as the output from the node.

    " + } + }, + "com.amazonaws.bedrockagent#RetrievalFlowNodeServiceConfiguration": { + "type": "union", + "members": { + "s3": { + "target": "com.amazonaws.bedrockagent#RetrievalFlowNodeS3Configuration", "traits": { - "smithy.api#documentation": "

    Whether the parameter is required for the agent to complete the function for action group invocation.

    " + "smithy.api#documentation": "

    Contains configurations for the Amazon S3 location from which to retrieve data to return as the output from the node.

    " } } }, "traits": { - "smithy.api#documentation": "

    Contains details about a parameter in a function for an action group.

    \n

    This data type is used in the following API operations:

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

    Contains configurations for the service to use for retrieving data to return as the output from the node.

    " } }, - "com.amazonaws.bedrockagent#ParameterMap": { - "type": "map", - "key": { - "target": "com.amazonaws.bedrockagent#Name" - }, - "value": { - "target": "com.amazonaws.bedrockagent#ParameterDetail" + "com.amazonaws.bedrockagent#S3BucketArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(|-cn|-us-gov):s3:::[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$" } }, - "com.amazonaws.bedrockagent#Payload": { + "com.amazonaws.bedrockagent#S3BucketName": { "type": "string", "traits": { - "smithy.api#sensitive": {} + "smithy.api#length": { + "min": 3, + "max": 63 + }, + "smithy.api#pattern": "^[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$" } }, - "com.amazonaws.bedrockagent#PineconeConfiguration": { + "com.amazonaws.bedrockagent#S3BucketUri": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^s3://.{1,128}$" + } + }, + "com.amazonaws.bedrockagent#S3DataSourceConfiguration": { "type": "structure", "members": { - "connectionString": { - "target": "com.amazonaws.bedrockagent#PineconeConnectionString", - "traits": { - "smithy.api#documentation": "

    The endpoint URL for your index management page.

    ", - "smithy.api#required": {} - } - }, - "credentialsSecretArn": { - "target": "com.amazonaws.bedrockagent#SecretArn", + "bucketArn": { + "target": "com.amazonaws.bedrockagent#S3BucketArn", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Pinecone API key.

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

    The Amazon Resource Name (ARN) of the S3 bucket that contains your data.

    ", "smithy.api#required": {} } }, - "namespace": { - "target": "com.amazonaws.bedrockagent#PineconeNamespace", + "inclusionPrefixes": { + "target": "com.amazonaws.bedrockagent#S3Prefixes", "traits": { - "smithy.api#documentation": "

    The namespace to be used to write new data to your database.

    " + "smithy.api#documentation": "

    A list of S3 prefixes to include certain files or content. For more information, \n see Organizing objects using prefixes.

    " } }, - "fieldMapping": { - "target": "com.amazonaws.bedrockagent#PineconeFieldMapping", + "bucketOwnerAccountId": { + "target": "com.amazonaws.bedrockagent#BucketOwnerAccountId", "traits": { - "smithy.api#documentation": "

    Contains the names of the fields to which to map information about the vector store.

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

    The account ID for the owner of the S3 bucket.

    " } } }, "traits": { - "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base in Pinecone. For more information, see Create a vector index in Pinecone.

    " - } - }, - "com.amazonaws.bedrockagent#PineconeConnectionString": { - "type": "string", - "traits": { - "smithy.api#length": { - "max": 2048 - }, - "smithy.api#pattern": "^.*$" + "smithy.api#documentation": "

    The configuration information to connect to Amazon S3 as your data source.

    " } }, - "com.amazonaws.bedrockagent#PineconeFieldMapping": { + "com.amazonaws.bedrockagent#S3Identifier": { "type": "structure", "members": { - "textField": { - "target": "com.amazonaws.bedrockagent#FieldName", + "s3BucketName": { + "target": "com.amazonaws.bedrockagent#S3BucketName", "traits": { - "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

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

    The name of the S3 bucket.

    " } }, - "metadataField": { - "target": "com.amazonaws.bedrockagent#FieldName", + "s3ObjectKey": { + "target": "com.amazonaws.bedrockagent#S3ObjectKey", "traits": { - "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

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

    The S3 object key for the S3 resource.

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

    The identifier information for an Amazon S3 bucket.

    " + } + }, + "com.amazonaws.bedrockagent#S3Location": { + "type": "structure", + "members": { + "uri": { + "target": "com.amazonaws.bedrockagent#S3BucketUri", + "traits": { + "smithy.api#documentation": "

    The location's URI. For example, s3://my-bucket/chunk-processor/.

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

    Contains the names of the fields to which to map information about the vector store.

    " + "smithy.api#documentation": "

    An Amazon S3 location.

    " } }, - "com.amazonaws.bedrockagent#PineconeNamespace": { + "com.amazonaws.bedrockagent#S3ObjectKey": { "type": "string", "traits": { "smithy.api#length": { - "max": 2048 + "min": 1, + "max": 1024 }, - "smithy.api#pattern": "^.*$" + "smithy.api#pattern": "^[\\.\\-\\!\\*\\_\\'\\(\\)a-zA-Z0-9][\\.\\-\\!\\*\\_\\'\\(\\)\\/a-zA-Z0-9]*$" } }, - "com.amazonaws.bedrockagent#PrepareAgent": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#PrepareAgentRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#PrepareAgentResponse" - }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#ConflictException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" - }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" - } - ], + "com.amazonaws.bedrockagent#S3Prefix": { + "type": "string", "traits": { - "smithy.api#documentation": "

    Creates a DRAFT version of the agent that can be used for internal testing.

    ", - "smithy.api#http": { - "code": 202, - "method": "POST", - "uri": "/agents/{agentId}/" + "smithy.api#length": { + "min": 1, + "max": 300 }, - "smithy.api#tags": ["console"] + "smithy.api#sensitive": {} } }, - "com.amazonaws.bedrockagent#PrepareAgentRequest": { + "com.amazonaws.bedrockagent#S3Prefixes": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#S3Prefix" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.bedrockagent#SalesforceAuthType": { + "type": "enum", + "members": { + "OAUTH2_CLIENT_CREDENTIALS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OAUTH2_CLIENT_CREDENTIALS" + } + } + } + }, + "com.amazonaws.bedrockagent#SalesforceCrawlerConfiguration": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "filterConfiguration": { + "target": "com.amazonaws.bedrockagent#CrawlFilterConfiguration", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent for which to create a DRAFT version.

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

    The configuration of filtering the Salesforce content. For example, \n configuring regular expression patterns to include or exclude certain \n content.

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

    The configuration of the Salesforce content. For example, configuring \n specific types of Salesforce content.

    " } }, - "com.amazonaws.bedrockagent#PrepareAgentResponse": { + "com.amazonaws.bedrockagent#SalesforceDataSourceConfiguration": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "sourceConfiguration": { + "target": "com.amazonaws.bedrockagent#SalesforceSourceConfiguration", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent for which the DRAFT version was created.

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

    The endpoint information to connect to your Salesforce data source.

    ", "smithy.api#required": {} } }, - "agentStatus": { - "target": "com.amazonaws.bedrockagent#AgentStatus", + "crawlerConfiguration": { + "target": "com.amazonaws.bedrockagent#SalesforceCrawlerConfiguration", "traits": { - "smithy.api#documentation": "

    The status of the DRAFT version and whether it is ready for use.

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

    The configuration of the Salesforce content. For example, configuring \n specific types of Salesforce content.

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

    The configuration information to connect to Salesforce as your data source.

    " + } + }, + "com.amazonaws.bedrockagent#SalesforceSourceConfiguration": { + "type": "structure", + "members": { + "hostUrl": { + "target": "com.amazonaws.bedrockagent#HttpsUrl", + "traits": { + "smithy.api#documentation": "

    The Salesforce host URL or instance URL.

    ", "smithy.api#required": {} } }, - "agentVersion": { - "target": "com.amazonaws.bedrockagent#Version", + "authType": { + "target": "com.amazonaws.bedrockagent#SalesforceAuthType", "traits": { - "smithy.api#documentation": "

    The version of the agent.

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

    The supported authentication type to authenticate and connect to your \n Salesforce instance.

    ", "smithy.api#required": {} } }, - "preparedAt": { - "target": "com.amazonaws.bedrockagent#DateTimestamp", + "credentialsSecretArn": { + "target": "com.amazonaws.bedrockagent#SecretArn", "traits": { - "smithy.api#documentation": "

    The time at which the DRAFT version of the agent was last prepared.

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

    The Amazon Resource Name of an Secrets Manager secret that \n stores your authentication credentials for your SharePoint site/sites. \n For more information on the key-value pairs that must be included in \n your secret, depending on your authentication type, see \n Salesforce connection configuration.

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

    The endpoint information to connect to your Salesforce data source.

    " } }, - "com.amazonaws.bedrockagent#PromptConfiguration": { + "com.amazonaws.bedrockagent#SecretArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$" + } + }, + "com.amazonaws.bedrockagent#SeedUrl": { "type": "structure", "members": { - "promptType": { - "target": "com.amazonaws.bedrockagent#PromptType", - "traits": { - "smithy.api#documentation": "

    The step in the agent sequence that this prompt configuration applies to.

    " - } - }, - "promptCreationMode": { - "target": "com.amazonaws.bedrockagent#CreationMode", + "url": { + "target": "com.amazonaws.bedrockagent#Url", "traits": { - "smithy.api#documentation": "

    Specifies whether to override the default prompt template for this promptType. Set this value to OVERRIDDEN to use the prompt that you provide in the basePromptTemplate. If you leave it as DEFAULT, the agent uses a default prompt template.

    " + "smithy.api#documentation": "

    A seed or starting point URL.

    " } - }, - "promptState": { - "target": "com.amazonaws.bedrockagent#PromptState", + } + }, + "traits": { + "smithy.api#documentation": "

    The seed or starting point URL. \n You should be authorized to crawl the URL.

    " + } + }, + "com.amazonaws.bedrockagent#SeedUrls": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#SeedUrl" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.bedrockagent#SemanticChunkingConfiguration": { + "type": "structure", + "members": { + "maxTokens": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

    Specifies whether to allow the agent to carry out the step specified in the promptType. If you set this value to DISABLED, the agent skips that step. The default state for each promptType is as follows.

    \n
      \n
    • \n

      \n PRE_PROCESSINGENABLED\n

      \n
    • \n
    • \n

      \n ORCHESTRATIONENABLED\n

      \n
    • \n
    • \n

      \n KNOWLEDGE_BASE_RESPONSE_GENERATIONENABLED\n

      \n
    • \n
    • \n

      \n POST_PROCESSINGDISABLED\n

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

    The maximum number of tokens that a chunk can contain.

    ", + "smithy.api#range": { + "min": 1 + }, + "smithy.api#required": {} } }, - "basePromptTemplate": { - "target": "com.amazonaws.bedrockagent#BasePromptTemplate", + "bufferSize": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

    Defines the prompt template with which to replace the default prompt template. You can use placeholder variables in the base prompt template to customize the prompt. For more information, see Prompt template placeholder variables. For more information, see Configure the prompt templates.

    " + "smithy.api#documentation": "

    The buffer size.

    ", + "smithy.api#range": { + "min": 0, + "max": 1 + }, + "smithy.api#required": {} } }, - "inferenceConfiguration": { - "target": "com.amazonaws.bedrockagent#InferenceConfiguration", + "breakpointPercentileThreshold": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

    Contains inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the promptType. For more information, see Inference parameters for foundation models.

    " + "smithy.api#documentation": "

    The dissimilarity threshold for splitting chunks.

    ", + "smithy.api#range": { + "min": 50, + "max": 99 + }, + "smithy.api#required": {} } - }, - "parserMode": { - "target": "com.amazonaws.bedrockagent#CreationMode", + } + }, + "traits": { + "smithy.api#documentation": "

    Settings for semantic document chunking for a data source. Semantic chunking splits\n a document into into smaller documents based on groups of similar content derived from the text\n with natural language processing.

    \n

    With semantic chunking, each sentence is compared to the next to determine how similar they are.\n You specify a threshold in the form of a percentile, where adjacent sentences that are less similar than\n that percentage of sentence pairs are divided into separate chunks. For example, if you set the threshold to \n 90, then the 10 percent of sentence pairs that are least similar are split. So if you have 101 sentences,\n 100 sentence pairs are compared, and the 10 with the least similarity are split, creating 11 chunks. These\n chunks are further split if they exceed the max token size.

    \n

    You must also specify a buffer size, which determines whether sentences are compared in isolation, or\n within a moving context window that includes the previous and following sentence. For example, if you set\n the buffer size to 1, the embedding for sentence 10 is derived from sentences 9, 10, and 11\n combined.

    " + } + }, + "com.amazonaws.bedrockagent#ServerSideEncryptionConfiguration": { + "type": "structure", + "members": { + "kmsKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", "traits": { - "smithy.api#documentation": "

    Specifies whether to override the default parser Lambda function when parsing the raw foundation model output in the part of the agent sequence defined by the promptType. If you set the field as OVERRIDEN, the overrideLambda field in the PromptOverrideConfiguration must be specified with the ARN of a Lambda function.

    " + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key used to encrypt the resource.

    " } } }, "traits": { - "smithy.api#documentation": "

    Contains configurations to override a prompt template in one part of an agent sequence. For more information, see Advanced prompts.

    " + "smithy.api#documentation": "

    Contains the configuration for server-side encryption.

    " } }, - "com.amazonaws.bedrockagent#PromptConfigurations": { - "type": "list", - "member": { - "target": "com.amazonaws.bedrockagent#PromptConfiguration" + "com.amazonaws.bedrockagent#ServiceQuotaExceededException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.bedrockagent#NonBlankString" + } }, "traits": { - "smithy.api#length": { - "max": 10 + "smithy.api#documentation": "

    The number of requests exceeds the service quota. Resubmit your request later.

    ", + "smithy.api#error": "client", + "smithy.api#httpError": 402 + } + }, + "com.amazonaws.bedrockagent#SessionTTL": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 60, + "max": 3600 } } }, - "com.amazonaws.bedrockagent#PromptOverrideConfiguration": { - "type": "structure", + "com.amazonaws.bedrockagent#SharePointAuthType": { + "type": "enum", "members": { - "promptConfigurations": { - "target": "com.amazonaws.bedrockagent#PromptConfigurations", + "OAUTH2_CLIENT_CREDENTIALS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

    Contains configurations to override a prompt template in one part of an agent sequence. For more information, see Advanced prompts.

    ", - "smithy.api#required": {} + "smithy.api#enumValue": "OAUTH2_CLIENT_CREDENTIALS" } - }, - "overrideLambda": { - "target": "com.amazonaws.bedrockagent#LambdaArn", + } + } + }, + "com.amazonaws.bedrockagent#SharePointCrawlerConfiguration": { + "type": "structure", + "members": { + "filterConfiguration": { + "target": "com.amazonaws.bedrockagent#CrawlFilterConfiguration", "traits": { - "smithy.api#documentation": "

    The ARN of the Lambda function to use when parsing the raw foundation model output in parts of the agent sequence. If you specify this field, at least one of the promptConfigurations must contain a parserMode value that is set to OVERRIDDEN. For more information, see Parser Lambda function in Agents for Amazon Bedrock.

    " + "smithy.api#documentation": "

    The configuration of filtering the SharePoint content. For example, \n configuring regular expression patterns to include or exclude certain content.

    " } } }, "traits": { - "smithy.api#documentation": "

    Contains configurations to override prompts in different parts of an agent sequence. For more information, see Advanced prompts.

    ", - "smithy.api#sensitive": {} + "smithy.api#documentation": "

    The configuration of the SharePoint content. For example, configuring \n specific types of SharePoint content.

    " } }, - "com.amazonaws.bedrockagent#PromptState": { - "type": "enum", + "com.amazonaws.bedrockagent#SharePointDataSourceConfiguration": { + "type": "structure", "members": { - "ENABLED": { - "target": "smithy.api#Unit", + "sourceConfiguration": { + "target": "com.amazonaws.bedrockagent#SharePointSourceConfiguration", "traits": { - "smithy.api#enumValue": "ENABLED" + "smithy.api#documentation": "

    The endpoint information to connect to your SharePoint data source.

    ", + "smithy.api#required": {} } }, - "DISABLED": { - "target": "smithy.api#Unit", + "crawlerConfiguration": { + "target": "com.amazonaws.bedrockagent#SharePointCrawlerConfiguration", "traits": { - "smithy.api#enumValue": "DISABLED" + "smithy.api#documentation": "

    The configuration of the SharePoint content. For example, configuring \n specific types of SharePoint content.

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

    The configuration information to connect to SharePoint as your data source.

    " } }, - "com.amazonaws.bedrockagent#PromptType": { + "com.amazonaws.bedrockagent#SharePointDomain": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + } + } + }, + "com.amazonaws.bedrockagent#SharePointHostType": { "type": "enum", "members": { - "PRE_PROCESSING": { + "ONLINE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "PRE_PROCESSING" + "smithy.api#enumValue": "ONLINE" + } + } + } + }, + "com.amazonaws.bedrockagent#SharePointSiteUrls": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#HttpsUrl" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.bedrockagent#SharePointSourceConfiguration": { + "type": "structure", + "members": { + "tenantId": { + "target": "com.amazonaws.bedrockagent#Microsoft365TenantId", + "traits": { + "smithy.api#documentation": "

    The identifier of your Microsoft 365 tenant.

    " } }, - "ORCHESTRATION": { - "target": "smithy.api#Unit", + "domain": { + "target": "com.amazonaws.bedrockagent#SharePointDomain", "traits": { - "smithy.api#enumValue": "ORCHESTRATION" + "smithy.api#documentation": "

    The domain of your SharePoint instance or site URL/URLs.

    ", + "smithy.api#required": {} } }, - "POST_PROCESSING": { - "target": "smithy.api#Unit", + "siteUrls": { + "target": "com.amazonaws.bedrockagent#SharePointSiteUrls", "traits": { - "smithy.api#enumValue": "POST_PROCESSING" + "smithy.api#documentation": "

    A list of one or more SharePoint site URLs.

    ", + "smithy.api#required": {} } }, - "KNOWLEDGE_BASE_RESPONSE_GENERATION": { - "target": "smithy.api#Unit", + "hostType": { + "target": "com.amazonaws.bedrockagent#SharePointHostType", "traits": { - "smithy.api#enumValue": "KNOWLEDGE_BASE_RESPONSE_GENERATION" + "smithy.api#documentation": "

    The supported host type, whether online/cloud or server/on-premises.

    ", + "smithy.api#required": {} + } + }, + "authType": { + "target": "com.amazonaws.bedrockagent#SharePointAuthType", + "traits": { + "smithy.api#documentation": "

    The supported authentication type to authenticate and connect \n to your SharePoint site/sites.

    ", + "smithy.api#required": {} + } + }, + "credentialsSecretArn": { + "target": "com.amazonaws.bedrockagent#SecretArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name of an Secrets Manager secret that \n stores your authentication credentials for your SharePoint site/sites. \n For more information on the key-value pairs that must be included in \n your secret, depending on your authentication type, see \n SharePoint connection configuration.

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

    The endpoint information to connect to your SharePoint data source.

    " } }, - "com.amazonaws.bedrockagent#ProvisionedModelIdentifier": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 + "com.amazonaws.bedrockagent#SortOrder": { + "type": "enum", + "members": { + "ASCENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ASCENDING" + } }, - "smithy.api#pattern": "^((([0-9a-zA-Z][_-]?){1,63})|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:provisioned-model/[a-z0-9]{12}))$" + "DESCENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DESCENDING" + } + } } }, - "com.amazonaws.bedrockagent#RdsArn": { - "type": "string", + "com.amazonaws.bedrockagent#StartIngestionJob": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#StartIngestionJobRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#StartIngestionJobResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], "traits": { - "smithy.api#pattern": "^arn:aws(|-cn|-us-gov):rds:[a-zA-Z0-9-]*:[0-9]{12}:cluster:[a-zA-Z0-9-]{1,63}$" + "smithy.api#documentation": "

    Begins an ingestion job, in which a data source is added to a knowledge base.

    ", + "smithy.api#http": { + "code": 202, + "method": "PUT", + "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#RdsConfiguration": { + "com.amazonaws.bedrockagent#StartIngestionJobRequest": { "type": "structure", "members": { - "resourceArn": { - "target": "com.amazonaws.bedrockagent#RdsArn", - "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the vector store.

    ", - "smithy.api#required": {} - } - }, - "credentialsSecretArn": { - "target": "com.amazonaws.bedrockagent#SecretArn", + "knowledgeBaseId": { + "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Amazon RDS database.

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

    The unique identifier of the knowledge base to which to add the data source.

    ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "databaseName": { - "target": "com.amazonaws.bedrockagent#RdsDatabaseName", + "dataSourceId": { + "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The name of your Amazon RDS database.

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

    The unique identifier of the data source to ingest.

    ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "tableName": { - "target": "com.amazonaws.bedrockagent#RdsTableName", + "clientToken": { + "target": "com.amazonaws.bedrockagent#ClientToken", "traits": { - "smithy.api#documentation": "

    The name of the table in the database.

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

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request,\n Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    ", + "smithy.api#idempotencyToken": {} } }, - "fieldMapping": { - "target": "com.amazonaws.bedrockagent#RdsFieldMapping", + "description": { + "target": "com.amazonaws.bedrockagent#Description", "traits": { - "smithy.api#documentation": "

    Contains the names of the fields to which to map information about the vector store.

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

    A description of the ingestion job.

    " } } }, "traits": { - "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see Create a vector index in Amazon RDS.

    " - } - }, - "com.amazonaws.bedrockagent#RdsDatabaseName": { - "type": "string", - "traits": { - "smithy.api#length": { - "max": 63 - }, - "smithy.api#pattern": "^[a-zA-Z0-9_\\-]+$" + "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#RdsFieldMapping": { + "com.amazonaws.bedrockagent#StartIngestionJobResponse": { "type": "structure", "members": { - "primaryKeyField": { - "target": "com.amazonaws.bedrockagent#ColumnName", - "traits": { - "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the ID for each entry.

    ", - "smithy.api#required": {} - } - }, - "vectorField": { - "target": "com.amazonaws.bedrockagent#ColumnName", - "traits": { - "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    ", - "smithy.api#required": {} - } - }, - "textField": { - "target": "com.amazonaws.bedrockagent#ColumnName", - "traits": { - "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    ", - "smithy.api#required": {} - } - }, - "metadataField": { - "target": "com.amazonaws.bedrockagent#ColumnName", + "ingestionJob": { + "target": "com.amazonaws.bedrockagent#IngestionJob", "traits": { - "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

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

    An object containing information about the ingestion job.

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

    Contains the names of the fields to which to map information about the vector store.

    " - } - }, - "com.amazonaws.bedrockagent#RdsTableName": { - "type": "string", - "traits": { - "smithy.api#length": { - "max": 63 - }, - "smithy.api#pattern": "^[a-zA-Z0-9_\\.\\-]+$" + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#RecommendedAction": { - "type": "string", - "traits": { - "smithy.api#length": { - "max": 2048 + "com.amazonaws.bedrockagent#StepType": { + "type": "enum", + "members": { + "POST_CHUNKING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "POST_CHUNKING" + } } } }, - "com.amazonaws.bedrockagent#RecommendedActions": { + "com.amazonaws.bedrockagent#StopSequences": { "type": "list", "member": { - "target": "com.amazonaws.bedrockagent#RecommendedAction" + "target": "smithy.api#String" }, "traits": { "smithy.api#length": { - "max": 2048 + "min": 0, + "max": 4 } } }, - "com.amazonaws.bedrockagent#RedisEnterpriseCloudConfiguration": { + "com.amazonaws.bedrockagent#StorageConfiguration": { "type": "structure", "members": { - "endpoint": { - "target": "com.amazonaws.bedrockagent#RedisEnterpriseCloudEndpoint", + "type": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseStorageType", "traits": { - "smithy.api#documentation": "

    The endpoint URL of the Redis Enterprise Cloud database.

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

    The vector store service in which the knowledge base is stored.

    ", "smithy.api#required": {} } }, - "vectorIndexName": { - "target": "com.amazonaws.bedrockagent#RedisEnterpriseCloudIndexName", + "opensearchServerlessConfiguration": { + "target": "com.amazonaws.bedrockagent#OpenSearchServerlessConfiguration", "traits": { - "smithy.api#documentation": "

    The name of the vector index.

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

    Contains the storage configuration of the knowledge base in Amazon OpenSearch Service.

    " } }, - "credentialsSecretArn": { - "target": "com.amazonaws.bedrockagent#SecretArn", + "pineconeConfiguration": { + "target": "com.amazonaws.bedrockagent#PineconeConfiguration", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the secret that you created in Secrets Manager that is linked to your Redis Enterprise Cloud database.

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

    Contains the storage configuration of the knowledge base in Pinecone.

    " } }, - "fieldMapping": { - "target": "com.amazonaws.bedrockagent#RedisEnterpriseCloudFieldMapping", + "redisEnterpriseCloudConfiguration": { + "target": "com.amazonaws.bedrockagent#RedisEnterpriseCloudConfiguration", "traits": { - "smithy.api#documentation": "

    Contains the names of the fields to which to map information about the vector store.

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

    Contains the storage configuration of the knowledge base in Redis Enterprise Cloud.

    " + } + }, + "rdsConfiguration": { + "target": "com.amazonaws.bedrockagent#RdsConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see Create a vector index in Amazon RDS.

    " + } + }, + "mongoDbAtlasConfiguration": { + "target": "com.amazonaws.bedrockagent#MongoDbAtlasConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains the storage configuration of the knowledge base in MongoDB Atlas.

    " } } }, "traits": { - "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base in Redis Enterprise Cloud. For more information, see Create a vector index in Redis Enterprise Cloud.

    " + "smithy.api#documentation": "

    Contains the storage configuration of the knowledge base.

    " } }, - "com.amazonaws.bedrockagent#RedisEnterpriseCloudEndpoint": { - "type": "string", + "com.amazonaws.bedrockagent#StorageDays": { + "type": "integer", "traits": { - "smithy.api#length": { - "max": 2048 - }, - "smithy.api#pattern": "^.*$" + "smithy.api#default": 30, + "smithy.api#range": { + "min": 0, + "max": 30 + } } }, - "com.amazonaws.bedrockagent#RedisEnterpriseCloudFieldMapping": { + "com.amazonaws.bedrockagent#StorageFlowNodeConfiguration": { "type": "structure", "members": { - "vectorField": { - "target": "com.amazonaws.bedrockagent#FieldName", - "traits": { - "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.

    ", - "smithy.api#required": {} - } - }, - "textField": { - "target": "com.amazonaws.bedrockagent#FieldName", - "traits": { - "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.

    ", - "smithy.api#required": {} - } - }, - "metadataField": { - "target": "com.amazonaws.bedrockagent#FieldName", + "serviceConfiguration": { + "target": "com.amazonaws.bedrockagent#StorageFlowNodeServiceConfiguration", "traits": { - "smithy.api#documentation": "

    The name of the field in which Amazon Bedrock stores metadata about the vector store.

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

    Contains configurations for the service to use for storing the input into the node.

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

    Contains the names of the fields to which to map information about the vector store.

    " + "smithy.api#documentation": "

    Contains configurations for a Storage node in a flow. This node stores the input in an Amazon S3 location that you specify.

    " } }, - "com.amazonaws.bedrockagent#RedisEnterpriseCloudIndexName": { - "type": "string", + "com.amazonaws.bedrockagent#StorageFlowNodeS3Configuration": { + "type": "structure", + "members": { + "bucketName": { + "target": "com.amazonaws.bedrockagent#S3BucketName", + "traits": { + "smithy.api#documentation": "

    The name of the Amazon S3 bucket in which to store the input into the node.

    ", + "smithy.api#required": {} + } + } + }, "traits": { - "smithy.api#length": { - "max": 2048 - }, - "smithy.api#pattern": "^.*$" + "smithy.api#documentation": "

    Contains configurations for the Amazon S3 location in which to store the input into the node.

    " } }, - "com.amazonaws.bedrockagent#ResourceNotFoundException": { - "type": "structure", + "com.amazonaws.bedrockagent#StorageFlowNodeServiceConfiguration": { + "type": "union", "members": { - "message": { - "target": "com.amazonaws.bedrockagent#NonBlankString" + "s3": { + "target": "com.amazonaws.bedrockagent#StorageFlowNodeS3Configuration", + "traits": { + "smithy.api#documentation": "

    Contains configurations for the Amazon S3 location in which to store the input into the node.

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

    The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.

    ", - "smithy.api#error": "client", - "smithy.api#httpError": 404 + "smithy.api#documentation": "

    Contains configurations for the service to use for storing the input into the node.

    " } }, - "com.amazonaws.bedrockagent#S3BucketArn": { + "com.amazonaws.bedrockagent#TagKey": { "type": "string", "traits": { "smithy.api#length": { "min": 1, - "max": 2048 + "max": 128 }, - "smithy.api#pattern": "^arn:aws(|-cn|-us-gov):s3:::[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$" + "smithy.api#pattern": "^[a-zA-Z0-9\\s._:/=+@-]*$" } }, - "com.amazonaws.bedrockagent#S3BucketName": { - "type": "string", + "com.amazonaws.bedrockagent#TagKeyList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagent#TagKey" + }, "traits": { "smithy.api#length": { - "min": 3, - "max": 63 + "min": 0, + "max": 200 + } + } + }, + "com.amazonaws.bedrockagent#TagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#TagResourceRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#TagResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" }, - "smithy.api#pattern": "^[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$" + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Associate tags with a resource. For more information, see Tagging resources in the Amazon Bedrock User Guide.

    ", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/tags/{resourceArn}" + } } }, - "com.amazonaws.bedrockagent#S3DataSourceConfiguration": { + "com.amazonaws.bedrockagent#TagResourceRequest": { "type": "structure", "members": { - "bucketArn": { - "target": "com.amazonaws.bedrockagent#S3BucketArn", + "resourceArn": { + "target": "com.amazonaws.bedrockagent#TaggableResourcesArn", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the bucket that contains the data source.

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

    The Amazon Resource Name (ARN) of the resource to tag.

    ", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "inclusionPrefixes": { - "target": "com.amazonaws.bedrockagent#S3Prefixes", - "traits": { - "smithy.api#documentation": "

    A list of S3 prefixes that define the object containing the data sources. For more information, see Organizing objects using prefixes.

    " - } - }, - "bucketOwnerAccountId": { - "target": "com.amazonaws.bedrockagent#BucketOwnerAccountId", + "tags": { + "target": "com.amazonaws.bedrockagent#TagsMap", "traits": { - "smithy.api#documentation": "

    The bucket account owner ID for the S3 bucket.

    " + "smithy.api#documentation": "

    An object containing key-value pairs that define the tags to attach to the resource.

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

    Contains information about the S3 configuration of the data source.

    " + "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#S3Identifier": { + "com.amazonaws.bedrockagent#TagResourceResponse": { "type": "structure", - "members": { - "s3BucketName": { - "target": "com.amazonaws.bedrockagent#S3BucketName", - "traits": { - "smithy.api#documentation": "

    The name of the S3 bucket.

    " - } - }, - "s3ObjectKey": { - "target": "com.amazonaws.bedrockagent#S3ObjectKey", - "traits": { - "smithy.api#documentation": "

    The S3 object key containing the resource.

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

    Contains information about the S3 object containing the resource.

    " + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#S3ObjectKey": { + "com.amazonaws.bedrockagent#TagValue": { "type": "string", "traits": { "smithy.api#length": { - "min": 1, - "max": 1024 + "min": 0, + "max": 256 }, - "smithy.api#pattern": "^[\\.\\-\\!\\*\\_\\'\\(\\)a-zA-Z0-9][\\.\\-\\!\\*\\_\\'\\(\\)\\/a-zA-Z0-9]*$" + "smithy.api#pattern": "^[a-zA-Z0-9\\s._:/=+@-]*$" } }, - "com.amazonaws.bedrockagent#S3Prefix": { + "com.amazonaws.bedrockagent#TaggableResourcesArn": { "type": "string", "traits": { "smithy.api#length": { - "min": 1, - "max": 300 - } + "min": 20, + "max": 1011 + }, + "smithy.api#pattern": "(^arn:aws:bedrock:[a-zA-Z0-9-]+:/d{12}:(agent|agent-alias|knowledge-base|flow|prompt)/[A-Z0-9]{10}(?:/[A-Z0-9]{10})?$|^arn:aws:bedrock:[a-zA-Z0-9-]+:/d{12}:flow/([A-Z0-9]{10})/alias/([A-Z0-9]{10})$|^arn:aws:bedrock:[a-zA-Z0-9-]+:/d{12}:prompt/([A-Z0-9]{10})?(?::/d+)?$)" } }, - "com.amazonaws.bedrockagent#S3Prefixes": { - "type": "list", - "member": { - "target": "com.amazonaws.bedrockagent#S3Prefix" + "com.amazonaws.bedrockagent#TaggingResource": { + "type": "resource", + "operations": [ + { + "target": "com.amazonaws.bedrockagent#ListTagsForResource" + }, + { + "target": "com.amazonaws.bedrockagent#TagResource" + }, + { + "target": "com.amazonaws.bedrockagent#UntagResource" + } + ] + }, + "com.amazonaws.bedrockagent#TagsMap": { + "type": "map", + "key": { + "target": "com.amazonaws.bedrockagent#TagKey" }, + "value": { + "target": "com.amazonaws.bedrockagent#TagValue" + } + }, + "com.amazonaws.bedrockagent#Temperature": { + "type": "float", "traits": { - "smithy.api#length": { - "min": 1, + "smithy.api#range": { + "min": 0, "max": 1 } } }, - "com.amazonaws.bedrockagent#SecretArn": { + "com.amazonaws.bedrockagent#TextPrompt": { "type": "string", "traits": { - "smithy.api#pattern": "^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$" + "smithy.api#length": { + "min": 1, + "max": 200000 + }, + "smithy.api#sensitive": {} } }, - "com.amazonaws.bedrockagent#ServerSideEncryptionConfiguration": { + "com.amazonaws.bedrockagent#TextPromptTemplateConfiguration": { "type": "structure", "members": { - "kmsKeyArn": { - "target": "com.amazonaws.bedrockagent#KmsKeyArn", + "text": { + "target": "com.amazonaws.bedrockagent#TextPrompt", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key used to encrypt the resource.

    " + "smithy.api#documentation": "

    The message for the prompt.

    ", + "smithy.api#required": {} + } + }, + "inputVariables": { + "target": "com.amazonaws.bedrockagent#PromptInputVariablesList", + "traits": { + "smithy.api#documentation": "

    An array of the variables in the prompt template.

    " } } }, "traits": { - "smithy.api#documentation": "

    Contains the configuration for server-side encryption.

    " + "smithy.api#documentation": "

    Contains configurations for a text prompt template. To include a variable, enclose a word in double curly braces as in {{variable}}.

    ", + "smithy.api#sensitive": {} } }, - "com.amazonaws.bedrockagent#ServiceQuotaExceededException": { + "com.amazonaws.bedrockagent#ThrottlingException": { "type": "structure", "members": { "message": { @@ -6843,217 +11833,135 @@ } }, "traits": { - "smithy.api#documentation": "

    The number of requests exceeds the service quota. Resubmit your request later.

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

    The number of requests exceeds the limit. Resubmit your request later.

    ", "smithy.api#error": "client", - "smithy.api#httpError": 402 + "smithy.api#httpError": 429 } }, - "com.amazonaws.bedrockagent#SessionTTL": { + "com.amazonaws.bedrockagent#TopK": { "type": "integer", "traits": { "smithy.api#range": { - "min": 60, - "max": 3600 + "min": 0, + "max": 500 } } }, - "com.amazonaws.bedrockagent#SortOrder": { - "type": "enum", + "com.amazonaws.bedrockagent#TopP": { + "type": "float", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 1 + } + } + }, + "com.amazonaws.bedrockagent#Transformation": { + "type": "structure", "members": { - "ASCENDING": { - "target": "smithy.api#Unit", + "transformationFunction": { + "target": "com.amazonaws.bedrockagent#TransformationFunction", "traits": { - "smithy.api#enumValue": "ASCENDING" + "smithy.api#documentation": "

    A Lambda function that processes documents.

    ", + "smithy.api#required": {} } }, - "DESCENDING": { - "target": "smithy.api#Unit", + "stepToApply": { + "target": "com.amazonaws.bedrockagent#StepType", "traits": { - "smithy.api#enumValue": "DESCENDING" + "smithy.api#documentation": "

    When the service applies the transformation.

    ", + "smithy.api#required": {} } } - } - }, - "com.amazonaws.bedrockagent#StartIngestionJob": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#StartIngestionJobRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#StartIngestionJobResponse" }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#ConflictException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" - }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" - } - ], "traits": { - "smithy.api#documentation": "

    Begins an ingestion job, in which a data source is added to a knowledge base.

    ", - "smithy.api#http": { - "code": 202, - "method": "PUT", - "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/" - }, - "smithy.api#idempotent": {}, - "smithy.api#tags": ["console"] + "smithy.api#documentation": "

    A custom processing step for documents moving through a data source ingestion pipeline. To\n process documents after they have been converted into chunks, set the step to apply to\n POST_CHUNKING.

    " } }, - "com.amazonaws.bedrockagent#StartIngestionJobRequest": { + "com.amazonaws.bedrockagent#TransformationFunction": { "type": "structure", "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", - "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base to which to add the data source.

    ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "dataSourceId": { - "target": "com.amazonaws.bedrockagent#Id", + "transformationLambdaConfiguration": { + "target": "com.amazonaws.bedrockagent#TransformationLambdaConfiguration", "traits": { - "smithy.api#documentation": "

    The unique identifier of the data source to ingest.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The Lambda function.

    ", "smithy.api#required": {} } - }, - "clientToken": { - "target": "com.amazonaws.bedrockagent#ClientToken", - "traits": { - "smithy.api#documentation": "

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request,\n Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.

    ", - "smithy.api#idempotencyToken": {} - } - }, - "description": { - "target": "com.amazonaws.bedrockagent#Description", - "traits": { - "smithy.api#documentation": "

    A description of the ingestion job.

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

    A Lambda function that processes documents.

    " } }, - "com.amazonaws.bedrockagent#StartIngestionJobResponse": { + "com.amazonaws.bedrockagent#TransformationLambdaConfiguration": { "type": "structure", "members": { - "ingestionJob": { - "target": "com.amazonaws.bedrockagent#IngestionJob", + "lambdaArn": { + "target": "com.amazonaws.bedrockagent#LambdaArn", "traits": { - "smithy.api#documentation": "

    An object containing information about the ingestion job.

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

    The function's ARN identifier.

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

    A Lambda function that processes documents.

    " } }, - "com.amazonaws.bedrockagent#StopSequences": { + "com.amazonaws.bedrockagent#Transformations": { "type": "list", "member": { - "target": "smithy.api#String" + "target": "com.amazonaws.bedrockagent#Transformation" }, "traits": { "smithy.api#length": { - "min": 0, - "max": 4 + "min": 1, + "max": 1 } } }, - "com.amazonaws.bedrockagent#StorageConfiguration": { - "type": "structure", + "com.amazonaws.bedrockagent#Type": { + "type": "enum", "members": { - "type": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseStorageType", - "traits": { - "smithy.api#documentation": "

    The vector store service in which the knowledge base is stored.

    ", - "smithy.api#required": {} - } - }, - "opensearchServerlessConfiguration": { - "target": "com.amazonaws.bedrockagent#OpenSearchServerlessConfiguration", - "traits": { - "smithy.api#documentation": "

    Contains the storage configuration of the knowledge base in Amazon OpenSearch Service.

    " - } - }, - "pineconeConfiguration": { - "target": "com.amazonaws.bedrockagent#PineconeConfiguration", + "STRING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

    Contains the storage configuration of the knowledge base in Pinecone.

    " + "smithy.api#enumValue": "string" } }, - "redisEnterpriseCloudConfiguration": { - "target": "com.amazonaws.bedrockagent#RedisEnterpriseCloudConfiguration", + "NUMBER": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

    Contains the storage configuration of the knowledge base in Redis Enterprise Cloud.

    " + "smithy.api#enumValue": "number" } }, - "rdsConfiguration": { - "target": "com.amazonaws.bedrockagent#RdsConfiguration", + "INTEGER": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

    Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see Create a vector index in Amazon RDS.

    " + "smithy.api#enumValue": "integer" } }, - "mongoDbAtlasConfiguration": { - "target": "com.amazonaws.bedrockagent#MongoDbAtlasConfiguration", + "BOOLEAN": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

    Contains the storage configuration of the knowledge base in MongoDB Atlas.

    " + "smithy.api#enumValue": "boolean" } - } - }, - "traits": { - "smithy.api#documentation": "

    Contains the storage configuration of the knowledge base.

    " - } - }, - "com.amazonaws.bedrockagent#TagKey": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 128 }, - "smithy.api#pattern": "^[a-zA-Z0-9\\s._:/=+@-]*$" - } - }, - "com.amazonaws.bedrockagent#TagKeyList": { - "type": "list", - "member": { - "target": "com.amazonaws.bedrockagent#TagKey" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 200 + "ARRAY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "array" + } } } }, - "com.amazonaws.bedrockagent#TagResource": { + "com.amazonaws.bedrockagent#UntagResource": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#TagResourceRequest" + "target": "com.amazonaws.bedrockagent#UntagResourceRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#TagResourceResponse" + "target": "com.amazonaws.bedrockagent#UntagResourceResponse" }, "errors": [ { @@ -7065,9 +11973,6 @@ { "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, - { - "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" - }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" }, @@ -7076,29 +11981,31 @@ } ], "traits": { - "smithy.api#documentation": "

    Associate tags with a resource. For more information, see Tagging resources in the Amazon Bedrock User Guide.

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

    Remove tags from a resource.

    ", "smithy.api#http": { "code": 200, - "method": "POST", + "method": "DELETE", "uri": "/tags/{resourceArn}" - } + }, + "smithy.api#idempotent": {} } }, - "com.amazonaws.bedrockagent#TagResourceRequest": { + "com.amazonaws.bedrockagent#UntagResourceRequest": { "type": "structure", "members": { "resourceArn": { "target": "com.amazonaws.bedrockagent#TaggableResourcesArn", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the resource to tag.

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

    The Amazon Resource Name (ARN) of the resource from which to remove tags.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "tags": { - "target": "com.amazonaws.bedrockagent#TagsMap", + "tagKeys": { + "target": "com.amazonaws.bedrockagent#TagKeyList", "traits": { - "smithy.api#documentation": "

    An object containing key-value pairs that define the tags to attach to the resource.

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

    A list of keys of the tags to remove from the resource.

    ", + "smithy.api#httpQuery": "tagKeys", "smithy.api#required": {} } } @@ -7107,204 +12014,194 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#TagResourceResponse": { + "com.amazonaws.bedrockagent#UntagResourceResponse": { "type": "structure", "members": {}, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#TagValue": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 256 + "com.amazonaws.bedrockagent#UpdateAgent": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#UpdateAgentRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#UpdateAgentResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" }, - "smithy.api#pattern": "^[a-zA-Z0-9\\s._:/=+@-]*$" - } - }, - "com.amazonaws.bedrockagent#TaggableResourcesArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 20, - "max": 1011 + { + "target": "com.amazonaws.bedrockagent#ConflictException" }, - "smithy.api#pattern": "(^arn:aws:bedrock:[a-zA-Z0-9-]+:/d{12}:(agent|agent-alias|knowledge-base)/[A-Z0-9]{10}(?:/[A-Z0-9]{10})?$)" - } - }, - "com.amazonaws.bedrockagent#TaggingResource": { - "type": "resource", - "operations": [ { - "target": "com.amazonaws.bedrockagent#ListTagsForResource" + "target": "com.amazonaws.bedrockagent#InternalServerException" }, { - "target": "com.amazonaws.bedrockagent#TagResource" + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, { - "target": "com.amazonaws.bedrockagent#UntagResource" + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" } - ] - }, - "com.amazonaws.bedrockagent#TagsMap": { - "type": "map", - "key": { - "target": "com.amazonaws.bedrockagent#TagKey" - }, - "value": { - "target": "com.amazonaws.bedrockagent#TagValue" - } - }, - "com.amazonaws.bedrockagent#Temperature": { - "type": "float", + ], "traits": { - "smithy.api#range": { - "min": 0, - "max": 1 - } + "smithy.api#documentation": "

    Updates the configuration of an agent.

    ", + "smithy.api#http": { + "code": 202, + "method": "PUT", + "uri": "/agents/{agentId}/" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#ThrottlingException": { - "type": "structure", - "members": { - "message": { - "target": "com.amazonaws.bedrockagent#NonBlankString" - } + "com.amazonaws.bedrockagent#UpdateAgentActionGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#UpdateAgentActionGroupRequest" }, - "traits": { - "smithy.api#documentation": "

    The number of requests exceeds the limit. Resubmit your request later.

    ", - "smithy.api#error": "client", - "smithy.api#httpError": 429 - } - }, - "com.amazonaws.bedrockagent#TopK": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 500 + "output": { + "target": "com.amazonaws.bedrockagent#UpdateAgentActionGroupResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" } - } - }, - "com.amazonaws.bedrockagent#TopP": { - "type": "float", + ], "traits": { - "smithy.api#range": { - "min": 0, - "max": 1 - } + "smithy.api#documentation": "

    Updates the configuration for an action group for an agent.

    ", + "smithy.api#http": { + "code": 200, + "method": "PUT", + "uri": "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#Type": { - "type": "enum", + "com.amazonaws.bedrockagent#UpdateAgentActionGroupRequest": { + "type": "structure", "members": { - "STRING": { - "target": "smithy.api#Unit", + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#enumValue": "string" + "smithy.api#documentation": "

    The unique identifier of the agent for which to update the action group.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "NUMBER": { - "target": "smithy.api#Unit", + "agentVersion": { + "target": "com.amazonaws.bedrockagent#DraftVersion", "traits": { - "smithy.api#enumValue": "number" + "smithy.api#documentation": "

    The unique identifier of the agent version for which to update the action group.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "actionGroupId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the action group.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "actionGroupName": { + "target": "com.amazonaws.bedrockagent#Name", + "traits": { + "smithy.api#documentation": "

    Specifies a new name for the action group.

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

    Specifies a new name for the action group.

    " + } + }, + "parentActionGroupSignature": { + "target": "com.amazonaws.bedrockagent#ActionGroupSignature", + "traits": { + "smithy.api#documentation": "

    To allow your agent to request the user for additional information when trying to complete a task, set this field to AMAZON.UserInput. You must leave the description, apiSchema, and actionGroupExecutor fields blank for this action group.

    \n

    During orchestration, if your agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an Observation reprompting the user for more information.

    " + } + }, + "actionGroupExecutor": { + "target": "com.amazonaws.bedrockagent#ActionGroupExecutor", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the Lambda function containing the business logic that is carried out upon invoking the action.

    " } }, - "INTEGER": { - "target": "smithy.api#Unit", + "actionGroupState": { + "target": "com.amazonaws.bedrockagent#ActionGroupState", "traits": { - "smithy.api#enumValue": "integer" + "smithy.api#documentation": "

    Specifies whether the action group is available for the agent to invoke or not when sending an InvokeAgent request.

    " } }, - "BOOLEAN": { - "target": "smithy.api#Unit", + "apiSchema": { + "target": "com.amazonaws.bedrockagent#APISchema", "traits": { - "smithy.api#enumValue": "boolean" + "smithy.api#documentation": "

    Contains either details about the S3 object containing the OpenAPI schema for the action group or the JSON or YAML-formatted payload defining the schema. For more information, see Action group OpenAPI schemas.

    " } }, - "ARRAY": { - "target": "smithy.api#Unit", + "functionSchema": { + "target": "com.amazonaws.bedrockagent#FunctionSchema", "traits": { - "smithy.api#enumValue": "array" + "smithy.api#documentation": "

    Contains details about the function schema for the action group or the JSON or YAML-formatted payload defining the schema.

    " } } - } - }, - "com.amazonaws.bedrockagent#UntagResource": { - "type": "operation", - "input": { - "target": "com.amazonaws.bedrockagent#UntagResourceRequest" - }, - "output": { - "target": "com.amazonaws.bedrockagent#UntagResourceResponse" }, - "errors": [ - { - "target": "com.amazonaws.bedrockagent#AccessDeniedException" - }, - { - "target": "com.amazonaws.bedrockagent#InternalServerException" - }, - { - "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.bedrockagent#ThrottlingException" - }, - { - "target": "com.amazonaws.bedrockagent#ValidationException" - } - ], "traits": { - "smithy.api#documentation": "

    Remove tags from a resource.

    ", - "smithy.api#http": { - "code": 200, - "method": "DELETE", - "uri": "/tags/{resourceArn}" - }, - "smithy.api#idempotent": {} + "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#UntagResourceRequest": { + "com.amazonaws.bedrockagent#UpdateAgentActionGroupResponse": { "type": "structure", "members": { - "resourceArn": { - "target": "com.amazonaws.bedrockagent#TaggableResourcesArn", - "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the resource from which to remove tags.

    ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "tagKeys": { - "target": "com.amazonaws.bedrockagent#TagKeyList", + "agentActionGroup": { + "target": "com.amazonaws.bedrockagent#AgentActionGroup", "traits": { - "smithy.api#documentation": "

    A list of keys of the tags to remove from the resource.

    ", - "smithy.api#httpQuery": "tagKeys", + "smithy.api#documentation": "

    Contains details about the action group that was updated.

    ", "smithy.api#required": {} } } }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.bedrockagent#UntagResourceResponse": { - "type": "structure", - "members": {}, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#UpdateAgent": { + "com.amazonaws.bedrockagent#UpdateAgentAlias": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#UpdateAgentRequest" + "target": "com.amazonaws.bedrockagent#UpdateAgentAliasRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#UpdateAgentResponse" + "target": "com.amazonaws.bedrockagent#UpdateAgentAliasResponse" }, "errors": [ { @@ -7330,23 +12227,81 @@ } ], "traits": { - "smithy.api#documentation": "

    Updates the configuration of an agent.

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

    Updates configurations for an alias of an agent.

    ", "smithy.api#http": { "code": 202, "method": "PUT", - "uri": "/agents/{agentId}/" + "uri": "/agents/{agentId}/agentaliases/{agentAliasId}/" }, "smithy.api#idempotent": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#UpdateAgentActionGroup": { + "com.amazonaws.bedrockagent#UpdateAgentAliasRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentAliasId": { + "target": "com.amazonaws.bedrockagent#AgentAliasId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the alias.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentAliasName": { + "target": "com.amazonaws.bedrockagent#Name", + "traits": { + "smithy.api#documentation": "

    Specifies a new name for the alias.

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

    Specifies a new description for the alias.

    " + } + }, + "routingConfiguration": { + "target": "com.amazonaws.bedrockagent#AgentAliasRoutingConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains details about the routing configuration of the alias.

    " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#UpdateAgentAliasResponse": { + "type": "structure", + "members": { + "agentAlias": { + "target": "com.amazonaws.bedrockagent#AgentAlias", + "traits": { + "smithy.api#documentation": "

    Contains details about the alias that was updated.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBase": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#UpdateAgentActionGroupRequest" + "target": "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBaseRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#UpdateAgentActionGroupResponse" + "target": "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBaseResponse" }, "errors": [ { @@ -7361,9 +12316,6 @@ { "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, - { - "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" - }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" }, @@ -7372,23 +12324,23 @@ } ], "traits": { - "smithy.api#documentation": "

    Updates the configuration for an action group for an agent.

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

    Updates the configuration for a knowledge base that has been associated with an agent.

    ", "smithy.api#http": { "code": 200, "method": "PUT", - "uri": "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/" + "uri": "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/" }, "smithy.api#idempotent": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#UpdateAgentActionGroupRequest": { + "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBaseRequest": { "type": "structure", "members": { "agentId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent for which to update the action group.

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

    The unique identifier of the agent associated with the knowledge base that you want to update.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -7396,60 +12348,124 @@ "agentVersion": { "target": "com.amazonaws.bedrockagent#DraftVersion", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent version for which to update the action group.

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

    The version of the agent associated with the knowledge base that you want to update.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "actionGroupId": { + "knowledgeBaseId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the action group.

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

    The unique identifier of the knowledge base that has been associated with an agent.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "actionGroupName": { + "description": { + "target": "com.amazonaws.bedrockagent#Description", + "traits": { + "smithy.api#documentation": "

    Specifies a new description for the knowledge base associated with an agent.

    " + } + }, + "knowledgeBaseState": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseState", + "traits": { + "smithy.api#documentation": "

    Specifies whether the agent uses the knowledge base or not when sending an InvokeAgent request.

    " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBaseResponse": { + "type": "structure", + "members": { + "agentKnowledgeBase": { + "target": "com.amazonaws.bedrockagent#AgentKnowledgeBase", + "traits": { + "smithy.api#documentation": "

    Contains details about the knowledge base that has been associated with an agent.

    ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagent#UpdateAgentRequest": { + "type": "structure", + "members": { + "agentId": { + "target": "com.amazonaws.bedrockagent#Id", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the agent.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "agentName": { "target": "com.amazonaws.bedrockagent#Name", "traits": { - "smithy.api#documentation": "

    Specifies a new name for the action group.

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

    Specifies a new name for the agent.

    ", + "smithy.api#required": {} + } + }, + "instruction": { + "target": "com.amazonaws.bedrockagent#Instruction", + "traits": { + "smithy.api#documentation": "

    Specifies new instructions that tell the agent what it should do and how it should interact with users.

    " + } + }, + "foundationModel": { + "target": "com.amazonaws.bedrockagent#ModelIdentifier", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

    Specifies a new foundation model to be used for orchestration by the agent.

    ", "smithy.api#required": {} } }, "description": { "target": "com.amazonaws.bedrockagent#Description", "traits": { - "smithy.api#documentation": "

    Specifies a new name for the action group.

    " + "smithy.api#documentation": "

    Specifies a new description of the agent.

    " } }, - "parentActionGroupSignature": { - "target": "com.amazonaws.bedrockagent#ActionGroupSignature", + "idleSessionTTLInSeconds": { + "target": "com.amazonaws.bedrockagent#SessionTTL", "traits": { - "smithy.api#documentation": "

    To allow your agent to request the user for additional information when trying to complete a task, set this field to AMAZON.UserInput. You must leave the description, apiSchema, and actionGroupExecutor fields blank for this action group.

    \n

    During orchestration, if your agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an Observation reprompting the user for more information.

    " + "smithy.api#documentation": "

    The number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent.

    \n

    A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.

    " } }, - "actionGroupExecutor": { - "target": "com.amazonaws.bedrockagent#ActionGroupExecutor", + "agentResourceRoleArn": { + "target": "com.amazonaws.bedrockagent#AgentRoleArn", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the Lambda function containing the business logic that is carried out upon invoking the action.

    " + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the agent.

    ", + "smithy.api#required": {} } }, - "actionGroupState": { - "target": "com.amazonaws.bedrockagent#ActionGroupState", + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", "traits": { - "smithy.api#documentation": "

    Specifies whether the action group is available for the agent to invoke or not when sending an InvokeAgent request.

    " + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key with which to encrypt the agent.

    " + } + }, + "promptOverrideConfiguration": { + "target": "com.amazonaws.bedrockagent#PromptOverrideConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains configurations to override prompts in different parts of an agent sequence. For more information, see Advanced prompts.

    " } }, - "apiSchema": { - "target": "com.amazonaws.bedrockagent#APISchema", + "guardrailConfiguration": { + "target": "com.amazonaws.bedrockagent#GuardrailConfiguration", "traits": { - "smithy.api#documentation": "

    Contains either details about the S3 object containing the OpenAPI schema for the action group or the JSON or YAML-formatted payload defining the schema. For more information, see Action group OpenAPI schemas.

    " + "smithy.api#documentation": "

    The unique Guardrail configuration assigned to the agent when it is updated.

    " } }, - "functionSchema": { - "target": "com.amazonaws.bedrockagent#FunctionSchema", + "memoryConfiguration": { + "target": "com.amazonaws.bedrockagent#MemoryConfiguration", "traits": { - "smithy.api#documentation": "

    Contains details about the function schema for the action group or the JSON or YAML-formatted payload defining the schema.

    " + "smithy.api#documentation": "

    Specifies the new memory configuration for the agent.

    " } } }, @@ -7457,13 +12473,13 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#UpdateAgentActionGroupResponse": { + "com.amazonaws.bedrockagent#UpdateAgentResponse": { "type": "structure", "members": { - "agentActionGroup": { - "target": "com.amazonaws.bedrockagent#AgentActionGroup", + "agent": { + "target": "com.amazonaws.bedrockagent#Agent", "traits": { - "smithy.api#documentation": "

    Contains details about the action group that was updated.

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

    Contains details about the agent that was updated.

    ", "smithy.api#required": {} } } @@ -7472,13 +12488,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#UpdateAgentAlias": { + "com.amazonaws.bedrockagent#UpdateDataSource": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#UpdateAgentAliasRequest" + "target": "com.amazonaws.bedrockagent#UpdateDataSourceRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#UpdateAgentAliasResponse" + "target": "com.amazonaws.bedrockagent#UpdateDataSourceResponse" }, "errors": [ { @@ -7493,9 +12509,6 @@ { "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, - { - "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" - }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" }, @@ -7504,52 +12517,71 @@ } ], "traits": { - "smithy.api#documentation": "

    Updates configurations for an alias of an agent.

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

    Updates the configurations for a data source connector.

    \n \n

    You can't change the chunkingConfiguration after you create the data source connector. Specify the existing chunkingConfiguration.

    \n
    ", "smithy.api#http": { - "code": 202, + "code": 200, "method": "PUT", - "uri": "/agents/{agentId}/agentaliases/{agentAliasId}/" + "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}" }, "smithy.api#idempotent": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#UpdateAgentAliasRequest": { + "com.amazonaws.bedrockagent#UpdateDataSourceRequest": { "type": "structure", "members": { - "agentId": { + "knowledgeBaseId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent.

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

    The unique identifier of the knowledge base for the data source.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "agentAliasId": { - "target": "com.amazonaws.bedrockagent#AgentAliasId", + "dataSourceId": { + "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the alias.

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

    The unique identifier of the data source.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "agentAliasName": { + "name": { "target": "com.amazonaws.bedrockagent#Name", "traits": { - "smithy.api#documentation": "

    Specifies a new name for the alias.

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

    Specifies a new name for the data source.

    ", "smithy.api#required": {} } }, "description": { "target": "com.amazonaws.bedrockagent#Description", "traits": { - "smithy.api#documentation": "

    Specifies a new description for the alias.

    " + "smithy.api#documentation": "

    Specifies a new description for the data source.

    " } }, - "routingConfiguration": { - "target": "com.amazonaws.bedrockagent#AgentAliasRoutingConfiguration", + "dataSourceConfiguration": { + "target": "com.amazonaws.bedrockagent#DataSourceConfiguration", "traits": { - "smithy.api#documentation": "

    Contains details about the routing configuration of the alias.

    " + "smithy.api#documentation": "

    The connection configuration for the data source that you want to update.

    ", + "smithy.api#required": {} + } + }, + "dataDeletionPolicy": { + "target": "com.amazonaws.bedrockagent#DataDeletionPolicy", + "traits": { + "smithy.api#documentation": "

    The data deletion policy for the data source that you want to update.

    " + } + }, + "serverSideEncryptionConfiguration": { + "target": "com.amazonaws.bedrockagent#ServerSideEncryptionConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains details about server-side encryption of the data source.

    " + } + }, + "vectorIngestionConfiguration": { + "target": "com.amazonaws.bedrockagent#VectorIngestionConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains details about how to ingest the documents in the data source.

    " } } }, @@ -7557,13 +12589,13 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#UpdateAgentAliasResponse": { + "com.amazonaws.bedrockagent#UpdateDataSourceResponse": { "type": "structure", "members": { - "agentAlias": { - "target": "com.amazonaws.bedrockagent#AgentAlias", + "dataSource": { + "target": "com.amazonaws.bedrockagent#DataSource", "traits": { - "smithy.api#documentation": "

    Contains details about the alias that was updated.

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

    Contains details about the data source.

    ", "smithy.api#required": {} } } @@ -7572,13 +12604,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBase": { + "com.amazonaws.bedrockagent#UpdateFlow": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBaseRequest" + "target": "com.amazonaws.bedrockagent#UpdateFlowRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBaseResponse" + "target": "com.amazonaws.bedrockagent#UpdateFlowResponse" }, "errors": [ { @@ -7593,6 +12625,9 @@ { "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, + { + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" + }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" }, @@ -7601,53 +12636,95 @@ } ], "traits": { - "smithy.api#documentation": "

    Updates the configuration for a knowledge base that has been associated with an agent.

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

    Modifies a flow. Include both fields that you want to keep and fields that you want to change. For more information, see How it works and Create a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", "smithy.api#http": { "code": 200, "method": "PUT", - "uri": "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/" + "uri": "/flows/{flowIdentifier}/" }, "smithy.api#idempotent": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBaseRequest": { + "com.amazonaws.bedrockagent#UpdateFlowAlias": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagent#UpdateFlowAliasRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagent#UpdateFlowAliasResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagent#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagent#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagent#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.bedrockagent#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagent#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

    Modifies the alias of a flow. Include both fields that you want to keep and ones that you want to change. For more information, see Deploy a flow in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", + "smithy.api#http": { + "code": 200, + "method": "PUT", + "uri": "/flows/{flowIdentifier}/aliases/{aliasIdentifier}" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": ["console"] + } + }, + "com.amazonaws.bedrockagent#UpdateFlowAliasRequest": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "name": { + "target": "com.amazonaws.bedrockagent#Name", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent associated with the knowledge base that you want to update.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    The name of the flow alias.

    ", "smithy.api#required": {} } }, - "agentVersion": { - "target": "com.amazonaws.bedrockagent#DraftVersion", + "description": { + "target": "com.amazonaws.bedrockagent#Description", "traits": { - "smithy.api#documentation": "

    The version of the agent associated with the knowledge base that you want to update.

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

    A description for the flow alias.

    " } }, - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "routingConfiguration": { + "target": "com.amazonaws.bedrockagent#FlowAliasRoutingConfiguration", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base that has been associated with an agent.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    Contains information about the version to which to map the alias.

    ", "smithy.api#required": {} } }, - "description": { - "target": "com.amazonaws.bedrockagent#Description", + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", "traits": { - "smithy.api#documentation": "

    Specifies a new description for the knowledge base associated with an agent.

    " + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "knowledgeBaseState": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseState", + "aliasIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowAliasIdentifier", "traits": { - "smithy.api#documentation": "

    Specifies whether the agent uses the knowledge base or not when sending an InvokeAgent request.

    " + "smithy.api#documentation": "

    The unique identifier of the alias.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } } }, @@ -7655,13 +12732,61 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#UpdateAgentKnowledgeBaseResponse": { + "com.amazonaws.bedrockagent#UpdateFlowAliasResponse": { "type": "structure", "members": { - "agentKnowledgeBase": { - "target": "com.amazonaws.bedrockagent#AgentKnowledgeBase", + "name": { + "target": "com.amazonaws.bedrockagent#Name", "traits": { - "smithy.api#documentation": "

    Contains details about the knowledge base that has been associated with an agent.

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

    The name of the flow alias.

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

    The description of the flow.

    " + } + }, + "routingConfiguration": { + "target": "com.amazonaws.bedrockagent#FlowAliasRoutingConfiguration", + "traits": { + "smithy.api#documentation": "

    Contains information about the version that the alias is mapped to.

    ", + "smithy.api#required": {} + } + }, + "flowId": { + "target": "com.amazonaws.bedrockagent#FlowId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#required": {} + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#FlowAliasId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the alias.

    ", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.bedrockagent#FlowAliasArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the flow.

    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the flow was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the flow alias was last updated.

    ", "smithy.api#required": {} } } @@ -7670,88 +12795,129 @@ "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#UpdateAgentRequest": { + "com.amazonaws.bedrockagent#UpdateFlowRequest": { "type": "structure", "members": { - "agentId": { - "target": "com.amazonaws.bedrockagent#Id", + "name": { + "target": "com.amazonaws.bedrockagent#FlowName", "traits": { - "smithy.api#documentation": "

    The unique identifier of the agent.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    A name for the flow.

    ", "smithy.api#required": {} } }, - "agentName": { - "target": "com.amazonaws.bedrockagent#Name", + "description": { + "target": "com.amazonaws.bedrockagent#FlowDescription", "traits": { - "smithy.api#documentation": "

    Specifies a new name for the agent.

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

    A description for the flow.

    " + } + }, + "executionRoleArn": { + "target": "com.amazonaws.bedrockagent#FlowExecutionRoleArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the service role with permissions to create and manage a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", "smithy.api#required": {} } }, - "instruction": { - "target": "com.amazonaws.bedrockagent#Instruction", + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", "traits": { - "smithy.api#documentation": "

    Specifies new instructions that tell the agent what it should do and how it should interact with users.

    " + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key to encrypt the flow.

    " } }, - "foundationModel": { - "target": "com.amazonaws.bedrockagent#ModelIdentifier", + "definition": { + "target": "com.amazonaws.bedrockagent#FlowDefinition", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

    Specifies a new foundation model to be used for orchestration by the agent.

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

    A definition of the nodes and the connections between the nodes in the flow.

    " + } + }, + "flowIdentifier": { + "target": "com.amazonaws.bedrockagent#FlowIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#UpdateFlowResponse": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagent#FlowName", + "traits": { + "smithy.api#documentation": "

    The name of the flow.

    ", "smithy.api#required": {} } }, "description": { - "target": "com.amazonaws.bedrockagent#Description", + "target": "com.amazonaws.bedrockagent#FlowDescription", "traits": { - "smithy.api#documentation": "

    Specifies a new description of the agent.

    " + "smithy.api#documentation": "

    The description of the flow.

    " } }, - "idleSessionTTLInSeconds": { - "target": "com.amazonaws.bedrockagent#SessionTTL", + "executionRoleArn": { + "target": "com.amazonaws.bedrockagent#FlowExecutionRoleArn", "traits": { - "smithy.api#documentation": "

    The number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent.

    \n

    A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.

    " + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the service role with permissions to create a flow. For more information, see Create a service role for flows in Amazon Bedrock in the Amazon Bedrock User Guide.

    ", + "smithy.api#required": {} } }, - "agentResourceRoleArn": { - "target": "com.amazonaws.bedrockagent#AgentRoleArn", + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the agent.

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

    The Amazon Resource Name (ARN) of the KMS key that the flow was encrypted with.

    " + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#FlowId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the flow.

    ", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.bedrockagent#FlowArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the flow.

    ", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagent#FlowStatus", + "traits": { + "smithy.api#documentation": "

    The status of the flow. When you submit this request, the status will be NotPrepared. If updating fails, the status becomes Failed.

    ", "smithy.api#required": {} } }, - "customerEncryptionKeyArn": { - "target": "com.amazonaws.bedrockagent#KmsKeyArn", + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", "traits": { - "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key with which to encrypt the agent.

    " + "smithy.api#documentation": "

    The time at which the flow was created.

    ", + "smithy.api#required": {} } }, - "promptOverrideConfiguration": { - "target": "com.amazonaws.bedrockagent#PromptOverrideConfiguration", + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", "traits": { - "smithy.api#documentation": "

    Contains configurations to override prompts in different parts of an agent sequence. For more information, see Advanced prompts.

    " + "smithy.api#documentation": "

    The time at which the flow was last updated.

    ", + "smithy.api#required": {} } }, - "guardrailConfiguration": { - "target": "com.amazonaws.bedrockagent#GuardrailConfiguration", + "version": { + "target": "com.amazonaws.bedrockagent#DraftVersion", "traits": { - "smithy.api#documentation": "

    The unique Guardrail configuration assigned to the agent when it is updated.

    " + "smithy.api#documentation": "

    The version of the flow. When you update a flow, the version updated is the DRAFT version.

    ", + "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.bedrockagent#UpdateAgentResponse": { - "type": "structure", - "members": { - "agent": { - "target": "com.amazonaws.bedrockagent#Agent", + }, + "definition": { + "target": "com.amazonaws.bedrockagent#FlowDefinition", "traits": { - "smithy.api#documentation": "

    Contains details about the agent that was updated.

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

    A definition of the nodes and the connections between nodes in the flow.

    " } } }, @@ -7759,13 +12925,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#UpdateDataSource": { + "com.amazonaws.bedrockagent#UpdateKnowledgeBase": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#UpdateDataSourceRequest" + "target": "com.amazonaws.bedrockagent#UpdateKnowledgeBaseRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#UpdateDataSourceResponse" + "target": "com.amazonaws.bedrockagent#UpdateKnowledgeBaseResponse" }, "errors": [ { @@ -7788,31 +12954,23 @@ } ], "traits": { - "smithy.api#documentation": "

    Updates configurations for a data source.

    \n \n

    You can't change the chunkingConfiguration after you create the data source. Specify the existing chunkingConfiguration.

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

    Updates the configuration of a knowledge base with the fields that you specify. Because all fields will be overwritten, you must include the same values for fields that you want to keep the same.

    \n

    You can change the following fields:

    \n
      \n
    • \n

      \n name\n

      \n
    • \n
    • \n

      \n description\n

      \n
    • \n
    • \n

      \n roleArn\n

      \n
    • \n
    \n

    You can't change the knowledgeBaseConfiguration or storageConfiguration fields, so you must specify the same configurations as when you created the knowledge base. You can send a GetKnowledgeBase request and copy the same configurations.

    ", "smithy.api#http": { - "code": 200, + "code": 202, "method": "PUT", - "uri": "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}" + "uri": "/knowledgebases/{knowledgeBaseId}" }, "smithy.api#idempotent": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#UpdateDataSourceRequest": { + "com.amazonaws.bedrockagent#UpdateKnowledgeBaseRequest": { "type": "structure", "members": { "knowledgeBaseId": { "target": "com.amazonaws.bedrockagent#Id", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base to which the data source belongs.

    ", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "dataSourceId": { - "target": "com.amazonaws.bedrockagent#Id", - "traits": { - "smithy.api#documentation": "

    The unique identifier of the data source.

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

    The unique identifier of the knowledge base to update.

    ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -7820,39 +12978,35 @@ "name": { "target": "com.amazonaws.bedrockagent#Name", "traits": { - "smithy.api#documentation": "

    Specifies a new name for the data source.

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

    Specifies a new name for the knowledge base.

    ", "smithy.api#required": {} } }, "description": { "target": "com.amazonaws.bedrockagent#Description", "traits": { - "smithy.api#documentation": "

    Specifies a new description for the data source.

    " + "smithy.api#documentation": "

    Specifies a new description for the knowledge base.

    " } }, - "dataSourceConfiguration": { - "target": "com.amazonaws.bedrockagent#DataSourceConfiguration", + "roleArn": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseRoleArn", "traits": { - "smithy.api#documentation": "

    Contains details about the storage configuration of the data source.

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

    Specifies a different Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

    ", "smithy.api#required": {} } }, - "dataDeletionPolicy": { - "target": "com.amazonaws.bedrockagent#DataDeletionPolicy", - "traits": { - "smithy.api#documentation": "

    The data deletion policy of the updated data source.

    " - } - }, - "serverSideEncryptionConfiguration": { - "target": "com.amazonaws.bedrockagent#ServerSideEncryptionConfiguration", + "knowledgeBaseConfiguration": { + "target": "com.amazonaws.bedrockagent#KnowledgeBaseConfiguration", "traits": { - "smithy.api#documentation": "

    Contains details about server-side encryption of the data source.

    " + "smithy.api#documentation": "

    Specifies the configuration for the embeddings model used for the knowledge base. You must use the same configuration as when the knowledge base was created.

    ", + "smithy.api#required": {} } }, - "vectorIngestionConfiguration": { - "target": "com.amazonaws.bedrockagent#VectorIngestionConfiguration", + "storageConfiguration": { + "target": "com.amazonaws.bedrockagent#StorageConfiguration", "traits": { - "smithy.api#documentation": "

    Contains details about how to ingest the documents in the data source.

    " + "smithy.api#documentation": "

    Specifies the configuration for the vector store used for the knowledge base. You must use the same configuration as when the knowledge base was created.

    ", + "smithy.api#required": {} } } }, @@ -7860,13 +13014,13 @@ "smithy.api#input": {} } }, - "com.amazonaws.bedrockagent#UpdateDataSourceResponse": { + "com.amazonaws.bedrockagent#UpdateKnowledgeBaseResponse": { "type": "structure", "members": { - "dataSource": { - "target": "com.amazonaws.bedrockagent#DataSource", + "knowledgeBase": { + "target": "com.amazonaws.bedrockagent#KnowledgeBase", "traits": { - "smithy.api#documentation": "

    Contains details about the data source.

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

    Contains details about the knowledge base.

    ", "smithy.api#required": {} } } @@ -7875,13 +13029,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#UpdateKnowledgeBase": { + "com.amazonaws.bedrockagent#UpdatePrompt": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagent#UpdateKnowledgeBaseRequest" + "target": "com.amazonaws.bedrockagent#UpdatePromptRequest" }, "output": { - "target": "com.amazonaws.bedrockagent#UpdateKnowledgeBaseResponse" + "target": "com.amazonaws.bedrockagent#UpdatePromptResponse" }, "errors": [ { @@ -7896,6 +13050,9 @@ { "target": "com.amazonaws.bedrockagent#ResourceNotFoundException" }, + { + "target": "com.amazonaws.bedrockagent#ServiceQuotaExceededException" + }, { "target": "com.amazonaws.bedrockagent#ThrottlingException" }, @@ -7904,79 +13061,155 @@ } ], "traits": { - "smithy.api#documentation": "

    Updates the configuration of a knowledge base with the fields that you specify. Because all fields will be overwritten, you must include the same values for fields that you want to keep the same.

    \n

    You can change the following fields:

    \n
      \n
    • \n

      \n name\n

      \n
    • \n
    • \n

      \n description\n

      \n
    • \n
    • \n

      \n roleArn\n

      \n
    • \n
    \n

    You can't change the knowledgeBaseConfiguration or storageConfiguration fields, so you must specify the same configurations as when you created the knowledge base. You can send a GetKnowledgeBase request and copy the same configurations.

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

    Modifies a prompt in your prompt library. Include both fields that you want to keep and fields that you want to replace. For more information, see Prompt management in Amazon Bedrock and Edit prompts in your prompt library in the Amazon Bedrock User Guide.

    ", "smithy.api#http": { - "code": 202, + "code": 200, "method": "PUT", - "uri": "/knowledgebases/{knowledgeBaseId}" + "uri": "/prompts/{promptIdentifier}/" }, "smithy.api#idempotent": {}, "smithy.api#tags": ["console"] } }, - "com.amazonaws.bedrockagent#UpdateKnowledgeBaseRequest": { + "com.amazonaws.bedrockagent#UpdatePromptRequest": { "type": "structure", "members": { - "knowledgeBaseId": { - "target": "com.amazonaws.bedrockagent#Id", + "name": { + "target": "com.amazonaws.bedrockagent#PromptName", "traits": { - "smithy.api#documentation": "

    The unique identifier of the knowledge base to update.

    ", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

    A name for the prompt.

    ", "smithy.api#required": {} } }, + "description": { + "target": "com.amazonaws.bedrockagent#PromptDescription", + "traits": { + "smithy.api#documentation": "

    A description for the prompt.

    " + } + }, + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", + "traits": { + "smithy.api#documentation": "

    The Amazon Resource Name (ARN) of the KMS key to encrypt the prompt.

    " + } + }, + "defaultVariant": { + "target": "com.amazonaws.bedrockagent#PromptVariantName", + "traits": { + "smithy.api#documentation": "

    The name of the default variant for the prompt. This value must match the name field in the relevant PromptVariant object.

    " + } + }, + "variants": { + "target": "com.amazonaws.bedrockagent#PromptVariantList", + "traits": { + "smithy.api#documentation": "

    A list of objects, each containing details about a variant of the prompt.

    " + } + }, + "promptIdentifier": { + "target": "com.amazonaws.bedrockagent#PromptIdentifier", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the prompt.

    ", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagent#UpdatePromptResponse": { + "type": "structure", + "members": { "name": { - "target": "com.amazonaws.bedrockagent#Name", + "target": "com.amazonaws.bedrockagent#PromptName", "traits": { - "smithy.api#documentation": "

    Specifies a new name for the knowledge base.

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

    The name of the prompt.

    ", "smithy.api#required": {} } }, "description": { - "target": "com.amazonaws.bedrockagent#Description", + "target": "com.amazonaws.bedrockagent#PromptDescription", "traits": { - "smithy.api#documentation": "

    Specifies a new description for the knowledge base.

    " + "smithy.api#documentation": "

    The description of the prompt.

    " } }, - "roleArn": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseRoleArn", + "customerEncryptionKeyArn": { + "target": "com.amazonaws.bedrockagent#KmsKeyArn", "traits": { - "smithy.api#documentation": "

    Specifies a different Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.

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

    The Amazon Resource Name (ARN) of the KMS key to encrypt the prompt.

    " + } + }, + "defaultVariant": { + "target": "com.amazonaws.bedrockagent#PromptVariantName", + "traits": { + "smithy.api#documentation": "

    The name of the default variant for the prompt. This value must match the name field in the relevant PromptVariant object.

    " + } + }, + "variants": { + "target": "com.amazonaws.bedrockagent#PromptVariantList", + "traits": { + "smithy.api#documentation": "

    A list of objects, each containing details about a variant of the prompt.

    " + } + }, + "id": { + "target": "com.amazonaws.bedrockagent#PromptId", + "traits": { + "smithy.api#documentation": "

    The unique identifier of the prompt.

    ", "smithy.api#required": {} } }, - "knowledgeBaseConfiguration": { - "target": "com.amazonaws.bedrockagent#KnowledgeBaseConfiguration", + "arn": { + "target": "com.amazonaws.bedrockagent#PromptArn", "traits": { - "smithy.api#documentation": "

    Specifies the configuration for the embeddings model used for the knowledge base. You must use the same configuration as when the knowledge base was created.

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

    The Amazon Resource Name (ARN) of the prompt.

    ", "smithy.api#required": {} } }, - "storageConfiguration": { - "target": "com.amazonaws.bedrockagent#StorageConfiguration", + "version": { + "target": "com.amazonaws.bedrockagent#Version", "traits": { - "smithy.api#documentation": "

    Specifies the configuration for the vector store used for the knowledge base. You must use the same configuration as when the knowledge base was created.

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

    The version of the prompt. When you update a prompt, the version updated is the DRAFT version.

    ", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the prompt was created.

    ", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagent#DateTimestamp", + "traits": { + "smithy.api#documentation": "

    The time at which the prompt was last updated.

    ", "smithy.api#required": {} } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.bedrockagent#UpdateKnowledgeBaseResponse": { + "com.amazonaws.bedrockagent#Url": { + "type": "string", + "traits": { + "smithy.api#pattern": "^https?://[A-Za-z0-9][^\\s]*$" + } + }, + "com.amazonaws.bedrockagent#UrlConfiguration": { "type": "structure", "members": { - "knowledgeBase": { - "target": "com.amazonaws.bedrockagent#KnowledgeBase", + "seedUrls": { + "target": "com.amazonaws.bedrockagent#SeedUrls", "traits": { - "smithy.api#documentation": "

    Contains details about the knowledge base.

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

    One or more seed or starting point URLs.

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

    The configuration of web URLs that you want to crawl. \n You should be authorized to crawl the URLs.

    " } }, "com.amazonaws.bedrockagent#ValidationException": { @@ -8034,6 +13267,18 @@ "traits": { "smithy.api#documentation": "

    Details about how to chunk the documents in the data source. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried.

    " } + }, + "customTransformationConfiguration": { + "target": "com.amazonaws.bedrockagent#CustomTransformationConfiguration", + "traits": { + "smithy.api#documentation": "

    A custom document transformer for parsed data source documents.

    " + } + }, + "parsingConfiguration": { + "target": "com.amazonaws.bedrockagent#ParsingConfiguration", + "traits": { + "smithy.api#documentation": "

    A custom parser for data source documents.

    " + } } }, "traits": { @@ -8084,6 +13329,109 @@ "target": "com.amazonaws.bedrockagent#ListAgentVersions" } ] + }, + "com.amazonaws.bedrockagent#WebCrawlerConfiguration": { + "type": "structure", + "members": { + "crawlerLimits": { + "target": "com.amazonaws.bedrockagent#WebCrawlerLimits", + "traits": { + "smithy.api#documentation": "

    The configuration of crawl limits for the web URLs.

    " + } + }, + "inclusionFilters": { + "target": "com.amazonaws.bedrockagent#FilterList", + "traits": { + "smithy.api#documentation": "

    A list of one or more inclusion regular expression patterns to include \n certain URLs. If you specify an inclusion and exclusion filter/pattern \n and both match a URL, the exclusion filter takes precedence and the web \n content of the URL isn’t crawled.

    " + } + }, + "exclusionFilters": { + "target": "com.amazonaws.bedrockagent#FilterList", + "traits": { + "smithy.api#documentation": "

    A list of one or more exclusion regular expression patterns to exclude \n certain URLs. If you specify an inclusion and exclusion filter/pattern \n and both match a URL, the exclusion filter takes precedence and the web \n content of the URL isn’t crawled.

    " + } + }, + "scope": { + "target": "com.amazonaws.bedrockagent#WebScopeType", + "traits": { + "smithy.api#documentation": "

    The scope of what is crawled for your URLs.

    \n

    You can choose to crawl only web pages that belong to the same host or primary \n domain. For example, only web pages that contain the seed URL \n \"https://docs.aws.amazon.com/bedrock/latest/userguide/\" and no other domains. \n You can choose to include sub domains in addition to the host or primary domain. \n For example, web pages that contain \"aws.amazon.com\" can also include sub domain \n \"docs.aws.amazon.com\".

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

    The configuration of web URLs that you want to crawl. \n You should be authorized to crawl the URLs.

    " + } + }, + "com.amazonaws.bedrockagent#WebCrawlerLimits": { + "type": "structure", + "members": { + "rateLimit": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

    The max rate at which pages are crawled, up to 300 per minute per host.

    ", + "smithy.api#range": { + "min": 1, + "max": 300 + } + } + } + }, + "traits": { + "smithy.api#documentation": "

    The rate limits for the URLs that you want to crawl. \n You should be authorized to crawl the URLs.

    " + } + }, + "com.amazonaws.bedrockagent#WebDataSourceConfiguration": { + "type": "structure", + "members": { + "sourceConfiguration": { + "target": "com.amazonaws.bedrockagent#WebSourceConfiguration", + "traits": { + "smithy.api#documentation": "

    The source configuration details for the web data source.

    ", + "smithy.api#required": {} + } + }, + "crawlerConfiguration": { + "target": "com.amazonaws.bedrockagent#WebCrawlerConfiguration", + "traits": { + "smithy.api#documentation": "

    The Web Crawler configuration details for the web data source.

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

    The configuration details for the web data source.

    " + } + }, + "com.amazonaws.bedrockagent#WebScopeType": { + "type": "enum", + "members": { + "HOST_ONLY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HOST_ONLY" + } + }, + "SUBDOMAINS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SUBDOMAINS" + } + } + } + }, + "com.amazonaws.bedrockagent#WebSourceConfiguration": { + "type": "structure", + "members": { + "urlConfiguration": { + "target": "com.amazonaws.bedrockagent#UrlConfiguration", + "traits": { + "smithy.api#documentation": "

    The configuration of the URL/URLs.

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

    The configuration of the URL/URLs for the web content that you want \n to crawl. You should be authorized to crawl the URLs.

    " + } } } }